自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

行者无疆的博客

不必仰望别人,自己亦是风景!

  • 博客(29)
  • 资源 (1)
  • 收藏
  • 关注

原创 Robotic TMS:机器人TMS相关技术

在之前的文章中可以归纳出与机器人辅助经颅磁刺激相关的一些重要技术。包括:机械臂的(1)运动轨迹跟踪技术;(2)视觉私服控制;(3)视觉标定技术;(4)轨迹规划;(5)位置和力控制;1. 运动轨迹跟踪为了避免固定受试者的头部,应使用跟踪系统来引导和调整线圈的位置和方向。有许多类似的跟踪系统可供选择:空间连杆机构、超声波跟踪系统、磁场跟踪系统、以及光学跟踪系统。...

2020-11-29 20:33:44 10

原创 Robotic TMS:机器人辅助TMS治疗系统

一、机器人辅助手术系统机器人辅助手术系统已经被研究了多年,尽管机器人手术系统还没在临床中普遍应用,这些研究成果可以为机器人TMS系统的研究和开发提供技术和经验。手术机器人时间线如下图所示。图1 手术机器人时间线1985年,机器人系统首先进入临床试验,用于脑生物定向显示。该系统结合了CT扫描仪和Puma 200机器人用于立体定向脑手术,如下图所示。在CT图像上指定目标位置之后,机器人移动到目标位置。这种机器人手术比人工手术更快,而且精度更高。图2 立体定向脑手术机器人系统1991年,出现了另一个

2020-10-31 17:11:06 64

原创 Robotic TMS:TMS(经颅磁刺激)介绍

经颅磁刺激技术(Transcranial Magnetic Stimulation, TMS)是一种无痛、无创的绿色治疗方法,磁信号可以无衰减地透过颅骨而刺激到大脑神经。随着技术的发展,具有连续可调重复刺激的经颅磁刺激(rTMS)出现,并在临床精神病、神经疾病及康复领域获得越来越多的认可。经颅磁刺激技术得到了广泛的使用,国内的经颅磁刺激技术达到世界先进水平,在神经心理科(抑郁症、精分症)、康复科、儿科(脑瘫,自闭症等)等各个方面都得到了应用。然而大多数研究都关注神经科学,很少有TMS应用过程自动化相关的研

2020-09-30 22:45:32 138 2

原创 模型预测控制(MPC)解析二:SISO系统状态空间模型MPC的Matlab实现

在上一篇中,为了便于说明,预测控制系统采用单输入单输出系统为例进行设计。由于系统模型使用的是状态空间方程,于是可以很容易的将这种设计方法可以扩展到多输入、多输出系统。

2020-08-31 21:55:01 286

原创 自适应振荡器在下肢康复机器人中的应用

振荡器是一种数学工具,可以用于实时跟踪、预测类周期信号的频率、相位、幅值等,而助行外骨骼机器人需要自动适应人体的行走频率、幅度,两者相结合,就能使助行外骨骼机器人拥有更舒适、更自然的行走步态。...

2020-07-31 18:46:04 140

原创 惯性测量单元IMU基础

IMU由三部分组成:加速度计、磁力计、陀螺仪。加速度计就是测量三个方向的加速度:磁力计就是测量磁场北极的方位:陀螺仪测量的就是绕三个方向旋转速度:一、加速度计二、磁力计三、陀螺仪...

2020-06-25 18:59:20 700

原创 模型预测控制(MPC)解析一:SISO系统的模型预测控制

一、状态空间模型1.1 单输入单输出系统二、优化窗口内的预测控制2.1 状态变量和输出变量的预测2.2 优化三、滚动时域控制3.1 闭环控制系统

2020-05-31 23:19:22 642

原创 Cheetah开源电机驱动控制解析

著名的MIT Cheetah Mini四足机器人开源了所有软硬件,包括机载电脑和关节驱动器的软硬件全部开源。这一篇就根据开源的驱动控制软件及相关论文,探索其核心控制算法框架。

2020-04-28 23:16:10 2036 14

原创 三相异步电机基于模型的效率估计算法

三相异步电机在工业自动化中应用非常多,如果因为电机故障导致自动化生产线停产,会造成巨大的经济损失,所以在日常维护时对电机进行检测非常有必要。为了尽量减少停工时间,最好的方式是对电机进行不停机检测。通常异步电机的故障是由于长时间运行损耗增加、效率降低,所以电机检测比较重要的一项是检测效率。一般情况会有专用测试仪器来检测电机效率,但是都需要拆下电机,安装到专用仪器上进行测试。本文提出了一种基于模型的效率估计算法,用于在正常工况不停机的情况下检测电机效率。

