ImageVerifierCode 换一换
格式:DOCX , 页数:81 ,大小:249.49KB ,
资源ID:18005284      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18005284.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(PCI1010运动控制卡软件使用说明书.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

PCI1010运动控制卡软件使用说明书.docx

1、PCI1010运动控制卡软件使用说明书PCI1010运动控制卡软件使用说明书北京阿尔泰科技发展有限公司一概述 3二 PCI1010的功能和相关技术说明 42.1 定量驱动和连续驱动 42.1.1 定量脉冲输出驱动 42.1.2 连续脉冲驱动输出 52.2 速度曲线 62.2.1 定速驱动 62.2.2 直线加/减速驱动 62.2.3 S曲线加/减速驱动 72.2.4 脉冲宽度和速度的精度 82.3 位置管理 92.3.1 逻辑位置计数器和实际位置计数器 92.3.2 比较寄存器和软件限位 92.4 插补 92.4.1 直线插补 92.4.2 圆弧插补 102.4.3 固定线速度 102.4.4

2、 位模式插补 112.4.5 连续插补 122.4.6 加减速驱动的插补 122.5 其它功能 132.5.1 外部信号控制的驱动操作 132.5.2 硬件限位(nLMTP(M) 142.5.3 伺服电机报警信号(nALARM) 142.5.4 伺服电机到位信号(nINPOS) 142.5.5 紧急停止 142.5.6 脉冲输出类型 14三 库函数驱动程序的使用说明 153.1 函数调用举例(vc)说明 153.1.1 使用PCI1010_Set_DV, PCI1010_Start_DV定长脉冲驱动函数启动电机 153.1.2 使用PCI1010_Set_LV, PCI1010_Start_L

3、V连续脉冲驱动函数启动电机 163.1.3 使用PCI1010_Start_2D函数,启动两轴同时驱动 163.1.4 使用PCI1010_LINEInterpolation函数,启动两轴直线插补驱动 173.1.5 使用PCI1010_CWInterpolation函数,启动两轴正方向圆弧插补驱动 183.1.6 外部信号控制的驱动函数 183.1.7 设置外部越限信号有效及停止方式 193.1.8 设置伺服马达输出到位有效 193.1.9 位插补例子 203.1.10 连续插例子 213.1.11 实际位置计数器例子 223.1.12 RR寄存器 22四 驱动函数库 244.1 驱动函数库

4、函数列表 244.2 驱动函数库说明 26五 保修 36六 产品成套单 36一概述PCI1010是PCI总线两轴伺服/步进电机运动控制卡,它以高频率脉冲串形式输出,控制伺服/步进电机的运动。该卡能精确地控制所发出的脉冲频率(电机速度)、脉冲个数(电机转角)及脉冲频率变化率(电机加速度),它能满足步进电机的各种复杂的控制要求。可对电机进行位置控制、插补驱动、加速/减速等控制。具有圆弧、直线插补功能。它含有丰富的,功能齐全的软件库函数资源。在Windows9X/2000/XP环境下,用户可直接使用我们为您提供的设备驱动程序函数接口;以最大方便地使您在Visual C+、Visual Basic及各

5、种其他软件环境中使用本设备。以下是它的功能特点。 独立2轴驱动PCI1010可以分别控制2个马达驱动轴的运动。每个轴都可以进行定速驱动,直线加/减速驱动,S曲线加/减速驱动等。2轴性能相同。 速度控制输出的驱动速度范围是从1PPS到4MPPS(pulses per second脉冲/秒)。可以运行固定速度驱动,直线加/减速驱动,S曲线加/减速驱动。加/减速驱动可以使用自动和手动2种操作方法。脉冲输出的频率最大误差0.1(在CLK=16MHZ时),驱动脉冲输出的速度可以在驱动中自由变更。 非对称直线加/减速驱动运行梯形加减速驱动时,加速度和减速度可以设定不同。 S曲线加/减速驱动每个轴可以用S曲

6、线加/减速设定,使用S曲线命令还可以对抛物线加/减速驱动输出脉冲进行设定。此外,对于定量驱动,我们使用独特的方法避免在S曲线加/减速中发生三角波形。 2轴直线插补可以选择2轴直线插补驱动。插补坐标是从当前位置到-8,388,607+8,388,607之间。在整个指定的直线插补范围内,插补精度是0.5LSB。插补速度范围从1PPS到4MPPS。 圆弧插补可以选择2轴进行圆弧插补。插补坐标范围是从当前位置到-8,388,607+8,388,607之间。在整个指定的圆弧曲线插补范围内,插补精度是0.5LSB。插补速度范围从1PPS到4MPPS。 2轴位模式插补收到在高位CPU上计算的位模式插补数据后

7、,可以用指定的驱动速度连续输出插补脉冲,用这种方式可以产生任何插补曲线。 连续插补直线插补 ,圆弧插补 ,直线插补 等等。这样可以不停地运行每个插补接点的插补驱动,连续插补的最大驱动速度是2MHz. 固定线速度控制这是一种在插补驱动中保持插补轴合成速度的功能。 位置控制每个轴都有2个32位位置寄存器,一个是在芯片内部管理驱动脉冲输出的逻辑位置计数器。另一个是管理从外部编码器来的脉冲的实际位置计数器。 比较寄存器和软件限制功能每个轴都有2个32位比较寄存器(COMP+,COMP-),用于跟逻辑位置计数器或者实际位置计数器的大小比较。在驱动时,可以从状态寄存器读出比较寄存器和逻辑/实际位置计数器之

8、间的大小关系。大小关系有变化时,可以产生中断(但要设定中断有效)。 输入信号滤波器PCI1010内部的每一个输入信号的输入端都装备积分型的滤波器。可以设定哪一个输入信号的滤波器功能变为有效或无效。滤波器的时间常数从8个种类里选择1个。 由外部信号驱动 每个轴都可以用外部信号(nEXPP,nEXPM)进行+/-方向运行的定量驱动和连续驱动。这个功能在手动操作时,可以减轻CPU的负担。 伺服马达的各种信号 PCI1010接受来自伺服马达驱动器的信号。如2相编码器信号,定位信号,报警信号等。 实时监控功能 在驱动中,可以实时读出逻辑位置计数器、实际位置计数器、加速度、加/减速状态(加速中、定速中、减

9、速中)。二PCI1010的功能和相关技术说明2.1定量驱动和连续驱动 各轴的驱动脉冲输出一般使用正方向或负方向的定量驱动命令或者连续驱动命令。2.1.1 定量脉冲输出驱动 定量脉冲驱动是以固定速度或加/减速度输出指定数量的脉冲。需要移动到确定的位置或进行确定的动作时,使用此功能。加/减速定量驱动如图2.1.1所示,输出脉冲的剩余数比加速累计的脉冲数少时就开始减速,输出指定的脉冲数后,驱动也结束。 进行加/减速的定量驱动,需要设定下列参数:倍率 Multiple 加/减速度 Acceleration初始速度 StartRate驱动速度 DriveRate输出脉冲数 nPulseNum 速度 驱动

10、速度 自动减速 时间 初始速度 图2.1.1 定长脉冲驱动模式 在驱动中改变输出脉冲数 在定长脉冲驱动中,输出脉冲数是可以改变的。脉冲输出状况将如图2.1.2或图2.1.3。加/减速驱动中,开始减速时,如果输出脉冲数有变更的话,重新开始加速(如图2.1.3)。如果变更的输出脉冲数比已经输出的脉冲数要少的话,立即停止(图2.1.4) S曲线减速时输出脉冲有变化的话,不能正确运行S曲线动作。速度 驱动速度 改变输出脉冲数 初始速度 0 时间 图2.1.2 在匀速段增加脉冲数速度 驱动速度 改变输出脉冲数初始速度 0 时间 图2.1.3 在降速段增加脉冲数速度 驱动速度 改变输出脉冲数初始速度 0时

11、间 图2.1.4 减少脉冲数 加/减速驱动的缓冲值设置 用户在定长脉冲驱动情况下可以改变加/减速点,如图2.1.1所示。PCI1010将自动地计算出加/减速点,并且使加速段的脉冲数等于减速段的脉冲数。当为减速设置缓冲值(shift pulses)时,PCI1010将会因为缓冲值提前开始减速。减速完成后剩余的脉冲数(shift pulses)将会以初始速度输出,如图2.1.5。PCI1010初始化时,缓冲脉冲数(shift pulses)的默认值为8。在直线加/减速定长脉冲驱动时并不需要改变缓冲脉冲数。S曲线加/减速定量驱动中,如果驱动完毕速度降不到初始速度的话,要把加速计数器偏移值设定为适当的

12、数值,以修正它的速度。 速度 驱动速度 缓冲脉冲 初始速度 时间 图2.1.5 定长方式下的缓冲脉冲2.1.2 连续脉冲驱动输出 当将PCI1010卡的脉冲输出模式设置为连续驱动状态时,PCI1010将一直以特定的速度驱动脉冲输出直至接收到停止命令或是外部停止信号,如图2.1.6所示。速度 驱动速度 外部停止信号 初始速度 图2.1.6 连续脉冲驱动 时间可用”减速至停DecStop”和”立即停止InstStop”等函数中断连续驱动脉冲;也可由外部信号使其制动。2.2速度曲线 各轴的驱动脉冲输出一般使用正/负方向的定量驱动或连续驱动命令。此外,以设定模式或设定参数来产生定速、直线加/减速、S曲

13、线加/减速的速度曲线。2.2.1 定速驱动 定速驱动就是以一成不变的速度输出驱动脉冲。如果设定驱动速度小于初始速度,就没有加/减速驱动,而是定速驱动。使用搜寻原点、编码器Z相等信号时,找到信号后马上要立即停止的话,不必进行加/减速驱动,而是一开始就运行低速的定速驱动。如图2.2.1。为了定速驱动,需要设定下列参数:倍率 Multiple 加/减速度 Acceleration初始速度 StartRate 驱动速度 DriveRate 输出脉冲数 nPulseNum 设定参数例子设定1000PPS运行定速驱动倍率 Multiple = 1;初始速度 StartRate = 1000;驱动速度 Dr

14、iveRate = 1000; 速度初始速度 驱动速度 时间 图2.2.1 恒速驱动2.2.2 直线加/减速驱动 直性加/减速驱动是线性地从驱动开始的初始速度加速到指定的驱动速度。 定量驱动时,由于加速的计数器记录加速所累计的脉冲数。当剩余输出脉冲数少于加速脉冲后就开始减速(自动减速)。减速时如果不设定减速度的值则用加速度的值。 当在加速驱动过程中出现减速指令,或在定量脉冲驱动中输出脉冲数少于加速至驱动速度所要的脉冲数,则PCI1010将在加速阶段便开始减速,如图2.2.2所示。通常,加速脉冲数和减速脉冲数是相等的。但是,当使用手动减速时(HandDec)则就不同了。 速度 减速运行速度 加速

15、 初始速度太小无法 初始速度 达到运行速度 时间 图2.2.2 直线加/减速为了直线加/减速驱动,下列参数需预先设定。记号:需要设定时设定。倍率 Multiple加速度 Acceleration 减速度 Deceleration初始速度 StartRate驱动速度 DriveRate 输出脉冲数 nPulseNum ;定量驱动时使用 如图2.2.3,从实际初始速度500 PPS加速至15 000 PPS,时间为0.3 S (秒)则 输出频率的倍数Multiple=2(初始化后默认值为M=1)初始速度 StartRate=500 PPS/M=250 PPS驱动速度 DriveRate=15000

16、PPS/M=7500 PPS加速度 Acceleration=(15000 - 500)PPS /0.3S/M=24167 PPS/S 速度15000 500 0 0.3S 时间 图2.2.3 定长脉冲驱动模式 如图2.2.4,从实际初始速度500 PPS加速至15 000 PPS,时间为0.3 S (秒)则 最高输出频率的倍数Multiple=2(初始化后默认值为M=1)初始速度 StartRate =500 PPS/M=250 PPS驱动速度 DriveRate =15000PPS/M=7500 PPS加速度 Acceleration =(15000 - 500)PPS /0.3S/M=2

17、4167 PPS/S减速度 Deceleration =(15000 - 500)PPS /0.1S/M=72500 PPS/S 速度 15000 500 0 0.3S 0.1S 时间 图2.2.4 定长脉冲驱动模式加/减速度不同2.2.3 S曲线加/减速驱动 驱动速度加/减速时,PCI1010线性地增加/减少加速度/减速度,以产生S型速度曲线。S曲线加/减速驱动如图4.5.3所示。 驱动开始加速时,加速度以指定的加速度的增加率(AccelerationAK)从0线性增加到指定的加速度值(Acceleration),因此,这个速度曲线成为二次抛物线(a区间)。加速度达到指定数值(Acceler

18、ation)后保持此数值。这时速度曲线是直线型的,速度在加速中(b区间)。目标速度及驱动速度和当前速度的差值比相应时间增加所增加的速度少时,加速度趋向0。当减速时和加速时一样,减速度以指定的增加率(AccelerationAK)增大到减速度值,然后减速度保持一段时间不变,最后减速度减少直到0。这样具有部分固定加速度的加速为部分S曲线。另一方面,在a区间若在加速度达到指定数值(Acceleration)前,目标速度(DriveRate)和当前速度的差值比相应时间增加所增加的速度少时,b区间就消失,只有a和c区间。这种没有固定加速度的加速称为完全S曲线加速。 图4.5.3 S曲线加减速驱动 要执行

19、S曲线加/减速,需要设定下列参数。倍率Multiple加速度/减速度的变化率AccelerationAK加速度 Acceleration 减速度 Deceleration ;分别设定加/减速度时,此为减速度指定数值初始速度 StartRate驱动速度 DriveRate 输出脉冲数 nPulseNum ;定量驱动时使用 参数设定例子1(完全S曲线)如右图所示,是在0.4秒内用完全S曲线加速增加至40KPPS的例子。首先,在计算上不考虑初始速度(把它当作0)。因为是完全S曲线加速,所以在0.4秒的1/2(0.2秒)把速度增加至40KPPS的1/2(20KPPS),在剩下的0.2秒增加至40KPP

20、S。这时加速度线性的增加直至0.2秒。在右下图中,加速度Acceleration =X(直线斜率)t(时间),已知初始速度是0,0.2秒后为20K,而加速度又是速度的导数,所以,dv/dt=Xt,计算得X=1000K,0.2秒的加速度是100,0000.2=200KPPS/SEC,加速度的增加率是(AccelerationAK) 200K/0.2=1,000KPPS/SEC2。 运行完全S曲线加/减速时,速度取决于加/减速度的变化率,所以为了避免产生部分S曲线,加/减速度要设定200KPPS/SEC以上的数值。倍率 Multiple = 10;加/减速度的增加/减少率 Acceleration

21、AK = 100,000; 100,00010(倍率)=1000K加速度 Acceleration = 20,000; 20,00010(倍率)= 200K初始速度 StartRate = 100;10010 = 1000驱动速度 DriveRate = 4000;400010 = 40,0002.2.4 脉冲宽度和速度的精度 驱动脉冲的脉冲比率 对于各轴正/负方向上的驱动脉冲,由驱动速度决定的脉冲周期时间有1SCLK(CLK = 16MHz时为125nSEC)的误差,并且基本上分布在高电平50和低电平50。举例如下图所示,设定倍率为1,驱动速度1000PPS,驱动脉冲输出高电平宽度 =500

22、S,低电平宽度 =500S, 周期=1.0mS Multiple =1 StartRate =1000 PPS DriveRate =1000 PPS 500S 500S 1.00 ms 当处于加速时,低电平脉冲长度小于高电平脉冲长度;驱动速度将会提高 反之,当处于减速时,低电平脉冲长度大于高电平脉冲长度;驱动速度将会降低。 加速区 匀速区 减速区 THA TLA THC TLC THD TLD THA TLA THC =TLC THD TLD图2.2.5 加/减速过程中脉冲宽度的比较 驱动速度精度因为PCI1010的CLK时钟为16MHz,产生驱动脉冲的电路是由IC内SCLK来驱动的。SCL

23、K由时钟信号CLK2分频而得。若CLK输入是标准的16MHz,SCLK就是8MHz.要产生某个频率的驱动脉冲,并且是没有抖动的均匀频率驱动脉冲,它的频率周期只能是下图所示SCLK周期的整数倍。 PCI1010初始化后,最高速度(输出脉冲频率)默认值为8K。驱动速度越高,精度越低。即使是驱动速度很高,PCI1010仍就能保持相对的精度;驱动脉冲的精度仍在0.1之内。不会影响驱动电机的工作状态,因为这个误差是会被电机系统的惯性吸收的。 最高输出脉冲频率可以通过SetM函数设置,默认值M=1,默认最高输出脉冲频率8K倍数M最高输出频率/PPSM=1MAX(V)=8000M=2MAX(V)=16,00

24、0M=3MAX(V)=24,000 M=500MAX(V)=4,000,000当M被设置为500时,最高输出频率为4M。加/减速度也随着M的数值变化而变化2.3 位置管理2.3.1 逻辑位置计数器和实际位置计数器 PCI1010对每一个轴都有一个逻辑位置计数器和实际位置计数器。逻辑位置计数器计数是计数PCI1010卡发出的正/负方向输出脉冲。当发出一个正向脉冲时,计数器将自动加 1,当发出一个负向脉冲时,计数器将自动减1。 实位计数器计数来自外部编码器的输入脉冲,输入信号可以设定为2相脉冲输入或上/下脉冲输入。 2相脉冲输入模式当设定为2相脉冲输入后,按正逻辑当A相超前时向上计数,当B相超前就

25、向下计数。由2个信号的上升沿和下降沿进行向上/下计数。 nECA nECB 往上上计数 往下计数 下脉冲输入模式nECA作为向上计数输入,nECB作为向下计数输入,由脉冲的上升沿计数。nECAnECB 往上计数 往下计数 PCI1010可以在任何时候写入或读出2个计数器的数据,我们提供了PCI1010_ReadLP,PCI1010_ReadEP函数分别 读出逻辑计数器和实位计数器的值。计数范围在-2,147,483,648+2,147,483,647之间。2.3.2 比较寄存器和软件限位 PCI1010对每一个轴都有2个32位寄存器(上下限位寄存器COMP+,COMP-)用来与逻辑位置计数器或

26、实际位置计数器进行比较。把2个比较寄存器的比较对象设定为逻辑计数器还是实位计数器,可由函数指定,COMP+寄存器主要用来检测逻辑/实位计数器计数的上限。当逻辑/实位计数器的值大于COMP+寄存器的值时,PCI1010的RR1寄存器的D0位就置1。另一方面,COMP寄存器用来检测逻辑/实位计数器某个范围的下限。当逻辑/实位计数器数值小于COMP寄存器的数值时,RR1寄存器的D1位就置1。 可以把COMP+寄存器和COMP寄存器用于正/负方向的软件限制来运行。我们提供PCI1010_SetCPP (hDevice, AxisNum, Direction,Data)函数供选择是逻辑寄存器还是实位寄存

27、器,并设定正方向软件限位有效,在驱动中,如果逻辑/实位计数器的值大于COMP+的值就执行减速停止,并且RR2寄存器的D0为1; PCI1010_SetCPM (hDevice, AxisNum, Direction,Data)用于设定反方向软件限位,并选择是逻辑寄存器还是实位寄存器,当执行负方向驱动命令并且逻辑/实位计数器的值小于COPM+寄存器后,就会清除这个状态。同样情况适应于负方向的COMP。可以在任何时候调用PCI1010_SetCPP,PCI1010_SetCPM写COMP+寄存器和COMP寄存器。复位时寄存器的值是任意的。 图2.3.1软件限位停机 2.4 插补PCI1010可实现

28、2 轴的直线插补,圆弧插补。插补运动是指2 轴按照一定的算法进行联动,被控轴同时启动,并同时到达目标位置。对于直线插补,圆弧插补,最大驱动速度为4 MPPS。插补驱动时,每个驱动轴都能进行硬件限制和软件限制。在插补驱动中任何轴的限制有效,PCI1010停止插补。但是,在圆弧插补时,硬件或软件的信号将不会中断插补驱动。 在插补中,最长的移动距离的轴为”长轴”,另外一个轴为”短轴”。”长轴”输出一个均匀的脉冲序列,而”短轴”的驱动脉冲依赖于”长轴”和2 轴之间的关系,有时候输出脉冲,有时候不输出脉冲。2.4.1 直线插补 X,Y 2轴的直线插补,从当前位置到相对位置(X:+20,Y:+100)如下

29、图所示,从当前坐标执行直线插补,终点坐标由针对当前位置的相对数值设定。精确设定每个轴的输出脉冲数。在每个轴独立运行时,输出脉冲数设定为没有符号的数值。但是,在插补驱动时,用相对数值设定当前位置的终点坐标。如下图所示,对指定直线的位置的位置精度,在整个插补范围内有0.5LSB。下图是直线插补驱动脉冲输出例子,在设定的终点数值中绝对值最大的是长轴。在插补驱动中,此轴一直输出脉冲,其它的轴是短轴,根据直线插补算术的结果,有时候输出脉冲,有时不输出脉冲。 直线插补的坐标范围是带符号的24位字长。插补范围为从各轴当前位置到-8,388,607+8,388,607之间(注意:不能设定-8,388,608)

30、XPP YPP10 0.5LSB 0 202.4.2 圆弧插补 圆弧插补从当前位置开始,根据所指定的圆心和终点位置以及插补的方向(按顺时针或逆时针)来进行。坐标设定值是对当前坐标(始点)的相对值(并且是脉冲数)。图2.4.1说明了顺时针和逆时针插补的定义。”长轴”定义为X轴. 逆时针 顺时针 图 2.4.12.4.3 固定线速度固定线速度控制是始终保持插补轴以合成速度运行的功能。及如果设定初始速度是1000PSS,驱动速度是1000PPS,则插补时的合成速度始终是1000PPS。例如设定插补终点为(20,10),初始速度1000PPS,驱动速度1000PPS,脉冲输出如下图所示 1000ms 1.414ms 1.000m

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1