收藏 分销(赏)

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

上传人:曲**** 文档编号:714500 上传时间:2024-02-19 格式:PDF 页数:38 大小:1.98MB
下载 相关 举报
PCI1010运动控制卡 软件使用说明书.pdf_第1页
第1页 / 共38页
PCI1010运动控制卡 软件使用说明书.pdf_第2页
第2页 / 共38页
PCI1010运动控制卡 软件使用说明书.pdf_第3页
第3页 / 共38页
PCI1010运动控制卡 软件使用说明书.pdf_第4页
第4页 / 共38页
PCI1010运动控制卡 软件使用说明书.pdf_第5页
第5页 / 共38页
点击查看更多>>
资源描述

1、PC11010运动控制卡 软件使用说明书目录PCI1 01 0运动控制卡使用说明书 V6.00一.概述.3二.PCI1 O1 O的功能和相关技术说明.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 使用PCI1 01 0 Set DV,PCI1 01 0 Start DV定长脉冲驱动函数启动电机.153.1.2 使用PCI1 01 0 Set LV,PCI1 01 0 St

3、art LV连续脉冲驱动函数启动电机.163.1.3 使用PCI1 01 0 Start 2D函数,启动两轴同时驱动.163.1.4 使用PCI1 01 0 LINEInterpolation函数,启动两轴直线插补驱动.173.1.5 使用PCI1 01 0 CWInterpolation函数,启动两轴正方向圆弧插补驱动.183.1.6 外部信号控制的驱动函数.183.1.7 设置外部越限信号有效及停止方式.193.1.8 设置伺服马达输出到位有效.193.1.9 位插补例子.203.1.1 0 连续插例子.213.1.1 1 实际位置计数器例子.223.1.1 2 RR 寄存器.22四.驱动

4、函数库.241PCI1 01 0运动控制卡使用说明书 V6.004.1 驱动函数库函数列表.244.2 驱动函数库说明.26五.保修.36六.产品成套单.36一.概述2PCI1 01 0运动控制卡使用说明书 V6.00PCH01 0是PCI总线两轴伺服/步进电机运动控制卡,它以高频率脉冲串形式输出,控制伺服/步进电机的运 动。该卡能精确地控制所发出的脉冲频率(电机速度)、脉冲个数(电机转角)及脉冲频率变化率(电机加速度),它能满足步进电机的各种复杂的控制要求。可对电机进行位置控制、插补驱动、加速/减速等控制。具有圆弧、直线插补功能。它含有丰富的,功能齐全的软件库函数资源。在Windows9X/

5、2000/XP环境下,用户可直接使用我 们为您提供的设备驱动程序函数接口;以最大方便地使您在Visual C+、Visual Basic及各种其他软件环境中 使用本设备。以下是它的功能特点。独立2轴驱动PCI1010可以分别控制2个马达驱动轴的运动。每个轴都可以进行定速驱动,直线加/减速驱动,S曲线加/减速驱动等。2轴性能相同。速度控制输出的驱动速度范围是从1 PPS到4MPPS(pulses per second脉冲/秒)。可以运行固定速度驱动,直线加/减速 驱动,S曲线加/减速驱动。加/减速驱动可以使用自动和手动2种操作方法。脉冲输出的频率最大误差土0.1%(在 CLK=1 6MHZ时),

6、驱动脉冲输出的速度可以在驱动中自由变更。非对称直线加/减速驱动运行梯形加减速驱动时,加速度和减速度可以设定不同。S曲线加/减速驱动每个轴可以用S曲线加/减速设定,使用S曲线命令还可以对抛物线加/减速驱动输出脉冲进行设定。止匕外,对于定量驱动,我们使用独特的方法避免在S曲线加/减速中发生三角波形。2轴直线插补可以选择2轴直线插补驱动。插补坐标是从当前位置到-8,388,607+8,388,607之间。在整个指定的直线插补 范围内,插补精度是0.5LSB。插补速度范围从1 PPS到4MPPS。圆弧插补可以选择2轴进行圆弧插补。插补坐标范围是从当前位置到-8,388,607+8,388,607之间。

