一种教学用采摘竞赛机器人

2021-08-21 19:03罗家宁贺泉张思豪史颖刚刘利王转卫
机电工程技术 2021年12期
关键词:程序设计控制系统

罗家宁 贺泉 张思豪 史颖刚 刘利 王转卫

摘要:针对中国机器人大赛采摘机器人子项目,设计了一种教学用采摘竞赛机器人。首先,根据竞赛要求,设计教学用采摘机器人的机械系统,确定了四轮独立驱动的电机布局及差速转向的轮式结构;设计了四自由度串联机械臂,二指回转型机械爪和自动卸载的储物筐。以 STM32F103ZET6单片机为核心,搭载底盘控制模块、颜色识别模块和采摘机械臂模块,构建了采摘机器人的控制系统。根据比赛要求和流程,编写了机器人基本运动子程序、颜色识别子程序、机械臂控制子程序以及系统整體流程。并搭建实物进行测试,结果显示该设计满足竞赛基本要求,能够为学生参加竞赛提供一定的参考。

关键词:教学机器人;机械系统;控制系统;程序设计;视觉识别

中图分类号:TP242             文献标志码:A        文章编号:1009-9492(2021)12-0131-04

A Picking Competition Robot for Teaching

Luo Jianing ,He Quan ,Zhang Sihao ,Shi Yinggang ※, Liu Li ,Wang Zhuanwei

(College of Mechanical and Electronic Engineering, Northwest A&F University, Xianyang, Shaanxi 712100, China)

Abstract: Aiming at the picking robot sub project of China robot competition, a picking competition robot for teaching was designed. Firstly, according to the competition requirements, the mechanical system of the picking robot for teaching was designed, and the motor layout of four-wheel independent drive and the wheel structure of differential steering were determined. Four degree of freedom series manipulator, two finger rotary mechanical claw and automatic unloading storage basket were designed. Taking STM32F103ZET6 single chip microcomputer as the core, equipped with chassis control module, color recognition module and picking manipulator module, the control system of picking robot was constructed. According to the competition requirements and process, the robot basic motion subroutine, color recognition subroutine, manipulator control  subroutine  and the overall process of the  system were written. The results  show that the  design meets the basic requirements of the competition and can provide some reference for students to participate in the competition.

Key words: teaching robot; mechanical system; control system; program design; visual identity

0 引言

机器人竞赛是培养学生创新思维和能力的重要途径,设计一款面向教学的采摘竞赛机器人,可以为各高校学生提供机器人课程系统学习与实训的机会,从而更好地理解采摘竞赛机器人,在实践中掌握基本专业技能[1]。

果园采摘机器人竞赛是中国机器人大赛的子项目,比赛场地如图1所示。起点区、终止区和储存区均为矩形区域,可用于储存收集果实[2]。本竞赛场地设有机器人行走引导线,机器人沿引导线从起点区出发,按采摘的难易度,依次经过 A区、B区、和 C区,最后到达终止区,完成自主循迹、语音播报、目标识别、果实采摘、收集和运输等功能。所要采摘的果实使用仿真模型,其中 A 区模拟基础设备完备的场景,有6个成熟果实,在收获地点有提示线;B 区模拟基础设施不够齐全或发生故障的场景,有4个成熟果实,2个未成熟果实,其中果实位置不确定,有行走引导线;C区模拟开放的果园,在果树的6个不同位置随机分布3个成熟果实与3个未成熟果实,无行走引导线,作业点 C2、C3、C4、 C6有提示线。

分析采摘机器人的功能需求,机器人需要完成的任务有语音播报参赛队伍信息以及采摘作业点的基本情况、沿导航线行走、识别果实成熟度、采摘并存储成熟的果实等。因此,本设计中的采摘机器人需要包括底盘、机械臂、机械爪、储物筐、语音模块、平面定位系统和视觉识别系统。本文从机械系统、控制系统和子程序设计3个方面对采摘竞赛机器人进行搭建。

1 机械系统设计

本文设计的采摘竞赛机器人整体结构如图2所示。教学机器人要求开放兼容,易于学习、创新,方便课程与竞赛,因此对整体的机械结构、电气系统、控制算法都采用模块化设计,保证机械结构牢固连接,硬件模块易于插拔,性能稳定可靠同时也便于装卸维护。轮式结构简单易控,能量利用效率高,因此机器人的移动形式选用轮式结构转向方式选用差速转向式[3]。机器人底板为长300 mm、宽290 mm、厚3 mm的铝板,铝板下侧固定车轮、驱动電机、各种控制元件和传感器等;上侧固定机械臂、机械爪、储物筐、摄像头、电机驱动器、锂电池和开关组等。车轮选用承重能力较好且抓地能力较强的海绵橡胶轮,直流电机采用 PID 调速,可独立精准地驱动四个主动轮;考虑到小车受力和工作情况,车轮电机选用霍尔编码器直流减速电机 GM37-520。

