Beijing Art Technology ART1010 Service Manual

北京阿尔泰科技发展有限公司
AR T1010 WIN2000/XP 驱动程序使用说明书
请您务必阅读《使用纲要》,他会使您事半功倍!
目 录
ART1010 WIN2000/XP 驱动程序使用说明书..................................................................................................................1
第一章 概述.................................................................................................................................................................1
第二章 使用纲要.........................................................................................................................................................2
第一节、定量驱动和连续驱动...........................................................................................................................2
第二节、速度曲线...............................................................................................................................................3
一、定速驱动...............................................................................................................................................3
二、直线加/减速驱动..................................................................................................................................4
三、非对称直线加减速驱动.......................................................................................................................5
四、S 曲线加/减速驱动 ..............................................................................................................................6
五、脉冲宽度和速度的精度.......................................................................................................................7
第三节、位置管理...............................................................................................................................................8
一、逻辑位置计数器和实际位置计数器...................................................................................................8
二、比较寄存器和软件限位.......................................................................................................................8
三、位置计数器的可变环形.......................................................................................................................9
第四节、插补.......................................................................................................................................................9
一、直线插补...............................................................................................................................................9
二、圆弧插补.............................................................................................................................................10
三、固定线速度.........................................................................................................................................10
四、位模式插补.........................................................................................................................................10
五、连续插补............................................................................................................................................. 11
六、步进插补............................................................................................................................................. 11
七、加减速驱动的插补............................................................................................................................. 12
第五节、原点搜寻.............................................................................................................................................13
第六节、中断.....................................................................................................................................................13
第七节、其它功能.............................................................................................................................................13
一、外部信号控制的驱动操作.................................................................................................................13
二、硬件限位(nLMTP/M).........................................................................................................................14
四、伺服电机到位信号(nINPOS.......................................................................................................14
五、紧急停止.............................................................................................................................................14
六、脉冲输出类型.....................................................................................................................................14
七、驱动状态输出.....................................................................................................................................14
八、输入信号滤波器.................................................................................................................................15
九、通用 I/O 信号 .....................................................................................................................................15
第三章 库函数驱动程序的使用说明.......................................................................................................................16
第一节、函数调用举例(vc)说明.....................................................................................................................16
一、使用 ART1010_InitLVDV、ART1010_StartLVDV 定长、连续脉冲驱动函数启动电机进行定长驱
.................................................................................................................................................................16
二、使用 ART1010_InitLVDV、ART1010_StartLVDV 定长、连续脉冲驱动函数启动电机进行连续驱
.................................................................................................................................................................17
三、使用 ART1010_InitLVDV、ART1010_Start2D 函数启动两轴同时驱动 .......................................18
四、使用 ART1010_InitLineInterpolation、ART1010_StartLineInterpolation 函数启动直线插补驱动
.....................................................................................................................................................................19
1
ART1010 WIN2000/XP 驱动程序使用说明书 版本:V6.023
五、使用 ART1010_InitCWInterpolation 函数启动正反方向圆弧插补驱动.........................................20
六、位插补举例.........................................................................................................................................21
七、连续插补举例.....................................................................................................................................21
八、外部信号控制的驱动函数.................................................................................................................22
九、设置外部越限信号有效及停止方式.................................................................................................23
十、设置伺服马达输出到位有效.............................................................................................................24
十一、实际位置计数器举例.....................................................................................................................26
十二、读 RR 状态寄存器的位状态..........................................................................................................26
第四章 驱动函数库...................................................................................................................................................29
第一节、驱动函数库函数列表.........................................................................................................................29
第二节、驱动函数库说明.................................................................................................................................31
一、设备对象管理函数............................................................................................................................. 31
二、设置控制卡的基本参数函数.............................................................................................................31
三、直线 S 曲线初始化、启动函数.........................................................................................................34
四、直线插补初始化、启动函数.............................................................................................................35
五、正反方向圆弧插补初始化、启动函数.............................................................................................35
六、位插补相关函数.................................................................................................................................36
七、连续插补相关函数............................................................................................................................. 37
八、外部信号启动电机定长驱动、连续驱动.........................................................................................37
九、设置软件限位有效和无效.................................................................................................................38
十、设置外部输入信号的有效和无效.....................................................................................................38
十一、减速函数设置.................................................................................................................................39
十二、读电机状态:逻辑计数器、实际位置计数器、当前速度、加/减速度 ....................................40
十三、读状态寄存器的位状态.................................................................................................................40
十四、设置通用输出和读通用输入.........................................................................................................41
第五章 硬件参数结构...............................................................................................................................................42
第一节、公用参数介绍(ART1010_PARA_DataList) ...................................................................................42
第二节、直线和 S 曲线参数介绍(ART1010_PAPA_LCData) .......................................................................42
第三节、直线插补和固定线速度直线插补参数介绍(ART1010_PAPA_LineData) ...................................43
第四节、正反方向圆弧插补参数介绍(ART1010_PAPA_CircleData) .......................................................43
第五节、状态寄存器 RR0 参数介绍(ART1010_PARA_RR0) .........................................................................44
第六节、状态寄存器 RR1 参数介绍(ART1010_PARA_RR1) .........................................................................44
第七节、状态寄存器 RR2 参数介绍(ART1010_PARA_RR2) .........................................................................45
第八节、状态寄存器 RR3 参数介绍(ART1010_PARA_RR3) .........................................................................45
第九节、状态寄存器 RR4 参数介绍(ART1010_PARA_RR4) .........................................................................45
2
北京阿尔泰科技发展有限公司

第一章 概述

ART1010 PC104 总线两轴伺服/步进电机运动控制卡,它以高频率脉冲串形式输出,控制伺服/步进电机的 运动。该卡能精确地控制所发出的脉冲频率(电机速度)、脉冲个数(电机转角)及脉冲频率变化率(电机加速 度),它能满足步进电机的各种复杂的控制要求。可对电机进行位置控制、插补驱动、加速/减速等控制。具有圆 弧、直线插补功能。它含有丰富的,功能齐全的软件库函数资源。在 Windows9X/2000/XP 环境下,用户可直接 使用我们为您提供的设备驱动程序函数接口;以最大方便地使您在 Visual C++ Visual Basic 及各种其他软件环 境中使用本设备。以下是它的功能特点。
独立 2 轴驱动
ART1010 可以分别控制 2 个马达驱动轴的运动。每个轴都可以进行定速驱动,直线加/减速驱动,S 曲线加/ 减速驱动等。2 轴性能相同。
速度控制
输出的驱动速度范围是从 1PPS 到 4MPPS(pulses per second 脉冲/秒)。可以运行固定速度驱动,直线加/减速 驱动,S 曲线加/减速驱动。加/减速驱动可以使用自动和手动 2 种操作方法。脉冲输出的频率最大误差±0.1%( 在 CLK=16MHZ 时),驱动脉冲输出的速度可以在驱动中自由变更。
非对称直线加/减速驱动
运行梯形加减速驱动时,加速度和减速度可以设定不同。
S 曲线加/减速驱动
每个轴可以用 S-曲线进行加/减速设定,使用 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 上计算的位模式插补数据后,可以用指定的驱动速度连续输出插补脉冲,用这种方式可以 产生任何插补曲线。
连续插补
直线插补→圆弧插补→直线插补→… 这样可以不停地运行每个插补接点的插补驱动,连续插补的最大驱动 速度是 2MHz
固定线速度控制
这是一种在插补驱动中保持插补轴合成速度的功能。2 轴同时输出脉冲时,第 2 轴可以设定为 1.414 倍脉冲 周期。
位置控制
每个轴都有 2 32 位位置寄存器,一个是在芯片内部管理驱动脉冲输出的逻辑位置计数器。另一个是管理 从外部编码器来的脉冲的实际位置计数器。
比较寄存器和软件限制功能
每个轴都有 2 32 位比较寄存器(COMP+,COMP-),用于逻辑位置计数器或者实际位置计数器的大小比较。 在驱动时,可以从状态寄存器读出比较寄存器和逻辑/实际位置计数器之间的大小关系。大小关系有变化时,可 以产生中断。并且,可以启动这 2 个比较寄存器作为软件限位。
输入信号滤波器
ART1010 内部的每一个输入信号的输入端都装备积分型的滤波器。可以设定哪一个输入信号的滤波器功能变 为有效或无效。滤波器的时间常数从 8 个种类里选择 1 个。
由外部信号驱动
每个轴都可以用外部信号(nEXPP,nEXPM)进行+/-方向运行的定量驱动和连续驱动。这个功能在手动操作 时,可以减轻 CPU 的负担。
伺服马达的各种信号
ART1010 接受来自伺服马达驱动器的信号。如 2 相编码器信号,定位信号,报警信号等。
实时监控功能
在驱动中,可以实时读出逻辑位置计数器、实际位置计数器、加速度、加/减速状态(加速中/定速中/减速中)。
1
ART1010 WIN2000/XP 驱动程序使用说明书 版本:V6.023

第二章 使用纲要

第一节、定量驱动和连续驱动

各轴的驱动脉冲输出一般使用正方向或负方向的定量驱动命令或者连续驱动命令。

一、定量脉冲输出驱动

定量脉冲驱动是以固定速度或加/减速度输出指定数量的脉冲。需要移动到确定的位置或进行确定的动作时, 使用此功能。加/减速定量驱动如图 2.1.1 所示,输出脉冲的剩余数比加速累计的脉冲数少时就开始减速,输出指 定的脉冲数后,驱动也结束。
进行加/减速的定量驱动,需要设定下列参数:
z 倍率 Multiple z /减速度 Acceleration/ Deceleration z 初始速度 StartSpeed z 驱动速度 DriveSpeed z 输出脉冲数 nPulseNum
速度
驱动速度 自动减速
时间
初始速度
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 在降速段增加脉冲数
2
北京阿尔泰科技发展有限公司
速度
驱动速度
改变输出脉冲数
初始速度
0 时间
2.1.4 减少脉冲数
/减速驱动的缓冲值设置
用户在定长脉冲驱动情况下可以改变减速点,如图 2.1.1 所示。ART1010 将自动地计算出加/减速点,并且使 加速段的脉冲数等于减速段的脉冲数。当为减速设置缓冲值(shift pulses)时,ART1010 将会因为缓冲值提前开 始减速。减速完成后剩余的脉冲数(shift pulses)将会以初始速度输出,如图 2.1.5ART1010 初始化时,缓冲脉冲(shift pulses)的默认值为 8S 曲线加/减速定量驱动中,如果驱动完毕速度降不到初始速度的话,要把加速计数 器偏移值设定为适当的数值,以修正它的速度。
速度
驱动速度
缓冲脉冲
初始速度
时间
2.1.5 定长方式下的缓冲脉冲

二、连续脉冲驱动输出

当将 ART1010 卡的脉冲输出模式设置为连续驱动状态时,ART1010 将一直以特定的速度驱动脉冲输出直至 接收到停止命令或是外部停止信号,如图 2.1.6 所示。
速度
驱动速度
外部停止信号
初始速度
时间
2.1.6 连续脉冲驱动
可用减速至停 DecStop”立即停止 InstStop”等函数中断连续驱动脉冲;也可由外部信号使其制动。

第二节、速度曲线

各轴的驱动脉冲输出一般使用正/负方向的定量驱动或连续驱动命令。此外,以设定模式或设定参数来产生 定速、直线加/减速、S 曲线加/减速的速度曲线。 一、定速驱动
定速驱动就是以一成不变的速度输出驱动脉冲及初始速度等于驱动速度。如果设定驱动速度小于初始速度, 就没有加/减速驱动,而是定速驱动。使用搜寻原点、编码器 Z 相等信号时,找到信号后马上要立即停止的话, 不必进行加/减速驱动,而是一开始就运行低速的定速驱动。如图 2.2.1
为了定速驱动,需要设定下列参数(初始速度=驱动速度):
3
ART1010 WIN2000/XP 驱动程序使用说明书 版本:V6.023
z 倍率 Multiple z /减速度 Acceleration z 初始速度 StartSpeed z 驱动速度 DriveSpeed
输出脉冲数 nPulseNum
设定参数例子
设定 1000PPS 运行定速驱动 倍率 Multiple = 1; 初始速度 StartSpeed = 1000; 驱动速度 DriveSpeed = 1000; 速度
初始速度
驱动速度
时间
2.2.1 恒速驱动

二、直线加/减速驱动

直性加/减速驱动是线性地从驱动开始的初始速度加速到指定的驱动速度。当加速度和减速度设置一样时,
速度时间图就是对称的梯形,当加速度和减速度不一样时,就不是对称的。以下为两种情况:
速度
减速
运行速度
加速 初始速度太小无法
初始速度 达到运行速度
时间
2.2.2 直线加/减速
为了直线加/减速驱动,下列参数需预先设定。记号:需要设定时设定。
z 倍率 Multiple z 加速度 Acceleration
减速度 Dcceleration
z 初始速度 StartSpeed z 驱动速度 DriveSpeed
输出脉冲数 nPulseNum ;定量驱动时使用 如图 2.2.3,从实际初始速度 500 PPS 加速至 15 000 PPS,时间为 0.3 S (秒),则
输出频率的倍数 Multiple=2
初始速度 StartSpeed=500 PPS/M=250 PPS 驱动速度 DriveSpeed=15000PPS/M=7500 PPS 加速度 Acceleration=[(15000 - 500)PPS /0.3S]/M=24167 PPS/S
减速度 Deceleration=[(15000 - 500)PPS /0.3S]/M=24167 PPS/S
速度
15000
500
0 0.3S 时间
4
北京阿尔泰科技发展有限公司
2.2.3 定长脉冲驱动模式
如图 2.2.4,从实际初始速度 500 PPS 加速至 15 000 PPS,时间为 0.3 S (秒)则
最高输出频率的倍数 Multiple=2(初始化后默认值为 M=1) 初始速度 StartSpeed =500 PPS/M=250 PPS 驱动速度 DriveSpeed =15000PPS/M=7500 PPS 加速度 Acceleration =[(15000 - 500)PPS /0.3S]/M=24167 PPS/S 减速度 Deceleration =[(15000 - 500)PPS /0.1S]/M=72500 PPS/S
速度
15000
500
0 0.3S 0.1S 时间 2.2.4 定长脉冲驱动模式加/减速度不同 注意:当加速度>减速度时,加速度和减速度比率要满足如下条件:
6
减速度>加速度 × (驱动速度)/4×10
当加速度和减速度的比率越大,则在减速时,拖延的脉冲越多, 即减速点会前移。为了解决这个问题可以增大初始速度或设置加速计数器偏移来解决。比如加速度和减速度的比 率为 10,减速点大概会提前 10 个脉冲左右,即会提前 10 个脉冲开始减速,这样当减速完成达到初始速度时, 还会有 10 个左右的脉冲才会达到定长脉冲数。这 10 个脉冲会以初始速度输出直到输出定长脉冲数。如果初始速 度是 1PPS/S 的话,就要等 10 秒钟才会结束。把初始速度增大则等的时间会变小。或者设定加速计数器偏移为 0 或负值来调整减速点。 三、非对称直线加减速驱动
往垂直方向移动对象物时,对对象物有重力加速度的负担,所以在这样加速度和减速度不同的非对称直线加 减速的定量驱动中,最好变更上下移动的加速度和减速度。此 IC 可以运行自动减速,事先不用设定手动减速点。 图 2.2.5 是加速度比减速度大的例子,图 2.2.6 是减速度比加速度大的例子。在这样的非对称的直线加减速中数据 输出脉冲数
P 和各速度参数可以在 IC 内部计算减速开始点。
图 2.2.5 非对称直线加减速驱动(加速度<减速度) 图 2.2.6 非对称直线加减速驱动(加速度>减速度)
在非对称直线加减速的定量驱动中需要运行自动减速的话,为了把减速度设定数值变为有效,要把 WR3
存器的 D1( DS~DE)设定为 1。为了使加减速定量驱动中自动运行减速,把 WR3 寄存器的 D0(MANLD)设定为 0
WR3/D1(DSNDE) 1 :减速度设定值有效 WR3/D0(MANLD) 0 :把加减速定量驱动中的减速运行自动 另外,跟通常的直线加减速驱动一样,需要设定下述的参数:
z 倍率 Multiple
z 加速度 Acceleration
z 减速度 Dcceleration
z 初始速度 StartSpeed
z 驱动速度 DriveSpeed
z 输出脉冲数 nPulseNum
注意:
z 加速度>减速度(2.2.6)时,加速度和减速度的比率有下述的条件。
减速度 > 加速度 X(驱动速度 / 4x10
6
(CLK=16MHz 时)
5
ART1010 WIN2000/XP 驱动程序使用说明书 版本:V6.023
比如,驱动速度 V=100KPPS 的话,减速度 Dcceleration 要大于加速度 Acceleration 数值的 1/40,不能小于
1/40
z 加速度> 减速度( 图 2.2.6)时,加速度 Acceleration 和减速度 Dcceleration 的比率越大拖延脉冲越多
Acceleration/Dcceleration=10 倍时,最大 10 脉冲左右。为了改善拖延脉冲问题,①增加初始速度,②在加 速计数器偏移上设定负数值。

四、S 曲线加/减速驱动

驱动速度加/减速时,ART1010 线性地增加/减少加速度/减 速度,以产生 S 型速度曲线。S 曲线加/减速驱动如图 2.2.7 所示。
驱动开始加速时,加速度以指定的加速度的增加率 ( AccelerationK )从 0 线性增加到指定的加速度值 (Acceleration),因此,这个速度曲线成为二次抛物线(a 区间)。 加速度达到指定数值(Acceleration)后保持此数值。这时速度 曲线是直线型的,速度在加速中(b 区间)。目标速度及驱动速 度和当前速度的差值比相应时间增加所增加的速度少时,加速 度趋向 0。当减速时和加速时一样,减速度以指定的增加率 (AccelerationK)增大到减速度值,然后减速度保持一段时间 不变,最后减速度减少直到 0。这样具有部分固定加速度的加速 为部分 S 曲线。
另一方面,在 a 区间若在加速度达到指定数值(Acceleration) 前,目标速度(DriveSpeed)和当前速度的差值比相应时间增加 所增加的速度少时,b 区间就消失,只有 a 和 c 区间。这种没有 固定加速度的加速称为完全 S 曲线加速。 图 2.2.7 S 曲线加减速驱动
同样,S 曲线加/减速运动也分为对称的和不对称的运动两种。当要运行对称的 S 曲线运动时,要设定下列参 数:
z 倍率 Multiple
z 加速度/减速度的变化率 AccelerationK
z 加速度 Acceleration
z 初始速度 StartSpeed
z 驱动速度 DriveSpeed
z 输出脉冲数 nPulseNum 定量驱动时使用 参数设定例子 1(对称的完全 S 曲线)
如右图所示,是在 0.4 秒内用完全 S 曲线加速增加至 40KPPS 的 例子。
首先,在计算上不考虑初始速度(把它当作 0)。因为是完全 S 曲线加速,所以在 0.4 秒的 1/20.2 秒)把速度增加至 40KPPS 1/220KPPS),在剩下的 0.2 秒增加至 40KPPS。这时加速度线性的 增加直至 0 .2 秒。在右下图中,加速度 Acceleration =X(直线斜率) ×t(时间),已知初始速度是 00.2 秒后为 20K,而加速度又是速度 的导数,所以,dv/dt=X×t,计算得 X=1000K0.2 秒的加速度是 100,
000×0.2=200KPPS/SEC ,加速度的增加率是(AccelerationK) 200K/0.2=1000KPPS/SEC
2
运行完全 S 曲线加/减速时,速度取决于加/减速度的变化率,所 以为了避免产生部分 S 曲线,加/减速度要设定 200KPPS/SEC 以上 的数值。
z 倍率 Multiple = 10
z 加/减速度的增加/减少率 AccelerationK = 100,000; 100,000×10(倍率)=1000K
z 加速度 Acceleration = 20,000 20,000×10(倍率)= 200K
z 初始速度 StartSpeed = 100100×10 = 1000
z 驱动速度 DriveSpeed = 40004000×10 = 40,000
当要运行非对称的 S 曲线运动时,要设定下列参数:
z 倍率 Multiple
6
北京阿尔泰科技发展有限公司
z 加速度的变化率 AccelerationK
z 减速度的变化率 DecIncRate
z 加速度 8000(必须设置为 8000)
z 减速度 8000(必须设置为 8000)
z 初始速度 StartSpeed
z 驱动速度 DriveSpeed
z 输出脉冲数 nPulseNum 定量驱动时使用
当运行非对称 S 曲线运动时不能自动减速,要手 动设置减速点。
参数设定例子 2(非对称的完全 S 曲线)
如右图所示,加速时在 0.2 秒内用完全 S 曲线从初 始速度 100PPS 加速增加至 40KPPS,减速时用 0.4 秒 从 40K 减速到初始速度的例子。
首先,因为是完全 S 曲线加速,所以在 0.2 秒的 1/20.1 秒)把速度增加至 40KPPS 1/2(20KPPS), 在剩下的 0.1 秒增加至 40KPPS。在右下图中,加速度 Acceleration =X(直线斜率)×t(时间),已知初始速 度是 10000.1 秒后为 20K,而加速度又是速度的导 数,所以,dv/dt=X×t,计算得 X=3.99M,加速度的增 加率是(AccelerationK)3.99MPPS/SEC
2
;同理,我们可以算出减速度变化率(DecIncRate)是 0.9975MPPS/ SEC2。
则减速点是:nPulseNum – (初始速度+驱动速度)*(驱动速度-初始速度)具体程序请参考例子。

