硬核 | 自制一台钢铁侠的机械臂
【公众号回复 “1024”,免费领取程序员赚钱实操经验】
大家好,我是章鱼猫。
今天推荐的这个项目是「Dummy-Robot」,稚晖君的超迷你机械臂机器人项目,自制一台钢铁侠的机械臂。
给葡萄缝针:
之前推荐过稚晖君的项目:
看完他做的这些项目,不由会感叹一句:不愧是华为天才少年。
回到钢铁侠这个项目。
关于结构设计
视频中原版设计使用的步进电机 + Harmonic 的谐波减速模组,其中后者成本较高(二手大概是 600 元一个),因此为了能让大家尽量复现本项目,作者后期会添加一个自制摆线针轮减速器 + 3D 打印的低成本方案。
关于电路模块
电路为了实现主要的机械臂运动控制功能,其实核心就 4 块板子:
REF核心板
REF底板(也就是机械臂底座里面的控制器电路板)
步进电机驱动
Peak 示教器
关于核心固件
这个机械臂的固件核心就是运动学姿态解算,已开源,现在写死的很多参数会设计成可配置的,方便大家用本项目学习完后迁移到自己设计的机械臂中。
关于上位机
视频中的软件仿真基于 RoboDK,作者在视频中开发了连接 Dummy 的 Driver(驱动部分官方 document 有介绍的,原版是基于 TCP 网络接口,作者修改成了串口并兼容 dummy 的协议)。
上位机目前暂时没有计划开源,因为还有很多功能要添加。
关于控制算法
首先,运动学部分是已经实现了的,正逆解都是传统 DH 参数计算的,这里使用的算法是求解上一姿态和目标姿态中 6 个关节变化最大角里面最小的那一组作为逆解采用的 config。这样可以保证机械臂始终以最小转角进行姿态切换。
然后,关节角到电机驱动器输入信号的转换这一块,使用的是梯形加减速曲线进行速度位置规划。
另外,六个电机使用 CAN 总线连接,每个电机接受两个 ID 号的信息(自己的 ID、0 号 ID),0 号 ID 作为信息广播和同步用。电机接收到运动指令后将信息储存在影子寄存器中,待收到广播的同步信号后开始运动,这样能进一步保证电机同步性。
B 站地址:https://www.bilibili.com/video/BV12341117rG
开源项目地址:https://github.com/peng-zhihui/Dummy-Robot
开源项目作者:稚晖
推荐阅读
只有 100 行的 Web Server 项目,非常值得学习
最近,章鱼猫建了一个「GitHub 精选交流群」,欢迎大家一起交流优秀开源项目,也可以宣传自己的开源项目,在 「GitHub 黑板报」公众号后台回复【加群】邀请你入群。
---特别推荐---
特别推荐:一个新的优质的专注分享各种浏览器插件、黑科技教程、各种你想不到的高效率软件及工具的公众号,「程序员掘金」,专注挖掘好东西,非常值得大家关注。点击下方公众号卡片,直接关注。