机械臂[4]采用四自由度关节型机械臂,臂长分别为110 mm、90 mm、50 mm ,采用 U型、L 型等舵机金属配件进行连接。为减少旋转次数且提高导航精度,机械臂底端设置有云台[5],考虑到机械臂的自重及受力情况,云台驱动电机选用扭矩和转动角度都较大的42步进电机;机械臂末端装有二指回转型机械爪,机械爪动作时,右侧手指由舵机带动转动,左侧手指通过轮齿啮合进行传动;摄像头装在机械爪掌心位置;储物筐采用6片轻质亚克力板制成,用 L 型支架连接,上方保持开口状态,前侧设为档物板,舵机转动时档物板可以抬起,果实从筐中滑出,实现果实自动倾倒;其余控制部件均通过泡棉胶带黏在底盘空隙处。

2 控制系统设计

采摘竞赛机器人的控制系统以 STM32F103ZET6芯片为主控制核心,控制系统如图3所示。本设计中循迹传感器采用 SEN1595,通过 AD 转换与主控器进行通讯,利用循迹预估算法,保证机器人沿引导线行走;采用增量式磁编码器通过 AD 转换,记录车轮转动圈数和转动瞬时位置,利用 PID 算法,实现机器人稳定行走;采用电子罗盘,通过 IIC总线通讯,利用平面定位算法,实现采摘机器人惯性导航控制;采用 OpenMV 摄像头模块,通过串口通讯,利用阈值分割算法,实现采摘机械人视觉颜色识别。

比赛开始时,按下启动开关,机器人开始工作。主控制器向语音模块发送低电平信号,开始播报参赛队伍信息;播报结束后,机器人从起始区出发,开始沿导航线行走,行走过程中依靠增量式磁编码器检测机器人的行走姿态和速度信息,并时刻反馈至主控制器,计算当前角度和速度偏差,对机器人进行调整,实现对机器人的行走姿态检测;循迹传感器通过光敏电阻对不同颜色的反射光的强弱进行对比,从而判断车体和导航线的位置关系,实现机器人的循迹任务;到达采摘位置时,光电开关检测到植株信息并向主控制器发送低电平信号,机器人停止运动;机械臂开始采摘工作,机械臂的控制采用固定地点预设动作组的方法进行,通过上位机软件在线编辑舵机动作组,然后把编辑好的动作组下载至舵机控制板中,便可实现脱机运行,最后由主控制器控制动作组的调用,实现果实采摘;机械臂到达指定位置后,机械爪掌心位置的摄像头开始识别果实信息,视觉模块[6]采用可编程摄像头模块 OpenMV ,其控制核心为 STM32F427,使用 Python编写寻找色块、边缘检测、模板匹配等核心算法,实现对果实颜色、轮廓的识别,然后将识别结果通过串口发送给主控制器,若为红色则控制机械爪抓取果实并放入储物筐,若为绿色则向下一个采摘位置行进,继续后续的采摘工作;完成所有任务后,机器人到达终止区,播报比赛结束,然后停止工作。

3 程序设计

按照竞赛规则,面向教学的采摘机器人控制系统需完成机器人的行走控制、机械臂动作控制和视觉识别3个子程序的流程规划及程序编写。

3.1 机器人行走子程序设计

底盘电机选用直流减速电动机 GM37-520,使用 TB6612FNG芯片将控制信号进行功率放大,以实现电机调速和换向功能。为优化电机转速控制效果,降低重心偏移或摩擦力差异等造成的速度误差,基于带有编码器反馈的闭环电机系统,采用比例积分微分的 PID 控制算法[7]。本设计选择位置闭环控制,如图4所示,通过编码器脉冲累加,求得电机位置信息,将其与预先设定值进行比较得到控制偏差,控制偏差的比例、积分、微分使其趋于0[8]。

其数学模型为:

式中:KP、KI、KD 分别为比例常数、积分常数、微分常数, EK 表示本次偏差,EK-1表示上一次偏差,SK 表示前 K 次偏差累积和,OUT表示输出。SL,PL分别为目标值和测量值。

在使用时,定时器1设置为 PWM 输出模式控制电机转速,定时器2~5设置为编码器输入模式,测量电机位置值,定时器6用于定时采样,在中断服务函数中实现位置式 PID 控制,程序控制流程如图5所示。

经过多次调试,最终确定在面向教学的采摘机器人的实际应用中,KP=60,KI=0.5,KD=0,即可满足稳定行走要求。

有循迹线时,利用前侧两路循迹传感器进行导航,如图6所示。正常行走时,两个传感器值均为1,检测到白色循迹线时变为低电平0,若左侧传感器为0,代表车体右偏,机器人应向左调整,反之亦然。当光电开关检测到果树时,将停止信号发送给主控制板,进行制动。

