范宇超,毕永利
(黑龙江大学 机电工程学院,哈尔滨 150080)
基于PMAC的3自由度并联机器人的控制研究
范宇超,毕永利*
(黑龙江大学 机电工程学院,哈尔滨 150080)
以3-UPU并联机器人为研究对象,详细分析了该机器人的控制方法及其工作原理。提出了“IPC+TurboPMAC2”开放式伺服系统构建模式。建立MFC操作界面,控制卡通过PComm32.dll接收工控机的指令数据,再利用Matlab求解出轨迹的离散点数。以Clipper运动控制卡作为控制系统的核心部分,将正逆运动学算法和雅克比矩阵嵌入到TurboPMAC2中,并由卡完成数据采样插补运算,使运动控制不依赖于上位机,有效地提高了速度伺服系统的实时性和可靠性。
并联机器人;伺服控制;运动控制;运动学正逆解;雅克比矩阵
随着并联机器人研究的不断深入,已从简单的上下料装置发展成数字化制造中的重要单元[1]。其结构简单、传动链短、成本低、质量轻、刚度大[2-4],能够通过“3轴或6轴联动”快速地加工出高精度的曲面和曲线,应用领域变得越来越广。由于并联机器人的驱动杆运动相互关联,运动控制的好坏直接影响各驱动杆映射出动平台的移动量是否为线性关系。本文采用“IPC +PMAC系列运动控制卡”的模式,来实现整个伺服系统[1]的控制研究。
3-UPU并联机器人本体是利用ProE进行建模(图1)。动平台和固定平台通过驱动杆上胡克铰相连接,构成封闭结构。伺服电机运动带动驱动杆伸缩,进而使动平台做3自由度平动动作。
1.1 主要硬件功能
本次设计主要采用Clipper卡,DTC-8B 4通道转接板,松下伺服驱动器和电机。
Clipper卡又名Turbo PMAC2-Eth-Lite,此板卡支持脉冲+方向和模拟量输出形式。它提供了4轴伺服或步进控制以及32个通用数字I/O点,此外Clipper卡采用以太网和RS232串行通讯方式,方便用户进行控制器与上位机连接,并通过选择轴扩展卡对伺服通道I/O端口进行扩展。其主要硬件配置包括80MHzDSP56303 CPU芯片、256k*24用户RAM、1M*8flash存储空间、4通道轴接口电路包括模拟量输出,脉冲加方向数字输出和差分输入、50针IDC接头JMACH1、34针IDC接头JMACH2和两路手轮端口。而DTC-8B是用于连接伺服驱动器,利用内部的光耦进行信号隔离。
驱动器和交流伺服电机选择的是松下A5系列,增量式电机码盘的分辨率为217,额定功率为400 W,最大转速为3 000 rpm。在速度伺服模式下需要对驱动器进行设置Pr0.01=1、Pr0.05=1和Pr0.07=3。由于电机出厂设置每旋转1次的指令脉冲数为10 000 cts,所以设移动当量为10 000 cts/r。
一般情况下,当控制器采用Stepper模式且位置控制模式下时,将位置环、速度环和电流环都做在驱动器里。而当控制器采用Servo模式且速度控制模式下时,将位置环做在运动控制器里,将速度环和电流环做在驱动器里。
1.2 硬件搭建
3-UPU并联机器人的控制系统组成框图见图2。整个系统的硬件部分包括上位机(即工控机)、下位机(即Turbo PMAC2型运动控制卡)、松下A5驱动器和带抱闸的交流伺服电机、3-UPU机构本体和一些辅助设备。
图2 控制系统组成框图Fig.2 Block diagram of control system
其工作流程是通过工控机建立的人机界面向控制卡发送指令,同时控制卡不断地上传3个伺服电机位置信息。再通过PMAC卡中运动程序和PLC程序来完成3轴联动,将理论得出的运动学模型嵌入程序中,完成每个电机轴与工作台之间的运动关系。接近开关是用于限定整个机器人本体的运动范围,原点开关适用于设备回零操作和初始操作,特定传感器是用于保护设备,比如电压和电流保护。
整个控制系统软件设计上位机主要利用VC++6.0的MFC和Matlab,下位机利用PEWIN32PRO进行运动程序和PLC程序编写,利用Pmac Plot32 Pro进行数据采集和利用PmacTuning Pro进行电机调试[5-7]。
3-UPU并联机器人运动轨迹控制流程见图3。首先在MFC操作界面下输入目标轨迹图形参数,通过可执行文件求得大量目标轨迹离散点数据。由于已经动平台中心点初始位置信息,将第一个离散数据坐标值与其做差得出动平台中心点的偏移量进而计算机器人位置反解,得出每根伸缩杆的伸长量变化,通过控制卡向伺服电机发送脉冲控制主动关节位置,进而完成3轴联动。再将关节位置数据导入到位置正解中,求得动平台中心点的位置信息,观察运动轨迹是否完成,如未完成则继续进行。同理每个数据点都与前个数据点比较来进行计算。而对于操作界面动平台的当前位置显示是通过位置正解计算得出。
图3 运动轨迹控制流程图Fig.3 Control flow chart of motion trajectory
2.1 软件接口设计
控制系统软件接口见图4,上位机与下位机是通过PMAC卡提供的动态链接库PComm32.dll来实现,在MFC中利用显示调用方式,其中封装了数据接受和传送指令,比如PmacGetResponseExA()函数和PmacGetLineExA()函数[8-11]。利用VC与Matlab混合编程即通过MFC界面将用户输入的轨迹信息以.txt文本文档的形式传送到Matlab中,通过单击界面中生成坐标文件按钮来调用Matlab生成的可执行文件.exe,可产生X、Y和Z坐标形式大量离散数据点文本文件以便下位机使用。
图4 软件接口图Fig.4 Software interface diagram
2.2 控制算法设计
并联机构电机位置和指尖位置是非线性映射关系(又称为虚实映射),所以PMAC控制卡[6-8]运动学算法编写是整个运动控制的核心。正运动学算法是以电机位置作为输入计算出指尖位置。逆运动学算法是以指尖位置作为输入计算出各电机位置。已知动平台初始中心点坐标P(x0,y0,z0)和初始杆长l0,Δl1、Δl2、Δl3为杆的变化量。利用空间矢量法分析和计算得到PMAC控制卡运动学逆解:
(1)
PMAC控制卡运动学正解:
(2)
运行机制是将正逆运动学算法编写在Prog1中,将3个轴按逆解方式定义,PMAC就会自动识别并计算电机位置。在运行运动程序之前,先执行正运动学程序,需要确定指尖的初始位置。如果指尖起始位置设置完成,PMAC将自动使用逆解计算电机位置。
由于整个系统采用的是速度模式控制,对速度实时性要求的比较高,这里通过研究操作空间与关节空间的映射关系,得到机构3杆伸缩速度vl与动平台速度vp之间关系[12-14],即vl=Jvp。其中J为3-UPU并联机器人的雅克比矩阵,又叫做一阶影响系数。它是进行速度控制、微位移调节、灵巧度分析、手轮调节、误差补偿和动力学分析的关键[15-16]。将雅克比矩阵写入PMAC控制卡中,即可直接得出各个关节的速度值,进而达到速度实时性控制。
(3)
其中Δr为静平台与动平台的半径之差。
首先设定系统初始状态,动平台中心点P(0,0,829.156),各个杆的初始杆长l0均为900 mm。利用上位机进行参数给定,来进行空间螺旋线走刀轨迹,通过比对理论图形和实际图形来判断整个运动控制系统建立的正确性。
3.1 控制系统联结和调试
本系统采用速度控制方式。利用12芯双绞屏蔽线进行设备之间连接,使控制系统更加稳定和抗干扰能力更强。主要接线有:DAC+、CHA+、CHA-、CHB+、CHB-、CHC+、CHC-、ENA_NO、FAULT、+24V和GND。
3.1.1 开环零点漂移调节
零漂调节主要是在设备上电或者其他干扰情况下,通过调节Ix29(x=1-3)使3个伺服电机微转动降至最小,进而减小动平台位置偏差,该调解必须在开环下完成。
3.1.2 电机PID调节
PID调节的作用是在闭环情况下通过调节比例、积分和微分,使得电机动态和静态响应特性达到最好,减少实际位置与理想位置之间的偏差。另外,在有负载的情况下如果伺服电机没有调节恰当,还会导致在运行过程中剧烈抖动,严重的话会造成设备的损坏。所以PID调节是设备联调的基础,它是一种最优控制策略,其输入偏差e(t)与输出u(t)的关系为:
式中kp为比例系数;Ti为积分时间常数;Td为微分时间常数。利用PmacTuningPro软件对伺服电机PID进行调节,使得其在闭环下动态特性和静态特性达到最好,减小电机轴带负载所带来的扰动。最终比例系数设定值为4 000,微分设定值为1 500,速度前馈值为2 000和加速度前馈值为0,其它为默认值。
1)通过对电机的位置阶跃调节(图5),此种情况没有超调量,上升时间为0.004 s,最高时间为0.041 s,满足实验要求。
图5 位置闭环阶跃响应调节Fig.5 Step response regulation of position closed-loop
2)通过对电机的动态特性进行调节,最终选定图6所示情况。由图6可见,指令速度值与实际速度值之差即跟随误差可以控制在正负3 cts之间符合标准。
图6 动态特性调节Fig.6 Dynamic characteristic of adjustment
3.2 轨迹设计
假定动平台中心点走一个空间螺旋线,设计思路:通过MFC操作子界面给定螺旋线中心点坐标值P(x0,y0,z0)、总的半径长和圈数。将其代入Matlab的位置逆解模型得出3个驱动杆变化量并以.txt格式存储。再将文本导入到虚拟仿真软件ADAMS中,每组数据作为驱动力对应添加给每个驱动杆上,观察动平台中心点坐标变化得出图7理想螺旋线轨迹图形。为了观查实际轨迹,首先将设备连接;其次在MFC操作界面执行坐标文件。再次利用已知条件通过VC和Matlab混编求得大量离散点数据,将这些数据通过调用PmacGetResponseExA()函数传入到下位机后执行运动程序,在Pmac Plot32 Pro中即可得出实际动平台中心点坐标轨迹见图8。实验结果表明,理论与实际动平台中心点运动轨迹一致,说明控制系统建立正确。
图7 理论螺旋线轨迹 Fig.7 Theory of spiral path
图8 实际螺旋线轨迹Fig.8 Actual spiral trajectory
通过螺旋线样例可知,只要知道空间或者平面任意的离散点坐标或者已知的曲线方程,都可以利用这种方法在速度可控的情况下将动平台中心点数据传到下位机,再通过直线插补、圆弧插补、样条插补和PVT插补法将轨迹合理走出来。
由以上对3自由度并联机器人的控制分析可知,采用“IPC +TurboPMAC2”控制模式,以VC6中MFC界面下调用PComm32.dll动态链接库中的功能函数再结合Matlab中离散点的处理和PMAC中的运动控制算法的编写已经实现了3轴联动速度伺服控制的思路和方法,并且深入分析了Clipper控制卡的运动学实现机理,为进一步研究做好铺垫。
[1]丁 灵, 相炳坤, 吴洪涛. 从专利分析看并联机器人的研究进展[J]. 南京航空航天大学学报, 2014,24(4): 129-132.
[2]张艳伟,韦 斌,王 南, 等. 3-SPS-S并联机构运动学性能分析[J].农业机械学报,2012,43(44):212-215.
[3]车林仙. 4-RUPaR并联机器人机构及其运动学分析[J]. 机械工程学报, 2010,46(3):35-41.
[4]张艳伟,韦 斌,王 南, 等. 空间转动3-SPS-S并联机构运动学性能分析[J].农业机械学报,2012, 43(4):213-215.
[5]孙 鑫, 余安萍. VC++深入详解[M]. 北京: 电子工业出版社, 2006.
[6]蔡自兴. 机器人学[M]. 北京:清华大学出版社, 2009.
[7]李永良,王艮川,葛会亮, 等. 基于PMAC的球面5R并联机构运动控制分析[J]. 机械设计与研究, 2014, 30(6):13-17.
[8]刘 蕾, 唐为义, 原所先. 基于VC++与PMAC的机器人控制软件的开发[J]. 机器人技术, 2008, 24(22):203-205.
[9]邓黎明, 赵现朝, 齐臣坤, 等. 开放式步行机器人实时控制系统研究[J]. 机械设计与研究, 2014, 30(3):29-33.
[10]JIN Wei-Fan, YI Jia-Liu, LING Chen, et al. Based on PMAC control 4-DOF manipulator[J]. Advanced Materials Research, 2014, (989-994):3 132-3 135.
[11]CHENG Xiao-Min,ZHOU Gen,WU Peng, et al. Research on CNC machining system of directly driven by image based on PMAC[J]. 2014, (599-601):405-408.
[12]李 琳, 李开明. 新型三平动并联机床的运动分析[J]. 机械制造与自动化, 2013, (1):12-15.
[13]米士彬,金振林. 基于雅克比矩阵求解并联机器人位置正解方法[J]. 燕山大学学报, 2011, (5):391-395.
[14]Arun Srivatsan, R, Bandyopadhyay, S. On the position kinematic analysis of MaPaMan: A reconfigurable three-degrees-of-freedom spatial parallel manipulator[J]. Mechanism and Machine Theory, 2013, (62): 150-165.
[15]魏永庚,袁 明,石 勇,等. 基于雅克比矩阵的并联机构结构参数优化设计[J]. 黑龙江大学工程学报, 2015, 6(1):87-91.
[16]范宇超,李 强,魏永庚,等. 基于Adams的3自由度并联机构结构运动学分析[J]. 黑龙江大学工程学报, 2013, 4(2):108-112.
Control research of three degrees of freedom parallel manipulator based on PMAC
FAN Yu-Chao, BI Yong-Li*
(School of Mechanical & Electrical Engineering, Heilongjiang University, Harbin 150080, China)
A 3-UPU parallel manipulator is taken as the research object, which analyzed the control method of the manipulator and its operating principle in detail. The constructing mode of the open servo system of “IPC+TurboPMAC2” has been come up. The MFC interface is established. The controller receives instruction datas from PComm32.dll. Then it uses Matlab to solve the descrete point trajectory. Based on the Clipper motion control card as the core part of the control system, the forward and inverse kinematics and Jacobi matrix algorithm embedded in TurboPMAC2, and the card is used to complete the data sampling interpolation algorithm. The motion control does not depend on the personal computer, effectively improve the reliability and the real time of speed.
parallel manipulator; servo system; motion controller; forward and inverse kinematics; Jacobi matrix
10.13524/j.2095-008x.2015.02.036
2015-04-16;
2015-05-04
山西双赢智能科技有限公司横向课题(20110902)
范宇超(1990-),男,黑龙江齐齐哈尔人,硕士研究生,研究方向:运动控制技术;*通讯作者:毕永利(1968-),男,吉林农安人,教授,硕士研究生导师,研究方向:运动控制系统设计。
TP242
A
2095-008X(2015)02-0091-06