社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

从 B 站火到 GitHub:自制钢铁侠机械臂,成本 1 万块,网友:能把脑子开源一下?

GitHubDaily • 4 年前 • 748 次点击  
公众号关注 “GitHubDaily”
设为 “星标”,每天带你逛 GitHub!

来自量子位

别人的国庆节,硬生生造了一只钢铁侠的机械臂!

依旧是来自华为天才少年稚晖君,还是他迄今为止搞的项目中,最复杂的那种。

来吧,展示 —— 给葡萄缝针

在 “葡萄包扎术” 后,原本裂开小口的它,变成了这个样子:

划个重点:

上面的所有过程,可以在厕所远程实时完成!

它的名字也非常有趣 —— 叫做 Dummy

但毕竟头顶着 “B 站野生钢铁侠” 光环的稚晖君,都说这是自己最复杂的项目(耗时 4 个月),硬核程度定然不仅于此。

真实情况是 —— 这台机械臂,里里外外全部出自稚晖君之手!

(友友们,又是被稚晖君破防的一天)

于是乎,很自然的,弹幕再次被网友刷疯,来感受一下这个 feel(满屏的 “国粹”)

甚至连行内人都发出了惊叹:

(注:本文内容已经过稚晖君授权)

真正的机械臂该有的样子

稚晖君想要打造的机械臂,是具备多种交互方式的。

例如把刚才机械臂的末端,换成 “力反馈夹爪”,就秒变成了可以夹薯片的机械臂:

除了 “力反馈夹爪”,若是换成不同效应器,那可以实现的结果也会不同:

  • 安装 “激光器”,就可以实现三维雕刻

  • 安装 “画笔”,就可以进行书画

  • 安装小型的 “主轴”,可以作为 6 轴的雕刻机

而上面展示的这一切,均是 —— 同步现实

除此之外,稚晖君还做了许多不同的交互方式。

例如结合比较前沿的技术,增强现实 (AR)—— 真正的 “指哪打哪” 了。

还有通过示教器来开启的方式。

而这个示教器也是出自稚晖君之手,用他的话来说就是:

有我的地方就有屏幕。

这便是稚晖君设计的无线智能小终端,也是这台机械臂的 “伴侣” 了。

它可以通过低功耗蓝牙和机械臂进行无感连接,而在连接之后,就可以实时显示机械臂的各种状态信息、切换各种功能了。

当然,稚晖君也做了较为 “阳间” 的图形化方式。

而较为极客的 2 两种方法:通过串口 命令行,也有的哈。

这样的野生钢铁侠机械臂,究竟是怎么 “炼成” 的?

如何打造钢铁侠的机械臂?

这台看起来很酷炫的 “手子”,属于小型高精度 6 轴机械臂

整体来说,机械臂的打造主要分为四大部分:机械臂设计、闭环伺服、控制器和空间定位装置,分别对应机器人的躯干、心脏、小脑和眼睛。

机械臂设计,指机械臂的 “躯干”,让机械臂能稳定运动的必要步骤,包括机械分析、外观设计(3D 建模)、选材等。

当然,这里的设计并不那么容易。光是版本稿,就多达 150 多版

为了确保稳定 + 便宜美观,最后的机械臂主体采用了铝 CNC(数控)加工(确保稳定),装饰再采用 3D 打印进行制作(节省成本)

其中,CNC 部分是稚晖君拜托 “家里有厂” 的 UP 主 @XIKII 拆机狂魔你西哥 帮忙制作的,全部的 8 个金属件一共耗时半个月:

最后的外观设计出来,是酱婶的(中国红 & 钢铁侠红),别说还挺好看:

闭环伺服,也就是机械臂的 “心脏”,用来提供让机械臂干活的动力。

具体来说,软件上包括 FOC 算法、绝对值编码器 & PID 算法,CAN 总线通信协议等部分,硬件上,除了电机等材料的选用,还包括散热等细节。

通常来说,机械臂会采用无刷伺服电机,但这里它的体积确实比较大。

由于稚晖君想做比较小巧的机械臂,所以最后采用了步进电机,搭配 0 背隙谐波减速器,单个驱动效果做出来是这个样子的:

既然是 6 轴,最后整体采用了 6 个步进电机 + 6 个谐波减速器,搭配软件设计构成了机械臂的 “心脏”。

控制器,指机械臂的 “小脑”,用来操控机械臂的动作、来实现各种功能。