五、脉冲宽度和速度的精度 驱动脉冲的脉冲比率

对于各轴正/负方向上的驱动脉冲,由驱动速度决定的脉冲周期时间有±1SCLKCLK = 16MHz 时为
±125nSEC)的误差,并且基本上分布在高电平 50%和低电平 50%。举例如下图所示,设定倍率为 1,驱动速度 1000PPS,驱动脉冲输出高电平宽度 =500μS,低电平宽度 =500μS 周期=1.00mS
Multiple =1 StartSpeed =1000 PPS DriveSpeed =1000 PPS
500μS 500μS
1.00 ms
当处于加速时,低电平脉冲长度小于高电平脉冲长度;驱动速度将会提高;
反之,当处于减速时,低电平脉冲长度大于高电平脉冲长度;驱动速度将会降低。
加速区 匀速区 减速区
T
T
HA TLA
HA >TLA THC =TLC THD <TLD
T
HC TLC THD TLD
2.2.8 /减速过程中脉冲宽度的比较
驱动速度精度
因为 ART1010 CLK 时钟为 16MHz,产生驱动脉冲的电路是由 IC SCLK 来驱动的。SCLK 由时钟信号 CLK2 分频而得。若 CLK 输入是标准的 16MHzSCLK 就是 8MHz。要产生某个频率的驱动脉冲,并且是没有 抖动的均匀频率驱动脉冲,它的频率周期只能是下图所示 SCLK 周期的整数倍。
ART1010 初始化后,最高速度(输出脉冲频率)默认值为 8K。驱动速度越高,精度越低。即使是驱动速度 很高,ART1010 仍就能保持相对的精度;驱动脉冲的精度仍在±0.1 之内。不会影响驱动电机的工作状态,因为 这个误差是会被电机系统的惯性吸收的。
最高输出脉冲频率可以通过 SetM 函数设置,默认值 M=1,默认最高输出脉冲频率 8K
7
ART1010 WIN2000/XP 驱动程序使用说明书 版本:V6.023
最高输出频率/PPS 倍数
M
M=1 MAX(V)=8000 M=2 MAX(V)=16,000 M=3 MAX(V)=24,000
… …
M=500 MAX(V)=4,000,000
M 被设置为 500 时,最高输出频率为 4M。加/减速度也随着 M 的数值变化而变化。

