基于CANopen的机械臂控制器软件设计
摘要 | 第5-6页 |
ABSTRACT | 第6页 |
第一章 绪论 | 第10-21页 |
1.1 课题背景及研究意义 | 第10-11页 |
1.2 国内外研究现状 | 第11-20页 |
1.3 研究内容 | 第20-21页 |
第二章 机械臂硬件架构介绍 | 第21-27页 |
2.1 引言 | 第21页 |
2.2 硬件架构 | 第21-25页 |
2.2.1 工控机 | 第24页 |
2.2.2 CAN-USB转接器 | 第24-25页 |
2.2.3 驱动器 | 第25页 |
2.3 本章小结 | 第25-27页 |
第三章 机械臂运动学分析 | 第27-37页 |
3.1 引言 | 第27-28页 |
3.2 运动学分析 | 第28-35页 |
3.2.1 位姿描述 | 第28-29页 |
3.2.2 连杆坐标系及连杆参数 | 第29-30页 |
3.2.3 连杆变换与位姿正运动学方程 | 第30-31页 |
3.2.4 速度正运动学方程 | 第31-33页 |
3.2.5 位姿逆运动学方程 | 第33-35页 |
3.3 本章小结 | 第35-37页 |
第四章 CANopen主站实现 | 第37-55页 |
4.1 引言 | 第37-39页 |
4.2 CAN报文分析 | 第39-40页 |
4.3 CiA301通信子协议实现 | 第40-50页 |
4.3.1 主站软件架构 | 第41页 |
4.3.2 对象字典&自定义内容模块 | 第41-42页 |
4.3.3 报文生成模块 | 第42-45页 |
4.3.4 主站直接发送CAN报文的一般流程 | 第45-46页 |
4.3.5 报文队列模块 | 第46-47页 |
4.3.6 队列发送者模块 | 第47-49页 |
4.3.7 监听者模块 | 第49-50页 |
4.4 CiA DSP-402设备子协议实现 | 第50-52页 |
4.4.1 驱动器状态机 | 第50-51页 |
4.4.2 操作模式 | 第51-52页 |
4.5 实时性实验 | 第52-53页 |
4.6 本章小结 | 第53-55页 |
第五章 控制器软件设计及实现 | 第55-68页 |
5.1 引言 | 第55-56页 |
5.2 用于机械臂的CANopen主站 | 第56-60页 |
5.2.1 初始化 | 第56页 |
5.2.2 单位转换与坐标系转换 | 第56-57页 |
5.2.3 运动停止及恢复 | 第57-58页 |
5.2.4 单独线程中的自定义模块 | 第58-59页 |
5.2.5 运动完成的判断 | 第59-60页 |
5.3 位置插值模块 | 第60-62页 |
5.4 状态更新模块 | 第62-63页 |
5.5 位置插值与状态更新模块实验 | 第63-65页 |
5.6 机械臂位置重复精度测试 | 第65-66页 |
5.7 本章小结 | 第66-68页 |
第六章 总结与展望 | 第68-70页 |
参考文献 | 第70-74页 |
附录1 复杂表达式的结果 | 第74-77页 |
附录2 实时性实验数据 | 第77-79页 |
致谢 | 第79-80页 |
在读期间发表的学术论文与取得的其他研究成果 | 第80页 |