基于LabVIEW的多控模块化机器人控制设计

2022-05-31 13:09李能菲常辉王奎
电脑知识与技术 2022年11期

李能菲 常辉 王奎

摘要:工业机器人的大量使用,对操作员的需求剧增,使其成为现代工业生产一线的新兴职业。目前高校教學中普遍使用的六轴机器人是基于Visual C++ MFC平台下编写的控制程序,鉴于MFC开发周期长且对开发人员编程水平要求较高等问题。文章依托RBT-6T/S01DM型多控模块化积木式可拆装串联机器人开放式硬件平台,以LabVIEW为开发环境,通过调用运动控制卡动态链接库的方式实现对机器人本体的控制。所设计的控制软件灵活、可扩展性强,对于一般的控制系统设计具有一定的借鉴意义。

关键词:LabVIEW;模块化串联机器人;软件控制;运动控制卡

中图分类号:TP241.2      文献标识码:A

文章编号:1009-3044(2022)11-0107-03

1 引言

工业机器人被誉为“制造业皇冠顶端的明珠”,其研发、制造、应用是衡量一个国家科技创新和高端制造业水平的重要标志[1]。我国已经连续八年成为全球最大的工业机器人消费国,2020年制造业机器人密度达到246台/万人,是全球平均水平的近2倍。工业机器人已经成功应用于多个高端制造行业。机器人不仅应用于高科技行业,也在逐渐向传统行业延伸,以解决劳动密集型企业用工难的问题。数据显示,目前国内工业机器人已在140多个行业中得到广泛应用。工业机器人的大量使用,对工业机器人的系统操作员需求激增,使其成为现代工业生产中的新兴职业[2]。

目前,众多的大中专院校开设了工业机器人教学及相应的实训课程。其中,江苏汇博公司开发的RBT-6T/S01DM型多控模块化积木式可拆装串联机器人被广泛应用在职业技能大赛和实训教学中。原有的机器人控制系统是基于Visual C++ MFC平台下编写的应用程序,MFC开发周期长且不够灵活,对开发人员编程水平要求较高,对于高职院校的学生而言,难度较大,很多时候学生只知其一,不知其二,只能按照步骤进行训练。LabVIEW(Laboratory Virtual instrument Engineering Workbench) 作为一种图形化的编程语言的开发环境[3],广泛地被应用于在工业自动化、测控等场合。在设计人机界面时,LabVIEW开发效率更高,能够大大降低程序开发时间与开发难度。鉴于此,文章以RBT-6T/S01DM型多控模块化积木式可拆装串联机器人为研究对象,依托开放式硬件平台,以LabVIEW为开发环境,通过调用运动控制卡的动态链接库的方式来实现对机器人本体的控制,对控制系统软件进行二次开发。所设计的控制软件灵活、可扩展性强,在实际教学与工业设计中具有一定的推广作用。

2 六自由度串联机器人本体结构

RBT-6T/S01DM型机器人为6自由度模块化可拆卸串联机器人,负载为0.5Kg,如图1所示,采用伺服电机和步进电机混合驱动,各模块的传动采用可视化结构,由锥齿轮、同步齿型带和谐波减速器等多种传动结构配合实现[4],具有较高灵活性,在机械结构教学、运动规划和编程控制系统设计中得到广泛应用。

3 机器人控制系统硬件构成

六自由度串联机器人控制系统硬件构成如图2所示,采用工控机结合运动控制卡的开放式结构。控制部分硬件主要有:工业控制计算机、MAC-3002SSP2和MAC-3002SSP4控制板卡、步进(或伺服) 电机驱动器、信号转换板和其他一些辅助电气设备[5]。

其中,模块1对应的步进电机驱动器型号为AKS230,电流设置为3A,细分设置为1/32;模块2对应的伺服电机驱动器型号为MADHT1505E,相关参数设置如表1所示。

模块3至模块6对应的步进电机驱动器的型号为AKS202A。电流设置为0.63A,细分设置为1/32。

本系统使用了两块运动控制卡,型号分别为MAC-3002SSP2和MAC-3002SSP4。其中,MAC-3002SSP2可以实现对两轴电机的控制,MAC-3002SSP4最多可以实现对四轴电机的控制。这两块运动控制卡用来协同控制模块机器人,实现步进电机和伺服电机的位置和速度的控制。控制卡的主要控制信号包括:脉冲信号、方向信号和限位信号与零位信号[6]。

4 基于LabVIEW模块化机器人的控制

教学用的六轴机器人控制系统采用VC++ MFC平台下编写的应用程序,开发周期长且不够灵活,对于高职院校的学生而言,难度较大。LabVIEW简单易学,开发效率高。这里,以LabVIEW为开发环境,通过调用运动控制卡的动态链接库(Dynamic Link Library,DLL) 的方式来实现对板卡的操作[7],进而实现对模块机器人的运动控制。在使用LabVIEW编写测控程序时,由于厂家仅提供了DLL和.h文件,未提供相应的API函数对应的子VI,因此需要将动态链接库转换为子VI。通常有两种办法来实现,第一种方式是通过LabVIEW菜单中的“工具”->“导入”->“共享库(.DLL) …”的方式按照向导自动生成子VI[8]。转换完成后,在程序面板点击右键,在编程里面选择用户库,即可出现转换好的库目录,如图所示3。

