首页 理论教育 如何让机器人解魔方更快更准?——优化魔方机器人的指令算法

如何让机器人解魔方更快更准?——优化魔方机器人的指令算法

时间:2023-06-20 理论教育 版权反馈
【摘要】:获奖等级:入围奖设计者:严淦,王嘉伟指导教师:田万一湖南大学,长沙,410012本项目基于Python与Arduino平台设计开发了一套快速解魔方系统——“老板,加双筷子”解魔方机器人。该机器人主要有图像识别、解法计算、动作控制三个功能模块,整个解魔方过程全自动化,无须人工参与。此外,我们还设置了一块LCD屏以显示魔方机器人当前的旋转步骤和时长。图141“老板,加双筷子”解魔方机器人

如何让机器人解魔方更快更准?——优化魔方机器人的指令算法

获奖等级:入围奖

设计者:严淦,王嘉伟

指导教师:田万一

湖南大学长沙,410012

本项目基于Python与Arduino平台设计开发了一套快速解魔方系统——“老板,加双筷子”解魔方机器人(图141)。该机器人主要有图像识别、解法计算、动作控制三个功能模块,整个解魔方过程全自动化,无须人工参与。

该快速解魔方系统的实现过程为:首先使用三个USB照相机对魔方图像进行采集;其次,使用Matlab对图像进行处理,得出魔方的初始状态;再次,利用Kociemba算法对魔方进行求解,得出步骤后根据整体还原效果进行多次计算优化,生成冗余动作最少的还原指令;最终,将优化后的步骤传送到Arduino板,再由Arduino板实现串口通信,发送指令给舵机控制板,由舵机完成对机械结构的驱动。该系统的机械结构共具有四个自由度,利用这四个自由度可以实现任意的魔方动作,且冗余动作极少。(www.xing528.com)

在图像识别模块,Python通过串口通信命令使三个摄像头同时拍摄,得到照片,交付给处理图像更优的Matlab,Matlab读取图像找到魔方颜色块,选取颜色更稳定的区域进行算法计算,对得到的RGB数据进行分析。算法可根据灯光颜色的变化而调整,输出颜色信息。

在解法计算模块,我们首先得到的是来自图像识别模块中的魔方初始状态,利用Kociemba算法可以轻松得到魔方的传统解法公式,大约为20步。在将魔方公式映射到具体的机械动作时,我们减少两步之间的冗余动作以及尽量避免左手的180°旋转,不同种类的机械动作设置相应的延迟时长以提高系统整体的稳定性与效率

此外,我们还设置了一块LCD屏以显示魔方机器人当前的旋转步骤和时长。

图141 “老板,加双筷子”解魔方机器人

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