除了原理上需要掌握运动学、动力学分析以外,在软硬件上还需要掌握电路设计、通信和电源管理等额外的 “斜杠” 技能。

事实上,光是微控制单元(MCU),这台机械臂上就多达 12 个

其中,主控制器(采用冗余设计)和电机伺服驱动器(支持 CAN 总线 & 功率机联)的设计如下:

至于电路设计,也比想象中要更加复杂,毕竟要想达到上述 “多控制” 功能的话,除了命令行控制以外,蓝牙、无线通信的相关软硬件也需要进行考虑。

没错,除了有线控制以外,蓝牙、WiFi、2.4G 同样能控制这台机械臂~

最后就是空间定位装置了,也就是机械臂的 “眼睛”,用来让机械臂 “看见”、并操作需要完成的任务。

这里面包括我们常见的双目视觉算法、AHRS 系统和力传感系统等,都在这一步完成。

没错,稚晖君设计的机械臂并非只能做 “输入任务并完成” 的简单操作,而是一台真正能够从多个角度接收任务、并实时处理的 “智能机械手”。

简单来说,就是用双目视觉算法识别,再用 AI 算法实现姿态估计之类的操作:

搭载到机械臂上后,“手子” 就能根据人的动作,完成一系列复杂的操作(控制器改自 PS5 手柄):

当然,经过软件去抖、运动范围重映射、力矩强增强等操作后,机械臂能完成比手精度更高的操作(手抖玩家福音)

最后,就是将这几部分的软件算法和硬件组装起来,进行调试:

最后的成品效果是这样的,非常灵动:

那么,这台机械臂究竟能达到一个什么水平呢?

成本控制在 1 万以内

众所周知,机械臂的价格会随着精度的提升蹭蹭上涨。

一台质量比较好的、精度为 0.6mm 的工业 6 轴机械臂,价格会达到几万元左右,而精度在 0.02mm 左右的四大家族的工业机械臂,价格单位则直接涨到了几万美元

从稚晖君测试结果来看,精度为 0.01mm 的百分表,进行末端重复精度测量,精度直接达到了 0.02mm 左右

这样的精度,按理说机器人的价格也不菲。

然而,据稚晖君表示,Dummy 的整体硬件成本,计算下来不到 1 万元

当然,稚晖君也适当地节省了成本,包括谐波减速器和机械臂本体,就都是二手(如果是全新的硬件,成本可能需要 2 万元左右)

除此之外,据稚晖君表示,这台机械臂本身体积也很小,所以运动范围和精度也相应变小和变高了(目前市面上应该是没有体积这么小、精度这么高的机械臂)

这样的机械臂,究竟可以用在哪里呢?

大胆想象一下,未来如果继续提升精度,远程手术也未尝不可:

还有网友更具体地设想了一下使用场景:

即使在偏远的地方,各地大医院的医生也能通过远程手术,同步实现救人;或是利用智能程序设定,实现简单的缝皮等操作,为医生节省更多时间。

对于项目本身,有网友调侃 “开源一下脑子”:

也有一些科技区 UP 的梦幻联动(手动狗头)

当然,我们也知道,稚晖君已经于去年年底加入了 “华为天才少年”。

而这次稚晖君的项目,操作系统和 AI 计算平台也分别都用上了华为鸿蒙昇腾 Atlas 处理器

就在 8 月 2 日,任正非还在题为「江山代有才人出」的演讲中表扬了稚晖君的项目,指出这是华为创新的动力:

但对于 2012 实验室,公司从未给过你们过多约束。比如,有人研究自行车的自动驾驶,公司没有约束过他。

我们要生产自行车吗?没有啊。这是他掌握的一把 “手术刀”,或许以后会发挥什么作用,产生什么巨大的商业价值。

接下来,稚晖君计划将项目进行整理后开源,目前已经在 GitHub 上放了一个坑。

对自制机械臂感兴趣的小伙伴,可以不定期去蹲一蹲了~

One More Thing

此次制作的项目,其实也是稚晖君给自己的一份生日礼物。

在此祝上真挚的生日祝福~

项目地址(待整理):
https://github.com/peng-zhihui/Dummy-Robot

稚晖君机械臂视频(已授权):
https://www.bilibili.com/video/BV12341117rG

参考链接:
http://www.chinanews.com/business/2021/09-14/9565404.shtml

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/121263