介绍
SmallKat是伍斯特理工学院的两位学生(Keion Bisland和Xavier Little)在Kevin Harrington编写的框架代码下设计和制作的四足机器猫平台,它采用3D打印,是一种低成本、开源的16自由度运动平台。该平台的目的是为了教育/研究提供一个完全开源的四足运动平台,它同时面向高端玩具市场。和竞争对手的产品相比,该平台使用业余的伺服系统和普通的电子器件,可以使得它的整体价格维持在一个非常低的水平上。
SmallKat有三种尺寸:微型、小型和XL。其中,微型尺寸最小,重约一磅,和一只小猫咪的大小相当,重量相近。小型版本是目前提供的产品,它有两种不同的实现方案。XL版本则是一个研究性的平台,它是伍斯特理工学院MQP项目的产物。
详细信息
在简单版本的解决方案中,该电子平台构建在单个ESP32系统级芯片上,搭载了16个伺服驱动器、三个开关模式的去电池电路和一个BNO055惯性测量单元。
该平台使用了现成的零部件和印刷组件,所以很容易组装。它使用EPS32芯片内置的WiFi模块上传传感器数据并下传伺服位置信息。这种在线配置方式使得它非常容易开发,因为可以从附近的PC上运行运动学/步行步态编码。它的运动学模式可以即时切换,步行步态/身体的控制也很容易灵活控制,无需重新启动SmallKats上的控制器,从而支持快速开发。
一旦算法最终确定了,我们将把它发布到Git上,它就可以加载第二种离线方式的配置,从而在其硬件的强实时循环中运行。该简单版本平台的缺点是,它要求房间里的WiFi信号必须保持稳定。
第二种高级解决方案使用与Wifi版本相同的控制代码,除此之外,它还会加载一个内核,并在机器人板载的树莓派上运行它。
该配置使用STM32连接到BNO055惯性测量单元和伺服驱动器上,并通过HID将它们直接桥接到板载树莓派上。这种解决方案的第一个版本使用了Teensy,但是我们希望可以提供完全开源的软件栈,所以切换到了自己开发的STM32板子上。
相比于上文的简单版解决方案,第二种方案更加昂贵,在整个开发循环中,需要将代码推送到git服务器上,并重新启动机器人控制软件栈以加载新的代码。这些权衡表明,研究人员可能同时需要这两种解决方案,所以我们提供了两种版本。此外,玩具市场只对完全独立的电子产品感兴趣,因为它不需要附近的PC机来启动就能运行。
这个机器猫有个有趣的防摔倒功能。惯性测量单元会生成一个重力矢量,可以用它进行计算,以判断SmallKat是否翻倒。当它偏离轴线到了一定程度,平台上的运动学控制器将旋转头部和尾部以施加反科里奥利力,从而预防它摔倒。
对项目详细硬件信息感兴趣?欢迎点击阅读:https://hackaday.io/project/164727-smallkat-an-adorable-dynamics-oriented-robot-cat