基于PCI-1240的伺服电机控制系统研究
基于PCI-1240的伺服电机控制系统研究 第19卷第2期
20o6年3月
机电产品开簋与刨新
Development&Innovationofmachinery&electricalproducts
Vo1.19,No.2
Mar..2006
基于PCI一1240的伺服电机控制系统研究
张智明,梅顺齐
(武汉科技学院机电工程学院,湖北武汉430073)
摘要:阐述了PCI一1240伺服运动控制卡的工作原理及使用方法,研究了VB编程对伺服电机的直线运
动,插补运动,回原点运动等复杂运动的控制,实现了工业现场各种伺服驱动的需要,具有控制
简单,可靠和编程容易等特点.
关键词:PCI一1240;伺服电机;控制系统;VB
中圈分类号:TP837文献标识码:A文章编号:1002-6673(2006)02-124—02 0引言
近年来,随着机电一体化水平的提高,伺服电机的
应用越来越多.它具有速度快,控制精度高的位置控制
伺服 和速度控制的特点而在工控领域得到充分的应用.
电机有多种应用,如何发挥伺服电机的最大的特性而成
为研究的热点.可以用计算机和各种运动控制卡来控制
各类电机,完成各种新颖的,高性能的控制策略,实现
复杂的运动成为可能.
PCI一12加是一款基于PCI总线技术的4轴步进/脉
冲型伺服运动控制卡,应用于常规的精确运动控制.它
简化了步进和脉冲伺服运动控制.可以显着的提高电机 的运动性能.该卡采用了MCX314运动ASIC芯片,能 够提供各种运动控制功能【,如2/3轴线性插补,2周 圆弧插补,T/s曲线加速/力?速等.此外PCI一124O在执 行这些运动控制功能控制电机时,不会增加处理器的负 担.关于进一步的应用,系统提供了Windows的DDL 驱动程序,可以开发出符合工业现场需要的实用程序. 这样可以用计算机和伺服运动控制卡来控制伺服电机, 完成各种新颖的,高性能的控制策略,实现复杂的运动 成为可能.
:P工C1作-1厦2理40伺服运动控制卡原理I1. 1工作原理
PC[-1240伺服运动控制卡工作原理如图1所示.采I 用PCI总线技术与T控机连接,.伺服驱动器和运动控制l 卡的连接根据不同的控制方案有不同的连接方式,主要l 有速度控制,位置控制和转矩控制,本文研究的主要是 位置控制,之间的连接主要有CW脉冲,CCW脉冲,伺 服反馈以及伺服ON输出和伺服报警.在控制伺服电机 运动过程中,需要各种接近开关实现回原点(home)和 限位(1imit).PCI一124O伺服运动控制卡既可以支持 DOS平台,也可以支持Windows平台.在Windows下采 用32位动态连接库驱动程序,可以在VC,VB,BC++ 和Delphi等环境下实现对控制卡的底层操作.开发出界 面友好的控制系统.
田lPCI一12加工作原理
Fig.1PCI-1240PrincipleDiagram 1.2伺服运动控制卡的工作
过程
在伺服运动控制程序
中,主要包括打开伺服设备,调
用参数设置函数,各种控制方案
设计和关闭伺服设备四个过程,
其流程如图2所示[11.
2程序设计
l打开伺服设备
l调用参数设置函数
l各种控制方案设计
l关闭伺服设备
收稿日期:2006—01—06i由图2可知,实现各种控制圈2打开设备流程田 作者简介:张智明(1975一),男,讲师.研究方向:机电l方案,基本上包括四个过程,根Fig.2mceDriver
一
体化技术度应用,新型纺织机械.l据PCI一1240伺服运动控制卡的cCallnow 124
?
测试与控制?
DLL可知调用函数P1240MotDevOpen(BYrrEbyBoard—ID), 这个函数用来初始化PCI一124O和操作系统资源时调用, 参数byBoard_ID为工控机上所要用的PCI-1240设备号. 调用参数设置函数主要是设置伺服电机的初始速度,最
大速度,加减速度以及加速度率,如函数P1240~
(BYTEbySomtAD,SYTEbySetAxis,BYTEbyTS,DWORD
dwsV,DWORDdwDV,DW0RDdWMDV.DW0RDdwAC, DWORDdwAK)用来设置指定轴bySetAxis(主要取值为
X,Y,Z,U四轴)加速方式为T型或S型,初始速度
dwSV,驱动速度dwDV以及加减速度dwAC和加速度变
化率dwAK.各种控制方案的设计主要根据工业现场控
制要求而不同,如直线运动,圆弧插补运动,2/3轴线
性插补等等.关闭伺服设备调用P1240MotStop(BYTE byBoard_ID)关闭伺服运动控制卡.
2.1伺服电机的直线运动
伺服电机的直线运动表示伺服电机通过直线插补的
方式从空间的当前位置运动到另一个位置.
PublicFunctionXYHnefByValXDataA8Single. YD砒aAsSingle.ByValXS~edAsSingle) DimxLtAsLong
CallP1240MotRdReg(0.X_axis.Lent,xLt) XProPulseNum=xLt
XPulseNum!-XData}ServoExchg.BendTrace XYHnePulseH~=True
CallP1240MotLine(0,XY_axis,0,-XData BendTrace,YDataServoExchg.FeedTrace,0.0) CallSpeedOut(1,XSpeed
ByVall
}ServoExchg.
CallP1240MotRdReg(0,Y_axis,Lent,yLt) CallP1240MotRdP~g(0,X_axis,Lent,xLt) EndFunction
程序中P1240MotLine函数为直线插补函数,
本例中,指定XY两个伺服电机直线插补,调用函数
P1240MotRdReg分别保存两轴直线插补运动以后逻辑位
置,为以后回原点服务.
2.2伺服电机的回原点运动
在工业现场控制中(如汽车的弯管机),回原点是
非常重要的指标.回原点精确与否,直接影响产品的质
量.目前,伺服电机回原点有很多种,本文为其中的一
种.
ublicSubXToHome() P
,x轴Home碰到N1减速
If(XNnag=TrueAndDInput(N1)=True)Then XNFlag=False
XHomeBack=False
CallP1240MotCmove(0,X_axis,x-C CallP1240MotChgDV(0,X_axis,XHomeNSpeed) EndIf
,x轴Home碰到z1停止
If(XFlag:TrueAndDlnput(Z1)=True)Then CallPll0MotStop(0,X_axis,&H1) EndIf
EndSub
本文以X轴回原点为例,在这种回原点中,一般有
两个接近开关Z1和N1,N1为减速接近开关,Z1为停
止接近开关,当伺服电机回原点时,先以较大的速度运
行,碰到N1减速慢行.再碰到Z1时停止.
3结论
本文研究了PCI一12加伺服运动控制卡的原理及其应
用,在VB环境下实现了伺服电机的控制直线和回原点
运动,具有响应速度快,精度高,可靠性高和界面友好
等特点,提高了工作效率,在实际中得到了充分的应用.
参考文献:
【1】ADVANTECHCo.,Ltd.PCI-1240User'sManual[Z】.
【2】蔡志祥,刘冬生,曾晓雁.基于单片机的交流伺服电机控制系统 硼.机械与电子,2005,5:28~30.
TheResearchofServomotorControllingSystemBasedOnPCI-1240
ZHANGZhi-Ming,MEIShun—Qi
(Dept.ofElectromechanicalEngineering.WuhanUniversityofScience&Engineerin
g,WuhanHubei430073,China)
Abstract:ThispaperhasintroducedthetheoryandapplicationofPCI一
1240servomo~rcontrolcard,studiedthecontrolofcomplex movementsuchastheline.interpolation,homcmovementandSOonwithVB.andmittenthes
crvo—drivingrequirement.Ithastlle
characteristicofsimpleness,credibilityandprogramgasny. Keywords:PCI——1240;Servomotor;ControllingSystem;VB 125