基于STM32的魔方机器人设计
2020-07-13徐豪康赵越岭邹正杰梁慧泽
徐豪康,赵越岭,邹正杰,梁慧泽
基于STM32的魔方机器人设计
徐豪康,赵越岭,邹正杰,梁慧泽
(辽宁工业大学 电气工程学院,辽宁 锦州 121001)
在充分考虑魔方机器人功能和性能的基础上,设计了以STM32为核心处理器的魔方机器人系统,其控制系统部分包括STM32最小系统、图像采集电路、步进电机驱动电路、人机接口电路等模块电路组成。魔方机器人控制系统通过OpenMV采集魔方色块图像信息,并利用CFOP算法获得解魔方步骤,进而控制步进电机复原魔方。经过测试,设计的魔方机器人具有结构简单、图像识别准确性高、复原快速、准确等优点。
步进电机;机器视觉;CFOP算法;魔方机器人
随着计算机技术和人工智能等技术的发展,魔方与机器人的结合,在科普领域取得了突破性的进展。还原魔方机器人是智能化机器人的一个全方面体现,对其算法和机构的研究也成为机器人技术的十分重要的研究内容,解魔方机器人整体的架构和多种变型模式也是近几年来的热点[1-2]。与此同时,科普产品的开发也更加重视科学性、趣味性、可互动性。解魔方机器人融合了机器视觉、机器人技术、图像处理、魔方算法等多学科知识,要设计一个能够稳定、快速的解魔方机器人系统具有极大的难度,也正因为这样,利用机器人复原魔方具有很大的科研意义与创新性。
同时,机器人技术在国民经济与人民生活中的应用也得到了极大的提高,应用科普领域的机器人成为科普展品研究的热点,将魔方这种老少皆宜的实物与机器人结合,也必定将在科普领域得到突破性的进展。
1 设计原理方案
在充分考虑功能和性能的基础上,设计的魔方机器人控制系统以STM32为核心处理器,包括STM32最小系统、图像采集处理模块、步进电机驱动模块、人机接口电路等模块电路组成,系统的结构框图如图1所示。系统通过OpenMV采集魔方色块图像信息,并利用CFOP算法获得解魔方步骤,进而控制6个面的步进电机运动复原魔方。
图1 系统结构框图
2 硬件设计
2.1 STM32最小系统
本设计的STM32最小系统主要由STM32F103C8T6处理器、晶振电路、复位电路、JLINK仿真接口电路及BOOT模式选择电路组成。
2.2 图像采集电路
图像采集摄像头是魔方机器人的“眼睛”,其稳定性在整个系统中起着至关重要的作用,因此摄像头的选型就显得尤为重要。经对比可知,OV7725相比于OV7620、OV7670等摄像头具有像素高、帧率快等优点,因此本设计内部集成了OV7725摄像头OpenMV图像采集模块。OpenMV图像采集模块支持输出最大为30万像素的图像(640×480分辨率),支持使用VGA时序输出图像数据,且输出图像的数据格式支持YUV(422/420)和RGB565格式。OpenMV图像采集模块具有体积小、工作电压低的特点,同时具有对采集到的图像进行补偿并支持伽玛曲线、白平衡、饱和度、色度等基础处理的功能,大大简化了核心处理器的处理要求,对提升系统的处理速度有着极大的作用。OpenMV图像采集模块的接口电路如图2所示。
图2 OpenMV图像采集模块接口电路
其中PCLK、HREF及VSYNC分别是像素同步时钟、行同步信号以及帧同步信号。XCLK是用于驱动整个传感器芯片的时钟信号,是外部输入到OV7725的信号,而PCLK是OV7725 输出数据时的同步信号,是OV7725内部输出的信号。XCLK类似于STM32 芯片的HSE引脚,而PCLK 引脚类似于STM32的I2C外设的SCL引脚。
采集图像时,外界图像透过镜头,经过感光矩阵,感光矩阵由二极管构成,二极管感光产生相对应的电流电压,进而感知光的强弱。同时传感器通过感光元件上的彩色滤光片来区分色彩,通过使用RGB 3种滤光片分别覆盖3个感光元件,这样由3个像点产生1个彩色像素,3个像点的数字信号就是1个彩色像素的数据。1个摄像头上的所有感光元件一起产生的数字信号构成了一幅图像的数据。通过将选定的15个色块的图像信息与预先设定好的各个颜色阈值进行对比,识别15个魔方块的颜色,经过魔方的一系列旋转与图像采集,最终实现魔方6个面的54块颜色识别。
2.3 步进电机驱动模块
设计中选用雷赛公司推出的数字式两相步进电机驱动器DM542,该模块采用DSP技术,用户可以设置400~51200范围内的细分的以及额定电流内的任意电流值,能够满足本设计的应用需要。DM542驱动器采用差分式接口电路并内置高速光电耦合器,允许接收长线驱动器,具有很强的抗干扰能力。使用中通过STM32输出高低电平至ENA、DIR、PUL接线端子控制电机启停、转动方向以及电机转动。
3 系统主程序
系统上电后,首先开始各部分的初始化,包括OpenMV初始化、电机驱动初始化等。初始化结束后,由于设计选用的步进电机不带编码器,没有真正的位置反馈,因此首先要判断当前电机的位置是否为正90°,若不是,则需要人工手动校正。系统主程序流程如图3所示。
4 系统调试
4.1 系统实物图
设计的魔方机器人实物如图4所示,主要包括机械结构部分、控制器部分、OpenMV图像采集模块、步进电机及驱动器、显示屏等。
图3 主程序流程
图4 魔方机器人实物图
4.2 颜色识别调试
将OpenMV固定好以后,采集魔方图像,为方便调试将图像发送至OpenMV上位机调试界面。通过分别调节如图5所示的LAB色彩空间的各个参数的值,来确定各个颜色最适当的阈值[4],最终确定的各个颜色阈值如表1所示。
表1 颜色阈值调试参数整定表
上位机LAB色彩空间阈值调试界面如图5所示。
图5 阈值调试图
将选取的15个颜色识别区的LAB色彩空间的参数与之前设定好的阈值进行比较,确定各个色块的颜色。识别后在显示屏上的结果如图6所示。
图6 颜色识别图
5 结论
设计了基于STM32的魔方机器人,对OpenMV采集的图像信息进行处理,通过设定色块颜色阈值识别各个色块,经CFOP算法计算电机运动步骤,还原魔方。测试结果表明,魔方色块图像识别准确性高、复原快等优点,为魔方机器人的设计提供了一种可行的方案。
[1] 张锡英, 车鑫. 图像颜色特征提取及其分类研究[J]. 安徽农业科学, 2014, 42(7): 2196-2198.
[2] 高达. 基于STM32双臂魔方机器人的设计[J]. 电子产品世界, 2018(11): 51-53.
[3] 张艳珠, 古长军, 王凡迪, 等. 魔方机器人控制系统设计[J]. 沈阳理工大学学报, 2016, 35(3): 41-46.
[4] 何智勇, 贲可荣. 基于OpenGL的魔方自动求解算法与实现[J]. 哈尔滨工业大学学报, 2004(7): 893-895.
[5] 胡青华. 魔方复原机械手的设计与制作[J]. 中国科技信息, 2014(8): 221-223.
[6] 黄铭, 陆思良, 孔凡让. 魔方还原机器人的视觉子系统设计与实现[J]. 机械与电子, 2013(5): 60-64.
Design of Rubik’s Cube Robot Based on STM32
XU Hao-kang, ZHAO Yue-ling, ZHOU Zheng-jie, LIANG Hui-ze
(School of Electrical Engineering, Liaoning University of Technology, Jinzhou 121001, China)
On the basis of fully considering the function and performance of Rubik’s Cube Robot, Rubik’s Cube Robot System with STM32 as its core processor is designed. The control system consists of STM32 minimum system, image acquisition circuit, stepper motor drive circuit and man-machine interface circuit. The image information of magic cube color block through OpenMV is collected with magic cube robot control systems. The step of solving magic cube is obtained by CFOP algorithm, and the step motor is controlled to recover magic cube. After testing, the Cube Robot has the advantages of simple structure, high accuracy of image recognition, fast and accurate recovery.
stepper motor; machine vision; CFOP algorithm; Rubik’s Cube Robot
TP242
A
1674-3261(2020)02-0080-04
10.15916/j.issn1674-3261.2020.02.003
2019-06-02
辽宁省科技厅自然基金指导计划(2019-ZD-0697);国家级及辽宁省大学生创新创业计划(201810154007);辽宁省大学生创新创业计划(201910154099);辽宁工业大学大学生创新创业计划(201801060)
徐豪康(1998-),男,河南鹤壁人,本科生。
赵越岭(1972-),男,辽宁凌海人,副教授,博士。
责任编校:孙 林