7、在整个指定的圆弧 曲线插补范围内,插补精度是0.5LSB。插补速度范围从1 PPS到4MPPS。2轴位模式插补收到在高位CPU上计算的位模式插补数据后,可以用指定的驱动速度连续输出插补脉冲,用这种方式可以 产生任何插补曲线。连续插补直线插补,圆弧插补,直线插补等等。这样可以不停地运行每个插补接点的插补驱动,连续插补的最大驱动 速度是2MHz.固定线速度控制这是一种在插补驱动中保持插补轴合成速度的功能。位置控制每个轴都有2个32位位置寄存器,一个是在芯片内部管理驱动脉冲输出的逻辑位置计数器。另一个是管理 从外部编码器来的脉冲的实际位置计数器。比较寄存器和软件限制功能每个轴都有2个32位比较寄存器

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

9、信号,定位信号,报警信号等。实时监控功能在驱动中,可以实时读出逻辑位置计数器、实际位置计数器、加速度、力口/减速状态(加速中、定速中、减速中)。二.pcnoio的功能和相关技术说明2.1 定量驱动和连续驱动3PCI1 01 0运动控制卡使用说明书V6.00各轴的驱动脉冲输出一般使用正方向或负方向的定量驱动命令或者连续驱动命令。2.1.1 定量脉冲输出驱动定量脉冲驱动是以固定速度或加/减速度输出指定数量的脉冲。需要移动到确定的位置或进行确定的动作 时,使用此功能。力口/减速定量驱动如图2.1.1所示,输出脉冲的剩余数比加速累计的脉冲数少时就开始减速,输 出指定的脉冲数后,驱动也结束。进行加/减速

10、的定量驱动,需要设定下列参数:倍率 加/减速度 初始速度 驱动速度 输出脉冲数Multiple Acceleration StartRate DriveRate nPulseNum 在驱动中改变输出脉冲数在定长脉冲驱动中,输出脉冲数是可以改变的。脉冲输出状况将如图2.1.2或图2.1.3。力口/减速驱动 中,开始减速时,如果输出脉冲数有变更的话,重新开始加速(如图2.1.3)。如果变更的输出脉冲数比已经 输出的脉冲数要少的话,立即停止(图2.1.4)S曲线减速时输出脉冲有变化的话,不能正确运行S曲线速度驱动速度初始速度速度驱动速度PCHOIO运动控制卡使用说明书V6.00改变输出脉冲数初始速度

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

12、定为适2.1.2连续脉冲驱动输出当将PCI1 O1 O卡的脉冲输出模式设置为连续驱动状态时,PCI1 O1 O将一直以特定的速度驱动脉冲输出直可用减速至停DecStop”和立即停止InstStop”等函数中断连续驱动脉冲;也可由外部信号使其制动。2.2速度曲线各轴的驱动脉冲输出一般使用正/负方向的定量驱动或连续驱动命令。止匕外,以设定模式或设定参数来产 生定速、直线加/减速、S曲线加/减速的速度曲线。2.2.1 定速驱动定速驱动就是以一成不变的速度输出驱动脉冲。如果设定驱动速度小于初始速度,就没有加/减速驱动,而是定速驱动。使用搜寻原点、编码器Z相等信号时,找到信号后马上要立即停止的话,不必进

13、行加/减速 驱动,而是一开始就运行低速的定速驱动。如图2.2.1。为了定速驱动,需要设定下列参数:倍率 加/减速度 初始速度 驱动速度o 输出脉冲数Multiple Acceleration StartRate DriveRate nPulseNum5PCI1 01 0运动控制卡使用说明书V6.00设定参数例子设定1 000PPS运行定速驱动Multiple=1;StartRate=1000;DriveRate=1000;倍率初始速度驱动速度图2.2.1恒速驱动初始速度速度驱动速度时间-2.2.2 直线加/减速驱动直性加/减速驱动是线性地从驱动开始的初始速度加速到指定的驱动速度。定量驱动时,由

