3-UPS/S并联转台的远程控制
2012-02-20岳晓虎韩先国
樊 锐,岳晓虎,韩先国
(北京航空航天大学 机械工程及自动化学院,北京 100191)
并联机构作为一种新型的传动机构,具有刚度大、承载能力强、误差小、精度高、自重负荷比小、动态性能好、容易控制等一系列优点[1],已广泛地应用于机器人、并联机床、运动仿真器等。3-UPS/S是一种串并联机构,其既继承了并联机构的优点,又发挥了串联机构运动空间大的特点,是并联机构的一个重要发展趋势[2]。
转台作为航空、航天等领域中进行仿真和测试的关键设备,在飞行器的研制过程中,起着极其重要的作用。传统的三轴转台结构,本质上是由3个转动副串联而成,是典型的串联机构,其优点是在3个转动方向都可以实现360°回转,转动空间非常大。与传统转台相比,并联转台具有的优点如下:并联转台体积和净质量可以大大减小;并联机构反解容易的特点使之轨迹规划简单,易于控制;动平台运动灵活,容易实现多个自由度联动以及适应多种仿真和测试任务。
本文以一种三自由度3-UPS/S并联转台为研究对象,远程控制系统要求实现每50 ms收发一组数据,角位置精度达到0.05°及角速度精度达到0.01°/s。根据需求搭建“PC+PMAC”为硬件平台的控制系统,利用CAN总线的远程数据传输功能,实现了并联转台的远程控制。
1 机构介绍
并联转台需要实现3个自由度的转动,转动的工作空间分别为
α=± 40°,β=± 40°,γ=± 360°。
根据需求设计的并联三轴转台的机械部分由电动转台、静平台、动平台、中央立柱以及3条由螺母丝杠组成的支链组成,如图1所示。
其中,中央立柱以及3条伸缩支链与静平台的连接,采用高精度的球铰来实现,3条伸缩支链与动平台的连接,采用高精度的虎克铰来实现。3条支链在伺服电机的驱动下连同电动转台,使得并联转台可以绕空间X轴、Y轴、Z轴实现3个自由度的转动。
2 系统的控制策略
控制系统采用IPC+PMAC运动控制卡的结构形式。控制系统硬件主要包括工控机、PMAC运动控制卡、CAN卡、电动转台、安川伺服电机及驱动器组成。控制系统原理图如图2所示。
其中下位机采用工控机,向用户提供良好的操作界面,使用户完成模式切换、远程控制、参数设置、监控等操作。PMAC运动控制卡和接口卡,共同实现伺服电机的精确位置伺服控制。远程计算机通过CAN通讯卡,向下位机发送位置和速度信息,PMAC卡通过PCI总线,接受工控制的控制命令,实现对4个轴的控制。
图2 3UPS/S控制系统原理图
3 并联转台远程控制
远程计算机提供并联转台3个自由度的运动轨迹,按照一定的时间间隔(如50 ms)将运动轨迹在时间轴上进行离散化,得到时间轴上并联转台位置、速度的离散序列,并且按照此时间间隔,定时向工控机发送离散后的一组位置与速度,当工控机接收到一组数据后,配合PMAC卡与伺服单元,驱动各个伺服电机运动到相应的位置。
结合并联机构的虚实插补策略(虚轴粗插补、实轴精插补)[3],为了实现远程控制,整套远程控制系统,需要具备远程数据传输和位置伺服两个主要功能,因此整个远程控制系统可以分成以下两个部分:
(1)远程数据的传输,该过程由CAN总线实现;
(2)支链的轨迹控制,该过程由工控机、PMAC卡、伺服单元与伺服电机共同完成,其中工控机完成位置逆解运算、运动程序语句的生成以及下载;PMAC、伺服单元与伺服电机共同完成位置的精确伺服控制。
3.1 远程数据传输
CAN是一种多主方式的串行通信总线,可提供高达1 Mbit/s的数据传输速率。研华PCI-1680有两个独立的CAN接口,可以实现单PC自发自收,使得上位机的软件调试工作,得以方便进行,在卡的内部,采用了SJA-1000作为CAN控制器,PCA-82C250作为CAN收发模块[4]。
PCI-1680U驱动程序中所用到的主要函数大多在CANbus2.0.h里进行了声明,在原驱动程序中API调用函数顺序如图3所示,其中图3(a)为数据发送流程,图3(b)为数据接收流程。
并联转台轨迹经过粗插补后的位置与速度值,以报文的形式按间隔时间从远程计算机发送到上位机,在PCI-1680中报文的表示方法为:
图3 API调用函数顺序流程图
typedef struct{
UCHAR ff;
UCHAR rtr;
ULONG id;
UCHAR dlen;
UCHAR data[8];
}CAN_MSG;
其中,
ff为选择使用标准帧格式还是扩展帧格式,根据需求选择具有29位标识符的扩展帧格式;
rtr为远程标志位,发送数据时该位应设为0;
id为报文的标识符;
dlen为数据的长度;
data[8]为存储的具体位置与速度信息。
由于每一个位置与速度值都是一个double类型,因此规定一个报文只存储一个位置值或速度值,这样一组完整的远程信息就包括6个报文,即3个位置与3个速度,如表1所示。
表1 CAN通信的具体报文
报文的ID为1~3代表X轴、Y轴、Z轴的转角,ID为4~6代表各轴的速度,ID为0为停止标志。
应用PCI-1680U接收远程报文,有两种方案:
(1)一组完整的远程信息共包含6个报文,因此在接收方定义一个6个报文大小的FIFO接收缓冲区,当接收缓冲区接收到6个报文后,系统会产生一个事件,通知从缓冲区中读取这些数据;
(2)在接收数据方建立一个比较大的FIFO接收缓冲区,自动接收保存通过CAN总线发过来的数据。然后等待工控机将一组完整的信息从缓冲区中顺序读出来。
第一种方案中,当下一组数据到达后,而第一组数据还未被读取时,可能会造成数据混乱或者丢失,需要有足够大的缓冲区,来接接收这些数据,为了避免数据的混乱或者丢失,采用第二种方案接收报文信息。
当并联转台进入远程控制模式并开始接收命令时,工控机会一直查询CAN缓冲区内是否有数据到达,如果有数据到达,则将数据按顺序存储在一个数组里,当收到ID从1到6的一组数据后,工控机暂时停止查询缓冲区,转而进行处理数据,当该组数据处理完成后,工控机又开始查询缓冲区。当接收到ID为0的数据时,工控机停止读取缓冲区,等待电机停止后退出远程模式。接收远程数据的流程具体如图4所示。
图4 CAN通讯流程图
3.2 PMAC轨迹控制
当远程计算机按照间隔时间发来数据后,工控机应该及时接收、处理、转化为程序语句,并下载到PMAC卡中,为了能够快速执行程序语句,需要在PMAC卡中建立旋转缓冲区,旋转缓冲区允许在程序执行的期间对程序进行下载,并覆盖已经被执行的程序行[5]。这样PMAC卡在接收到程序语句后,就会将程序语句放入缓冲区中等待执行。
缓冲区的具体定义如下:
A;停止所有运动
CLOSE;关闭所有缓冲区
&1 DELETE ROT;删除存在的缓冲区
&1 DEFINE ROT{常量};常量为缓冲区大小,
B0;准备运行
&1 OPEN ROT;打开缓冲区
PVT{常量};选定PVT的时间间隔
R程序开始执行
CLOSE;关闭缓冲区
这里的PVT是指位置—速度—时间插补方式,之所以选择PVT精插补方式,是由于这种插补方式能实现对轨迹图形更紧凑地控制。
通过CAN接收到数据后,要经过位置逆解,转化为各杆的伸缩量及速度,记为当前位置,将当前位置和前一个位置之间平均细分为5个位置,这是由于使用PVT插补方式时,缓冲区中必须保证至少有两条指令,才能开始执行,然后将细分后的位置与速度写成程序语句,下载到PMAC卡中等待执行。
结合CAN的远程数据传输以及PMAC的轨迹控制,设计出如图5所示的远程控制流程图。
图5 远程运动控制流程图
4 实验
一般速率精度的测试方法,有定角测时法和定时测角法[6]。
根据现场实验条件,远程控制系统采用定时测角法,来测量并联转台速率精度。
首先在远程计算机中,采用S型速度曲线规划并联转台匀速运行的位置曲线,并且将并联转台的位置、速度轨迹在时间轴上按照50 ms间隔进行离散化。
然后采用VC中高精度的多媒体定时器定时每隔50 ms向下位机发送一组位置、速度信息,下位机在接收到数据后,经过反解、细分、写成程序语句,下载到PMAC卡的旋转缓冲区等待执行。当转台运行平稳后,在下位机中同样采用VC中高精度的多媒体定时器定时一定时间(该时间由角度增量的名义值和速度决定,一般选取的角度增量名义值为10°)读取4个电机编码器的位置反馈值,连续测量11次,保证有10个时间间隔。
最后通过位置正解,求得并联转台实时位置,通过计算可以得出转台的速度。
定时测角法速率精度Uω的计算公式为[6]
式中,
θg为给定速率下,被测轴在规定采样时间间隔内的角度增量名义值;
△T为采样时间间隔。
图6中,
(a)、(b)分别为并联转台以 2°/s、10°/s的速度,绕X轴转动的位置曲线;
图6 并联转台以恒定速度绕各轴转动的位置曲线
(c)、(d)分别为并联转台以 2°/s、10°/s的速度,绕Y轴转动的位置曲线;
(e)、(f) 分别为并联转台以 2°/s、10°/s的速度,绕Z轴转动的位置曲线。
经计算,当并联转台分别绕X轴、Y轴、Z轴以2°/s、10°/s的速度运动时,速率精度如表2所列。
表2 各轴在不同速度下转动的速率精度
5 结束语
从表中可以看出,转台绕各轴转动的速率精度都在0.01°/s以内,满足指标要求。通过大量的实验证明,并联转台在半径5 m的范围内,实时控制工作稳定、性能可靠。
[1]黄 真,孔令富,方跃华.并联机器人机构学理论及控制[M].北京:机械工业出版社,1997.
[2]王 洋,倪雁冰,黄 田,等.球面并联机构实时控制系统的开发[J].制造业自动化,2001,23(4):16-19.
[3]姜复兴,庞志成.惯导测试设备原理与设计[M].哈尔滨:哈尔滨工业大学出版社,1998.