23. 测量脉冲的频率,频率测量方案设计

许多功能模块可用来测量频率,如EL2262EL1262EL1252EL1008EL5101,EL5151,KL3403KL5101KL5111KL5151,但是它们所测量的频率范围各不相同

测量频率方案

信号源

运用EL2262带超采样的数字量输出模块产生不同频率的脉冲信号。

通过改变程序中nPluse的值,可以改变输出信号的频率;(1PLC运行时间产生1000/nPluse个脉冲)

方案一、用EL1008(8通道的数字量输入模块)测量频率;

步骤:

1、将EL2262的输出通道与EL1008模块的相应输入通道连接;

2、将模块连接到总线耦合器上,将耦合器与控制器通过ETHERCAT连接

3、将变压器的24v输出接入到模块通道中,将变压器接入到220v 50hz的交流电源中。   

4、启动控制器和总线耦合器,进行实验。

 

总结:

EL1008 的滤波时间为 3msTask 1ms时,实际测得的最高信号频率为72Hz

 

方案二、EL5101(增量编码器接口端子模块)测量频率;

EL5101 可以通过A相通道来采集频率:

EL5101 可以采集A相通道的频率,勾选0x1A03 0x1A05,就会出现过程数据Frequency value

8000:03 改为 TRUE

config模式下 ,reload IO 一次。

激活配置,运行程序,Frequency value即为A相脉冲的频率,单位为 0.01Hz

1

总结:

在本次实验中,EL2262产生的任何频率的信号都能够被EL5101准确测量。

 

方案三、EL5151(增量编码器接口端子模块)测量频率;

EL5151 可以通过A相脉冲测量频率:

EL5151 可以测量A相脉冲的频率。 与KL5151不同的是过程数据可以直接提供频率值,在Process Data 选项卡直,勾选0x1A00 0x1A03.

修改 800003 True过程数据中就会有 Frequency value,数值单位为 0.01Hz。与KL5151相比多了频率测量功能。

总结:

在本次实验中,EL2262产生的任何频率的信号都能够被EL5101准确测量。

 

方案四、KL3403(三相电力测量端子模块)测量频率;

总结:

KL3403 必须用正弦波信号作为测试源,方波信号作为信号源,测频率误差很大。

 

 

方案五、KL5101(增量编码器接口端子模块)测量频率;

KL5101可以通过设置KS2000来测量频率:

KS2000中对KL5101 频率测量模式设置

KL5101A5V 信号源,A- 接信号源地。

System manager中把KL5101扫描上来之后 改为KL5101_F .

程序下载后,把CTRL 写为2.

上图中为信号频率为50kHz时,KL5101模块采集到的频率值:50505.05 Hz

下图为示波器实测的频率。

100kHz时,KL5101采集到的值为 102040.8 Hz

20kHz 时,KL5101采集到的值为 20080.32 Hz

总结:

KL5101测量频率的范围广,而且精度较高;在本次实验中,EL2262产生的任何频率的信号都能够被KL5101准确测量。

 

 

方案六、KL5111(增量编码器接口端子模块)

KL5111 可以通过2种方法测量频率

方法一:与KL5101类似

1、出厂默认设置即可

2、对控制字写2.

3、Period的数值为2个脉冲之间的周期值,数值的单位 200ns

4、这种测量方式的优点响应速度快。测量值的稳定性不如方法二。

方法二:

1、KS2000中做如下设置

2、直接读取Latch/PeriodL的值,在100ms Frequency Windows测量模式下,此值除以100即为 kHz 频率值。例如此值为250,那么即为2.5kHz

3、最高测试到166kHz

4、这种测量模式的原理是 采集100ms内的脉冲数量进行频率计算,此计算在模块内完成,测量较为准确,不占用CPU资源,缺点是100ms才更新一次频率值。

 

 

 

方案七、KL51512通道增量编码器接口模块)测量频率;

步骤:

1、用EL2262 模拟编码器输出信号,使2通道输出滞后1通道输出90度。

IF (nIdx+(nPluse/4))<=CnEL2262ovs THEN

abEL2262_Ch2_Output[nIdx] :=abEL2262_Ch1_Output[nIdx+(nPluse/4)];

ELSE

abEL2262_Ch2_Output[nIdx] :=abEL2262_Ch1_Output[nIdx+(nPluse/4)-CnEL2262ovs];

END_IF

2、在程序中通过固定时间段内的增量来换算出频率。

TON1(IN:=NOT ton1.q , PT:=t#1s , Q=> , ET=> );

IF ton1.Q THEN

IF (Counter1-Counter1_old)<16#FFFFFFTHEN(*计算未溢出的数据,丢弃溢出时的那组数据*)

Frequenz:=(Counter1-Counter1_old)/4;(*除以4是因为KL5151 AB信号的上升沿和下降沿都计数,即是4-fold evaluation*)

END_IF

Counter1_old:=Counter1;

END_IF

总结:

KL5151 必须接编码器,不能只接1路脉冲信号。也没有Period 和 Frequency Windows测量模式。最大可测频率100khz.

 

 

 

方案八、EL1262(带超采样的数字量输入模块)测量频率;

步骤:

1、将EL2262的输出通道与EL1262模块的相应输入通道连接;

2、将模块连接到总线耦合器上,将耦合器与控制器通过ETHERCAT连接

3、将变压器的24v输出接入到模块通道中,将变压器接入到220v 50hz的交流电源中。   

4、启动控制器和总线耦合器,进行实验。

总结:

EL1262测量频率的范围广,而且精度较高;在本次实验中,EL2262产生的任何频率的信号都能够被EL1262准确测量。

 

 

 

方案九、运用EL1252(待时间戳的数字量输入模块)测量频率;

利用时间戳计算每2个相邻脉冲的时间间隔,计算出电机当前的转速。

总结;

EL1252测量频率的范围广,而且精度较高;