14、于加速的计数器记录加速所累计的脉冲数。当剩余输出脉冲数少于加速脉冲后就开始 减速(自动减速)。减速时如果不设定减速度的值则用加速度的值。当在加速驱动过程中出现减速指令,或在定量脉冲驱动中输出脉冲数少于加速至驱动速度所要的脉冲 数,则PCI1 01 0将在加速阶段便开始减速,如图222所示。通常,加速脉冲数和减速脉冲数是相等的。但 是,当使用手动减速时(HandDec)则就不同了。速度运行速度初始速度图2.2.2直线加/减速为了直线加/减速驱动,下列参数需预先设定。记号:需要设定时设定。oO倍率 加速度 减速度 初始速度 驱动速度 输出脉冲数Multiple Acceleration Decel

15、eration StartRate DriveRate nPulseNum;定量驱动时使用如图2.2.3,从实际初始速度500 PPS加速至15 000 PPS,时间为0.3 S(秒)则 输出频率的倍数Multiple=2(初始化后默认值为M=1)如图2.2.4,从实际初始速度500 PPS加速至15 000 PPS,时间为0.3 S(秒)则6PCI1 01 0运动控制卡使用说明书V6.00最高输出频率的倍数Multiple=2(初始化后默认值为M=1)初始速度 StartRate=500 PPS/M=250 PPS驱动速度 DriveRate=1 5000PPS/M=7500 PPS力口速度

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

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

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

19、在剩下的0.2秒增加至40KppS。这时加速度线性 的增加直至0.2秒。在右下图中,加速度Acceleration=X(直线斜 率)Xt(时间),已知初始速度是0,0.2秒后为20K,而加速度又是速度的导数,所以,dv/dt=XXt,计算得X=1 000K,0.2秒的加速度是 100,000X0.2=200KPPS/SEC,力口速度的增力口率是(AccelerationAK)200K/0.2=l,000KPPS/SEC207PCI1 01 0运动控制卡使用说明书V6.00运行完全S曲线加/减速时,速度取决于加/减速度的变化率,所以为了避免产生部分S曲线,力口/减速度要设定200KppS/SEC

20、以上的数值。倍率 加/减速度的增加/减少率 加速度 初始速度 驱动速度Multiple=1 0;AccelerationAK=1 00,000;1 00,000X1 0(倍率)=1 000KAcceleration=20,000;20,000 X 1 0(倍率)=200KStartRate=1 00;1 00X 1 0=1 000DriveRate=4000;4000 X 1 0=40,0002.2.4脉冲宽度和速度的精度 驱动脉冲的脉冲比率对于各轴正/负方向上的驱动脉冲,由驱动速度决定的脉冲周期时间有土 1 SCLK(CLK=1 6MHz时为 1 25nSEC)的误差,并且基本上分布在高电平

21、50%和低电平50%。举例如下图所示,设定倍率为1,驱动 速度1 000PPS,驱动脉冲输出高电平宽度=500口 S,低电平宽度=500口 S,周期=1.0mSMultiple=1StartRate=1000 PPSDriveRate=1000 PPS500|J S500|J S1.00 ms当处于加速时,低电平脉冲长度小于高电平脉冲长度;驱动速度将会提高 反之,当处于减速时,低电平脉冲长度大于高电平脉冲长度;驱动速度将会降低。驱动速度精度因为PCI1 01 0的CLK时钟为1 6MHz,产生驱动脉冲的电路是由IC内SCLK来驱动的。SCLK由时 钟信号CLK2分频而得。若CLK输入是标准的1

22、 6MHz,SCLK就是8MHz.要产生某个频率的驱动脉冲,并且是没有抖动的均匀频率驱动脉冲,它的频率周期只能是下图所示SCLK周期的整数倍。PCI1 01 0初始化后,最高速度(输出脉冲频率)默认值为8Ko驱动速度越高,精度越低。即使是驱 动速度很高,PCI1 01 0仍就能保持相对的精度;驱动脉冲的精度仍在0.1之内。不会影响驱动电机的工8PCI1 01 0运动控制卡使用说明书V6.002.3 位置管理2.3.1 逻辑位置计数器和实际位置计数器PCI1 01 0对每一个轴都有一个逻辑位置计数器和实际位置计数器。逻辑位置计数器计数是计数PCI1 O1 O 卡发出的正/负方向输出脉冲。当发出一

