基于VC_的四轴运动控制卡软件系统开发研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
:;.!直流永磁电动机 &N" 驱动基本原理
图 [ 为利用开关管实现直流电动机 M@F调速控
制的原理图和输入输出电压波形# 当开关管 FNY469
的栅极输入高电平时$开关管导通$直流电动机电枢绕
组两端有电压 *+# ,! 时间后$栅极输入变为低电平$开 关管截止$电动机电枢两端电压为零# ,% 时间后$ 栅极 输入重新变为高电平$开关管重复前面的动作过程#
该运动控制卡可以实现单轴及多轴协调运动# 对 于单轴所执行的运动操作有绝对运动"连续点动"急停 缓停"回零等+对于多轴协调运动有直线插补和圆弧插 补#
单轴运动控制主要用来调试直流电动机运动性
能# 采用梯形曲线运动模式$设置速度"加速度"目标 位置 " 个参数$通过设置合适的 M3P控制参数$使电动 机运动达到系统设计要求#
基于 ’&RR的四轴运动控制卡软件系统开发研究
高#煊#何广平
! 北方工业大学机电工程学院"北京 !’’![[#
摘!要!研究了基于固高 ABC<DD CEFC&’%运动控制卡的直流伺服系统"利用 FG0H3I’((提供的 "GJ 42+0+K1L+HM931G+M’I300’ "L’( 进行二次开发的方法% 并由 NGM9+80程序内部运行原理入手"分 析了软件开发的过程"同时给出了编程实例%
!#%\ !
式可知$当电源电压 *+不变的情况下$电枢绕组两端 的电压平均值 *-取决于占空比 !的大小$改变 !值就 可以改变端电压的平均值$从而达到调速的目的#
.!基于 ABC<DD CEFC&’%卡的软件设计
,9V[’’ VY‘控制卡具有良好的开放性$ 用户可 以在 PNY"‘K"‘W"PDHO;.环境下进行软件开发# 文中 是在 @.0L8QB%’’’ 系 统 下 利 用 ‘.B7/HKR R$T’ 的 F4K以面向对象方式进行编程# 控制卡在 @.0L8QB 下开发的底层动态库包括头文件 ,9[’’T; $,9[’’TH.= 和 ,9[’’TLHH# 在 ‘KRR环境中使用时$选择 MI8eDGC VVYDCC.05VV-.0X$在 N=eDGC]-.=I/IJ?8L7HDB中输入 ,9[’’TH.=$然后就可以在程序中调用动态链接库中的 函数# .;:!NGM9+80程序内部运行原理
单轴控制模块$先在 N030.CP./H85) * 中添加如下代 码$ 进行初始化工作,
,9hNOD0) * + ]]打开运动控制卡设备 ,9hbDBDC) * + ]]复位运动控制卡 ,9h-?CBNEE) * + ]]关闭当前轴限位开关 ,9h*H/I?NEE) * + ]]关闭伺服驱动报警 ,9hKCIHF8LD)’* + ]]设置输出模拟量为 ’$脉冲量为 ! ,9hKH8BD-O) * + ]]设置为闭环控制
-!开发编程实例
现以单轴调试与 [ 轴协调运动实现直线和圆轨迹 为例具体介绍开发过程,打开 ‘.B7/HKRR$c’$利用 F4K*OO@.d/IL % D1D& 创 建 一 个 基 于 对 话 框 的 b8S =8C%’’_ 工程$ 将 ,9[’’c;$,9[’’cH.= 添加进工程$编 程时要在头文件里包含头文件 ,9[’’c;# 在对话框中 添加按钮和编辑框等操作见图 $#
这样$对应着输入的电平高低$ 直流伺服电动机电枢
绕组两端的电压波形如图 [= 所示# 电动机的电枢绕
组两端的电压平均值 *-为
*- .,!,!*+//,%’
.,! *+ )
.!*+
式中 !为占空比$!k,! 0)
占空比 !表示了在一个周ቤተ መጻሕፍቲ ባይዱ )里$开关管导通的 时间与周期的比值# !的变化范围为 ’#!#!# 由此
Y‘VMK3可以同步控制 [ 个轴$实现多轴协调运动# 其核心由 *PYM%!_! 数字信号处理器和 4M,*组成$ 能实现高性能的控制计算# 控制卡同时提供了 K语 言函数库和 @.0L8QB下的动态链接库$可实现复杂的 控制功能# 主要功能如下,
)!* MK3总线$ 即插即用+ )%*可编程伺服采样周期$[ 轴最小插补周期为 %’’ !B$单轴点位运动最小控制周期为 %\ !B+ )"*[ 路 !$ 位分辨率模拟电压输出信号或脉冲输 出信号$模拟量输出范围, V!’ ‘ZR!’ ‘$每路可独 立控制$互不影响+ )[*[ 路四倍频增量编码器输入$作为各轴反馈信 号输入$最高频率 _ F)d+ )\*四轴协调运动$% Z[ 轴直线插补$任意 % 轴圆 弧插补$具有连续插补功能+ )$*每轴 % 路限位开关信号"! 路原点信号及 ! 路 驱动报警信号输入+ )^* 每轴 ! 路驱动使能信号"! 路驱动复位信号输 出+ )_ * 运动方 式, 单 轴 点 位 运 动" 直 线 插 补" 圆 弧 插 补"速度控制模式"电子齿轮模式+ )&*M3P) 比例 V积分 V微分* 数字滤波器$带速度
以上参数应根据具体的硬件平台来设置$ 一般只 在程序初始化时设置一次$ 以后不应再设置#
另外$ 控 制 周 期 的 设 定 ,9h YDCY?OH9? ) L87=HD 9.?DI* $参数 9.?DI的单位是 !B# 因为运动控制卡要 在控制周期内完成必要的控制计算$控制周期不能太 小$因此设定的范围为 [_ Z! &$$c’_ !B# 运动控制卡 默认的控制周期为 %’’ !B$这个控制周期对于普通的 用户能够安全可靠地工作# 一般情况下$ 在程序中不 应改变控制周期值$ 否则会出现不可预期的后果# %T%T%#运动控制模块
通过调用 ,9h,DC*HCM8B) H805!*O8B* 和 ,9h,DCS MIEM0C) L87=HD!M0C* 分别获得当前轴的实际位置和坐 标系各轴的坐 标 位 置$ 参 数 ! *O8B返 回 实 际 位 置$ 双
!#%$ !
精度参数!M0C指向一个长度为 [ 的数组# 然后转换 成各电动机的实际角度$并在控制面板上显示#
[ 轴协调运动采用直线插补法$正确地设置坐标 映射$合成速度"加速度$再加轨迹设置命令及目标位 置$即可实现四轴协调运动# 运动控制卡通过坐标映 射函数 ,9hF/O*1.B) B;8IC*1.Bh+7?$ L87=HD!?/Oh G870C* 将控制轴由单轴运动控制模式转换为坐标系运 动控制模式# 同时运动控制卡开辟了底层运动数据缓 冲区$在坐标系运动控制模式下$可以实现多段轨迹快 速"稳定的连续运动# 这些运动操作都是相互独立的$ 在控制面板中每个操作按键对应一个独立的事件# %T%T"#运动状态显示模块
8E9DG;08H85J" WD.e.05!’’![[" K)+(
*/012341! 9;DC;DB.BBC7L.DBC;DQ/J8E7C.H.d.05F4KOI8U.LDL =J‘.B7/HKRR C8?/XDBDG80L/IJD1OH8.C/C.80 =/BDL 80 /PKBDIU8BJBCD? 8E,9V[’’ VY‘VMK3?8C.80 G80CI8HG/IL" /0L /0/HJdDBC;DOI8GDBB8E B8ECQ/IDD1OH8.C/C.80 BC/IC.05Q.C; C;D.0CDI.8II700.05OI.0G.OHD8E@.0L8QBOI8GDL7ID" ?D/0Q;.HDOIDBS D0CBC;DOI85I/??DD1/?OHDT
关键词!四轴运动控制卡!直流伺服系统!FG0H3I’((!"L’
A$%$)/34)"0-$#$:*1>$"&*8B*5/C)9’% +*&’*"7*"&/*:7)/0 =*8&C)/$=<%&$> ?)%$0*"D7((
,*N:7/0" )6,7/05O.0 ’ K8HHD5D8EFDG;/0.G/H/0L 6HDGCI.G/H605.0DDI.05" +8IC; K;.0/>0.UDIB.CJ
因为 ‘.B7/HKRR$T’ 是 @.0L8QB开发语言$所以 用 ‘.B7/HKR R$T’ 开 发 程 序 之 前 首 先 需 要 弄 清 楚 @.0L8QB程序内部运行机制# 在 @.0L8QB环境下的软 件开发是完全不同于传统 PNY 下的$它是一种事件驱 动方式的程序设计模式$主要是基于消息的# 当用户 需要完成某种功能时$会调用操作系统的某种支持$然 后操作系统将用户的需要包装成消息并投递到消息队 列当中$最后应用程序从消息队列中取走消息并进行 响应# .T.!程序设计
在 Kb8=8C%’’_PH5中添加成员变量 ?haO$?ha.$ ?haL$?hM8B$?h‘DH$?h*GG并作原型说明# 然后在 ’ 单轴 运 动( 按 钮 添 W+h K-3Ka6P消 息 响 应 的 函 数 N0W7CC80YICF8U) * $并在函数中添加如下代码,
:!平面 ..-.B四分之过驱动并联机构的控 制系统组成
并联机构的本体如图 !$该机构由 [ 个分支链组 成$每条支链的一端与驱动电动机相连$而另一端相交 于同一点# 该并联机构的操作末端有 % 个自由度) 即 !方向和 "方向的平动* $驱动输入数目为 [$从而组 成过驱动并联机构#
控制系统的硬件主要由 [ 部分组成,MK机$四轴 运动控制卡$伺服驱动器和直流电动机# 系统选用的 是普通 MK机$固高公司的 ,9V[’’ VY‘VMK3运动控 制卡$瑞士 F/180 公司的四象限直流伺服驱动器及直 流永 磁 电 动 机# 伺 服 驱 动 器 型 号 为 [ Vf VPK *PY\’ ]\$与驱动器适配直流电动机型号为 F/180 b6 V"\# 运动控制系统的构成如图 % 所示# 上位控制单 元由 MK机和运动控制卡一起组成$板卡插在 MK机主 板上的 MK3插槽内# MK机主要负责信息流和数据流
表 :!函数名称及功能
名称
功能
,9hNOD0) * ,9hbDBDC) * ,9hYDCY?OH9?) * ,9hH?CY0B) * ,9h60GY0B) * ,9hKH8BD-O) * ,9hKCIHF8LD) *
打开运动控制器设备 复位运动控制器 设置控制周期 设置限位开关的有效电平 设置编码器的计数方向 设置为闭环控制 设置输出模拟量 ]脉冲量
和加速度前馈$带积分限值"偏差补偿和低通滤波器+ )!’ * 支 持 PNY" @.0L8QB+9]%’’’ ]:M等 操 作 系
统$ 提供底层库函数$ 可用 PNY"‘K"‘W等进行软件 开发#
控制卡结构及与端子板的接口如图 " 所示#
:;:!ABC<DD CEF控制卡介绍 固高公司生产的 ,9系列运动控制卡 ,9V[’’ V
!#%[ !
的管理$以及从运动控制卡读取位置数据$并经过计算 后将控制命令发送给运动控制卡# 驱动器控制模式采 用编码器速度控制$驱动器接收到运动控制卡发出的 模拟电压$通过内部的 M@F电路控制直流电动机 b6 V"\ 的运转$并接收直流电动机 b6V"\ 上的编码器 反馈信号调整对电动机的控制$如此构成一个半闭环 的直流伺服控制系统#
运动控制卡接收 MK机上发出的操作命令和运动 控制系统反馈回的信息$并据其进行实时的运动操作$ 直接控制伺服驱动器# 控制卡控制直流电动机的过程
可分为,打开控制卡并初始化$设置运动参数$执行运 动程序$关闭卡# 控制系统流程图如图 \ 所示# %T%T!#卡的初始化
初始化卡应在程序开始时就执行$主要用到的控 制函数见表 !#
5678+290! 487IV/1.BF8C.80 K80CI8HK/IL) PKYDIU8YJBCD?) ‘.B7/HKRR) F4K
在自动控制领域$基于 MK和运动控制卡的伺服 系统正演绎着一场工业自动化的革命# 目前$常用的 多轴控制系统主要分为 " 大块,基于 M-K的多轴定位 控制系统$基于 MKh=/BDL 的多轴控制系统和基于总线 的多轴控制系统# 由于 MK机在各种工业现场的广泛 应用$先进控制理论和 PYM技术实 现 手 段 的 并 行 发 展$各种工业设备的研制和改造中急需一个运动控制 模块的硬件平台$以及为了满足新型数控系统的标准 化"柔性化"开放性等要求$使得基于 MK和运动控制 卡的伺服系统备受青睐# 本文主要是利用 ‘.B7/HKR R$c’ 提供的 F4K应用程序开发平台探索研究平面 %-PN4四分之过驱动并联机构的运动控制系统的软 件开发#