打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
基于 LabVIEW 的多轴运动控制系统的设计与开发

第 27 卷 第 6 期 2008 年 12 月

天 津 工 业 大 学 学 报 JOURNAL OF TIANJIN POLYTECHNIC UNIVERSITY

Vol.27 No.6 December 2008

基于 LabVIEW 的多轴运动控制系统的设计与开发
(天津工业大学 信息与通信工程学院,天津 摘



瑞,苗长云,王中伟

300160)

要: 采用“PC 运动控制卡”的设计方案,设计开发了基于 LabVIEW 的多轴运动控制系统. 提出在 LabVIEW 中 发周期短、易于操作的特点. 通过 ActiveX 技术开发系统控制界面和控制程序的方法. 所开发的系统不但具有较高的性能,而且具有开 文献标识码: A 文章编号: 1671-024X(2008)06-0058-04

关键词: LabVIEW;运动控制卡;ActiveX;ActiveX 自动化;多轴运动 中图分类号: TP273

Design and exploitation on multi-axes motion control system based on LabVIEW
(School of Information and Communication Engineering, Tianjin Polytechnic University, Tianjin 300160, China)

GAO Rui, MIAO Chang-yun, WANG Zhong-wei

Abstract: A multi-axes motion control system based on LabVIEW is designed by using the method of “PC motion technology based on LabVIEW are introduced. This system has great capability and the specialty of short Key words: LabVIEW; motion control card; ActiveX; ActiveX automation; multi-axes motion exploitation time and easy to use.

control card”, and the design methods of developing system control interface and control procedure by ActiveX

