基于PLC的多轴控制研究-.pdf
第 6卷第 4 期 2 0 0 8年 1 2月 中国工程机械学报 CHI NES E J OURNAL OF C ONS 1 UC TI ON MA C HI NE RY Vo 1 . 6 No. 4 De c 2 0 0 8 基于 P L C的多轴控 制研 究 王 海 , 李洪奎2 , 刘晓东3 1 . 沈阳理工大学 机械工程学院 , 辽宁 沈阳1 1 0 1 6 8 ;2 . 沈 阳理工大学 理学院 , 辽 宁 沈 阳1 1 0 1 6 8 3 . 中石油 兰州石化分公司机械厂 , 甘肃 兰州7 3 0 0 6 0 摘要 位置控制是可编程序逻辑控制器 P L C 的重要应用. 针对多轴控制的需求, 以松下 F P 0为例 , 提出通过软 件方式 , 采用轴组间切换处理实现多伺服轴控制的原理, 并给出从命令代码下发到各种运动功能实现的基本过 程 , 并指出其应用 范围和实 际意义 . 关键词多轴控制;位置控制 ; 激活轴; 轴组;保持寄存器 中图分类号 r r P 3 1 9 文献标识码 A 文章编号 1 6 7 2 5 5 8 1 2 0 0 8 0 4 0 4 7 0 0 3 I n v e s t i g a t i o n i n t o PL C b a s e d mu l t i a xi s c o n t r ol W AN G Hai 。 ,LIHo n g- k ui , LI U Xi a o - d o n g3 1 . S c h o o l o f Me c h a n i c a l E n g i n e e r i n g , S h e n y a n g L i G o n g Un i v e r s i t y , S h e n y a n g 1 1 0 1 6 8 , C h i n a 2. S c i e n c e Co l le g e , Sh e n y a n g Li g o n g Un i v e r s i t y, Sh e n y a n g 1 1 01 6 8, Ch i n a ; 3 . P e t r o c h i n a L a n z h o u P e t r o c h e mi c a l C o mp a n y Ma c h in e r y P l a n t , L a n z h o u 7 3 0 0 6 0 , C h i n a A b s t r a c t Th e p o s i t i o n a l c o n t r o l i s a s s o c i a t e d wi t h a c r i t i c a l P LC a p p l i cat i o n.By t h e me a n s o f sof t wa r e r e a l i z a t i o n v i a To s h i b a F P 0. t h e mu l t i p l e s e r v o - a x i s c o n t r o l i s c o n d u c t e d t h r o u g h a x i s g r o u p s wi t c h i n g . M e a n wh i l e ,t h e i n s t r u c t i o n c o d e s a r e s e n t t o mo t i o n a l f u n c t i o n a l i t i e s .Fi n a l l y ,t h e a p p l i c a b l e s c o p e a n d s i g n i f i c a n c e a r e p r e s e n t e d. Ke y wo r d s mu l t i a x i s c o n t r o l ;p o s i t i o n a l c o n t r o l ;a c t i v a t i o n a x i s ;a x i s g r o u p ;p r e s e r v a t i o n r e g i s t e r P L C作为工业环境的主要控制器 , 在生产实际中大量应用 , 其范围涵盖 了顺序及其他逻辑控制、 过程控 制、 位置控制等领域. 大型化 P L C系统以其可靠控制网络 , 形成分布式远程控制模式 ; 各种小型 P L C系统在 针对具体设备控制方面, 也都提供了极其丰富的功能, 包括实数运算、 高速脉冲处理、 位置控制、 脉冲直接输 出 P L S 、 脉宽调制脉冲输出 P WM 、 各类中断等特殊处理功能. P L C为人们提供了良好的平台环境_ 1 ] . P L C配合步进电机驱动单元、 专用伺服单元 已经广泛应用于位置控制 . 但对多轴控制应用方面还受 限制 , 在标准使用方式下 , P L C一般只能有 2个高速脉冲输出, 虽然可以通过增加位控模块或采用多 C P U 结构组成主从网络实现 , 但成本大大增加_ ,2 3 J . 在实际的某涉密文检系统专用设备开发时, 笔者遇到上述问题 , 通过软件 实现多轴控制 , 得到稳定 良 好的解决方案 , 现从原理方面给予阐述. 所用 P L C为松下 F P 0 一 C 3 2 . F P 0小型 P L C功能指令丰富 , 具备两路高速脉冲输 出, 可单独进行位置控制 , 互不干扰 , 提供最大 1 0 0 H z 的高速脉冲输出. 位置控制功能 S P D 用于步进电机和伺服电机的速度控制或位置控制十分方便. 1 多轴控制系统结构 P L C系统在接受上位机传送的编码后的指令后解释执行. 系统直接采用松下 P L C提供的专用通信协 基金项 目 辽宁省博士启动基金 资助项 目 2 0 0 7 1 0 2 6 作者简介 王海 1 9 7 1 一 , 男 , 副教授 , E . ma i l wa n g h ma il s i n a . c o m 学兔兔 w w w .x u e t u t u .c o m 第 4期 王海 , 等 基 于 P L C的多轴控 制研究 4 7 1 议 N E WT OC OL , 上位机通过 Vi s u a l B a s i c 开发. Y 】 ~Y3为用于步进 电机脉冲的输 出口; P L C输出口Y 0 , Y1以脉冲速率方式分别至步进电机驱动器 1 , 2的脉冲输入端 , 控制 2个通道的电机转速和位移 . P L C输出 口 Y 2 , Y 3为方 向信号至驱动器方向选择 端, 控制相应电机的转向. 输出口Y 4 , Y 5 , Y 6 是步进电机切换选择信号. 输入分别采集各位置开关信号. 多轴控制的系统结构如图 1 . 将轴按照运动类型分为直线轴 , 转动轴 ; 正在操作的唯一轴为激活轴 ; 可同时进行操作 的 2个轴为 同 一 个轴组内的轴 , 不在同一轴组 内不能联动 . { , 。 IN E WT O O L Y 0 _ J u u 厂 ] 监 祆仟 协 议 串 口Y 2 c H o 方 向 控 制 I 1 P 下 发 运 动 指 令 监视运动过程 c H1 脉冲输 出一 L- - j XO XI YI _ _ j u u 广■■] 限 位 开 关 X 2 Y 3 c H l 方 向 控 制 l1 一 l 回零开关 X 3 Y4 工位计数 . Y5 Y6 轴组选择 图 1 多轴控制系统结构 Fi g. 1 St r u c t u r e o f mul t i - a x i s c on t r o l s y s t e m 直线轴 l 、 直线轴 2为控制载体托架在 1 个平面 .2 7 ~v上 移动. 转动轴 l为控制 l 6工位转位. 转动轴 2为 l 2工位. 转 动轴 3为 1 5个工位. 直线轴 3为 1 个方 向任意的移动调整, 无工位定位要求 , 故简化为按直线轴处理. 控制步进 电机轴组 分配情况如表 1 , Y4 , Y5 , Y6为轴组选择输 出口, 既用于程序 内部标识 , 同时用于切换输出. 2 多轴控制的软件实现 表 1 电机轴组分配情况 Ta b. 1 Di s t r i b ut e o f mo t o r s a x i s g r o u p Y 4 Y5 Y 6 轴组分配 直线轴 l 、 直线轴 2 转动轴 1 、 转动轴 2 转动轴 3 直线轴 3 注 0为断开 , 1 为接通 2 . 1 F P O位控功能[ 4 】 高速脉冲位置控制指令 F 1 6 8 S P D, 在相应的控制标志为 O F F , 并且执行条件触发器为 ON时, 根据参 数表的设置, 从指定的输出通道 Y 0 或 Y 1 输出 1 个脉冲序列; 控制代码、 初始速度、 最高速度、 加减速时 间和 目标值等参数由用户程序写人参数表. 根据指定的加减速时间 , 脉冲频率以一定变化率从初始速度切 换到最高速度.减速过程中, 频率变化的斜率和加速过程的相 同. 具体应用程序如下 RU 一一一一一 J f 一一一一一[F 0 MV, H 2, D T 0 ] ∥控制代码 [ F 0 MV, K 1 0 0 0 , D T 1 ] / / 初始速度 H z [ F 0 MV,K 7 0 0 0 , D T 2 ] / / 最高速度 Hz [ F 0 MV, K 3 0 0 , D T 3 ] / / 加减速时间 m s [ F 0 D MV, K I O 0 0 0 , D T 4 ]/ / 目标值 脉冲数量 [ F 0 M V, K 0 , D T 6 ] ∥固定指定为 0 R1 一一一一一 I I 一一一一一l F 1 6 8 S P D1 , D T 0 , 0 ] 控制代码为增量相对值型或绝对值型控制的选择. 增量相对值型是根据目 标值输出所设置的脉冲; 绝 对值型控制是输出脉冲的数量等于目 标值与当前值的差值. 与 F 1 6 8 指令相关的数据和标志、 控制位见文献[ 4 ] . 高速计数器控制标志 D T 9 0 5 2 , 可以通过 MV指令写入数值, 进行高速计数器的复位、 计数禁止, 高速 O O 1 O 0 1 O O 学兔兔 w w w .x u e t u t u .c o m 中国工程机械学报 第 6卷 计数器指令的终止及清除 . 其 1 6位数据按组分别对应于通道 0 ~3 共 4个高速计数通道 , 2 , 3通道 只用于 高速输入. 2 . 2 软件实现 上位监控计算机向 P L C下发运动控制指令 , 并采集运行状态 . 指令的下发一次性完成 , 运动状态的采 集以扫描周期实时进行 . 运动指令格式编码 控制类别为 D T 0 ; 轴号为 D T 1 ; 运动性质为 DT 2 ; 行进量为 吣. D T 0为控制类别 , 用以区分上位机 的指令性质 , 包括运动轴的位置控制 、 其他逻辑控制 , 其 中数值 1 定义为位置控制 . D T1 为存放激活轴的编号 , 值为 1 ~6 ; D T 2为标志运动性质, 数值 0为标定过程, 1为回 零过程 , 2为正常运行过程 ; D T 3为存放行进量数据 激活轴为转动轴时表示该转动轴的工位号 , 激活轴为 直线轴时表示直线轴行进到全行程的百分比. 例如 当上位机向 P L C的D T 0 --D T 3 写人 1 , 2 , 2 , 3 7 时, 其 含义为要求编号为 2的直线轴行进到全行程 的 3 7 %处 . 切换轴组需要保存原轴组的当前位置 , 直到下一次被激活时调用 , 为避免重新 回零 , 即便在掉电情况 下也应保存 , 故存放在保持型存储器中, F P 0一C 3 2 P L C保持型数据储存器为 D T6 1 1 2 --D T 6 1 4 3共 3 2字. P L C应用软件的结构安排如图 2所示 , 在初始化阶段释放激活轴 , 检查轴设定数据的正确性 , 如有丢 失等错误重新赋值 . 结束后进入正常扫描. 运动前置公共处理 I ‘ 1 r ‘ 1 r 、 r 圆 周 延 明 处 理I l 圆 周 回 零 处 理l I 直 线 还 功 停 车I l 直 线 回 零 处 理l l直线 标 定 过 程 圆 周 停 车 处 理 I l 直 线 停 车 处 理 l 、 r 、 r 、 r 运动后 置公共处理 图 2 P L C软件结构安排 Hg. 2 Ar r a ng e me n t o f PLC s o f t wa r e 运动前置公共处理部分读取控制指令运动指令, 将当前所选激活轴存于 wR 6 R 6 0 一R 6 F 激活轴标 志位, WR 6最多有 1位为 1 ; 输入数据有效性检查 , 规范化处理 ; 各通道行进量做分别保存 ; 立即切换轴组 选择输出口Y 4 , Y5 , Y 6 , 并通过继 电器输 出, 延时到时选中激活轴 , 相应定时器即为激活轴选中标 志. 圆周行进运动处理 读取 目标工位号 、 当前工位号、 该轴总工位数 , 三者为 自变量 , 调用 S UB 3判断最 短路径 , 计算行进量 , 补偿 累计误差 的处理. 行进量作为 自变量 , 调用圆周运动子程序 S U B 2 . 圆周运动采 用增量式控制模式 . 圆周运动停车处理 当运动停止 正常停车、 急停 时、 同组内切换时复位激活轴标志. R 9 0 3 A变为低时, 将 D T 9 0 4 4 当前值置为零, 将原目 标值存为下一次的当前值, 轴组内第二轴同样处理. 圆 周 回零处理 回零开始 , 将 K9 9 9 9 9作为 自变量 , 调用圆周运动子程序 S UB 2 , 当碰到 回零开关 , 做减速停 车. X 4为定位脉冲输入 , 下述程序为 回零操作 I X 4 I 一一一一一一1 I 一一一[ F 6 6 WO R, D T 9 0 5 2 , H 8 , DT 7 0 1 ] l 一一一一一一一一一一一[ F 0 MV D T O 1 , D T 9 0 5 2 ] f ⋯⋯⋯一一[ F 0 MV, K 1 , D T 6 1 1 8 ] / / 认为此时刀号为 1 I 一一一一一一一一一一一[ F 0 MV, K 0 , D T 9 0 4 4 ] / / 清空D T 9 0 4 4 直线正常行进处理 读取激活轴上次位置, 置为当前位置 ; 读取最大位置 , 计算脉冲数 , 调用直线运动 功能 S UB 1 , S UB 1 采用绝对式控制模式. 直线运动的到位停车、 急停处理 R 9 0 3 A消失时, 保存当前值 , 复位激活轴. 轴组内第二轴同样处理. 直线回零处理 将 K一 9 9 9 9 9 S U B 1 的自变量, 往负方向运动到遇见 下转第 5 0 4页 学兔兔 w w w .x u e t u t u .c o m 中国工程机械学报 第 6卷 参考文献 [ 1 ] 周茂 刚. 工程施 工信息化管理的作用[ J ] . 施工技术, 2 0 0 0 1 1 3 5 . Z H OU Ma o g a n g. E f f e c t s o f c o n s t r u c t i o ni n f o r ma t io nma n a g e me n t [ J ] . C o n s t r u c t i o nTech n o lo g y , 2 0 0 0 1 1 3 5 , [ 2 ] 许玉德 , 李浩然 , 李海峰 , 铁路轨道养护维修计算机辅助决策系统中几个技术问题的研究 [ J ] . 上海铁 道大学学报 , 2 0 0 0 1 0 2 63 1 . XUYu d e , L I Ha o r a n , L I Ha if e n g . Th e r e s e a r c ho f s e v e r a l t e c h n o lo g i c a l p r o b l e ms o nd e c i s i o n s u p p o r t s y s t e m f o r t u c kma i n t e n a n c e [ J ] . J o u r n a l o f S h a n g h a i T i e d a o Un iv e r s i t y , 2 0 0 0 1 0 2 63 1 . [ 3 ] 薛红前, 张淳, 陶华, 等. 计算机辅助设备管理信息系统的设计与实现[ J ] . 西北轻工业学院学报, 2 0 0 0 2 5 0 ~ 5 2 . X UEHo n g q i a n , Z HA NGC h u n , T AOHu a , e t a 1 . D e s ig n a n d r e a li z a t i o n o f c o mp u t e r a i d e d e q u ip me n t a d mi n i s t r a t io ni nfo r ma t i o n s y s t e m[ J ] . J o u r n a l o f N o r t h w e s t I n s t i t u t e o f L i g h t I n d u s t r y , 2 0 0 0 2 5 05 2 . [ 4 ] 王其 昌. 铁路线路大修 工程 [ M] . 北京 中国铁道出版社 , 2 0 0 6 . WA NG Qi c h a n g . R a i l wa y li n e ma in t a i n p r o j e c t E M] . B e ij i n g C h i n a R a il wa y P r e s s , 2 0 0 6 . [ 5 ] 曾登高.. N ET系统架构 与开发[ M] . 北京 电子工业 出版社 , 2 0 0 5 , Z E N De n g g a o .. NE T s y s t e m f r a me and e x p lo i t u r e [ M] . B e i j i n g E l e c t r o n i c I n d u s t r y P r e s , 2 0 0 5 . 上接第4 7 2页 原位开关减速停车. 直线轴的校准过程是 1 个顺序动作过程 , 首先负 向回零并存储 , 再正 向运动到另 1个 极限点 , 将此运动距离保存为最大值 . 完成上述功能程序代码量 已经很大 , 运动后置处理对各标志位做统 一 的处理和检查 , 处理级别较高的控制要求放于最后 , 符合 P L C扫描特性 , 也避免意外错误 . 同时将位置 信息返回给上位机 ; 其他辅助处理也安排在此 . 3 结语 采用上述方法 , 通过软件轴组切换完成多轴控制 , 该专用设备已投入使用 , 尽管代码 占 P L C本身程序 存储器容量的 7 0 %, 但 P L C扫描时间 1 0 ms 左右 , 性能仍然可靠 . 本文采用类似计算机数控系统 C NC 中对 M, S代码 的解释处理方式 , 在轴数多且联动要求低时, 利 用了P L C处理复杂逻辑的能力, 控制多轴切换, 满足控制要求, 通过软件减少了硬件投资, 降低成本. 但在 联动轴数大于 2个 , 需要差补等场合 , 上述方法不能直接实现. 正如开篇所说 , P L C为人们提供了 1 个可 靠的开发空间很大的平 台. 参考文献 [ 1 ] 薛开, 王平, 王文斌. 基于多轴运动控制器的二轴转台控制系统[ J ] . 哈尔滨工程大学学报, 2 0 0 6 , 2 7 4 5 7 0 5 7 3 . X UE Ka i , WA NG P i n g , WANG We n b i n . Co n t r o l s y s t e m f o r t wo - a x i s t u r n t a b l e b a s e d o n p r o g r a mma b le mu l t i a x i s c o n t r o l l e r [ j ] . J o u r n a l o f Ha r b i n E n g i n e e r i n g Un i v e r s i t y , 2 0 0 6 , 2 7 4 5 7 0 5 7 3 . [ 2 ] 刘建峰. 基于P A C的多轴运动控制系统的研究[ J ] . 机械制造与自动化, 2 0 0 7 6 1 2 5 1 2 7 . L I U J i a n f e n g . T h e s t u d y o n m u l t i . axi s m o t i o n con t rol s y s t e m b a s e d o n P A c [ J ] . Me c h a n i c Ma n u f a c t o ry and A u t o m a t io n , 2 0 0 7 6 1 2 5 1 2 7 . [ 3 ] 朱华征, 范大鹏, 庞新良. 基于可编程多轴控制器的三轴转台控制系统[ J ] . 兵工自动化, 2 0 0 4 , 2 3 0 1 5 5 5 7 . Z HU Hu a z h e n g , F A N Da p e ng , P AN G Xi n l i a n g . C o n t r o l s y e m f o r t h r e e - a x i s t u r n t a b l e b a s e d o n p r o g r am ma b l e mu l t i a x i s c o n t rol l e r [ J ] . Mu n i - t i o ns I n d u s t r y Au t o ma t i o n , 2 0 0 4 , 2 3 0 1 5 55 7 . [ 4 ] M a t s u s h i t a E l e c tr i c Wo r k s L t d , A u t o m a t i o n C o n t r a l G r o u p . F P 0 p r o gra m ming m anu a l [ E B / O L ] . 2 0 0 4 1 0 0 5 [ 2 0 0 8 0 9 1 0 ] h t t p ∥ V g -lcv IA r . n e w. c o . i p / ea e g /. 学兔兔 w w w .x u e t u t u .c o m