第三节、位置管理

一、逻辑位置计数器和实际位置计数器

ART1010 对每一个轴都有一个逻辑位置计数器和实际位置计数器。逻辑位置计数器计数是计数 ART1010 卡 发出的正/负方向输出脉冲。当发出一个正向脉冲时,计数器将自动加 1,当发出一个负向脉冲时,计数器将自 动减 1
实位计数器计数来自外部编码器的输入脉冲,输入信号可以设定为 2 相脉冲输入或上/下脉冲输入。
2 相脉冲输入模式
当设定为 2 相脉冲输入后,按正逻辑当 A 相超前时向上计数,当 B 相超前就向下计数。由 2 个信号的
上升沿和下降沿进行向上/下计数。
nECA
nECB
往上上计数 往下计数
下脉冲输入模式
nECA 作为向上计数输入,nECB 作为向下计数输入,由脉冲的上升沿计数。
nECA
nECB
往上计数 往下计数
ART1010 可以在任何时候写入或读出 2 个计数器的数据,我们提供了 ART1010_ReadLP,ART1010_ReadEP
函数分别 读出逻辑计数器和实位计数器的值。计数范围在-2,147,483,648~+2,147,483,647 之间。

二、比较寄存器和软件限位

ART1010 对每一个轴都有 2 32 位寄存器(上下限位寄存器 COMP+COMP-)用来与逻辑位置计数器或 实际位置计数器进行比较。把 2 个比较寄存器的比较对象设定为逻辑计数器还是实位计数器,可由函数指定,
COMP+寄存器主要用来检测逻辑/实位计数器计数的上限。当逻辑/实位计数器的值大于 COMP+寄存器的值时, ART1010 RR1 寄存器的 D0 位就置 1。另一方面,COMP-寄存器用来检测逻辑/实位计数器某个范围的下限。
当逻辑/实位计数器数值小于 COMP-寄存器的数值时,RR1 寄存器的 D1 位就置 1
可以把 COMP+ 寄存器和 COMP— 寄存器用于正/ 负方向的软件限制来运行。我们提供 ART1010_SetPDirSoftwareLimit 函数供选择是逻辑寄存器还是实位寄存器,并设定正方向软件限位有效,在驱动 中,如果逻辑/ 实位计数器的值大于 COMP+ 的值就执行减速停止,并且 RR2 寄存器的 D0 1; ART1010_SetMDirSoftwareLimit 用于设定反方向软件限位,并选择是逻辑寄存器还是实位寄存器,当执行负方向 驱动命令并且逻辑/实位计数器的值小于 COPM+寄存器后,就会清除这个状态。同样情况适应于负方向的 COMP—。可以在任何时候调用 ART1010_SetPDirSoftwareLimitART1010_SetMDirSoftwareLimit COMP+寄 存器和 COMP-寄存器。复位时寄存器的值是任意的。
2.3.1 软件限位停机
8
北京阿尔泰科技发展有限公司

