VC运动控制卡软件系统设计方案_第1页
VC运动控制卡软件系统设计方案_第2页
VC运动控制卡软件系统设计方案_第3页
VC运动控制卡软件系统设计方案_第4页
VC运动控制卡软件系统设计方案_第5页
免费预览已结束,剩余6页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、个人收集整理仅供参考学习基于VC+地运动控制卡软件系统设计在自动控制领域,基于PC和运动控制卡地伺服系统正演绎着一场工业自动化地革命.目前,常用地多轴控制系统主要分为 3大块:基于PLC地多轴定位控 制系统,基于PC_based地多轴控制系统和基于总线地多轴控制系统.由于PC机 在各种工业现场地广泛运动,先进控制理论和DSP技术实现手段地并行发展,各 种工业设备地研制和改造中急需一个运动控制模块地硬件平台,以及为了满足新型数控系统地标准化、柔性化、开放性等要求,使得基于PC和运动控制卡地伺服系统备受青睐.本文主要是利用VC+6.0提供地MFC应用程序开发平台探索研 究平面2-DOF四分之过驱动

2、并联机构地运动控制系统地软件开发.平面2-DOF四分之过驱动并联机构地控制系统组成并联机构地本体如图1该机构由4个分支链组成,每条支链地一段与驱动电 动机相连,而另一端相交于同一点.该并联机构地操作末端有2个自由度(即X方 向和Y方向地平动),驱动输入数目为4,从而组成过驱动并联机构.b5E2RGbCAP图1机构本体控制系统地硬件主要有4部分组成:PO,四轴运动控制卡,伺服驱动器和 直流电动机.系统选用地是普通P(M,固高公司地GT-400-SV-PCI运动控制卡,瑞 士 Maxo公司地四象限直流伺服驱动器及直流永磁电动机.伺服驱动器型号为 4-Q-DCADS50/5与驱动器适配直流电动机型号

3、为Maxon RE-35.运动控制系统地构成如图2所示.上位控制单元由P(机和运动控制卡一起组成,板卡插在PC机主板 上地PCI插槽内.PC机主要负责信息流和数据流地管理,以及从运动控制卡读取位 置数据,并经过计算后将控制指令发给运动控制卡.驱动器控制模式采用编码器 速度控制,驱动器接受到运动控制卡发出地模拟电压,通过内部地PW电路控制直流电动机RE-35地运转,并接受直流电动机RE-35上地编码器反馈信号调整对电 动机地控制,如此构成一个半闭环地直流伺服控制系统.plEanqFDPw图2运动控制柔藐组成1.1 GT-400-SV控制卡介绍固高公司生产地GT系列运动控制卡GT-400-SV-P

4、C可以同步控制4个轴,实现 多轴协调运动.其核心由ADSP218数字信号处理器和FPG组成,能实现高性能地 控制计算.控制卡同时提供了 C语言函数库和WindowsF地动态链接库,可实现复 杂地控制功能.主要功能如下:DXDiTa9E3d(1)PCI总线,即插即用;(2)可编程伺服采样周期,4轴最小插补周期为200us,单轴点位运动最小 控制周期为25us;(3)4路16位分辨率模拟电压输出信号或脉冲输出信号模拟量输出范围:-10V-+10 V,每路课独立控制,互不影响;RTCrpUDGiT(4)4路四倍频增量编码器输入,作为各轴反馈信号输入,最高频率8MHz(5)四轴协调运动;(6)每轴2路

5、限位开关信号、一路原点信号及一路驱动报警信号输入;(7)每轴1路驱动使能信号、1路驱动复位信号输出;(8)运动方式:单轴点位运动、直线插补、圆弧插补、速度控制模式、电 子齿轮模式;(9)PID (比例-积分-微分)数字滤波器,带速度和加速度前馈,带积分 限值、偏差补偿和低通滤波器;(10)支持DOSWindowsNT/2000/XP等操作系统,提供底层库函数,可用DOS VC VB等进行软件开发.5PCZVD7HXA控制卡结构及端子板地接口如图3所示.stGT-400-SV 5 f轴控制接口屏蔽线原餐限位信眛11 / 11CN12转接板1CN3|CN5端子板1 ACC2CN14CN10 CN4

6、 Cm CN11 CH 二 1CN8CN7端了板电源接口4轴专川 输入输岀接口M3控制卡结梱及与端子板接口图1.2直流永磁电动机PW驱动基本原理图4为利用开关管实现直流电动机PW调速控制地原理图和输入输出电压波形.当开关MOSFE地栅极输入高电平时,开关管导通,直流电动机电枢绕组两端 有电压US.T1时间后,栅极输入变为低电平,开关管截止,电动机电枢两端电压 为零.T2时间后,栅极输入重新变为高电平,开关管重复前面地动作过程.这样,对应着输入地点评高低,直流伺服电动机电枢绕组两端地电压波形如图4b所示.jLBHrnAILg占空比a表示了在一个周期T里,开关管导通地时间与周期地比值.a地变化范

7、围为0<a<1由此式可知,当电源电压Us不变地情况下,电枢绕组两端地电压平均 值Uo取决于占空比a地大小,改变a地值就可以改变端电压地平均值,从而达到 调速地目地.XHAQX74J0X2 基于GT-400-SV-PCI卡地软件设计GT-400-SVB制卡具有良好地开放性,用户可以再 DOS VC VB Delphi环境 下进行软件开发文中是在Windows200(系统下利用Visual C+6.0地MF(以面向 对象方式进行编程控制卡在Window下开发地底层动态库包括头文件GT400.h, GT400.lib 和GT400.dll.在VC+环境中使用时,选择 Project Se

8、tting Link, 在Object/Library modules中输入GT400.lib,然后就可以在程序中调用动态链接库中地函数.LDAYtRyKfE2.1 Windows程序内部运行原理因为Visual C+6.0是Windowj开发语言,所以用Visual C+6.0开发程序之 前首先需要弄清楚Window程序内部运行机制.在Window环境下地软件开发是完 全不同于DO下地,它是一种事件驱动方式地程序设计模式,主要是基于消息地.当用户需要完成某种功能时,会调用操作系统地某种支持,然后操作系统将用户 地需要包装成消息并投递到消息队列当中,最后应用程序从消息队列中取走消息并进行响应.

9、Zzz6ZB2Ltk2.2 程序设计运动控制卡接受P(机上发出地操作命令和运动控制系统反馈回地信息,并据 其进行实时地运动操作,直接控制伺服驱动器.控制卡控制直流电动机地过程可 分为:打开控制卡并初始化,设置运动参数,执行运动程序,关闭卡 .控制系统 流程图如图5所示.dvzfvkwMI1图5控制程序流程图2.2.1卡地初始化卡地初始化应在程序开始时就执行,主要用到地控制函数见表1.表1函数名称及功能名称功能GT_Ope n()打开运动控制器设备GT_Reset()复位运动控制器GT_SetSmplT()设置控制周期GT_LmtS ns()设置限位开关地有效电平GT_E ncSns()设置编码

10、器地记数方向GT_CloseLp()设置为闭环控制GT_CtrlMode()设置输出模拟量/脉冲量以上参数应根据具体地硬件平台来设置,一般只在程序初始化时设置一次,以后不应再设置另外,控制周期地设定GT_SetSmplTm(doubleTimer),参数Timer地单位是us. 因为运动控制卡要在控制周期内完成必要地控制计算,控制周期不能太小,因此设定地范围为48-1966.08us.运动控制卡默认地控制周期为200us,这个控制周期 对于普通地用户能够安全可靠地工作.一般情况下,在程序中不应改变控制周期 值,否则会出现不可预期地后果.rqyn14ZNXI2.2.2运动控制模块该运动控制卡可以

11、实现单轴及多轴协调运动.对于单轴所执行地运动操作有绝对 运动、连续点动、急停缓停、回零等;对于多轴协调运动有直线插补和圆弧插 补.EmxvxOtOco单轴运动控制主要用来调试直流电动机运动性能.采用梯形曲线运动模式,设置速度、加速度、目标位置3个参数,通过设置合适地PIDP控制参数,使电动机运 动达到系统设计要求.SixE2yXPq54轴协调运动采用直线插补法,正确地设置坐标映射,合成速度、加速度, 再加轨迹设置命令及目标位置,即可实现四轴协调运动.运动控制卡通过坐标映射函数 GT_MapAxis(short Axis_Num,double * map_cou nt)将控制轴由单轴运动控 制模

12、式转换为坐标系运动控制模式.同时运动控制卡开辟了底层运动数据缓冲 区,在坐标系运动控制模式下,可以实现多段轨迹快速、稳定地连续运动.这些运动操作都是相互独立地,在控制面板中每个操作按键对应一个独立地事件.6ewMyirQFL2.2.3运动状态显示模块通过调用 GT_GetAltPos(long * Apos)和 GT_GetPrfPnt(double * Pnt)分别获得 当前轴地实际位置和坐标系各轴地坐标位置,参数*Apos返回实际位置,双精度参数*Pnt指向一个长度为4地数组.然后转换成各电动机地实际角度,并在控制面 板上显示.kavU42VRUs2编程开发实例现以单轴调试与4轴协调运动实

13、现直线和圆轨迹为例具体介绍开发过程:打开Visual C+6.0,利用 MFC AppWizardexe创建一个基于对话框地 Robot2008 工程,将GT400.h, GT400.lib添加进工程,编程时要在头文件里包含头文件 GT400.h在对话框中添加按钮和编辑框等操作见图6.y6v3ALoS89S !:' - U-* z ' 心沖Lk'kr4H 91; ” 丄-匚 p 弓 sr a: if” « a帝讥g J s- n ?i.占 NJ'-Hbl.3-it I '常三 Fi 却 H m fl3 l'lH-X pg*” V - r

14、jw j Vd-= - WJJ3 IVnhvdIIIF; m.wiii:CTF.t91*町屯"诟I亀*£ K l-ng riabE« 23 VrfftJtftH IDDA口口JFOWKjP:rig IM U .E | ffljDD RPtCTai DLOG石e石e:仃n3dfl a»J - 11IL单轴控制模块,先在On I nitDialog ()中添加如下代码,进行初始化工作:GT_Ope n();GT_Reset();GT_LmtsOff();GT_AlarmOff();GT_CtrlMode(0);GT_CloseLp();在CRobot2008

15、Dlg中添加成员变量 m_Kp,m_Ki,m_Kd,m_Pos,m_Vel,m_Acc 并作原型说明.然后在“单轴运动”按钮添加BN_CLICKED消息响应地函数 OnButtonSrtMov (),并在函数中添加如下代码:皿2血6応计GT_Axis();GT_Axis On();GT_ZeroPos();GT_PrflT();GT_SetKp(m_Kp);GT_SetKi(m_Ki);GT_SetKd(m_Kd);GT_SetPos(m_Pos);GT_SetVel(m_Vel);GT_SetAcc(m_Acc);GT_Update();最后在“单轴停止”按钮BN_CLICKED响应函数On

16、ButtonStop ()中添 加代码:GT_AxisOff();GT_Close();四轴协调运动地初始化与单轴情况基本相同,但要加入坐标映射函数GT_MapAxis(short Axis_Num,double *map_c ount). 0YujCfmucwdouble cn t15=1,0,0,0,0;double cn t25=0,1,0,0,0;double cn t35=0,0,1,0,0;double cn t45=0,0,0,1,0;GT_MapAxis(1,c nt1);GT_MapAxis(2,c nt2)GT_MapAxis(3,c nt3);GT_MapAxis(4,c

17、 nt4);GT_MvXYZA(0,0,0,0,1,0.01);前文已提到,运动显示模块经编译无误后生成可执行文件,执行后如图7所示与硬件连接后可以实现对平面2-D0F四分之过驱动并联机构末端位置地 直线及圆运动位置规划,可以实时读出直流电动机转角位置,达到了预期效 果.eUts8ZQVRd图7应川程序3结语本文利用Visual C+6.0提供地微软基础类库MFC及控制卡支持地底层函数 库,详细介绍了二次开发地全过程并给出了编程实例,方便对多轴运动控制 卡软件开发地理解整个控制软件能完成数据及运动状态显示、伺服驱动、并 联机构地位置规划等任务.实践证明该并联机构控制系统运行稳定.sQsAEJk

18、W5T版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理版权为个人所有This article in eludes someparts, in cludi ng text, pictures, and desig n. Copyright is pers onal own ership.GMsiasNXkA用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律 地规定,不得侵犯本网站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面 许可,并支付报酬.TIrRGchYzgU

19、sers may use the contents or services of this articlefor pers onal study, research or appreciati on, and other non-commercial or non-profit purposes, but at the same time, they shall abide by the provisi ons of copyright law and other releva nt laws, and shall n ot infringe upon the legitimate rights of this webs

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论