23、个正向脉冲时,计数器将自动加1,当发出一个负向脉冲时,计 数器将自动减1。实位计数器计数来自外部编码器的输入脉冲,输入信号可以设定为2相脉冲输入或上/下脉冲输入。2相脉冲输入模式当设定为2相脉冲输入后,按正逻辑当A相超前时向上计数,当B相超前就向下计数。由2个信号的 上升沿和下降沿进行向上/下计数。nECAnECB往上上计数往下计数下脉冲输入模式nECA作为向上计数输入,nECB作为向下计数输入,由脉冲的上升沿计数。nECA nECB往上计数:往下计数PCI1 01 0可以在任何时候写入或读出2个计数器的数据,我们提供了 PCI1 01 0_ReadLP,PCI1 01 0_ReadEP 函数

24、分别读出逻辑计数器和实位计数器的值。计数范围在-2,1 47,483,648+2,147,483,647之间。2.3.2 比较寄存器和软件限位PCI1 01 0对每一个轴都有2个32位寄存器(上下限位寄存器COMP+COMP-)用来与逻辑位置计数 器或实际位置计数器进行比较。把2个比较寄存器的比较对象设定为逻辑计数器还是实位计数器,可由函 数指定,COMP+寄存器主要用来检测逻辑/实位计数器计数的上限。当逻辑/实位计数器的值大于COMP+寄存器的值时,PCI1 O1 O的RR1寄存器的DO位就置1。另一方面,COMP寄存器用来检测逻辑/实位计 数器某个范围的下限。当逻辑/实位计数器数值小于CO

25、MP一寄存器的数值时,RR1寄存器的D1位就置lo 可以把COMP+寄存器和COMP一寄存器用于正/负方向的软件限制来运行。我们提供PCI1 01 0_SetCPP(hDevice,AxisNum,Direction,Data)函数供选择是逻辑寄存器还是实位寄存器,并设定正方向软件限位有效,在驱动中,如果逻辑/实位计数器的值大于COMP+的值就执行减速停止,并且RR2寄存器的DO为1;PCIlOlO SetCPM(hDevice,AxisNum,Direction,Data)用于设定反方向软件限位,并选择是逻辑寄存器还是实 位寄存器,当执行负方向驱动命令并且逻辑/实位计数器的值小于COPM+寄

26、存器后,就会清除这个状态。同 样情况适应于负方向的COMP一。可以在任何时候调用PCI1 01 0_SetCPP,PCI1 01 0_SetCPM写COMP+寄存 器和COMP一寄存器。复位时寄存器的值是任意的。2.4 插补PCH010可实现2轴的直线插补,圆弧插补。插补运动是指2轴按照一定的算法进行联动,被控轴同时 启动,并同时到达目标位置。对于直线插补,圆弧插补,最大驱动速度为4MPPS。9PCI1 01 0运动控制卡使用说明书V6.00插补驱动时,每个驱动轴都能进行硬件限制和软件限制。在插补驱动中任何轴的限制有效,PCI1 01 0停止 插补。但是,在圆弧插补时,硬件或软件的信号将不会中

27、断插补驱动。在插补中,最长的移动距离的轴为“长轴,另外一个轴为“短轴“。“长轴”输出一个均匀的脉冲序列,而”短轴”的驱动脉冲依赖于“长轴”和2轴之间的关系,有时候输出脉冲,有时候不输出脉冲。2.4.1 直线插补X,Y2轴的直线插补,从当前位置到相对位置(X:+20,Y:+100)如下图所示,从当前坐标执行直线插 补,终点坐标由针对当前位置的相对数值设定。精确设定每个轴的输出脉冲数。在每个轴独立运行时,输出脉 冲数设定为没有符号的数值。但是,在插补驱动时,用相对数值设定当前位置的终点坐标。如下图所示,对指 定直线的位置的位置精度,在整个插补范围内有土0.5LSB。下图是直线插补驱动脉冲输出例子,