三、位置计数器的可变环形

逻辑位置计数器及实位数器是 32 位长的上/下环形计数器,因此从 32 位长的最大数值 FFFFFFFFh 往+方向 计数的话,最后计数计到 0。从 0 往-方向计数的话,最后计数计到 FFFFFFFFh。可变环功能是可以把这个环形 计数器的最大数值任选设定,如果定位不是直线,而是旋转运动的话,用此功能控制位置很方便。要使可变环功 能有效,把 WR3 寄存器的 D6(RING)位设定为 1。在 COMP+寄存器设定逻 辑位置计数器的最大数值,在 COMP-寄存器设定实位计数器的最大数值。
比如,用 10,000 脉冲旋转一圈的话。
① 设定 WR3/D6 位为 1 把可变环功能就有效。
② 在 COMP+寄存器设定 9,999(270Fh—逻辑位置计数器的最大数值)。
③ 同时使用实位计数器的话,在 COMP-寄存器设定 9,999(270Fh—逻 辑位置计数器的最大数值)。 这时计数动作: 往+方向,上计数时、…→9,998→9,999→0→1→…。 往-方向,下计数时、…1→0→9,999→9,998→…。
位置计数器的可变环最大值 9.999 操作
注意:
z 每个轴都要设定可变环功能的有效/无效,但是不能分别设定逻辑位置计数器和实位计数器的有效/无效。 z 使可变环功能有效后,不能使用软件限制功能。

