编码器测速

大家好!
 我目前有个问题关于S7-200(CPU224XP)的PLC,现在输入已经用到I1.2,I1.3-I1.5还没有用,用编码器测速,我没有在程序里编程过,不知道怎么写,有没有关于测速的LAD实例子。我的邮箱gph8199@sina.com;zgu@airsysco.com
 另外将测出的速度要一分钟的方式显示到触摸屏上。
 请大家帮助我!谢谢了!

最佳答案

一、定义高速计数器无外乎下面几个步骤:
 1、建一个初始化程序,用SM0.1控制;
 2、在初始化程序中,初始化高速计数器
 2.1 设置控制寄存器(HSC0为SMB37),不同的计数器对应不同的DI点,HSC0为I0.0,HSC3为I0.1,HSC4为I0.2,HSC5为I0.3(222不支持HSC1和HSC2)
 2.2 执行HDEF指令,你可以用模式0
 2.3 置计数器初始值(HSC0为SMD38),如果从零启动就置零
 2.4 置预置值(HSC0为SMD42),计数器计到这个值可以产生一个中断,一般利用这个中断调用相应的中断程序把当前值(SMD38)复零,否则计数器到头就不再计数了,当然你也可以置一个大点的值,在其他程序中清除当前值(SMD38),确保永远到不了头就可以了。
 2.5 指定中断程序(ATCH),中断事件是12,程序号看你程序了
 2.6 打开中断(ENI),这条指令没有的话,2.5是不起作用的
 2.7 启动高速计数器(HSC),按前面的初始化,你就要启动HSC0,即N为0
 3、程序中读取高速计数器的值,对于HSC0,HC0单元中的内容就是当前的计数值,这个单元只读不能写,你可以通过修改SMD38的内容改变当前的计数值。

 
 应用例子参见:
 http://www.cediy.com/webHtml/Article/bascs/498420060317075600.html

 
 二、1分钟显示在显示屏,也就是最后结果的单位要换算成“转/分”,不是1分钟刷新一次。

提问者对于答案的评价:
thank you for your help!

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc347573.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月4日
下一篇 2021年7月4日

相关推荐

发表回复

登录后才能评论