运动控制技术在国民经济和国防建设中所起的 作用及其应用的范围越来越大. 在工业生产中,运动 控制系统既用于提高产品质量, 也用于提高产品的产 量. 运动控制技术正在不断地深入到各个领域并迅速 地向前推进, 其应用范围已经涵盖了几乎所有的工业 对各种机械性能和产品 领域. 随着近年来工业的发展, 质量要求的逐渐提高, 针对一台电机的控制已经不能 这就需要人们协调控制多 完成一些复杂轨迹的生成, 2] 台电 机, 由此 产生了 多轴 运动控制系统 [1, . LabVIEW 是美国 NI 公司开发的一种图形化编程语言,其功能 简便、 快捷 的特点 , 正 受 到越来 强 大, 具 有编程直观、 越多编程人士的青睐,尤其是非软件专业人员. 本文 “PC 运动控制卡” 的设计方案, 设计了基于 Lab采用 VIEW 的多轴运动控制系统, 并提出了通过 LabVIEW 与外部代码进行连接的 ActiveX 技术,调用运动控制 卡 所提供 的 函数 , 开发了 实时多轴运动控制系统 软 件, 满足了实际工作的需求.
收稿日期 : 2008-03-28 作者简介 : 高

1

系统硬件的设计

“PC 运动控制卡” 本文采用 模式对多轴运动控制 系统进行设计. 这样构造的多轴运动控制系统只需根 在 Windows 环境下设计 据对被控制对象的控制要求, 就可达到多轴 符合用户操作的人机界面和功能程序, 运动控制的目的. 整个多轴运动控制系统的硬件由 PC 机、 运动控制 卡、 电动机、 驱 动器 、 执行 机 构等 部 分组 成, PC 机和运动控制卡通过 PCI 总线进行通信,且在 PC 机上利用 LabVIEW 软件开发平台进行上层控制软 其系统结构与原理示意如图 1. 件的设计开发, 此多轴运动控制系统是典型的上、下位机结构, 提高控制的实时 便于对多轴运动控制的协调和管理, 加速 性.PC 机作为上位机, 可完成对多轴运动的位置、 完成对人机界面管理、 信息 度、 速度等参数进行设定, 显示和预处理等非实时处理任务. 运动控制卡为下位 接收来自 PC 机的控制信号并进行实时处理, 实现 机,

(1984—) 硕士研究生; 苗长云 (1962—) 男, 教授, 导师. E-mail: 瑞 , 男, , miaochangyun@tjpu.edu.cn

PDF 文件使用 'pdfFactory Pro' 试用版本创建 www.fineprint.cn

第6期
PC 机 PCI 总线 (LabVIEW 运动控制卡 程序)

高 瑞,等:基于 LabVIEW 的多轴运动控制系统的设计与开发

— 59 —

驱动器 传感器

电动机

执行机构

图1 Fig.1

多轴运动控制系统结构与原理示意图

Structure and principle diagram of multi-axis motion control system

VIEW 可以 调 用 ActiveX 自 动 化 服 务器 中的 ActiveX 用 户可以 应用这些 属性 和 对象 , 获得 其属性 和方 法, [ 3] 方 法 进 行编程 . 本文就是 在 LabVIEW 平 台 上 通过 ActiveX 技术 调 用运动控制卡 所提供 的 ActiveX 自 动 化服务器程序中的 ActiveX 对象,进行进一步的编程 速度、 加速度等的 处理, 从而实现对多轴运动的位置、

的程序、控件等. 通过 ActiveX 自动化 LabVIEW 既可 也可以作为服务器. 作为客户端, 以作为客户端, Lab-

运动控制算法, 并根据作业的要求和传感器件的信号 为各电机提供正确的控制 进行必要的逻辑/数学运算, 信号以完成所要求的多轴运动,且可向 PC 机实时返

速度等参数, 以便在 PC 机上可经 回当前运动的位置、 过软件编程实现运动轨迹图像的显示.

控制以及插补等运动控制算法的实现, 完成对多轴运 大大缩短了开发 动控制系统的控制功能的快速开发, “Co运 动 控 制 卡 ACR1505 提 供 一 个 名 为 mACRsrvr” 的 ActiveX 自动化服务器, 这个 ActiveX 自 周期.

nifin 公司生产的最新系列运动控制卡 ACR1505, 与同 速 类产品相比其具有较高的性能,尤其在控制精度、 度和易操作性方面表现优异, 多用于较高性能的运动 控制. 它采用 32 字节浮点 DSP, 具有 120MFOPS 的处 有 4 个 30MHz 编码器的输入, 使用 PCI 总线 理能力, 能够对四轴伺服或步进电机进行控制. 和上位机通信, 电机和驱 动 器 均采 用 上海鸣志公司 生产的高 性能 产 品. 传感器采用增量式脉冲编码器,用于闭环伺服系 统的位置 检测. 这样 可以 明 显 缩短 设 计和 开 发周期, 提高系统的性能. 将 运动控制 卡 以 插 卡形式 嵌 入 PC 机, 即 构成 “PC 运动控制卡” 模式多轴运动控制系统. 这样将 PC 的信息处理 能 力和 开 放式 的 特点与 运动控制 卡的运 动轨迹控制能力有机结合在一起, 使得该多轴运动控 制系统具 有信息处理 能力 强、 开 放 程度 高 、 运动 轨迹 控制准确、 通用性好的特点.

此多轴 运动控制系统 以 专 用的运动控制 卡 为独 运动控制卡采用的是美国 Parker Han立的标准部件,

动化 服务器 包含了 4 个可供调用的 ActiveX 对象, 分 别 为 status (状态) 、 control (控制) 、terminal (终端) 和 utility (效用) , 这些 ActiveX 对象提供了对运动控制卡 操作的多种属性和 方法. 例如 status 提 供了可以获取 运动控制状态信息和 相关数 据的属性 和方法 ; control 提供了可以实现对运动控制参数如速度、 位置等数据 进 行设 置等 用于控制 功能实 现 的 属 性 和 方 法 . LabVIEW 可以通过调用这些 ActiveX 对象,并对它的属 性和方法进行访问, 实现对运动控制卡的多种控制和 操作功能. 其主要实现过程如图 2 所示.
运动控制卡 (ActiveX 自 动化服务器) 随卡提供的 ActiveX 自动 化服务器程序 通过 ActiveX 自动化 (ActiveX 自动化客户端) 访问属性 或方法 在程序框 图中编程 LabVIEW

调用 ActiveX 对象

图2 Fig.2

系统软件开发方法

Exploitation method of system software

2

系统软件的开发

3

控制程序的实现

在系统的控制软件方面, 通过在 PC 机上用 LabVIEW 软件来设计开发了多轴运动控制系统的控制界 面和控制程序. 在系统控制界面中输入多轴运动的目 标位置、 加速度、 速度等运动控制参数, ACR1505 运动 完成对运动 控制卡就会根据此信息控制电机的运动, 轨迹的规划和对实时运动位置坐标的读取. 本文采 用 LabVIEW 作 为上位 PC 机 软件 系统的 开发平台, 编程方便, 人机交互界面直观友好, 摒弃了 在提供强大功能的同时保证 传统开发工具的复杂性, 了系统灵活性. LabVIEW 提供了 ActiveX 外部程 序接 口能力,通过 ActiveX 能够方便地调用运动控制卡中

要实现多轴运动控制程序,就要通过 ActiveX 自 动化, 将 LabVIEW 作为自动化客户端, 将运动控制卡 提供的函数作为自动化服务器,实现 LabVIEW 对运 动控制卡提供的 ActiveX 对象的调用,并访问它的属 性和方法. LabVIEW 中提供了丰富的有 关 ActiveX 操 作的函数, 这些函数位于其程序框图的功能模板上的 Connectivity—ActiveX 面 板 上 . 其 中 主 要 函 数 有 : Automation Open 用于打开 ActiveX 对象,获得对象的 Reference; Property Node 用于 读取或 设 置 ActiveX 对 象的属性; Invoke Node 用于调用 ActiveX 对象 提供的 [3] 方法 .

PDF 文件使用 'pdfFactory Pro' 试用版本创建 www.fineprint.cn

— 60 —

















第 27 卷
运动加速度

先要将运动控制卡提供的软件包中名 为 ComACRSrvr. tlb 的 文件拷贝到 LabVIEW 软件的文件目录 下. 然后

LabVIEW 作为自动化客户端操作 ActiveX 对象, 首

连接测试

6 cm2/s 运动速度 运动模式选择 1 cm2/s

目标位置 X轴 Y轴 15 20 cm cm

错误报告

将 Automation Open 函数 放 置 到 LabVIEW 程 序 框 图 中, 打开对 ActiveX 自动化功能的引用, 并在此函数左

上角的 Automation Refnum 端子处 创建一个 与其相 连 的 Automation Refnum 控件, 由此控件进行 ActiveX 对 (或属性) 节点函 象的选择和调用. 将一个或多个方法 Refnum 输出与方法 (或属性) 节点的 Reference input 的 访问 端 连接就可以完成 对该 对 象的 方 法 (或属性) 了. 访问一个 ActiveX 对象的多个属性和方法, 要将各

连接测试 停止 STOP

X 轴位置 Y 轴 位置 15 20

运动轨迹 cm cm

数 Invoke Node (或 Property Nodes) 放置到 程序框 图 中 , 并 将 Automation Open 函 数 右 端 的 Automation

图 3 前面板界面 Fig.3 Front panel interface

节点顺次首尾连接. 本文 设 计出一 个 能完成多轴 运动 功能 的 程 序 . 此程序分 两 个部 分 ,分 别 为运动控制 部 分 和运动 显 示部分. 其中完成两轴运动控制的程序前面 板如图 3 所示. 运动控制 部分程 序通过 对 control 对 象 中的 属 性 和 方法的 访问编程 ,并 通过前 面 板对 多轴 运动的速 完成对 度、 加速度、 运动目标位置和运动模式的设置, 多轴运动的控制. 通过运动模式选择按钮可对多轴运 可实现绝对运动和 动控制系统的运动模式进行选择, 相对运动两种运动模式. 绝对运动是将输入的目标位 相对运动是将此 置参数作为新运动的绝对运动距离; 参数值作为新运动相对当前位置的运动距离. 运动显 示 部 分 通过调 用 status 对 象 中的 属 性 和 方 法 进 行编 程, 实现对多轴运动的实时位置坐标读取和运动轨迹 显示功能. 此外本程序还增加了通信连接测试和错误

示相 应的 ActiveX 对 象 是否 被 LabVIEW 程 序 正 确 调 用. 若控制过程中出现错误,可在错误报告栏中查看 错误报告,以便作出相应处理. 下面将对这两部分程 序进行进一步说明: 运动控制部分的程序框图如图 4 所示. 其中 fMoveACC、 fMoveVE、 bMoveAbsolute 属 性 分 别 用来设 置运动的加速度、速度和模式. connect 方法用来设置 控制卡与 PC 机的通信方式,将其设定为 PCI 总线方 式. Move 方法用来对运动位置和参加运动的轴数进行 设置. 运动显示部分的程序框图如图 5 所示. 其中主要 通过 status 对象的 GetACRCustom 方法对控制卡 返回 的运动位置坐标等参数进行读取. 设定对位置坐标每 10 ms记录一下此多轴运动控制系统当前的运动位置 坐标, 并生成运动轨迹图.

报告显示的功能, 可通过连接测试指示灯的亮灭来显

图 4 多轴运动控制程序框图 Fig.4 Multi-axis motion control block diagram

PDF 文件使用 'pdfFactory Pro' 试用版本创建 www.fineprint.cn

第6期

高 瑞,等:基于 LabVIEW 的多轴运动控制系统的设计与开发

— 61 —

图5 Fig.5

位置坐标的读取及轨迹图形显示的程序框图

Block diagram of reading position coordinate and displaying track graph

4

结束语

“PC 运动控制卡” 本文采用 的多轴运动控制系统 并 方案 设 计了 基 于 LabVIEW 的 多轴 运动控制系统, 在 LabVIEW 软件平台上对多轴运动控制系统的控制 程序进行了开发. 目前,很多运动控制程序的开发多 采用 VB、 VC 等软件编写, 有时编写界面就占了程序 编写工作的很大一部分, 不利于效率的提高[4]. 本文利 用 LabVIEW 界面易操 作 性 以 及 LabVIEW 可以 调 用 ActiveX 等功能, 实现了在 LabVIEW 软件平台下 系统 运动控制程序的快速开发. 这种方法能够避免繁琐的 界面编程, 缩短周期, 提高效率. 此系统已经在水浸 C (上接第 57 页) 过程中的张力控制问题. 且其最大优点在于当被控对 象参数发生变化时,能够利用自身的模糊推理方法时 时调整 PID 参数,快速适应新的被控对象 , 兼有模糊 控制和 PID 控制的特点,控制效果更好. 参考文献:
[1] 的应用[J]. 机械设计与制造,2006,(7):146-148. 陈毅辉, 王存堂, 钱帅杰, 等. 模糊智能控制在卷绕系统中

经试验 扫描成像超声无损检测运动系统中得到应用, 测定 , 此 系统的 定位精度为±0.065 mm /300 mm, 重复 精度为±0.05 mm, 分辨率为 0.01 mm, 具有较高的控制 精度和性能. 参考文献:
[1] [2] 丛 2006. 爽. 实用运动控制技术 [M]. 北京:电子工业出版社,

王淑芳 . 基 于 虚拟仪 器 技术的 多轴 步 进 电 机控制系统 [J]. 微计算机信息, 2006, 22 (9) : 97-99. 清华大学出版社, 2007.

[3] 陈锡辉. LabVIEW 8.20 程序设计从入门到精通 [M]. 北京: [4] 熊先锋. 普通运动控制卡在 LabVl EW 平台上的应用[J]. 微 计算机信息, 2006, 11 (1) : 139-141.

[2] 吴冬凤. 织机电子送经卷取系统的研究[D]. 天津:天津工业 [3] 诸 大学,2008:47-48. 社,2005. 静. 模糊控制理论与系统原理[M]. 北京:机械工业出版

[4] 刘富强,李智敏,陈红舟. 模糊推理系统的 MATLAB 仿真研 [5] 究[J]. 船电技术,2006,(4):55-57. 2004:221. 李宜达. 控制系统设计与仿真 [M]. 北京:清华大学出版社 ,

PDF 文件使用 'pdfFactory Pro' 试用版本创建 www.fineprint.cn


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于PC机及工业PC机的运动控制卡
基于LabVIEW RT 的集散控制系统(转)
运动控制器、运动控制卡的区别
数控机床硬件设计
运动控制的基础
(2)采用SoftMotion模块和SolidWorks改进设计流_SolidWorks成都恒睿_新浪博客
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服