第四节、插补

ART1010 可实现 X、Y2 轴的直线插补、圆弧插补和模式位插补。插补运动是指 2 轴按照一定的算法进行
联动,被控轴同时启动,并同时到达目标位置。对于直线插补,圆弧插补,位插补,最大驱动速度为 4 MPPS, 连续插补最大驱动速度是 2MPPS
插补驱动时,每个驱动轴都能进行硬件限制和软件限制。在插补驱动中任何轴的限制有效,ART1010 停止
插补。
在插补中,最长的移动距离的轴为长轴,另外一个轴为短轴”。”长轴输出一个均匀的脉冲序列,而”短
的驱动脉冲依赖于长轴2 轴之间的关系,有时候输出脉冲,有时候不输出脉冲。 一、直线插补
选择 XY 轴直线插补时,从当前位置到相对位置(X+20Y+100)如下图所示,从当前坐标执行直线 插补,终点坐标由针对当前位置的相对数值设定。精确设定每个轴的输出脉冲数。在每个轴独立运行时,输出脉 冲数设定为没有符号的数值。但是,在插补驱动时,用相对数值设定当前位置的终点坐标。如下图所示,对指定 直线的位置的位置精度,在整个插补范围内有±0.5LSB。下图是直线插补驱动脉冲输出例子,在设定的终点数值 中绝对值最大的是长轴。在插补驱动中,此轴一直输出脉冲,其它的轴是短轴,根据直线插补算术的结果,有时 候输出脉冲,有时不输出脉冲。
直线插补的坐标范围是带符号的 24 位字长。插补范围为从各轴当前位置到-8,388,607~+8,388,607 之间(注意: 不能设定-8,388,608)。
XPP
YPP
10
±0.5LSB
0 20
9
ART1010 WIN2000/XP 驱动程序使用说明书 版本:V6.023

