基于STM32的机器人控制系统的设计

2022-11-22 10:57许聚武熊远生
嘉兴学院学报 2022年6期
关键词:开发板控制板竞赛

许聚武,熊远生,张 敏

(1. 嘉兴学院: a.信息科学与工程学院,b.数据科学学院;2. 嘉兴南湖学院 机电工程学院,浙江嘉兴314001)

浙江省大学生机器人竞赛是培养和提高大学生多学科专业知识交叉、知行合一、创新创业创造和团队协作能力的一项综合性学科竞赛活动,[1-4]嘉兴学院一直十分重视并鼓励学生积极参加.从浙江省“中控杯”机器人竞赛暨浙江省高校机器人邀请赛开始,学校就专门开辟了相关实验室,配备了常用的仪器设备,学生的学习积极性和参赛热情持续高涨,目前已成功完成五届比赛并取得了较好的成绩.

图1 机器人控制系统通用控制板原理示意图

浙江省大学生机器人竞赛主要包括机械结构设计、电路设计和软件设计.[5-8]目前,硬件控制板主要是通过网购,因而产生了诸多问题:控制板功能不全、没有相应的外部驱动电路或保护电路价格较贵、体积过大、安装困难等等.[9-10]

基于以上原因,课题组自主开发了一种基于STM32的机器人控制系统,不仅满足了学生参加浙江省大学生机器人竞赛的培训需要,也为教师开展课程设计、开放性实验、科研等提供了帮助.

1 系统通用控制板硬件设计

1.1 开发板的硬件结构

机器人控制系统通用控制板原理如图1所示,控制板采用单片机STM32 F407为控制芯片,连接了各类驱动电路,包括H桥驱动、步进电机驱动、舵机驱动、机械臂驱动等,还增加了DC/DC电路,连接锂电池,并给整个电路板提供了12 V、5 V和3.3 V三种类型电源供不同的驱动电路使用.除此之外,控制板还提供了可以外接传感器、线性CCD、OPENMV等多种接口.

1.2 通信电路设计

通信电路采用了通用的485通信和232通信,分别如图2和图3所示.

图2 UART4-485电路

图3 USART1(2)-232电路

1.3 步进电机驱动电路设计

图4中STM32的IO口高电平输出的电压是3.3 V,无法直接驱动机器人需要的多个步进电机,因此需要接入多个步进电机驱动模块单独供电,供电电压由连接的步进电机绕组电压决定,步进电机驱动模块接口电压一般是5 V, 而STM32的IO口高电平输出的电压为3.3 V,因此,采用TXS0108芯片实现3.3 V到5 V的电平转换.

图4 步进电机驱动电路

1.4 控制板原理和PCB设计图

图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 机器人系统通用控制板实物图

2 通用控制板软件设计

系统软件流程如图8所示.

图8 系统软件流程图

图9 Maix开发板及配套显示屏

3 应用实例

为了验证系统控制板的实用性,将控制板连接机器人底盘及图像处理单元和机械臂,组建了一套装配机器人控制系统.[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%;机械臂活动平顺,抓取和装配零件时都较为灵活,能做到近似线性的垂直运动.该机器人经测试,整体效果比较理想,达到了初期的设定目标.

4 通用控制板性能指标

4.1 接口丰富

板子提供十多种标准接口,可以方便地进行各种外设的实验和开发.

4.2 设计灵活

板上很多资源都可以灵活配置,以满足不同条件下的需求.

4.3 资源充足

主芯片采用自带1 M字节的FLASH,配合机器人控制所需的各种接口,满足各种应用需求.

4.4 人性化设计

各个接口都用丝印标注,并用方框框出,使用起来一目了然;部分常用接口采用大丝印标出,方便查找.

教学仪器在高校教学中的重要作用不言而喻,而自制教学设备则是教学仪器设备在研制和改进上的生命源,[12-16]本文自主开发的机器人控制系统对于满足实验教学需要、推动实验教学改革、提高实验室技术水平、节省经费开支等方面均大有益处.

5 结语

在对浙江省大学生机器人竞赛参赛学生的培训过程中,开发了一种基于STM32的机器人控制系统,在硬件设计和软件设计的基础上,组建了一套装配机器人控制系统,经测试,循迹、识别和抓取效果都比较理想.该机器人控制系统与学生竞赛、教师教学科研密切结合,有助于提高学生的创新动手能力,促进和教师科研团队的协作.通过仪器设备的自主研发,实现了理论教学与实验教学、实践创新与科研之间的相互融合,极大地提升了教学效果,推动了实验教学的改革.

猜你喜欢
开发板控制板竞赛
2020丝绸之路数学竞赛
基于STM32H7的FDCAN通信系统设计与实现∗
轨道交通AFC导向标识控制板设计
一种集成脚本控制单元的设计与实现
一种全隔离的无刷直流电机的反馈制动控制板的研究
创新思维竞赛(3)
浅析单片机开发板的设计与制作
创新思维竞赛(6)
一种机载SAR中心控制板的设计
ARM宣布mbed Enabled Freescale FRDM—K64F开发板通过微软认证