许聚武,熊远生,张 敏
(1. 嘉兴学院: a.信息科学与工程学院,b.数据科学学院;2. 嘉兴南湖学院 机电工程学院,浙江嘉兴314001)
浙江省大学生机器人竞赛是培养和提高大学生多学科专业知识交叉、知行合一、创新创业创造和团队协作能力的一项综合性学科竞赛活动,[1-4]嘉兴学院一直十分重视并鼓励学生积极参加.从浙江省“中控杯”机器人竞赛暨浙江省高校机器人邀请赛开始,学校就专门开辟了相关实验室,配备了常用的仪器设备,学生的学习积极性和参赛热情持续高涨,目前已成功完成五届比赛并取得了较好的成绩.
图1 机器人控制系统通用控制板原理示意图
浙江省大学生机器人竞赛主要包括机械结构设计、电路设计和软件设计.[5-8]目前,硬件控制板主要是通过网购,因而产生了诸多问题:控制板功能不全、没有相应的外部驱动电路或保护电路价格较贵、体积过大、安装困难等等.[9-10]
基于以上原因,课题组自主开发了一种基于STM32的机器人控制系统,不仅满足了学生参加浙江省大学生机器人竞赛的培训需要,也为教师开展课程设计、开放性实验、科研等提供了帮助.
机器人控制系统通用控制板原理如图1所示,控制板采用单片机STM32 F407为控制芯片,连接了各类驱动电路,包括H桥驱动、步进电机驱动、舵机驱动、机械臂驱动等,还增加了DC/DC电路,连接锂电池,并给整个电路板提供了12 V、5 V和3.3 V三种类型电源供不同的驱动电路使用.除此之外,控制板还提供了可以外接传感器、线性CCD、OPENMV等多种接口.
通信电路采用了通用的485通信和232通信,分别如图2和图3所示.
图2 UART4-485电路
图3 USART1(2)-232电路
图4中STM32的IO口高电平输出的电压是3.3 V,无法直接驱动机器人需要的多个步进电机,因此需要接入多个步进电机驱动模块单独供电,供电电压由连接的步进电机绕组电压决定,步进电机驱动模块接口电压一般是5 V, 而STM32的IO口高电平输出的电压为3.3 V,因此,采用TXS0108芯片实现3.3 V到5 V的电平转换.
图4 步进电机驱动电路
图5是机器人控制系统的通用控制板原理图,其中控制板主控芯片主要采用STM32 F407,控制板供电则由输入电源通过开关控制,采用1N5822实现防电源反接,经2596降压模块输出5 V电压,再经1117-3.3芯片输出3.3 V电压,5 V和3.3 V给相应的各部分供电.四个输入的拨码开关用于选择执行某种控制模式,按键用于直接输入,LED通过GPIO 控制,实现状态指示,并配置了各种接插件,方便连接步进电机驱动、电机驱动、舵机接口、串口通信等.
图5 机器人控制系统通用控制板原理图
通过原理图设计的PCB如图6所示.
图6 机器人系统通用控制板PCB图
PCB打板后,将自行购买的相关元器件进行焊接并调试,得到图7所示的机器人控制系统通用控制板.
图7 机器人系统通用控制板实物图
系统软件流程如图8所示.
图8 系统软件流程图
图9 Maix开发板及配套显示屏
为了验证系统控制板的实用性,将控制板连接机器人底盘及图像处理单元和机械臂,组建了一套装配机器人控制系统.[11]图像处理控制板和显示屏如图9所示,该图像处理使用了砂速科技公司开发的Maix,这是一款搭载了K210 AI芯片的开发平台.K210处理器是一款64位双核带硬件FPU内核、主频400 MHz、卷积加速器、FFT的AI芯片,可以兼容TensonFlow、Keras、Darknet深度学习框架.配合第三方MicroPython移植项目,可以使用Python在配套的IDE上轻松开发深度学习相关程序.
本设计所使用的视觉模块相较于OpenMV使用更为简单,不需要学习图像识别算法,只需在搭好的深度学习框架下有足够量的样本进行训练,即可使用.使用事先写好的程序提交模型,即可进行图像识别;另外,更换识别目标时无需修改程序,只需更换模型就可以快速更换识别目标,且其对物体的识别角度没有很高的要求,可以很高效地识别三维物体.此外,经过实验比对,Maix系列开发板的神经网络计算速度、视觉算法等方面优于OpenMV,且价格仅为OpenMV开发板的1/3,如表1所示.
表1 Maix开发板与OpenMV比对
经过调试的装配机器人定位准确,循迹功能正常;视觉模块识别灵敏,算力较强,能够识别多种形状的柱体,准确率高达90%;机械臂活动平顺,抓取和装配零件时都较为灵活,能做到近似线性的垂直运动.该机器人经测试,整体效果比较理想,达到了初期的设定目标.
板子提供十多种标准接口,可以方便地进行各种外设的实验和开发.
板上很多资源都可以灵活配置,以满足不同条件下的需求.
主芯片采用自带1 M字节的FLASH,配合机器人控制所需的各种接口,满足各种应用需求.
各个接口都用丝印标注,并用方框框出,使用起来一目了然;部分常用接口采用大丝印标出,方便查找.
教学仪器在高校教学中的重要作用不言而喻,而自制教学设备则是教学仪器设备在研制和改进上的生命源,[12-16]本文自主开发的机器人控制系统对于满足实验教学需要、推动实验教学改革、提高实验室技术水平、节省经费开支等方面均大有益处.
在对浙江省大学生机器人竞赛参赛学生的培训过程中,开发了一种基于STM32的机器人控制系统,在硬件设计和软件设计的基础上,组建了一套装配机器人控制系统,经测试,循迹、识别和抓取效果都比较理想.该机器人控制系统与学生竞赛、教师教学科研密切结合,有助于提高学生的创新动手能力,促进和教师科研团队的协作.通过仪器设备的自主研发,实现了理论教学与实验教学、实践创新与科研之间的相互融合,极大地提升了教学效果,推动了实验教学的改革.