二、圆弧插补

圆弧插补从当前位置开始,根据所指定的圆心和终点位置以及插补的方向(按顺时针或逆时针)来进行。坐标 设定值是对当前坐标(始点)的相对值(并且是脉冲数)。图 2.4.1 说明了顺时针和逆时针插补的定义。可以任意选 择 2 轴进行圆弧插补。
逆时针
顺时针
2.4.1

三、固定线速度

固定线速度控制是始终保持插补轴以合成速度运行的功能。及如果设定初始速度是 1000PSS,驱动速度是
1000PPS,则插补时的合成速度始终是 1000PPS。例如设定插补终点为(20,10),初始速度 1000PPS,驱动速度 1000PPS,脉冲输出如下图所示。
1.000ms 1.414ms 1.000ms 1.414ms
XPP XPM
YPP
YPM
为了达到(2010)终点,必须是 X 轴输出两个脉冲,Y 轴输出一个脉冲。当 X 轴输出脉冲,Y 轴不输出 时,X 轴脉冲频率为 1000PPS,当两轴同时都有脉冲时,两轴的脉冲周期都为 1.414ms,及频率为 1000*2/2= 707,则两轴的合成速度为 1000PPS,这样就保证了整个过程中的速度都为 1000PPS

四、位模式插补

位模式插补是把高位 CPU 计算的插补数据以数据包的方 式接收后,以指定的驱动速度连续输出插补脉冲。在插补初始 化时要事先指定主轴,副轴。
主轴正,负方向,副轴正,负方向要输出一个脉冲时,设 定为 1,不输出脉冲时,设定为 0。这样设定的话,要画如图 所示的轨迹,要输出的数据如下所示。
64 56 48 40 32 24 16 8 0 0100,0000 0000,0000 000,11111 1101,1011 1111,0110 1111,1110 0000,0000 0000,0000 :XPP 0111,1111 1111,0101 0000,0000 0000,0000 0000,0000 0000,0000 0010,1011 1111,1111:XPM 0000,0000 0000,0000 0000,0000 1111,1111 0000,0000 0000,1111 1111,1111 1101,0100:YPP 0000,1010 1111,1111 1111,1100 0000,0000 0011,1111 1100,0000 0000,0000 0000,0000:YPM
BP1P 寄存器,BP1M 寄存器是从高位 CPU 写入位模式数据的 16 位寄存器,X 轴正方向的 16 位数据写入
BP1P 寄存器,X 轴负方向的数据写入 BP1M 寄存器,位模式插补开始后,从 D0 位依次输出驱动脉冲。
堆栈计数器(SC)是计算位模式数据存储量的计数器,能从 0 3 变化。给位数据堆栈写入一个 16 位数据, 则增加 1SC 为 3 的时候,表示位数据堆栈不能再补充数据。为 2 的时候,可以再补充一个 16 位数据。为 1 时, 可以再补充 2 16 位数据。为 0 时,表示输出了所有数据,驱动结束。
在插补驱动开始后,随着驱动脉冲输出,SC 的数值以 3 2 1减少,所以,可以重新写数据。要连
10
北京阿尔泰科技发展有限公司
续运行位模式插补的话,在 SC 2 1 时,要设定下一个数据。SC 数值从 2 变到 1 时,也可以要求中断高位 CPU,以写入数据。
插补驱动速度的限制
ART1010 的位模式插补驱动速度最高达 4MHz。但是,数据超过 48 位的话,CPU 要在插补驱动中补充
数据,所以插补驱动速度将受到 CPU 建立模式数据所需时间的限制。 比如,对于 2 轴位模式插补,如果 CPU 花费在 64 位数据运算和数据建立的时间以及执行 BP 数据堆栈 命令的时间是 100μS,则插补驱动速度在 1/(100μS/16) = 160KPPS 以下。
位模式插补的结束
位模式插补以下 2 种方法结束 当主轴(X 轴)正和负方向的输出位数据都为 1 时,位模式插补就结束。收到结束码后,堆栈计数器(SC) 被强制为 0。所有遗留的位模式数据都无效。 D15 D0
0 0 0 0 0 1 1 1 1 0 1 0 0 0 0 0
1 0 0 0 0 1 0 0 0 0 0 0 1 1 1 1
主轴的正,负方向输出数据同时变为 1 后结束
② 停止数据写入
停止向 BP 数据堆栈写入数据,当所有的位模式数据作为驱动脉冲输出后,SC 0,结束插补驱动。
用停止命令中断插补驱动
对运行位模式插补驱动的 X 轴写入立即停止或减速停止命令,插补驱动就停止。重新启动位插补, 就继续位模式插补。如果以停止命令停止驱动而不需要再进行插补的话,用 ART1010_ClearBPData 函 数把 BP 寄存器所遗留的数据都清除。
用硬件限制和软件限制的停止
在插补驱动中任何轴有硬件限制,软件限制动作,插补驱动就停止。若不需要再运行插补,就一定 要用 ART1010_ClearBPData 函数所有留下的数据清除。 位模式插补例子请参看《位插补举例》。

