常用的编码器测速方法
常用的编码器测速方法有三种:M法、T法和MT法。
M法:又叫做频率测量法。这种方法是在一个固定的计时周期内,统计这段时间的编码器脉冲数,从而计算速度值。设编码器单圈总脉冲数为C,在时间T0内,统计到的编码器脉冲数为M0,则转速n的计算公式为:n = M0/(C*T0)。
M法是通过测量固定时间内的脉冲数来求出速度的。
假设编码器转过一圈需要100个脉冲(C=100),在100毫秒内测得产生了20个脉冲,则说明在1秒内将产生200个脉冲,对应的圈数就是200/100=2圈,也就是说转速为2圈/秒。通过公式计算n = 20/(100*0.1)=2。与前边分析的结果一致。
也可以这样理解,转过了M0/C=20/100=0.2圈,用时0.1秒,那么1秒将转0.2*10=2圈。
M法在高速测量时可以获得较好的测量精度和平稳性。但是如果转速很低,低到每个T0内只有少数几个脉冲,则此时计算出的速度误差就比较大,且很不稳定(因为开始测量和结束测量的时刻最多会引入2个脉冲的误差)。
使用编码器倍频技术,可以改善M法在低速测量时的准确性。
增大计数周期,即增大T0,也可以改善M法在低速测量时的准确性。
以上两种方法本质都是增大一个计数周期内的脉冲数,从而减小2个脉冲误差的占比。
T法:又叫做周期测量法。这种方法是建立一个已知频率的高频脉冲并对其计数,计数时间由捕获到的编码器相邻两个脉冲的时间间隔Te决定,计数值为M1。设编码器单圈总脉冲数为C,高频脉冲的频率为F0,则转速n的计算公式为:n = 1/(C*Te) = F0/(C*M1)。Te = M1/F0。
T法是利用一个已知脉冲来测量编码器两个脉冲之间的时间来计算出速度的。
假设编码器转过一圈需要100个脉冲(C=100),则1个脉冲间隔为1/100圈,用时为Te(假设为20毫秒),那么1圈用时就是100*20/1000=2秒,也就是说转速为0.5圈/秒。而这20毫秒(Te)间隔,正好对应M1/F0。
在电机高转速的时候,编码器脉冲间隔时间Te很小,使得测量周期内的高频脉冲计数值M1也变得很少,导致测量误差变大,而在低转速时,Te足够大,测量周期内的M1也足够度多,所以T法和M法刚好相反,更适合测量低速(同样存在开始测量和结束测量时刻的最多2个脉冲的误差)。
M/T法:综合了M法和T法各自的优势,既测量编码器脉冲数,又测量一定时间内的高频脉冲数。在一个相对固定的时间内,计算编码器脉冲数M0,并计数一个已知频率F0的高频脉冲,计数值为M1,计算速度值。设编码器单圈总脉冲数为C,则转速n的计算公式为:n = F0*M0 / (C*M1)。
由于编码器单圈总脉冲数C与高频脉冲频率F0为固定值(常数),因此转速n就只受M0和M1的影响。电机高转速时,M0增大,M1减小,相当于M法;电机低转速时,M1增大,M0减小,相当于T法。
————————————————
版权声明:本文为CSDN博主「蓝天居士」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/phmatthaus/article/details/121235828
PLC电气工程师们,西门子1200 PLC怎样实现编码器测速?
【导读】
PLC电气工程师们,西门子1200 PLC怎样实现编码器测速?如果你还不知道答案,请接着往下看,由小编来给你进行介绍。
西门子S7-1200 PLC能够通过连接编码器来测量电机的转速,测速的方法主要有两种。一种是利用高速计数器直接读取编码器的频率,另一种是使用循环中断在固定时间间隔内计算脉冲数量。下面将详细阐述如何通过这两种方法实现西门子S7-1200 PLC的编码器测速功能:
1、使用高速计数器测量编码器转速
1)硬件接线:需要将编码器的A相接入I0.3,B相接入I0.4,Z相接入I0.5。
2)调整输入滤波时间:在PLC的“属性”>“常规”>“DI14/DQ10”>“数字量输入”页面,要调整I0.3和I0.4的滤波时间。滤波时间的调整需要根据实际测量时的转速范围进行匹配。如果滤波时间过长,在转速很快的情况下可能会出现丢失脉冲的情况。默认滤波时间为6.4millisec,根据需要可以将这个数值减小。
3)组态高速计数器HSC1:在博图软件中对高速计数器HSC1进行组态,计数类型选择“计数”,工作模式选择“A/B计数器”,初始计数方向选择“加计数”。时钟发生器A的输入选择“I0.3”,时钟发生器B的输入选择“I0.4”。
4)创建变量并编写程序:在OB1中调用CTRL_HSC_EXT指令,并创建循环中断。循环时间设置为200ms。在循环中断内,每隔200ms读取一次HSC1的计数值,并将其赋值给MD200,然后将高速计数器清零。接着,将MD200的值除以循环间隔0.2s得到频率(脉冲/秒),再除以500脉冲得到转速(转/秒)。最后,将转速乘以60得到转速(转/分钟)。
2、利用循环中断测量编码器转速
1)创建数据块:新建一个DB块,在其中定义一个HSC_Count类型的变量。这个变量将用来存储高速计数器的当前计数值。
2)编写程序:在OB1中调用CTRL_HSC_EXT指令。在循环中断中,每隔一个固定的时间(例如:200ms)读取一次HSC1的计数值,并将其存储在定义的变量中。然后,将这个值清零,并开始下一个循环。
此外,在了解上述两种方法后,还需注意以下几点:
1)确保编码器的输出信号与PLC的输入信号相匹配,以避免信号丢失或误读。
2)正确设置滤波时间,以保证在高转速下也能准确读取脉冲信号。
3)使用高速计数器时,要注意其工作模式和计数类型的配置。
4)当使用循环中断进行测速时,中断时间的设置将直接影响到测速的精度和反应速度。
总的来说,通过上述两种方法,可以实现西门子S7-1200 PLC的编码器测速功能。这些方法不仅适用于简单的转速监测,也可以集成到更复杂的运动控制系统中,为实现精准的速度控制提供重要数据。在实施过程中,应确保硬件接线正确无误,软件配置合理,以便得到稳定可靠的测速结果。
【备注:】
今天的解说就到这里了,如果你对PLC编程有兴趣,可以+V:(18058717751) 欢迎与小编进行技术交流、学习,记得点赞、留言,转发,让更多的朋友们看到。
相关问答
编码器测速 算法?常用的编码器测速方法有三种:M法、T法和MT法。1.M法:又叫做频率测量法。这种方法是在一个固定的计时周期内,统计这段时间的编码器脉冲数,从而计算速度值。设...
编码器 怎么 测速 _汽配人问答[最佳回答]编码器一般与轴相联,编码器的脉冲量是固定的,在轴旋转的时候,编码器就会输出脉冲,PLC或计数器收到脉冲,根据轴转的速度不同时,在单位时间内收到的脉...
信捷plc如何用 编码器测速 求大神们指点?编码器一般与轴相联,编码器的脉冲量是固定的,在轴旋转的时候,编码器就会输出脉冲,PLC或计数器收到脉冲,根据轴转的速度不同时,在单位时间内收到的脉冲总量是不...
急求:用PLC200的高速计数器,和 编码器测速 ?用高速记数来记编码器的信号!信号转换成速度!编码器没用过!啊哈哈!高速计数器编程200是用向导来产生子程序哈!就是这样子的哟!用高速记数来记编码器的信号!...
编码器 速度计算公式?编码器一个脉冲对应的长度M=π*R/脉冲数=3.14*150*1600=0.294375mm如长度是2000mm,编码器输出脉冲数=2000/0.294375=6794(只能是整数个)主轴的转速要...
码表传感器怎么测量?码表传感器是一种用于测量旋转角度或线性位移的传感器。常见的码表传感器有旋转编码器和线性编码器两种。以下是测量码表传感器的方法:1.旋转编码器的测量方...
海德汉检测仪怎么检测 编码器 ?打开电脑之后,点击打开海德汉检测仪点击鼠标左键打开上面的编程码就能检测编码器打开电脑之后,点击打开海德汉检测仪点击鼠标左键打开上面的编程码就能检测...
急问:旋转 编码器 的信号线与 单片机 的接法?, 编码器 信号线性价...[回答]纽斯德浦电气系统科技(无锡)有限公司从模具设计,模具制造,注塑到组装,我们有完整的设计和生产能力。并且具有高频电容测量能力,通过TDR或网络分析仪...
通力 编码器 和 测速 机区别?通力编码器和测速机属于不同的设备,具有以下区别:1.功能不同:通力编码器主要用于测量位置、角度、速度等物理量,其输出信号一般为数字信号或模拟信号;而测...
五线 编码器 怎样检查好坏?万用表电压档测试时,编码器为NPN输出,测量电源正极和信号输出线,晶体管置ON时输出电压接近供电电压,晶体管置OFF时输出电压接近0V。相应的测量电源负极和信...