脉冲脉宽输出功能讲解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
脉冲输出功能
利用FP0的高速计数器功能,可以实现两路脉冲信号的输出。
并且,若
以FP0的专用指令,可实现定位控制、梯形升降速控制、原点返回和点动等功能。
概述
●利用FP0的脉冲输出功能,可以控制脉冲串输入形式的电机驱动器,来
实现定位控制。
●指令F168能够根据设置的初始速度、最大速度、加/减速时间以及目标
值,自动输出所要求的脉冲,实现梯形升降速的定位控制。
●F168指令也能实现自动回原点功能。
●利用指令F169,可以实现点动(JOG)的脉冲输出。
设置系统寄存器
当使用脉冲输出功能时,应将相应通道(CH0或CH1)的系统寄存器
No.400和No.401设置为“不使用高速计数器”。
设置方法请参考“7.4.3的系统寄存器表”。
F168 位置控制(梯形控制/原点返回)
根据设定的参数,从特定的输出点(Y0或Y1)输出特定形式的脉冲信号。
编程举例:
相应的寄存器表
A:可使用N/A:不可使用
说明:
●若控制标志(Control flag)(R903A或R903B)为OFF,且控制触点(如
R0)为ON状态时,则从指定的输出点(Y0或Y1),按照数据表给定的参数输出一个特定形式的脉冲串。
●数据表用于指定位控运动的控制码、起始速度、最大速度、加速/减速时
间或目标值等。
●根据加/减速时间,输出频率从起始速度升到最大速度。
●相应的数据区见下表:
●在脉冲输出的过程中,可通过重写目标值,来输出更多的脉冲。
运行模式说明:
●增量模式<相对值控制>
根据目标的设置设定值,来输出相应脉冲数的脉冲。
将控制码(Control code)设置为H02(即:增量模式;正向:OFF;反向:ON),当目标值为正时,方向信号输出为OFF,同时高速计数器的当前值增加。
当目标值为负时,方向信号输出为ON,同时高速计数器的当前值减少。
当控制码(Control code)设置为H03时,方向信号输出则和前述情况的相反。
●绝对模式〈绝对值控制〉
根据当前值和目标值的设置不同,输出脉冲(当前值与目标值之差为输出的脉冲数)。
将控制码(Control code)设置为H12(即:绝对值;正向:OFF;反向:ON),当当前值比目标值小时,方向信号输出为OFF,同时高速计数器的当前值增加;当当前值比目标值大时,方向信号输出为ON,同时高速计数器的当前值减少。
若将控制码(Control code)设置为H13,则方向信号输出与前述情况相反。
●原点返回模式
在原点信号(X0或X1)输入之前,脉冲将连续输出。
为了在接近原点时进行减速(以减少过冲或冲击),当接收到原点接近信号时,应将DT9052的相应位设置为OFF→ON→OFF,以实现减速。
在返回原点模式中,仅仅用到数据表中的控制码、起始速度、最大速度和加速/减速时间。
在回原点过程中,当前值和设定值不变;当回原点运动结束时,则当前值变为0。
♦数据表设置[S]~[S+6]
S S+1 S+2 S+3 S+4 S+5 S+6 *1
K40到K5000(Hz)
K40到K9500(Hz)*2 K30到K32767(ms)K-8388608到K8388607 “K0”
*1
*2:当脉冲宽度被设置为占空比为50%时,最大输出频率是6KHz 。
当脉冲宽度被设置为固定脉宽时(大约80us ),最大频率为9.5KHz 。
H
间
在执行指令F168时,若设有脉冲输出,故障查找的方法请参考6-32页。
应用举例:
F169(PLS )脉冲输出指令(点动)
从指定输出点(Y0或Y1)输出指定参数的脉冲。
编程举例
R 1
[ F0 MV ,H2,DT0
] [ F0 MV ,K1000,DT1 ] [ F0 MV ,K7000,DT2 ] [ F0 MV ,K3000,DT3 ] [ F1 DMV ,K100000,DT4 ] [ F0 MV ,K0,DT6 ]
[ F168 SPD1,DT0,K0
]
R0
寄存器表:
A:可使用N/A:不可使用
举例说明
●若相应通道的控制标志为OFF,且控制触点为ON时,则从特定的输出
点(Y0或Y1)输出一个脉冲串。
脉冲串是在控制触点为ON的同时输出的。
●若在控制码中设置为增量计数或减量计数方式时,则该指令可用作一个
点动操作指令。
对于情况,可以将控制码设置为H12(增量,方向输出OFF )或H22(减量,方向输出ON );
● 在每次扫描中,频率和占空比都可以进行改变。
(这条指令执行以后,
设置的参数对下一个脉冲仍有效)。
● 相应寄存器的情况如下:
● 在使用增量计数方式时,若当前值超出H7FFFFF 时,则脉冲停止。
● 在使用减数计数方式时,若当前值超出HFF800000时,则脉冲停止。
● 在运行期间,可以进行一个重写操作,在重写过程中输出脉冲停止。
数据表设置
S S+1
*1
K40到K10,000(HZ )
H
*1:控制码是由常数H来设置的
功能和约束条件
通道同一通道不能用于一种以上的功能.
<应用限制举例>
你不能将CH0通道既用于高速计数又用于脉冲输出功能.输入/输出口序号<输入/输出出触点>
●每一功能的相应通道不能用于一般的输入输出出.
<应用限制举例>.
−当用CH0作为两相输入的高速计数功能时,不能让X0和X1作为一般的输入口.
−当用Y0作为脉冲输出时,不能将输入端X0作为一般的输入口
−当Y0作为脉冲输出出<作为定向输出功能>功能时,不能将Y2<方向输出>作为一般的输入输出口.
●当将高速计数器作为不能复位输入的模式使用时,不能将参数表括号中
所到的输入口作为一般的输入口<允许使用举例>
当高速计数器用不能复位和两相输入时,不能将X2作为一般的输入口.相关指令<F166到F170>执行的约束.
●当任一与高速计数相关的指令<F166到F170>执行时,使用
通道的对应控制标志位<内部特殊寄存器R903A到R903D
>ON:
●当一个通道的标志ON,用于同一通道的其它指令不能执行.<应用
限制举例>
――当执行F166<目标指相应于ON指令>和R903A处于ON状态时F167<目标指相应于OFF指令>不能在CH0通道执行.
最高计数速度/最高输出入脉冲频率限制.
●当作为高速计数器时计数速度将随表中列出的计数模式不同而变化.
<例1>
当处于增幅输入模式和使用CH0和CH1两通道时,如果CH1是用的8KHZ,那CH1能用到达2KHZ.
<例2>
当处于两相输入模式和使用CH0和CH1两通道时,如果CH1用的1KHZ.那么CH2能用到2KHZ.
●当用作脉冲输出功能时,最高输出频率将随表中列出的输出触点数不同
而变化.
<例1>
当仅使用Y0或Y1时,最高输出频率是非曲直10KHZ
<例2>
当使用Y0和Y0两触点时,最高输出频率是5KHZ.
●当用作高速计数功能和脉冲输出出功能时参数将随使用条件不同而异.<例>
当将一脉冲输出触点的最高输出出频率定5KHZ时,同步使用的高速计数器最高计数速度是增幅模式为5KHZ;两相模式是非曲直1KHZ.I/0口分配及其线路
对于单脉冲输入的驱动器(脉冲输入和方向输入):
●一个输出点用作单脉冲输出,而另一个用作方向输出;
●脉冲输出点、方向输出点、以及原点输入点的I/O分配,由所选定的通
道来确定。
●原点接近开关信号,输入到所分配的输入点(如X2)时,置位(ON)
和清除(
*原点接近开关输入点可自由选择,例如X2。
<选CH0通道时>
*原点接近开关输入点可自由选择,例如X3。
<选CH1通道时>
对于双脉冲输入的驱动器(CW脉冲输入和CCW脉冲输入):
*当使用双脉冲输入的驱动器时,方向的切换开关必须由外部继电器完成。
*一个输出点被用作脉冲输出的方向切换。
*脉冲输出点和原点输入点的I/O分配取决于所使用的通道。
*将指令F168的控制码设置为“无方向输出”(参考“F168指令”)。
*X2或其他要求的输入口可定义为零点接近输入
**Y4或其它的输入口可用作继电器触发。
同时,继电器必须在所有动作之前切换。
<选CH0通道时>
使用双脉冲输入驱动器时应注意:
*不能直接把FP0的Y0和Y1直接与驱动器的CW和CCW输入口相连。
FP0 驱动器错误!
6.4.4脉冲输出功能使用的指令。
定位控制指令(F168) *
按照特定的数据表自动地完成梯形速度的定位控制。
从输出点Y0产生一个初始频率500Hz ,最高频率5000Hz 的脉冲,加/减速时间为200毫秒,移动距离为10000个脉冲的脉冲串。
此时高速计数器的经过值(DT9044和DT9045)增加。
注意:∙ 对于梯形速度的位置控制,设置的初始频率不能超过5000Hz 。
∙ 在执行指令F168时,若没有脉冲输出,请参考6-32页排除故障。
脉冲输出指令(F169)
X2
[ F0 MV ,H112,DT200
] [ F0 MV ,K300,DT201 ] [ F169 PLS ,DT200,H0
]
(DF ) [ F0 MV ,H102,DT100
] [ F0 MV ,K500,DT101 ] [ F0 MV ,K5000,DT102 ] [ F0 MV ,K200,DT103 ] [ F1 DMV ,K10000,DT104 ] [ F0 MV ,K0,DT106 ] [ F168 SPD1,DT100,H0
]
X3
* 当选定的输入点为ON 时,该指令输出一个脉冲串,执行点动(JOG )操作。
当X2为ON 时,Y0输出一个频率为300HZ 、占空比为10%的脉冲串。
此时,方向信号输出(Y2)为OFF ,且高速计数器CH0的经过值(DT9044和DT9055)增加。
当X6为ON 时,Y1输出一个频率为700HZ 、占空比为10%的脉冲串。
此时,方向信号输出(Y3)为OFF ,且高速计数器CH1(DT9048和DT9049)的经过值减少。
高速计数器控制指令(F0)
* 该指令被用作内部高速计数器的复位,停止脉冲输出,并设置或复位零点接近的输入。
* 指定该指令与特殊数据寄存器DT9052同时使用。
* 一旦该指令被执行,则其设置将保持,直到该指令再次被执行。
该指令可完成的操作:
X6
[ F0 MV ,H112,DT200 ] [ F0 MV ,K700,DT201 ] [ F169 PLS ,DT200,H1
]
●清除高速计数器指令F166到F170的控制。
●零点返回运行模式中,零点接近信号的处理。
X3
(DF)[ F0 MV,H4,DT9052禁止硬件复位 ] …①
[ F0 MV,H0,DT9052 不進行軟件复位] …②
《例1》在零点返回运行模式中,使能零点接近输入,并开始减速。
在上面的程序中,零点接近输入在第①步中置位,随后在第②步中置0,从而完成零点接近信号的设置。
X7
(DF)[ F0 MV,H8,DT9052停止脈沖清除指令]
[ F0 MV,H0,DT9052 ]
《例2》强制终止脉冲输出。
经过值修改和读取指令(F1)
*该指令用于读取内部高速计数器的脉冲数。
*定义该指令用于专门的数据寄存器DT9044。
*经过值以32位形式贮存在专用数据寄存器DT9044和DT9045中。
*可用F1(DMV)指令来设置经过值。
X7
(DF)[ F1 DMV,K3000,DT9044 ]
《例1》设置高速计数器的初始值为K3000(例如经过值的改变)。
X7
(DF)[ F1 DMV,DT9044,DT100 ]
《例2》读取高速计数器的经过值,并把它复制到DT100
《参考》每次次执行ED指令,经过值会自动地从经过值区域传送到专用数据寄存器DT9044和DT9045。
6.4.5位置控制例子
FP0
注意:当步进电机输入为5V光耦类型时,串入一个2KΩ,1/4W的电阻。
线路举例
当X1变为ON 状态时,Y0输出脉冲,同时,方向输出Y2为OFF 。
X1 R903A R12
R10 (
DF ) [ ]
位置动作运行
R10
R10 R11 (DF ) [ ] 位置动作开始
R11
[ F0 MV ,H102,DT100 ] [ F0 MV ,K500,DT101 ] [ F0 MV ,K5000,DT102 ]
[ F0 MV ,K200,DT103 ]
[ F1 DMV ,K10000,DT104 ]
[ F0 MV ,K0,DT106 ]
[ F168 SPD1,DT100,H0 ] R903A R10 T0 R12 (DF/) [ ] R12 TMX 10 0
(负向) (正向)
当X2变为ON 时,Y0输出脉冲,同时方向输出Y2为ON 。
绝对模式定位动作
X2 R903A R22
R20 (DF
)
[ ]
位置动作运行
R20
R20 R21 (DF )
[ ] 位置动作开始
R21
[ F0 MV ,H102,DT100 ] [ F0 MV ,K1000,DT101 ] [ F0 MV ,K6000,DT102 ]
[ F0 MV ,K300,DT103 ]
[ F1 DMV ,K-8000,DT104 ]
[ F0 MV ,K0,DT106 ]
[ F168 SPD1,DT100,H0 ] R903A R20 T1 R22 (DF/) [ ] R22 TMX 10 1
(负向) (正向)
300msec 300msec
X1 R903A R32
R30 (DF ) [ ]
位置动作运行
R30
R30
R31 (DF ) [ ] 位置动作开始
R31
[ F0 MV ,H112,DT100 ] [ F0 MV ,K1000,DT101 ] [ F0 MV ,K4000,DT102 ]
[ F0 MV ,K250,DT103 ]
[ F1 DMV ,K22000,DT104 ]
[ F0 MV ,K0,DT106 ]
[ F168 SPD1,DT100,H0 ] R903A R30 T3 R32 (DF/) [ ] R32 TMX 10 2
(负向) (正向)
原点返回动作(负向)
当X3为ON ,Y0输出脉冲,原点返回开始,同时,方向输出Y2为ON ;当X4为ON 时,减速开始;当X0为ON 时,原点返回结束(此时,当前值数据寄存器DT9044和DT9045清零)。
X3 R903A R42
R40 (DF )
[ ]
原点返回触发
R40
R40 R41 (DF ) [ ] 回原点运动开始
R41
[ F0 MV ,H123,DT200 ] [ F0 MV ,K100,DT201 ] [ F0 MV ,K2000,DT202 ]
[ F0 MV ,K150,DT203 ]
[ F168 SPD1,DT200,H0 ]
R903A R40 T3 R42
(DF/) [ ] 回原点结束 R42 TMX 10 3 X4 (DF ) [ F0 MV ,H4,DT9052 ] 原点接近,开始减速 [ F0 MV ,H0,DT9052 ]
(负向)
(正向)
X0 X4
原点 原点接近
原点接近开关 原点传感器
原点返回动作(正向)
当X3为ON ,Y0输出脉冲,并且原点返回开始,同时,方向输出Y2为
OFF ;当X4为ON 时,减速开始,当X0为ON ,原点返回结束(此时,当前值寄存器DT9044和DT9045清零)。
X3 R903A
R52
R50 (DF ) [ ]
原点返回触发
R50
R50 R51 (DF ) [ ] 回原点动作开始
R51
[ F0 MV ,H122,DT200 ] [ F0 MV ,K120,DT201 ] [ F0 MV ,K2500,DT202 ]
[ F0 MV ,K100,DT203 ]
[ F168 SPD1,DT200,H0 ]
R903A R50 T4 R52
(DF/) [ ] 回原点结束 R52 TMX 10 4 X4 (DF ) [ F0 MV ,H4,DT9052 ] 原点接近,开始减速 [ F0 MV ,H0,DT9052 ]
(负向)
(正向)
X0 X4
原点 原点接近
原点接近开关 原点传感器
JOG 动作(正向)
当X5为ON 时,Y0输出脉冲。
同时,方向输出Y2为OFF 。
JOG 动作(负向)
当X6为ON 时,Y0输出脉冲,同时,方向输出Y2为ON 。
X5
ON
(-)
(+) X5 OFF 电机 300Hz
Y0脉冲 0Hz
紧急制动(限位保护)
假如在Y0
输出脉冲时X7
由ON
变为OFF ,输出脉冲停止。
在执行指令F168(SPD1)而无脉冲输出时的查错流程
ON
(-)
(+) X6 OFF 电机 300Hz
Y0脉冲 0Hz
X7。