2020-03-21 11:58:31 535

原创 下肢康复训练外骨骼机器人Lokomat核心技术简介

下肢康复机器人临床上广泛用于由神经损伤以及其它疾病导致的下肢行走障碍患者,能够为因神经损伤导致行走功能障碍的患者提供了安全,有效的步行训练平台。通过机械腿带动患者完成大量重复的生理步态训练,让患者在早期即建立正确的运动模式,为今后重新正常行走打下良好基础。

2020-02-04 21:10:51 3471 1

原创 机器人运动规划--基于《MODERN ROBOTICS》

机器人运动规划要解决的问题是,找到一种让机器人从初始状态运动到目标状态的运动方式,同时要能避开环境中的障碍,以及满足其他限制条件,如关节角度限制或力矩限制等。

2020-01-31 12:46:49 777

原创 机器人轨迹生成--基于《MODERN ROBOTICS》

机器人轨迹的定义是:机器人位置随时间变化的规范称为轨迹。有些情况下,机器人的轨迹完全由任务决定,例如,末端执行器需要跟踪一个已知运动的物体;另一些情况下,任务只是简单的要求机器人在一个给定的时间内从一个位置运动到另一个位置。轨迹应该是关于时间平滑的函数,而且要满足关节速度、加速度、力矩的要求。这里主要考虑三种情况的轨迹生成:在关节和任务空间点到点的直线轨迹、在给定时间通过点的轨迹、考虑关节驱动限制的时,通过给定路径的最短时间轨迹。

2020-01-30 14:45:35 1170

原创 canfestival-3源码详解一:重要结构体

CANFestival-3源码详解一:重要结构体有几点需要说明:1.使用的是官网下载的canfestival-3源代码,下载的压缩包文件名是:Mongo-canfestival-3-asc-1a25f5151a8d.zip,使用的是源码里面自带的对象字典编辑器来生成对象字典文件;2.主要解析源码里面与DS 301协议有关的代码,DS 301协议参考文档为301_v04000201.pdf;...

2019-08-21 15:40:58 3421 5

原创 UR机器人之二:直线插补详解

1.引子看过UR机器人脚本手册的都应该知道有这样一个直线插补函数:interpolate_pose(p_from, p_to, alpha);参数:p_from表示初始pose,p_to表示目标pose,alpha通常为0-1之间的浮点数,如果alpha=0,则函数插值返回的pose是p_from;如果alpha=1,则函数插值返回的pose是p_to;如果alpha<0,则函数插值...

2019-04-23 22:20:28 3494 3

原创 UR机器人之一:坐标系及位姿表示方法

一、UR机器人坐标系默认情况下UR机器人的坐标系如下图所示:这里的TCP位置和坐标系就是机器人末端,及机器人默认的TCP位置,其TCP配置如下图所示:如果用户想要自己设计TCP的位置和坐标就可以在这个基础上进行配置,这里的X,Y,Z,RX,RY,RZ表示用户自定义TCP与机器人默认TCP之间的关系。X,Y,Z表示位置关系,RX,RY,RZ是使用的旋转矢量法表示的姿态关系,旋转矢量法见下一...

2018-11-07 23:26:38 14459 22

原创 开源机器人库orocos KDL 学习笔记五:Inverse Kinematric

