基于OpenMV和Arduino的智能机械臂操控平台
2022-05-31王策刘帅克郭霆赵茂静王冰浩
王策 刘帅克 郭霆 赵茂静 王冰浩
摘要: 本文针对基于OpenMV与Arduino两大模块的智能机械臂操控平台的设计进行研究,其主要是利用OpenMV的识别功能与Arduino的控制功能,识别后夹取并到指定区域将物体放下,所使用的设计方案与制作方法具有一定的研究意义与实用意义。同时作为工业生产机器人,它结合了机械自动化、电子技术、电子信息技术、自动控制系统及人工智能技术等多种多样的近期科研成果。本次设计的智能机械臂操控平台从识别准确率与控制精准度都有着较好发挥,提升了工业生产的效率,在传统机械臂的改造与优化中也迈出了关键的一步。
关键词: OpenMV识别 机械臂 可程序编程 Arduino控制
Intelligent manipulator control platform based on OpenMV and Arduino
WANG Ce1 LIU Shuaike 1 GUO Ting 1* ZHAO Maojing1 WANG Binghao1
(1.College of Mechanical and Electrical Engineering,Heilongjiang Institute of Technology,Harbin,Heilongjiang Province,150050 China)
Abstract: This paper studies the design of the intelligent manipulator control platform based on the two modules of OpenMV and Arduino. It mainly uses the identification function of OpenMV and the control function of Arduino to grasp the object after identification and put it down in the designated area. The design used The scheme and production method have certain research significance and practical significance. At the same time, as an industrial production robot, it combines various recent scientific research achievements such as mechanical automation, electronic technology, electronic information technology, automatic control system and artificial intelligence technology. The intelligent manipulator control platform designed this time has a good performance in recognition accuracy and control accuracy, improving the efficiency of industrial production, and has also taken a key step in the transformation and optimization of traditional manipulators.
Key Words:OpenMV identification; Mechanical arm; Programmable; Arduino control
近些年,大家对非生产制造机械臂的科学研究日渐活跃。机器视觉在工业机器人上应用不仅使机器人能够获知目标物体的形状、位置、姿态、类型和运动状况等信息,还能相应地对这些信息进行识别和处理[1]。在仅依靠视觉系统且与物体接触的情况下,就可以实现对目标物体的识别和定位,简化机器人的程序流程,提高生产效率[2]。
类似于视觉系统与传统机械臂相结合的课题,已然成为现代机械改革的热点问题之一,其中不乏有像日本的精工爱普生公司(Seiko Epson Corporation)所研制的Epson G6-553S带视觉功能的機器人[3],瑞士的ABB公司的ABB集成视觉系统等优秀产品的出现,其应用在高速度或高精度领域,同时在工业生产反面也有不俗的发挥。
与此同时,我国相关企业在该领域也有相应的研究,其主要分布在长三角和珠三角地区,一般是做系统集成的企业,规模大些公司的核心研发一般集中在北上广深超一线城市,目前也开始逐步布局中上游。
同时OpenMV是一个开源、低成本、功能强大的视觉模块。OpenMV上的机器视觉算法包括寻找色块、人脸检测、眼球跟踪、边缘检测、标志跟踪等,所以该智能平台选用OpenMV视觉模块。
本文研究的智能机械臂操控平台将视觉系统与传统机械臂进行有机结合,通过OpenMV进行智能识别,将物体的颜色、形状等信息转换成数字信号传输给机械臂,辅助机械臂完成指定位置区域的物品抓取工作,可以有效提高物品抓取的精度以及工作效率进而降低成本。
1 载体机械臂的结构设计
在智能机械臂操控平台的研发过程中,通过基于OpenMV技术在普通机械臂上增加视觉识别功能,识别成功后,将传感器上获取的信息与Arduino Uno R3主控开发板进行通讯,进而反馈后处理信息对机器人进行动作操控。
研发工业生产机器人的手也被称作尾端电动执行器,这是机械臂组成的重要组成部分。本文选用步进电机电机作为机器人平台移动的驱动源。步进电机驱动器根据外来的控制脉冲和方向信号,通过其内部的逻辑电路控制步进电机的绕组以一定的时序正向或反向通电,使得电机正向/反向旋转或者锁定,而步进电机驱动器是将脉冲电流变换为角速度的电动执行器,如图1所示。
本文中的机械臂由包含手、腕、臂、柱等构件的执行器、推动和实行健身运动的传动系统及计算机指令操控的控制系统构成,而构成这一系统需要3个部分:图纸和打印;编程;调试和组装。智能机械臂的制作流程如图2所示。
智能机械臂操控平台的原理是利用OpenMV技术在普通机械臂上增加视觉识别功能,OpenMV识别成功后,信息将传输到Arduino Uno R3主控开发板,Arduino Uno R3按程程序对驱动装置进行控制。智能机械臂的调试过程如图3所示。
根据工作要求,机械爪的开度范围设计为0~90°。机械结构的基本要求是选择刀具参数的依据,也是根据机械设计依据选择参数的参考[4]。根据齿轮标准初步选取标准参数如下:压力角α为20°,齿顶高系数ha*为1,齿顶尖系数c*为 0.25(标准齿轮);并且此执行装置为低速及对精度要求也较低,即精度等级选择为 9 级精度,速度v≤3m/s;材料选择按上述分析,选择HT200硬度为200HBW;初选齿数为Z1=10;Z2=15。按齿面接触疲劳强度设计,如式1。
(1)
根据工作条件查表,选取载荷系数K=1.2。
(1)齿轮的传递扭矩T,如式(2)、式(3)所示
(2)
(3)
末端执行器提升质量要大于1kg,即以2kg为基础进行计算:F=20N,可得结论p=0.06kW。
(4)
经过式(4)计算,可得n=955r/min,即T=600N·m。
(2)根据齿宽系数表,ψ=1
(3)根据材料的弹性系数表Z≤143.7 ;标准齿Z=2.5;
(4)依据齿面强度查得传动齿轮的触及疲惫屈服极限 =330MPa;
(5)计算应力循环次数N,如式(5)所示。
N=60njLh (5)
N=60×5×1×(12×300×6)=6.5×102
(6)由接觸疲劳寿命系数图查得L=1.
(7)计算许用接触应力:
取无效几率为1%,安全性能S=1,由传动齿轮的许用接触压力公式(6)计算,计算可得。
(6)
[ ] = 363MPa
(8)计算齿轮分度圆直径d,如式(7)。
(7)
(9)确定齿轮参数,运用式(8),计算齿轮模数。
(8)
由圆柱齿轮标准模数系列表选取模数m为2mm,应用式(9)可得分度圆直径,进而应用式(10)可得齿宽参数。
d=20mm (9)
b=10mm (10)
根据齿轮参数利用UG的有限元分析如图4所示。
根据有限元分析来看,齿轮的内边缘承载较大应力,其次在两个齿轮的啮合部分应力要大于齿轮其他非啮合部分,通过计算得出应力较大的部分应力值为231.37MPa并且根据结构强度要求,许用应力为363MPa,根据强度校核计算能够看出齿轮强度符合许用条件,选用齿轮参数为:
(1)m1=2 压力角=20°分度圆d=20 齿顶高ha=2 齿根高hf=3 全齿高h=4
(2)m1=2 压力角=20°分度圆d=30 齿顶高ha=2 齿根高hf=3 全齿高h=4。
本文中载体机械臂的控制结构,多方面对比下选用步进电机与舵机,电源方面选用LSX-25-12型开关电源与LM2596S DC-DC可调降压模块。
2 实现机械臂可视化的基本过程
智能操控平台在工作时,需要利用视觉识别系统分析处理数值来操控载体机械臂。本文介绍利用基于OpenMV软件开发的一种图像信号处理软件系统,对可夹取的物体进行识别及夹取运输。
视觉识别摄像头安装在操控载体运动机械臂的一个前端感光执行器上,当所有的需要主机夹取的各种物品同时进入并达到视觉摄像头智能识别指定区域的范围时候,通过图像识别控制系统处理采集到的图像,并自动识别并输出主机所需要被夹取到的物品,返回后将参数输入到总线的控制管理系统内,从而可以使载体机械臂实时得到夹取物品的位置参数并对其进行准确的自动搬运[5]。主机选取一个OpenMV4h7作为主机硬件感光控制器,采用所有OpenMV主机自带的两个ov7725感光控制元件的视觉摄像头,触摸监控屏的显示屏作为控制系统屏对图像进行显示与用户界面控制操作,先期调试采用移动计算机软件进行系统编程与硬件调试。图5和图6是OpenMV视觉识别系统的程序图及效果图。
采用基于OpenMV软件开发的处理系统,通过利用前端图像执行器上的多个摄像头自动获得所符合需求的夹取的单个物品的二维色彩图像,使用图像增强分析技术对其进行图像优化,再通过利用基于lab夹取图像的二维色彩阈度特性分析来精确分割夹取物品与图像背景。解决方案由二维图像数据采集、图像增强、lab图像色彩阈度数值特性分割、图像识别模块组成。
在对图像增强的处理过程中首先需要采取原始物品局部图像锐化,调用函数“placimg.laplacian()”对经过图像增强获取后处理得到的原始图像处理过的物品图像局部轮廓图像中的轮廓轨迹进行锐化后并补偿进行处理。原始物品局部图像锐化补偿处理主要目的之一也就是为了能够让原始处理物品图像的某些重要细节如物品局部轮廓边缘、顶点等更加清晰、突出、尖锐,是一种可以用于锐化补偿物品局部图像轮廓、突出物品局部边缘轮廓边界完整信息的能使图像轮廓处理良好的新方法。锐化后的处理物品局部图像轮廓比之前处理原图平滑,增强了原始处理物品图像中原始处理物品的轮廓局部图像轮廓局缘边界完整信息,将原始处理物品的图像轮廓局部边界完整的信息通过图像检测结果表现显示出来。
由于经过图像色彩增强图像锐化后的彩色图像很有可能还是会直接锐化造成新的色彩变而图像中的颜色或者质量变化可能也会有一定的变化幅度或者降低,使得彩色图像不逼真,且经过图像增强过的彩色图像也有可能会对彩色图像锐化处理过程中的视频噪声和图像点差等元素可能有一定的幅度影响或者放大[6]。故此,通过彩色后的单或双边彩色视频信号滤波对彩色图像功能可以直接进行锐化后的处理,调用函数“:aimg.bilateral()”,对锐化后的彩色图像功能可以直接进行彩色后的单或双边彩色视频信号滤波合并进行锐化处理。
基于OpenMV的颜色识别与追踪算法[7],关键在于进行图像二值化.二值化图像是经过二值化后的图像,有黑、白两种状态二值化在图像识别中非常常见,通过OpenMV标准库中sensor .snapshot()获取图像,进行二值化处理后再通过阈值编辑器调整得到想要识别颜色的LAB颜色空间阈值。图7是阈值编辑器检测示例,通过OpenMVIDE软件中的阈值编辑器离线设置LAB数值为(44,95.-23.-90.58.-11),可以得到绿色圆形小球的二值化图像,其中的白色索即为被跟踪的像索点,记下当前阈值,通过阈值比对来判断颜色,小于定值即可认定颜色。
OpenMV对色块追踪的实现所采用的方法是CamShift算法,該算法以Mean- Shift算法为基础,具备自主调节搜索窗口适应目标大小的能力,优点是可以随跟踪视频中目标尺寸的变化而变化。
由于RGB色彩空间对光线条件的改变比较敏感,因此将输入图像转换到HSV颜色空间,在转换后的HSV颜色空间里选择初始搜索窗口作为目标区域,分离出H分量做该区域的颜色直方图模型[7]。接着把目标区域内的像索点与得到的颜色直方图模型像素点进行对比,可以得到该像索点是目标像素点的概率,区域外的概率为0;把得到的相似概率转换为0~255的灰度值即可得到反向投影图,反向投影图中越亮的点表示相似概率越大。
在OpenMV视觉系统完成识别之后,将OpenMV和Arduino如图8形式连接,OpenMV将所识别物品信息进行处理传输至Arduino控制板[8],Arduino执行相应信息来控制机械臂的行动,实现机械臂的可视化。
3 结语
本次设计的利用OpenMV结合机械臂所设计的视觉机器人工作站根据在无人参与的要求下,并在其基础上做了一些改进,使其更加灵活、稳定,让其更加符合需求,并在一定程度上做出了一些小小的创新,采用此机械臂完全可以完成脱机需求,如果运用到实际中效果可能会更加惊艳。本次设计进行了脱机运行,可以在没有电脑控制的情况下自行运行,实现自主识别抓取。
参考文献
[1] Lu Hao, Liu Junxiu, Luo Yuling et al. An autonomous learning mobile robot using biological reward modulate STDP[J].Neurocomputing,2021,458.
[2] 张佳路,任彬,赵增旭.基于颜色识别的智能物料搬运机器人[J].自动化应用,2020(1):59-61.
[3] 王乐.基于视觉伺服的工业机器人控制技术研究[D].南京:南京林业大学,2012.
[4] 苗淑杰,刘喜平.机械设计基础[M].北京:北京大学出版社,2012.
[5] 李思熠,王少坤.基于 OpenMV 和 Arduino 的智能巡线机器人[J].科技与创新,2020(22):50-53.
[6] 杨超.数字图像增强技术研究与实现[J].电脑编程技巧与维护,2018(9):138-139.
[7] 张平.基于OpenMV的辅助进食机械手系统的研究与设计[D].南昌:江西理工大学,2019.
[8] 黄凯文,赵煜,黄玲,等.基于机械视觉的Arduino智能物流配送车 [J].河南科技.2021,40(22):20-23.
基金项目:黑龙江省自然科学基金(项目编号:LH2021D015);黑龙江工程学院博士基金(项目编号:2017BJ11);黑龙江工程学院大学生创新创业项目(项目编号:201911802051)
作者简介:王策(2000—),男,本科在读,研究方向为工业机器人技术。刘帅克(2002—),男,本科在读,研究方向为工业机器人技术;
通信作者简介:郭霆(1982—),男,博士,讲师,研究方向为机器人结构优化及流体动力学。E-mail:gt_hljit@foxmail.com