无循迹线时,利用平面定位系统进行导航。惯性导航模块检测机器人运动参数,经过数据融合算法、卡尔曼滤波算法,获得机器人角度姿态;编码器测量车轮转动圈数和转动瞬时位置,利用外部中断记录脉冲数,便可结合车轮直径,推算机器人位置变化。因此,已知车轮直径及目标点位置坐标,便可实现自主导航移动。

3.2 机械臂动作控制子程序设计

机械臂的控制采用固定地点预设动作组的方法进行。通过上位机软件在线编辑舵机动作组,使机械臂完成竞赛要求的动作;然后将编辑好的动作组下载入舵机控制板中,实现脱机运行;最后通过串口进行舵机控制板与主控制器的通信,进行动作组的调用。

机械臂底端的步进电机通过步进电机驱动器,将电脉冲转换为角位移,一个脉冲信号驱动步进电机按设定方向转动一个歩距角。本设计采用共阴极接法,DIR+输入电机转向设置信号,PUL+输入脉冲信号,改变脉冲信号频率,可调节转速,预设步数决定转动角度,流程如图7所示。

3.3 颜色识别子程序设计

根据比赛规则,采摘机器人需辨别果实成熟度,本设计选择 OpenMV摄像头组,采用 LAB 阈值分割法进行颜色识别,在其自带的基于 Python语言的开发环境中完成编写程序,视觉识别流程如图8所示。

系统完成初始化及图像预处理后,通过 thresholds函数设置目标颜色阈值,利用 find_max函数框选并标记最大目标色块,将其阈值与目标值进行比较,完成判断,

将判断结果通过串口发送给 STM32主控板,以便其控制后续采摘动作。

3.4 整体流程设计

A 、B 、C三个区难度依次增加:A 区利用灰度传感器循线直行,根据作业提示线确定停车位置,调试动作组进行采摘;B 区循线直行,利用光电开关判断果树位置,识别果实成熟度,完成采摘;C区完成自主导航,利用融合编码器与陀螺仪的定位系统,达到目标作业位置,完成识别与采摘。系统的整体设计流程如图9所示。

4 结束语

根据竞赛要求,本文以 STM32单片机为主控制核心,设计了采摘机器人的机械结构和控制系统以及机器人行走程序、机械臂动作控制程序和视觉识别3个子程序的流程规划及程序编写。采用语音模块,实现机器人播报比赛队伍及果实情况信息;采用OpenMV视觉识别模块,实现机器人对果实成熟度的确认;采用循迹传感器、平面定位系统及惯性导航模块,实现机器人准确抵达采摘位置。通过多次试验,本设计中的机器人可顺利完成智能语音播报、自主循迹导航、采摘和存储果实、检测果实成熟度等功能。基于本科生参与度较高的果园采摘机器人竞赛,通过参考国内外多种教学机器人及竞赛机器人研究现状,完成了面向教学的采摘机器人的设计,机械系统搭建简便,对本科生参加竞赛具有一定的参考价值。在对各个环节的调试和整体运行过程中能极大的提高学生综合素质。

参考文献:

[1]皆彦吉.果蔬采摘机器人的研究现状、问题及对策[J].2018,45(9):1.

[2]刘家春, 刘利.基于竞赛的医疗服务机器人控制系统设计[J].2018,32(2):6-11.

[3]徐涛, 申焱华.分布驱动轮式车辆差动转向动力学特性研究[J].2018,40(7):812-819.

[4]孙龙,李长勇.六自由度机械臂的运动学分析和轨迹规划研究[J].2021,42(3):41-44.

[5] Wang G, Yu Y. Design of End-effector for Tomato Robotic Har? vesting[J].2016,49(6):190-193.

[6]程祥云, 宋欣.果蔬采摘机器人视觉系统研究综述[J].2019,60(3):409-493.

[7]高妍,李昕宇.果园喷药竞赛机器人设计[J].2019, 16(16):55-57.

[8]刘旭东.PID 控制策略在轮式机器人电子竞赛中的应用[J].2014(9):131-132.

第一作者简介:罗家宁(2000-),女,山西忻州人,大學本科,研究领域为专用机械与设备、农业机械化。

※通讯作者简介:史颖刚(1976-),男,山西隰县人,副教授,研究领域为机器人技术、农业电气化。   (编辑:刁少华)

猜你喜欢
程序设计控制系统
基于OBE的Java程序设计个性化教学研究
基于Electron.js的风向玫瑰图绘制程序设计与实现
项目化教学在Python程序设计课程中的应用
C++程序设计课程教学改革研究
医学专业“Python程序设计”课程教学改革总结与思考
“C语言程序设计”课程混合教学探索
基于PLC的自动切蛋糕机的控制方案
Ka频段卫星通信自适应抗雨衰控制系统设计
基于PLC的钢厂热连轧感应加热炉控制系统实现
风力发电机组电气与控制系统快速检修思路探索