我们在生活生产中,常常会遇到有“投掷”需求的相关场景,并以此开发了许多产品,如网球、乒乓球等球类发球机,消防灭火炮,军用播撒器等。2020年,谷歌AI发布了投掷机器人产品TossingBot,旨在拾取并投掷或放置包裹、零件,以进一步提高工厂运转效率。不过,受限于其应用场景与开发时遇到的诸多困难,TossingBot最终的呈现形式更像是传统的机械手,而非其名字上所提的“投掷机器人”。项目以课程挑战赛的投掷机器人为跳板,旨在设计制造一款能够自主识别目标并装取发射的投掷机器人。
项目依托挑战赛,旨在设计一个能够自动识别目标圆、自动调整并将网球准确投入目标圆、且能够自动装填的投掷机器人。该机器人能够同时观察并识别多个目标圈,随后自动控制相关电机完成射程调节、网球发射和再装填等操作。通过标准化、模块化设计,产品能够实现零件快速更换和系统改装,具有较好的拓展性。
小组成员经过分工合作,经过三个阶段,多次讨论和修改完善方案后,完成了投掷机器人的设计和虚拟制作。受限于疫情等外在因素,小组成员未制作产品实体。机械部分,小组完成了发射和自动装填的设计和运动分析,校核了重要承重件的强度。机器人通过压缩和释放弹簧实现网球投掷、通过调节发射高度调节投掷距离,运动模型简洁。整个机械部分中应用较多套件、标件,实现了一定程度的模块化,可靠性好、成本低、更换快捷方便。控制部分,小组完成了基于树莓派和arduino的控制模块代码。借助双目相机、深度学习算法,小组在参考开源代码后实现了从识别目标、读取距离、控制电机的一系列流程操作;同时,小组在其中中整合了手动控制代码,增强了控制模块的可靠性。