奥托·梅卡努姆轮
我想搭建一辆配备梅卡努姆轮的四轮驱动奥托机器人。
我还想试用一下 Pi Pico W,不过使用其他开发板应该也挺简单的。
Pico W 支持通过 Wi-Fi 进行控制,所以我决定采用这种控制方式,并使用了 RobRemo 应用程序。https://roboremo.app)作为我的控制应用程序。
我之前没怎么接触过 CircuitPython 编程,所以这次也决定用 CircuitPython 来写代码。不过在开发过程中,Wi-Fi 连接一直不稳定,所以我把代码移植到了 MicroPython 平台。虽然我对 MicroPython 完全不熟悉,但 Wi-Fi 稳定性明显提升了很多。
奥托机器人通常基于Arduino或esp8266开发板以及Blockly编程环境进行开发。这种设计应该可以轻松调整,以适应Arduino平台。此外,还有针对树莓派Pico的Blockly编程环境实现方案。https://rafaelaroca.wordpress.com/2021/03/03/block-based-programming-on-raspberry-pi-pico-with-bipes/
我使用了Waveshare Pico伺服驱动器板(https://www.waveshare.com/pico-servo-driver.htm)它的尺寸为65毫米×56毫米,因此有足够的空间供用户选择不同的主板配置。
我的基础设计灵感来源于奥托·忍者
我尝试了几种就地打印的梅卡尼姆轮,这些效果最为理想:https://www.chiefdelphi.com/t/preassembled-3d-printed-2-mecanum-wheels/374184/96。我对它们进行了改装,使其可以安装在舵机摇臂上。支撑楔块可以用剪刀剪掉,或者用钳子扭断。
我设计了一款适用于预装式梅卡努姆轮(来自速卖通)的适配器,其性能比现成组装的版本要出色得多。https://www.printables.com/model/519830-otto-mecanum-48mm-mecanum-wheel-servo-adaptor
印刷:
用PLA材料打印,层厚0.2毫米,不用支撑结构,成功率达15%。
每种方向的轮子,你都需要打印两个出来。
零零碎碎的小物件
- 带有接口的树莓派 Pico W(Raspberry Pi Pico W with header)https://kitronik.co.uk/products/5345-raspberry-pi-pico-wh-wireless-with-header),
- 4个连续旋转的 MG90S 舵机
- 一个HC-SR04超声波传感器( )https://kitronik.co.uk/products/46130-ultrasonic-distance-sensor-hc-sr04-5v-version),
- 一个Kitronik公司的线路跟随板(https://kitronik.co.uk/products/5337-autonomous-robotics-platform-line-follower-board),
- 一个16x8的LED矩阵显示屏(https://www.ottodiy.com/store/products/led-16x8-ultra-bright-matrix抱歉,目前该商品暂时缺货。不过我在速卖通上找到了“OPEN-SMART 0.8英寸16x8 I2C LED点阵显示屏”这款产品。https://www.aliexpress.com/item/1005004399231415.html),这样操作完全没问题(注意针脚顺序有所不同)。
- 几个与这些类似的红外线接近传感器( )https://www.amazon.co.uk/Youmile-Infrared-Obstacle-Avoidance-Arduino/dp/B07PY3CVSV/)
- 一个普通的蜂鸣器(https://kitronik.co.uk/products/3311-pcb-mount-buzzer-with-drive)
- 一个按钮开关。https://www.aliexpress.com/item/32822336474.html)
- 2块可充电9伏电池(https://www.amazon.co.uk/dp/B07NV4ZJ5Z)
- 2个电池连接器(https://kitronik.co.uk/products/pp3-battery-clip-lead-heavy-duty)
- 一个拨动开关(https://www.aliexpress.com/item/1005003433590148.html)
组装说明:
底座部分在伺服器的安装孔处设有三角形支撑件。拆卸这些支撑件时,需先向外推使其在连接处折断,再向内扳动将三角形部分折断即可。
我的断点设计得不是特别好,所以可能需要进行一些修整,把边缘清理干净。
接下来定位好舵机,并将舵机夹件安装到位。建议给舵机电线贴上标签,以便区分不同电线,然后将它们穿过孔洞引入电路。

将电线连接到拨动开关上,然后将其安装到底座上,用裁短的舵机 horn 固定好即可。
现在将电池支架安装到位,并用几颗自攻螺丝将其与舵机夹固定,螺丝要穿过两者连接处的空隙。
现在将LED矩阵安装到位,并通过将固定夹用一颗小自攻螺丝固定在伺服夹上来进行固定。
将线路跟随传感器的电线从底部穿入,夹住传感器并将其安装到固定夹上,再连接电线,最后将固定夹夹在底座上。
现在把电池放进去并连接好。(我以前只用过一节电池。)
用另外4颗自攻螺丝将PCB固定好。
现在,你可以将舵机、蜂鸣器、线路跟随器和LED矩阵连接起来了。
(见项目照片中的线路图)
此时最好也把开关的电线连接起来 。
将超声波传感器和红外线接近传感器安装在中部位置,并连接它们的电线。
先固定好超声波传感器。
请注意,我是用5伏电源为HC-SR04供电的,但Pico单板需要3.3伏的信号,这就是为什么我在回波(回声)信号上加了一个电位分割器的原因。
我发现用小型螺丝刀撬起固定超声波传感器的夹子是最简单的方法。
红外接近传感器是用小型自攻螺丝固定的。
将这些传感器连接到控制板上,然后将中间部分夹在底座上,将开关线引出至顶部,并将蜂鸣器安装在合适的位置即可。
将开关安装到顶部部件上,并用舵机拉杆固定住。连接好电线后,再将其固定在机身上。
现在你可以把奥托的发带夹上去了。(这个“蝴蝶结”是朝下方向的)
用自攻螺丝将舵机转向杆固定在车轮上,然后将其安装到舵机上。两种型号分别为LR/RF
用于 RoboRemo 的 Micropython 代码和接口文件可在 GitHub 上找到。https://github.com/UEA-envsoft/Otto-Mecanum
모델 소스