28、在设定的终点 数值中绝对值最大的是长轴。在插补驱动中,此轴一直输出脉冲,其它的轴是短轴,根据直线插补算术的结果,有时候输出脉冲,有时不输出脉冲。直线插补的坐标范围是带符号的24位字长。插补范围为从各轴当前位置到-8,388,607T8,388,607之间(注 意:不能设定-8,388,608)2.4.2 圆弧插补圆弧插补从当前位置开始,根据所指定的圆心和终点位置以及插补的方向(按顺时针或逆时针)来进行。坐标设定值是对当前坐标(始点)的相对值(并且是脉冲数)。图2.4.1 说明了顺时针和逆时针插补的定义。“长轴”定义为X轴.逆时针顺时针2.4.3 固定线速度固定线速度控制是始终保持插补轴以合成速

29、度运行的功能。及如果设定初始速度是1 000PSS,驱动速度是 1 000PPS,则插补时的合成速度始终是1 000PPS。例如设定插补终点为(20,10),初始速度1 000PPS,驱动速度1 000PPS,脉冲输出如下图所示1.000ms1.414ms1.000ms 1.414msXPPXPMPCI1 01 0运动控制卡使用说明书V6.00YPM为了达到(20,10)终点,必须是X轴输出两个脉冲,Y轴输出一个脉冲。当X轴输出脉冲,Y轴不输出时,X轴脉冲频率为1 000PPS,当两轴同时都有脉冲时,两轴的脉冲 周期都为1.41 4ms,及频率为1 000*(V2/2)=707,则两轴的合成速

30、 度为1 000PPS,这样就保证了整个过程中的速度都为lOOOPPSo2.4.4 位模式插补位模式插补是把高位CPU计算的插补数据以数据包的方式接 收后,以指定的驱动速度连续输出插补脉冲。X轴正,负方向,Y轴正,负方向要输出一个脉冲时,设定为1,不 输出脉冲时,设定为0o这样设定的话,要画如图所示的轨迹,要输 出的数据如下所示。64位 0100,0000 0111,1111 0000,0000 0000,101056 0000,0000 1111,0101 0000,0000 1111,111148 40000,11111 1101,10110000,0000 0000,00000000,0

31、000 1111,11111111,1100 0000,000032 24 161111,0110 0000,0000 0000,0000 0011,11111111,1110 0000,00000000,0000 0010,10110000,1111 1111,11111100,0000 0000,00000000,0000:XPP1 1 01,01 00:YPP 0000,0000:YPMBP1 P寄存器,BP1 M寄存器是从高位CPU写入位模式数据的16位寄存器,X轴正方向的16位数据写入8 0BP1 P寄存器,X轴负方向的数据写入BP1 M寄存器,位模式插补开始后,从D0位依次输出驱动

32、脉冲。堆栈计数器(SC)是计算位模式数据存储量的计数器,能从0到3变化。给位数据堆栈写入一个16位数据,则增加1。SC为3的时候,表示位数据堆栈不能再补充数据。为2的时候,可以再补充一个16位数据。为1时,可以再补充2个16位数据。为0时,表示输出了所有数据,驱动结束。在插补驱动开始后,随着驱动脉冲输出,SC的数值以3 一 2 一 1减少,所以,可以重新写数据。要连 续运行位模式插补的话,在SC为2或1时,要设定下一个数据。SC数值从2变到1时,也可以要求中断高位CPU,以写入数据。插补驱动速度的限制PCI1 01 0的位模式插补驱动速度最高达4MHz。但是,数据超过48位的话,CPU要在插补

33、驱动中 补充数据,所以插补驱动速度将受到CPU建立模式数据所需时间的限制。比如,对于2轴位模式插补,如果CPU花费在64位数据运算和数据建立的时间以及执行BP数据 堆栈命令的时间是1 00p S,则插补驱动速度在1/(1 00|J S/1 6)=1 60KPPS以下。位模式插补的结束位模式插补以下2种方法结束 当主轴(X轴)正和负方向的输出位数据都为1时,位模式插补就结束。收到结束码后,堆栈计数器(SC)被强制为0。所有遗留的位模式数据都无效。主轴的正,负方向输出数据同时变为1后结束停止数据写入停止向BP数据堆栈写入数据,当所有的位模式数据作为驱动脉冲输出后,SC为0,结束插补驱动。用停止命令