通常情况下,上述方法无法一次性将动态链接库中所有的函数都转换为子VI,这时可以第二种方式,即通过手动的方式,利用LabVIEW函数选板中的“互联接口”中的“库与可执行程序”中“调用库函数节点”即(CLN) 来实现。处理时需要用到相应的.DLL和相应的.h文件,在函数名中选择需要转换的函数名字,按照.h文件中函数的定义,添加相应类型的参数即可。通过这种手动的方式几乎可以将所有提供DLL和.h的文件转换为子VI的形式[9]。我们以MAC-3002SSP4库函数int ssp2_start_vt_move(int Axis,int FL,int FH,double Tacc)为例来进行介绍,该函数功能是对一轴加速到一定速度,函数的返回类型为有符号32位整型,其中Axis为选择MAC-3002SSP4控制电机轴号,为有符号32进制整型;FL表示初始速度,单位为脉冲数/秒,取值范围:[-65535 65535],符号表示运动方向,负号为反向运动,正号为正向运动;FH为运行速度,单位为脉冲数/秒,取值范围为[-65535 65535];Tacc表示加速时间,单位为秒;将其转换为子VI的程序面板和前面板如图4所示。

基于LabVIEW开发的六轴机器人运动控制程序前面板如圖5所示,初步实现了6轴电机的控制,包括正转与反转,同时在运行过程中,实时检测限位状态与零位信息,并进行状态显示,通过运行速度与目标位置来调整每个模块的运行参数。

控制程序的架构是通过在while循环中嵌套条件结构来实现的,程序初始启动后,首先进入Initial条件结构中完成MAC-3002SSP2和MAC-3002SSP4板卡的初始化,同时对相应控制轴进行使能、设置输出模块以及硬件限位后能够立即停止,对机械结构进行保护,Initial条件结构的程序框图如图6所示。

初始化条件结构完成后程序自动切换到idle条件结构中,在idle条件结构完成程序的主要功能。对于生产端,在相应按钮的单击“值改变”事件里,通过入队列的元素不同在消费端进行解析,进而实现相应的功能,如模块1的正向运动事件响应如图7所示,当单击模块1的“正向运动”,则触发其“值改变”事件响应,通过将“模块1正向运动”元素入队列,在消费端,通过元素出队列对出队列的元素进行分类,当是“模块1正向运动”时,则执行相应的操作,实现模块1电机的正向运动,如果返回值不为零,则表示运行正常,同时对相应轴状态进行实时检测,判断是否到达远端限位、近端限位或者零位位置,如果到,则相应的指示灯变成红色,并在信息提示栏中进行显示。模块1反向运动以及其他模块2-6的运行,编程思路与模块1正向运动类似,这里不再赘述。

5 总结

工业机器人在各种行业得到广泛应用,使得对系统操作员的需求剧增,目前众多的大中专院校中均开设了工业机器人教学及相应的实训课程。文章针对教学用的固有的六轴机器人控制软件不灵活等问题,依托开放式硬件平台,采用LabVIEW开发环境,通过将运动控制卡提供的动态链接库转换为子VI的方式,编写了六轴机器人控制软件,以实现对机器人本体的控制,扩展性强,具有一定的应用价值。

参考文献:

[1] 新时代已经到来,机器人或将成为未来“刚需”[OL]. OFweek机器人网,2021.09

[2] 工业机器人系统操作员—让中国制造变中国智造[OL].搜狐,2019.08

[3] 马飞.六自由度机器人虚拟实验室系统关键技术的研究[D].北京:中国矿业大学(北京),2018.

[4] 牛雪娟.机电综合实验教程[M].北京:化学工业出版社,2014.

[5] 李冰冰.基于粒子群算法的并联机器人位姿误差建模与补偿方法研究[D].沈阳:东北大学,2014.

[6] 常秀辉,李宗岩.机械工程实验综合教程[M].北京:冶金工业出版社,2010.

[7] 裴九芳.基于LabVIEW的精锻控制系统软件设计[J].安徽工程科技学院学报,2010,25(3):35-37,61.

[8] 陈亚峰.车载二氧化硫差分吸收激光雷达系统研制及实验研究[D].合肥:中国科学技术大学,2018.

[9] 黄见,胡顺星,曹开法,等.基于LabVIEW的测污激光雷达三维扫描控制系统的设计[J].大气与环境光学学报,2013,8(2):124-129.

收稿日期:2022-01-10

基金项目:安徽省质量工程项目(2020mooc254) ;校级质量工程教育教学研究重点项目(2021xjtz033) ;校级质量工程职业教育“课堂革命”典型案例培育项目(2021xjtz114)

作者简介:李能菲(1983—) ,女,安徽安庆人,硕士,讲师,研究方向为工业机器人技术;常辉(1969—) ,男,安徽怀远人,硕士研究生,副教授,研究方向为工业机器人技术;王奎(1990—) ,男,安徽阜南人,硕士研究生,讲师,研究方向为电气自动化技术。