上一篇主要讲述KDL中正运动学解的实现方式及其使用。本篇主要讲述KDL中逆运动学解的实现方式及其使用。1. puma560的逆运动学解首先还是以puma560作为例子,来看一下如何调用KDL的逆运动学求解器求解puma560的逆运动学解。Chain puma560; puma560 = KDL::Puma560(); ChainFkSolverPos_recursive fwdkin(p...

2018-10-24 23:15:14 1366

原创 开源机器人库orocos KDL 学习笔记四:Forward Kinematric

上一篇主要讲述了KDL中运动链的建立方式,以及与其相关的段(Segment)和关节(Joint)的概念,这些是串联机械臂运动学的基础。本篇主要讲述KDL中正运动学解的实现方式及其使用。1. puma560的正运动学解首先还是以puma560作为例子,来看一下如何调用KDL的正运动学求解器求解puma560的正运动学解。Chain puma560;puma560 = KDL::Puma560...

2018-10-17 22:51:48 1059 1

原创 开源机器人库orocos KDL 学习笔记三:Kinematric Chain

上一篇主要讲述了机器人学中用到的几何基础知识,以及在KDL中的实现和使用。本篇将更加深入的涉及到机器人学中的内容,主要是如何表示串联型机械臂,以及KDL中的实现方式。KDL中使用了两个使用广泛且技术成熟的机器人作为例子:puma560(六自由度)和kukaLWR(七自由度)。本篇主要使用六自由度的puma560作为例子。阅读本篇需要有一定的机器人学常识,至少要读过《机器人学导论》的前三章。在K...

2018-10-04 17:01:58 1979 2

原创 开源机器人库orocos KDL 学习笔记二:Geometric

开源机器人库orocos KDL 学习笔记二:Geometric如果按照上一篇搭建的VS2015 orocos KDL环境,会出现3个例程:geometry, chainiksolverpos_lma_demo, trajectory_example. 这一篇看一下geometry的例程。在frames.hpp中,定义了这些class: - class Vector - class R

2018-02-02 23:09:03 2758

原创 开源机器人库orocos KDL 学习笔记一:win7VS2015环境搭建

orocos_kdl windows 环境搭建牺牲了一个周末,总算是搞出来了,感觉这写代码原本是在linux上跑的,强行在windows上很费事,强烈建议在linux上玩。orocos 项目是开源机器人控制软件,详见:http://www.orocos.org/包含以下几个部分,这篇文章主要用于学习运动学与动力学库,简称KDL。源码可以从github下载:git

2018-01-21 19:04:46 5486 8

原创 三相异步电动机等效电路及仿真

三相异步电动机等效电路及仿真仔细分析了三相异步电动机单笼、双笼等效电路模型,及其重要公式,以及如何从一个实际的三相异步电动机建立其等效电路模型。最后给出了Simulink仿真,需要指出的是,在Matlab中,异步电动机的仿真也是基于单笼或双笼电机模型进行的。

2017-07-02 08:46:08 3609 9

原创 《Robotics, Vision and Control》部分翻译

仅供个人学习交流之用。7.6 应用:画图我们的目的是产生一个能使机器人画出一个字母‘E’的轨迹。首先我们定义了一些需要通过的点,这些点定义了字母的笔画。

2017-03-08 23:34:54 5201 7

原创 《Flask Web开发》重点笔记

《Flask Web开发》中实现例程中遇到的问题及解决方法记录。

2017-02-13 22:05:08 690

原创 《C和指针》学习笔记之树

《C和指针》中只是对最简单的二叉索引树进行了简单的讲解和最基本的实现,毕竟这不是一本关于数据结构的书。 1、插入、删除、查找、遍历1.1、插入 基本算法如下: 如果树为空: ——把新值作为根节点插入 否则: ——如果新值小于当前节点

2017-01-11 21:36:17 243 4

原创 《C和指针》学习笔记之队列

队列是一种先进先出(FIFO)的结构。排队就是一种典型的队列。首先轮到的是排在队伍最前面的人,新入队的人总是排在队伍的最后。

2017-01-08 00:01:19 263

原创 《C和指针》学习笔记之堆栈

堆栈是一种后进先出(LIFO)的数据结构。

2017-01-05 22:04:25 283

原创 无刷直流电机(BLDC)建模与仿真

按照最常用的定义,无刷直流电机有两种,一种是梯形波反电动势无刷直流电机,也就是通常说的BLDC,另一种是正弦波反电动势无刷直流电机,也就是PMSM。本文只研究梯形波反电动势无刷直流电机,也就是BLDC的建模和仿真。虽然没有PMSM控制精度高、转矩波动小,但是BLDC控制算法简单、成本低,在对转矩脉动要求不高的场合也有很广泛的应用。

2017-01-04 21:24:59 51707 80

原创 C语言中#undef的常用法

C语言中#undef的语法是:#undef 标识符用来将前面定义的宏标识符取消定义。整理了如下几种常见用法,如果以后发现其他的再添加进来。#include int main(){#define MAX 200printf("MAX = %d\n", MAX);#undef

2016-12-11 00:00:21 29556

原创 Matlab sim函数的用法

最近用Simulink做仿真的时候,需要在m文件里运行Simulink模型,而且需要传递一些参数,所以要用到sim函数。查看了help文档,并百度到了一些关于sim的用法的答案,但并没能达到我要的效果,大多数答案都是描述sim函数的参数,并没有说Simulink模型中应该使用什么模块以及如何设置,所以在尝试的时候经常出错。通过不断尝试,达到了我想要的效果:在m文件中向Simulink模型传递参数,

2016-11-26 20:50:37 70349 24

遗传算法求函数最大值,C++实现

用C++实现的遗传算法求函数的最大值,可运行

2016-11-17

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除