34、中断插补驱动对运行位模式插补驱动的X轴写入立即停止或减速停止命令,插补驱动就停止。重新启动位插补,就继续为模式插补。如果以停止命令停止驱动而不需要再进行插补的话,用PCI1 01 0_ClearBPData函数 把BP寄存器所遗留的数据都清除。用硬件限制和软件限制的停止在插补驱动中任何轴有硬件限制,软件限制动作,插补驱动就停止。若不需要再运行插补,就一定 要用PCI 101 O ClearBPData函数所有留下的数据清除。位模式插补例字请参看22位插补例子。11PCI1 01 0运动控制卡使用说明书V6.002.4.5 连续插补连续插补是直线插补,圆弧插补,直线插补等等这样在每个插补节点之间

35、不停地驱动,连续插 补。在连续插补驱动中,如果设定了下一个插补参数并写入插补命令,就能执行连续的插补驱动。因此,在所有的插补节点中,从连续插补驱动开始至结束的时间必须长于设定下一个插补节点数据和发命令的 时间。RR0寄存器的D9(CNEXT)位用于连续插补。在插补驱动中这个位表示是否可写入下一个插补节 点数据及插补命令,1表示可以写入,0表示不可以写入。当驱动停止时,该位为0;插补驱动开始就 变为1,可以写入下一个插补节点的数据及插补命令。写入下一个插补节点的插补命令后变为0(不可 以写入状态)。等到这个插补开始后,变为1,可以写入再下一个插补节点的数据及插补命令。连续插补的注意事项 在每个插

36、补节点上要在设定需要的数据后,发插补命令,请不要先送插补命令后送数据连续插补的驱动速度最高达2MHzo 所有驱动插补节点的时间必须长于插补轴监错和设定下一个插补节点的数据及命令的时间。如果在 设定下一个插补节点时驱动停止,RR0寄存器的D9位为0,这时在写入下一个插补节点的命令后就从暂停 处继续插补。连续插补中有圆弧插补时,圆弧插补终点的短轴数值也许会比真值偏差土 1 LSB,因此,为了避免 累积每个节点的误差,事先要确认每个圆弧插补的终点,然后考虑怎么运行连续插补。连续插补例子请参看22页连续插补例子。2.4.6 加减速驱动的插补插补一般用定速驱动,不过PCI1 01 0可以用直线加/减速驱

37、动或S曲线加/减速驱动(只可做直线插补)运行插补。在连续插补时为了实现加/减速驱动,使用减速有效命令和减速无效命令。在插补驱动时减速有效命令 是使自动减速或手动减速变为有效,减速无效命令是使它变为无效。复位时,都是无效状态。在用加/减速单独运行插补驱动时,驱动之前一定要设定成减速有效状态。在驱动中写入减速有效命令,也不能 变为有效。2轴直线插补的加/减速驱动在2轴直线插补中可以运行直线加/减速驱动及S曲线加减速驱动减速,这时自动减速和手动减速都可 以使用。使用手动减速时,把在终点坐标的各轴数值中绝对值最大的数值设定为X轴的手动减速点。比如:运 行2轴直线插补到终点(X:-20000,Y:600

38、00)0假定减速时需要的脉冲数是5000,Y轴的终点绝对值比X轴 大,所以把60000-5000=55000作为手动减速点设定X轴。圆弧插补,位模式插补的加/减速驱动在圆弧插补,位模式插补中只能用手动减速的直线加/减速驱动,不能使用S曲线加/减速驱动及自动减 速。右图是用直线加减速驱动运行半径是10,000完整圆轨迹的例子。在圆弧插补中不能用自动减速,所以 事先要设定手动减速点。半径10,000的圆通过从0至7象限,在每一个象限上短轴一直输出脉冲,所以短轴每 一个象限输出10,000/72=7,071脉冲。因此在整个圆上从主轴输出的基本脉冲数是7,071X8=56,568。止匕外,把初始速度设

39、定为500PPS,在0.3秒之内用直线加速把驱动速度增加至20,000PPS的话,加速度是(20,000-500)/0.3=65,000PPS/So加速时花费的脉冲数是右图的斜线部分面积(500+20,000)义0.3/2=3,075.因止匕,如果减速度和加速度一样,手动减速点就设定为56,568-3075=53,493.注意:在固定线速度模式上,不能使用这个算法。连续插补的加/减速驱动在连续插补中只能用手动减速的直线加/减速驱动,不能用S曲线加/减速驱动及自动减速。在连续插补中要 事先设定手动减速点。这个手动减速点设定在运行减速的最后一个节点上,并设定从X轴输出的基本脉冲的数 值。连续插补时

