大数跨境
0
0

动手做一只基于ESP32的小型四足机器狗

动手做一只基于ESP32的小型四足机器狗 DF创客社区
2021-05-13
2
导读:在波士顿动力的Spot之后,四足机器狗变得非常流行。
【点击上方「蓝字」关注DF创客社区,一起成为技术颜控】

在波士顿动力的Spot之后,四足机器狗变得非常流行。

之前社区也分享过用树莓派做的四足机器人Pupper——《能跑能跳能遛弯儿,波士顿动力Spot的小跟班来了!项目开源!

用Arduino Uno做的Pupper的小弟——《可扩展性高,四足机器人斯坦福Pupper的小弟来了!

今天分享的是利用ESP32制作的小型四足机器狗。

特点

  • 只需要ESP32(不需要额外的PWM I2C、蓝牙模块等)
  • Arduino IDE
  • 只需要手机或平板就能遥控
  • 具有CLI接口用于校准和调试
  • 逆向运动学代码
  • 可配置的步态序列

电子部分

  • 1个38针的ESP32
  • 1个50x70毫米的原型开发板
  • 12个TowerPro MG90D舵机(使用其他舵机可能比较麻烦,因为尺寸可能不同,可以看下三个不同的类似mg90的舵机的图片)

<<< 左右滑动见更多 >>>

  • 1 x INA219 (可选)
  • 1 x MPU9250 (可选)
  • 3个Mini360(DC-DC降压转换器降压模块)或类似产品,2个用于前/后腿(或更多),1个用于ESP32
  • 1个18650锂电池电池座,用于2个元件(尝试找"18650电池座smt")。
  • 2个18650锂电池
  • 一些电容器

其他

  • 8个8x12x2.5毫米轴承
  • 4条杜邦线扎带
  • 用502胶水(氰基丙烯酸酯)将所有部件粘在一起

打印部件

所有要打印的STL文件可以在文末下载

有些部分是镜像的,为了保证能够正确打印。请注意观察图片。

我的打印机在第一层厚度上有问题,也就是象脚。齿轮应该被尽可能完美地打印出来,所以我添加了非常小的垫片来避免这个问题,你会看到一些部件 "飞 "过表面,记得启用对它的支持。

强烈建议大家用最好质量的打印零件,特别是齿轮部分。

要打印的零件的完整清单:

  • 1 x 身体部分
  • 2 x 腿部顶部
  • 2 x 腿顶(镜像)
  • 2 x 脚底板
  • 2 x 腿部底部(镜像)
  • 4 x 肩部1
  • 4 x 肩部部件2
  • 2 x 腿部支架部分1
  • 2 x 脚管固定器部件2
  • 4 x 伺服齿轮
  • 4 x 脚管鞋,用柔性长丝打印(非必须)
  • 1 x 盖子
  • 2 x 盖板夹子

我使用Ender 3 Pro,Cura,使用支持并选择动态质量。塑料是OPY的PLA。

可以在https://www.thingiverse.com/thing:4822059 或者在文末下载。

组装

准备工作

在开始之前,检查轴承是否可以很容易地安装在机体部件和肩部部件上。

还要检查肩部和车身部件上的孔是否打印得很好,伺服杜邦线(临时拆卸的伺服连接器)是否可以装在里面。

开始组装

我试图使机身尽可能的轻,因为小舵机不是很强大。

确保胶合面是平的,这边可以用一下锉刀。确保部件之间相互连接,没有空隙。

然后如上图所示把他们粘在一起。

舵机齿轮

切断舵机角(见图),使它适合舵机齿轮的部分,并把它们粘到一起。

腿部

将短的舵机角粘在 "腿顶 "部分。

将舵机插入 "腿部底部",如图所示插入杜邦线。

将另一条伺服电机的杜邦线穿过 "肩 "部的一个孔。

重复上述步骤。

把机身和腿组装在一起

如之前的图片所示,将所有杜邦线穿过腿部和机身的孔。

用Arduino/ESP32或舵机测试仪将所有舵机调到中间位置。

将 "舵机齿轮 "安装在舵机上,并将舵机插入机身。想要拧紧它可能是个挑战。

挤压没有舵机的 "肩膀 "部分(但有杜邦线),将其插入轴承之间。

重复其他舵机和部件的操作。

这个时候,我们不需要用螺栓固定腿部,等会儿我们需要按照我的GitHub资源库中的说明校准腿部:

https://github.com/SovGVD/esp32-robot-dog-code

PCB部分

PCB的配置由你决定。下面只展示我的做法。

传感器连接到ESP32的默认I2C总线(GPIO 2122)。

舵机连接到:

  • 左前方:25、26、27
  • 右前:16、18、17
  • 左后腿(后):13, 12, 14
  • 右后方(后):4、2、15

你可以在代码中重新配置,但要确保ESP32 ISR库支持。

代码

在Arduino IDE上安装额外的库:

  • ESP Async Web Server
  • ESP32 ISR Servo
  • MPU9250_WE
  • INA219_WE

设置WiFi接入点凭证:

  1. config_wifi.example.h重命名为config_wifi.h
  2. APssid改为你的机器人的任何名称,例如SmallRobotDog
  3. APpass改为密码(8个或更多字符),如MySup3rPassw0rd
  4. 代码上传到ESP32后,你应该能用你的手机或平板电脑找到SmallRobotDog的WiFi。

打开浏览器,输入网址http://192.168.4.1/,你会看到两个虚拟摇杆来控制机器狗。

希望大家能够喜欢。


原项目英文链接:https://www.instructables.com/ESP32-Small-Robot-Dog/

项目作者: Gleb Devyatkin

该译文首发于DF创客社区

转载请务必注明项目出处与原作者信息


硬件军火库


点击了解详情👆


大家有什么想说的或者是对文章翻译的指正,欢迎在下方留言

项目中涉及的所有代码、STL文件,可以在公众号后台回复“ESP32四足机器狗”下载!




 往期项目回顾 



▼ 能跑能跳能遛弯儿,波士顿动力Spot的小跟班来了!



点击阅读👆


▼ 可扩展性高,四足机器人斯坦福Pupper的小弟来了!



点击阅读👆

【声明】内容源于网络
0
0
DF创客社区
我们是专注于创新和开源硬件开发的公司——DFRobot成立的创客社区,无论你是资深创客还是小白,这里都有你的一席之地。一个人玩自己的项目,你只是寂寞宅;一群人看你玩项目,你就是技术牛!快来分享你的项目吧!
内容 1282
粉丝 0
DF创客社区 我们是专注于创新和开源硬件开发的公司——DFRobot成立的创客社区,无论你是资深创客还是小白,这里都有你的一席之地。一个人玩自己的项目,你只是寂寞宅;一群人看你玩项目,你就是技术牛!快来分享你的项目吧!
总阅读1.9k
粉丝0
内容1.3k