5 控制系统的软件设计
在Windows 环境中, 采用Visual C++设计控制程序。位移量l1 的闭环控制见图5。其中控制时间隔T=10ms, 位置给定为离散化后的期望轨迹, 位置反馈通过A/D 转换读取位移传感器的信号, 数字滤波后计算出被控量的当前值。
程序中用SetTimer( nIDEvent, time, NULL) 设置中断, 其中nIDEvent 为中断号, time 为中断时间间隔。中断处理函数的流程见图6。因为并联机构运动时各个支路之间具有一定的耦合性,应避免支路独立大范围运行。程序启动时要将每个控制端口初始化, 各模拟输出清零, 设置开关量输出使电机的停止、快速制动端有效, 确保程序启动时整个系统的安全。为了使并联机构的5 个支路同步运行, 程序中设置了5 个与之相对应的中断处理函数。联机构的5 个支路同步运行, 程序中设置了5 个与之相对应的中断处理函数。
此外, 另设置了一个计时器定时改变期望位置, 时间间隔为t, 通过改变t 的大小调节动平台的运动速度。位置给定r( kt) 是由ADAMS 仿真得到, 离散化的时间间隔为0.05s。
通过A/D 采样获得被控量的当前位置c( KT) , 采用平均值滤波, 采样次数20 次。
位移偏差:
e( KT) =r( kt) - c( KT) ( 1)
通过实验验证得知: 当e( KT) >0 时, 电机驱动器F/R 端为高电平, 即电机正转当e( KT) <0 时, 电机驱动器F/R 端为低电平, 即电机反转, 此条件为闭环系统稳定的必要条件。由控制器运算得出控制量u( KT) , 其值由D/A 转换输出到电机驱动器的转速端子“AVI”, 调节无刷直流电机的转速。
6 控制系统的实验验证
在实验过程中, 首先调节并联机构的支路使动平台处在零坐标位置, 然后让动平台做以下合成运动: Y 轴方向上做100mm 往复平移, X 轴方向上做±15°旋转, 合成方法图略。使用ADAMS 软件求取相应的位置反解, 在控制程序中使用其离散化后的结果, 使动平台重复往返运动。在此过程中, 并联机构运行平稳, 动平台运动轨迹重复性较好。
7 结束语
以无刷直流电机为驱动部件, 微机为处理器, PCI 总线测控卡作为数据接口构建了系统的硬件部分。使用C++语言编写了控制软件。利用ADAMS 软件求解并联机构的位置反解曲线, 并应用到实验中。
实验结果表明:
( 1) 由于无刷直流电机的驱动能力较强, 提高了系统的响应及运行性能。
( 2) 并联机构各支路的控制精度能够满动平台运动的需求。
( 3) 利用ADAMS 软件获得的位置曲在实物证验证中得到了较好的应用。