40、先把减速设定为无效,然后开始插补驱动。在要减速的最后一个节点上写入插补命令之前,写入 允许减速命令。开始最后一个节点的驱动时,减速就有效。从最后一个插补节点开始计数主轴输出的基本脉冲数 当大于手动减速点的数值时,减速就开始。比如,从插补节点1至5的连续插补中,在最后节点5上用手动减速的话,有下述的程序。12PCI1 01 0运动控制卡使用说明书V6.00 由从节点5开始的基本脉冲数的数值来设定手动减速点。比如:假定减速花费2000个脉冲,在节 点5上输出的基本脉冲的总脉冲数是5000的话,则手动减速点就设定为5000-2000=3000o2.5其它功能2.5.1 外部信号控制的驱动操作此功能不

41、是用命令,而是用外部信号来运行定量驱动,连续驱动。每个轴都有nEXPP和nEXPM的两个信 号输入,nEXPP信号用于正方向的驱动操作,nEXPM信号用于负方向的操作驱动。我们提供 PCI 1010_DV_OutControl,PCI 1010_LV_OutControl 函数。PCI1 01 0_DV_OutControl用于设定讣部控制定量驱动,当调用该函数设定好轴号,倍率,加速度,初始速度,驱动速度,输出麻冲数后,如果nEXPP引脚出现一个下降沿,则启动设定轴的正方向定长驱动,如果nEXPM 引脚出现一个下降沿,则启动设定轴的反方向定长驱动。PCI1 01 0_LV_OutControl