五、连续插补

连续插补是直线→圆弧插补→直线插补→……等等这样在每个插补节点之间不停地驱动,连续插补。在连续 插补驱动中,如果设定了下一个插补参数并写入插补命令,就能执行连续的插补驱动。因此,在所有的插补节点 中,从连续插补驱动开始至结束的时间必须长于设定下一个插补节点数据和发命令的时间。
RR0 寄存器的 D9CNEXT)位用于连续插补。在插补驱动中这个位表示是否可写入下一个插补节点数据及 插补命令,1 表示可以写入,0 表示不可以写入。当驱动停止时,该位为 0;插补驱动开始就变为 1,可以写入下 一个插补节点的数据及插补命令。写入下一个插补节点的插补命令后变为 0(不可以写入状态)。等到这个插补 开始后,变为 1,可以写入再下一个插补节点的数据及插补命令。
连续插补的注意事项
z 在每个插补节点上要在设定需要的数据后,发插补命令,请不要先送插补命令后送数据。 z 连续插补的驱动速度最高达 2MHz z 所有驱动插补节点的时间必须长于插补轴检错和设定下一个插补节点的数据及命令的时间。如果在
设定下一个插补节点时驱动停止,RR0 寄存器的 D9 位为 0,这时在写入下一个插补节点的命令后 就从暂停处继续插补。
z 连续插补中有圆弧插补时,圆弧插补终点的短轴数值也许会比真值偏差±1LSB,因此,为了避免累
积每个节点的误差,事先要确认每个圆弧插补的终点,然后考虑怎么运行连续插补。
连续插补例子请参看《
连续插补举例》。

六、步进插补

步进插补驱动的功能是以逐个脉冲的方式执行的。有根据命令和根据外部信号这 2 种方法。如果使用外部信 号,就可以运行跟外部信号同步的插补驱动。步进插补时,插补 X 轴设定为定速驱动。从每个轴输出的驱动脉 冲高电平宽度是 1/2 脉冲周期,这周期由在主轴设定的驱动速度而定。低电平宽度的增加直到下一个命令或外部 信号的到来。下图是由外部信号驱动的步进插补的例子。例如把主轴的初始速度设定为 500PPS,把驱动速度设 定为 500PPS 的定速驱动,那么,输出的驱动脉冲的高电平宽度是 1mSEC
11
ART1010 WIN2000/XP 驱动程序使用说明书 版本:V6.023
2.4.2 根据外部信号(EXPLSN)的步进插补例子(驱动速度: 500PPS)
■ 根据命令的步进插补 单步插补命令用于插补驱动的步进传送。在设置好根据命令步进插补,并设定好速度,插补数据(终点, 圆心)启动插补命令后,当发一次步进插补命令则输出一个插补脉冲。以下是操作程序。
设置根据命令进行步进插补 插补驱动初始化。用相同数值设定插补主轴的初始速度和驱动速度
用相同数值设定初始速度和驱动速度将执行定速驱动,这个速度值要设定得比写入单步命令周期 快。比如,要用最高 1mSEC 周期写入单步命令,就要把初始速度和驱动速度设定得比 1000PPS 快 的数值
启动插补命令 写入单步插补命令
根据插补运算的结果,从各轴输出驱动脉冲。不断写入单步命令,直到插补驱动结束为止。若要在 步进插补中停止,也可给主轴写立即停止命令(ART1010_InstStop),等待一个以上脉冲周期后,再 写单步插补命令,驱动就停止。插补驱动结束后,写入的单步插补命令都无效。
■ 外部信号控制的步进插补
引脚 nMPLS 用作步进插补驱动的外部输入信号。nMPLS 信号通常是高电平。在插补步进模式时,步 进插补由外部信号的下降沿启动。以下是操作程序。
设置根据外部信号启动步进插补 对插补驱动进行初始化,把初始速度和驱动速度设定相同值。
这个速度值和上诉的命令控制一样。设定的速度值要比 nMPLS 的低电平脉冲周期快。
启动插补驱动 给 nMPLS 引脚输入低电平脉冲
脉冲下降 2-5CLK 后,插补驱动脉冲从各轴输出。EXPLS 的低电平脉冲宽度需要在 4CLK 以上。 若要在步进插补中停止,就要给主轴写立即停止命令,等待一个以上驱动的脉冲周期后,再输 入 MPLS 的低电平脉冲,驱动就停止。插补驱动结束后,向 MPLS 端输入的低电平脉冲无效。
注意:如果是由机械接点产生 MPLS 低电脉冲,要把滤波器功能变为有效,解除颤动。

七、加减速驱动的插补

