不知道您是否曾经被波士顿动力的机器狗视频刷过屏,是否曾经梦想自己也能亲手玩弄一下最前卫、科技感十足的12自由度机器狗?现在机会终于来了!
斯坦福Pupper是一个小型化的四足机器人,能跑能跳能遛弯。亲民的价格和简单的设计可以让高中及以上机器人爱好者自己动手DIY一个有趣能动的四足机器人。
可以用游戏手柄控制Pupper的移动方式和目的地。Pupper内部的树莓派会接收到控制器的命令后,控制伺服电机的运动(每条腿三个),从而以正确的运动方式走到正确的位置。
Pupper被设计为“黑客入侵”模式,希望用户能够根据自己的内心需求调整和扩展机器人的行为。尽管机器人可以开箱即用,但您可以添加的一些功能包括不同的步态(约束,奔跑等),如叼东西或跟着你走等高级行为。您还可以在操作真实Pupper之前,在PyBullet中模拟Pupper的运动。
让我们开始Pupper之旅吧。首先查看如下的物料列表及组装手册。所有物料如果从美国买,估计$1000左右。你也可以在某宝以很大的优惠价格购买到所有物料及组装好的 Pupper。如果您对 Pupper 有兴趣,但也担心自己的组装能力,建议先购买一个组装好的,然后再慢慢研究,会更容易些。购买链接、所有的代码和设计文档见文末。
概要
为了让组装简单有趣,需要烙铁焊接的物料,我已经提前做了焊接,组装过程中不需要用到烙铁。下图所示为组装好的Pupper和未组装的所有物料示意图。
关于成本,如果从美国购买组装物料,成本低于$1000的可能性很小(还不包括损耗),最让人心急的是快递时间,赶上疫情,快递的时间鬼神莫测。好在笔者已经在国内打通了供应链,所有物料都可以快速搞定,详细见后面的连接。
建议先从笔者提供的连接购买组装好的Pupper,上手快,也方便练习拆解与组装;
第一次DIY不建议使用胶水,熟练后再上胶水,否则后悔莫及;
如果已经下定决心自己组装了,请参考如下的组装说明,祝君好运!
开启组装之旅
步骤1. 安装伺服码盘
1.1. 使用伺服臂(不是码盘)扣在伺服上使伺服处在中间位置
1.2. 安装伺服码盘,让码盘的孔位大概在45度位置(见下图)
1.3. 逐步把M3x6mm螺钉拧紧,让码盘和伺服融合在一起
1.4. 一些码盘的质量较差,拧螺钉时比较费劲。注意来回微调码盘和伺服轴的位置,找到适配角度就会比较容易。拧螺钉的过程中,注意观察不要过度拧紧,否则会损坏伺服。
步骤 2. 连接码盘和大腿根伺服内框
按照90°角度连接,并拧紧M3x8螺钉(如图所示 ),组装前,过程中及后的示意图(注意左右腿的方向)
步骤3. 安装大腿根内框伺服
3.1. 将伺服电机放入内框,然后轻轻摆动,使伺服轴从内框的大圆孔中伸出
3.2. 伺服左侧使用M4x10mm 螺钉,伺服右侧使用M3x16mm 螺钉
3.3. 把M3x16mm螺钉拧入连接柱
组装示意图(注意螺钉的位置)
步骤 4. 安装大腿根内侧伺服臂
4.1. 将伺服转到中立位置,然后以所示角度(向下45度)滑动伺服臂
4.2. 在伺服臂上侧拧入M3x8mm 螺钉,在边上拧入M2x8mm 螺钉,固定伺服臂
组装示意图
步骤 5. 腿部
按照如下示意图把物料摆放好后安装,顺序分别是,带肩螺栓,分体式轴承,下部小腿,分体式轴承,上部大腿,锁紧螺母。
步骤 6. 连接大腿和伺服臂
6.1. 将上肢大腿的弯曲边缘与伺服臂对准。通过碳纤维上预留的孔拧入M3x6螺钉。
6.2. 特别要检查距离伺服最近的螺钉要垂直拧入,防止和外部伺服臂刮蹭,发生刮蹭的另一个重要原因是支柱拧的太紧,3D打印件硬度有限,不能过度拧紧。
步骤7. 大腿根外部
将伺服放入3D打印的框中,并用两个M4x10mm螺钉加固定,组装示意图如下。
步骤8. 大腿外侧伺服安装
8.1. 将伺服臂调整到其中间位置,然后如图所示以45度角固定伺服臂。
8.2. 伺服臂的固定参考之前步骤.
组装示意图
步骤9. 连接大腿根内外部
9.1. 对齐内外部组件,M4x10mm螺钉应在同一侧,伺服臂应成90度角。
9.2. M3x16 螺钉拧入支柱内,不要用力过猛,防止损坏。
9.3. 此时,上下腿可能会开始移动,可以标记左右两侧,以免感到困惑。如果不知道哪一边,请与3D进行比较:
https://stanford195.autodesk360.com/g/shares/SH919a0QTf3c32634dcfedf61e031f673710
示意图
步骤10. 加入另外2个支柱
用4个M3x10mm螺钉分别固定另外2个支柱,示意图如下。
步骤11. 测试每个伺服器的整个运动范围
11.1. 离身体近的伺服臂应从45度向上移动到完全接触支柱
11.2. 离身体远的伺服臂应从向上接触支柱到向下倾斜45度
步骤12. 组装大腿延长杆
均等地拧紧杆端,直到杆上最远的孔间距与上腿连杆上的孔(伺服臂中心到最后一个碳钻孔点)相匹配为止 ,请参阅图片。
步骤13. 将延长杆连接到伺服臂
从内侧(注意分清左右腿的内侧),用M3x10螺钉将延长杆固定到伺服臂上。
步骤14. 将延长杆连接到小腿
将M3x10螺钉穿过碳纤维件,然后穿过杆端,使用内六角扳手拧紧时,使用扳手将M3防松螺母固定到位。
关键的骨架已经完成,后续身体部分的组装就是“面子”工程了,颜值当道的时代,面子工程不容小觑!
步骤15. 将轴承压入指定空位
将两个轴承压入最前面3D打印支架的两个孔中(称为“前前部”),将另外两个轴承压入后面一块的两个孔中(称为“后前部”)。
步骤16. 固定大腿部
16.1. 用M4x8螺钉把腿部件固定在身体支架上
16.2. 用M3x8 螺钉穿过轴承拧入腿部的支架螺钉孔中
步骤17. 把组装好的腿/身体支架固定到身体底部碳纤维板上
用16个 M3x6 螺钉把之前组装好的部件固定在底部碳纤维底板上。
步骤18. 组装树莓派板子
18.1. 参考上面类似的步骤把树莓派固定到3D打印件上。
18.2. 用固定绑带把树莓派固定到底部碳纤维板上。
步骤19. 组装电源板,连接伺服到电源板
19.1. 把电源板插入树莓派板子上(注意插针方向,伺服的J1J2…J12和电源板上的J1J2…J12一一对应)
19.2. 按照示意图把伺服带的杜邦线分别插入电源板的对应位置,注意线序
19.3. 把变压器连接电源板
示意图
大功告成
尽情 play 吧!
哪里购买物料?
下面的链接是BOM list:
https://docs.google.com/spreadsheets/d/1zZ2e00XdzA7zwb35Ly_HdzfDJcsxMIR_5vjwnf-KW70/edit#gid=963689194
如果想便宜并节省时间,强烈推荐通过本站的淘宝连接一站式购买所有物料:
http://link.nxez.com/buy/stanford-pupper
组装手册
如下是英文版本的组装手册:
https://pupper.readthedocs.io/en/latest/guide/assembly.html
设计文档
如下链接是 Fusion 360 CAD model:
https://stanford195.autodesk360.com/g/shares/SH919a0QTf3c32634dcfedf61e031f673710
如下连接是电源板PCB文件:
https://github.com/stanfordroboticsclub/Pupper-Raspi-PDB/
Pupper源代码
主仓库链接如下:
https://github.com/stanfordroboticsclub/StanfordQuadruped
根据里面的README可以创建环境,创建的过程中,还会用到如下仓库:
https://github.com/stanfordroboticsclub/PupperCommand
https://github.com/stanfordroboticsclub/PS4Joystick
产品页面:http://www.mangdang.net/page5