42、用于设定外部控制连续驱动,当调用该函数设定好轴号,倍率,加速度,初始速度,驱动速度后,如果nEXPP引脚保持低电平,则启动设定轴的正方向定长驱动。如果nEXPM引脚保持低电平,则启动设定轴的反方向定长驱动。(一旦引脚不是低电平了则停止连续驱动)2.5.2 硬件限位(nLMTP(M)硬件限位信号(nLMTP(M)输入端用来终止脉冲输出。我们提供PCI1 01 0_SetLMTEnable函数用来设 定指定轴硬件限位信号有效,有效后是减速停止还是立即停止。调用该函数设定为X,由,立即停止,则当XLMTP 引脚出现低电平则电机立即停止。图2.5.1硬件限位停机13PCI1 01 0运动控制卡使用说明

43、书 V6.00说明:1、高电平为24V,低电平为0V。2、低电平限位有效。2.5.3 伺服电机报警信号(nALARM)nALARM输入信号接受从伺服马达驱动器的警报信号。设定为有效时,一直监视nALARM输入信号,若信 号有效,RR2寄存器的D4为为1。若在驱动中,立即停止驱动。我们提供PCI1 01 0_SetALARM函数,用来设定 指定轴的ALARM信号有效(有效电平为低电平)。当调用函数设定X轴ALARM看效后,当XALARM引脚出 现低电平,则电机停止驱动。2.5.4 伺服电机到位信号(nINPOS)伺服马达定位完毕输入信号。我们提供PCI1 01 0_SetINPOS函数用来设定指

44、定轴nINPOS信号有效。当nINPOS 有效时或驱动结束后,RR0寄存器的nDRV位返回0;2.5.5 紧急停止PCH010有一个用于急停的输入端SN1-1 9(EMGN)O正常状态为高电平;当急停信号EMGN变为低电平 时,所有轴将立即停止(2.5.6 脉冲输出类型1)通过软件程序的设置,每个轴的驱动信号可设为两种输出方式之一:独立2脉冲方式(CW/CCW方式):正向脉冲通过nPP/PLS输出,负方向脉冲通过nPM/DIR输出。1脉冲方式(CP/DIR方式):正负2个方向的驱动脉冲都通过输出信号nPP/PLS输出,脉冲方向通过 nPM/DIR 输出。DIR为低电平时,表示nPP/PLS输出

45、的是正方向的驱动脉冲,DIR为高电平时,表示nPP/PLS输出的 是负方向的驱动脉冲。脉冲输出类型表脉冲输出方式驱动方向输出脉冲波形CW(正)CCW(负)CP(脉 冲)DIR(方向)CW/CCW方式(独立2脉冲方式)正驱动方向脉冲低电平负驱动方向低电平脉冲CP/DIR方式(1脉冲方式)正驱动方向脉冲高电平负驱动方向脉冲低电平以上各控制输入输出点均有光电隔离。由外部的DC24V接入相应端子供电,各点输入为低电平有效。X,Y 轴的脉冲输出和编码器的输入用高速光耦隔离。5V供电。三.库函数驱动程序的使用说明3.1 函数调用举例(vc)说明卡号定义:当插入一块卡时,卡号默认为0号卡,插入两块卡,从右(

46、电源一侧)向左依次为0号卡,1号卡;三块卡则 依次为0号卡,1号卡,2号卡。依次类推。例:该卡插入第一槽,定义为0号,该赋值语句用于获得该卡的句柄HANDLE hDevice=PCI 101 O CreateDevice(O);该卡插入第三槽,定义为1号(第二槽插入了其他卡),该赋值语句用于获得该卡的句柄HANDLE hDevice=PCI 1010_CreateDevice(1);1 4PCI1 01 0运动控制卡使用说明书V6.00初始化:PCI 101 O lnitDevice(hDevice);调用函数举例一/初始化卡3.1.1使用PCn010_InitLVDV,PCI1010_Sta

47、rt_LVDV定长、连续脉冲驱动函数启动电机进行定长驱动:1:hDevice 设备句柄(它应由PCI1 01 0_CreateDevice函数创建)2:AxisNum 轴选择(PCI1 01 0_XAXIS:X 轴;PCI1 01 0_YAXIS:Y 轴)3:Mode 模式(PCI1 01 0_CWCCW:CW/CCW 方式,PCI1 01 0_CPDIR:CP/DIR 方式)4:Line Curve5:Multiple6:Acceleration直线曲线运动(PCI1 01 0_LINE:直线力口/减速;PCI1 01 0_CURVE:S曲线加/减速)倍数(1-500)力口速度(1 25-1

48、 000000)7:AccelerationAK加速度变化率(做S曲线时必须设定,直线驱动时不用设定),范围(1-62500000)8:StartRate9:DriveRate初始速度(范围1-8000)驱动速度(范围1-8000)10:nPulseNum 定量输出脉冲数(0-268435455)11:Direction 转动方向(PCI1 01 0_PDIRECTION:正方向转动 PCI 1010_MDIRECTION:反方向转动)例如:要使1号卡的Y轴电机以PulseDIR方式;直线加/减速;倍率为2;加速度为25000 PPS/s;10 PPS(脉 冲数/秒)初始速度;5000 PPS

49、驱动速度;输出脉冲数50000;正方向定长转动;(加速度变化率在S曲线运动时必 须设定,直线运动时不需要设定)参考下例HANDLE hDevice=PCI 1010_CreateDevice(1);/获得句柄号PCIlOlOPARADataList DL;一PCI 1 01 oZPARAlLCData LC;LC.AxisNum=PCI1 01 0_YAXIS;/轴号(PCI1 01 0_XAXIS:X 轴;PCI1 01 0_YAXIS:Y 轴)LC.LV_DV=PCI1 01 0_DV定长驱动连续驱动选择PCI1 01 0_DV:定长驱动PCI1 01 0_LV:连续驱动LC.Mode=P

50、CI1 01 0_CPDIR;LC.Line_Curve=PCI1 01 0_LINE;DL.Multiple=2;DL.Acceleration=1 2500;/模式 PCI1 01 0_CWCCW:CW/CCW 方式,PCI1 01 0_CPDIR:CP/DIR方式/直线曲线(PCI1 01 0_LINE:直线加/减速;PCI1 01 0_CURVE:S 曲线 加廉速)倍数(1-500)/加速度(1251000,000)DL.StartRate=5;DL.DriveRate=2500;LC.nPulseNum=50000;/初始速度(18000)/驱动速度(18000)/定量输出脉冲数(0

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服