插补一般用定速驱动,不过 ART1010 可以用直线加/减速驱动或 S
线加/减速驱动(只可做直线插补)运行插补。
在连续插补时为了实现加/减速驱动,使用减速有效命令和减速无效 命令。在插补驱动时减速有效命令是使自动减速或手动减速变为有效, 减速无效命令是使它变为无效。复位时,都是无效状态。在用加/减速单 独运行插补驱动时,驱动之前一定要设定成减速有效状态。在驱动中写 入减速有效命令,也不能变为有效。
2 轴直线插补的加/减速驱动
在 2 轴直线插补中可以运行直线加/减速驱动及 S 曲线加减速驱
动减速,这时自动减速和手动减速都可以使用。使用手动减速时,把 在终点坐标的各轴数值中绝对值最大的数值设定为 X 轴的手动减速 点。比如:运行 2 轴直线插补到终点(X-20000Y60000)。假 定减速时需要的脉冲数是 5000Y 轴的终点绝对值比 X 轴大,所以 把 60000-5000=55000 作为手动减速点设定 X 轴。
圆弧插补,位模式插补的加/减速驱动
在圆弧插补,位模式插补中只能用手动减速的直线加/减速驱动, 不能使用 S 曲线加/减速驱动及自动减速。 右图是用直线加减速驱动运行半径是 10,000 完整圆轨迹的例子。在圆弧插补中不能用自动减速,所以
12
北京阿尔泰科技发展有限公司
事先要设定手动减速点。半径 10,000 的圆通过从 0 至 7 象限,在每一个象限上短轴一直输出脉冲,所以短轴 每一个象限输出 10,000/√2=7,071 脉冲。因此在整个圆上从主轴输出的基本脉冲数是 7,071×8=56,568。 此外,把初始速度设定为 500PPS,在 0.3 秒之内用直线加速把驱动速度增加至 20,000PPS 的话,加速度 是( 20,000-500)/0.3 =65,000PPS/S。加速时花费的脉冲数是右图的斜线部分面积(500+20,000)×0.3/2=3,075. 因此,如果减速度和加速度一样,手动减速点就设定为 56,568-3075=53,493。
注意:在固定线速度模式上,不能使用这个算法。
连续插补的加/减速驱动
在连续插补中只能用手动减速的直线加/减速驱动,不能用 S 曲线加/减速驱动及自动减速。在连续插补
中要事先设定手动减速点。这个手动减速点设定在运行减速的最后一个节点上,并设定从 X 轴输出的基本脉 冲的数值。连续插补时先把减速设定为无效,然后开始插补驱动。在要减速的最后一个节点上写入插补命令 之前,写入允许减速命令。开始最后一个节点的驱动时,减速就有效。从最后一个插补节点开始计数主轴输 出的基本脉冲数当大于手动减速点的数值时,减速就开始。

第五节、原点搜寻

连续驱动的原点搜寻动作
把原点接近信号、原点信号、编码器 Z 相信号等安排在 nSTOP2~0。在各轴的 WR1 寄存器上设定各信号的 有效/无效和逻辑电平。高速搜寻时,用加/减速连续驱动。当设定的有效信号处于激活电平时就减速停止。低速 搜寻时,用定速连续驱动。当设定的有效信号处于激活电平时就立即停止。为了以加/减速连续驱动,除了输出 脉冲数以外,都要设定和定量驱动一样的参数。

第六节、中断

发生中断有 2 种情况,其一是来自 XY 轴的中断,其二是位模式插补及连接插补时的中断。对 CPU 的中 断信号只有一个 INTN 信号。
XY 轴产生的中断
中断位允许禁止 RR5 状态位 中断发生的条件
PBCM PSCM
PSCP
PBCP
CEND
CSTA
DEND
插补形成的中断
中断位的允许禁止 RR0 状态寄存器 中断发生的条件
(CIINT) 位插补中断允许禁止位 (BPINT)
D1PBCM 当逻辑/实位计数器的值大于等于 COMP-的值时 D2PSCM 当逻辑/实位计数器的值小于 COMP-的值时
D3PSCP 当逻辑/实位计数器的值小于 COMP+的值时 D4PBCP 当逻辑/实位计数器的值大于等于 COMP+的值时
D5CEND 在加/减速时,结束在定速区域输出脉冲
D6CSTA 在加/减速时,开始在定速区域输出脉冲
D7DEND 驱动结束时
D9CNEXT连续插补的中断允许禁止位
D14,13(BPS1,0) 在位模式插补中堆栈计数值(SC)的数值从 2 变为 1,可以压
在连续插补驱动中,可以写下一个插补节点的数据和插补驱 动命令(写入下一个插补驱动命令后中断被清除)
入下一个 BP 数据(压栈 BP 数据后中断被清除)

第七节、其它功能

一、外部信号控制的驱动操作

此功能不是用命令,而是用外部信号来运行定量驱动,连续驱动。每个轴都有 nEXPP nEXPM 的两个信 号输入,nEXPP 信号用于正方向的驱动操作,nEXPM 信号用于负方向的操作驱动。我们提供
ART1010_SetOutEnableDVART1010_SetOutEnableLV 函数。
ART1010_ SetOutEnableDV 用于设定外部控制定量驱动,当调用该函数设定好轴号,倍率,加速度,初始速
度,驱动速度,输出脉冲数后,如果 nEXPP 引脚出现一个下降沿,则启动设定轴的正方向定长驱动,如果 nEXPM 引脚出现一个下降沿,则启动设定轴的反方向定长驱动。
ART1010_SetOutEnableLV 用于设定外部控制连续驱动,当调用该函数设定好轴号,倍率,加速度,初始速 度,驱动速度后,如果 nEXPP 引脚保持低电平,则启动设定轴的正方向定长驱动。如果 nEXPM 引脚保持低电 平,则启动设定轴的反方向定长驱动。(一旦引脚不是低电平了则停止连续驱动)
13
Loading...
+ 32 hidden pages