请教对编码器脉冲比较熟的

我的S7-200 挂了两个电机带编码器的  现在两个编码器怎么比较计数差值达到一个脉冲值的时候产生的状态位

问题补充:
现在电机速度是每秒 转10R  编码器是600P/r

最佳答案

电机速度是每秒 转10R  编码器是600P/r说明PLC输入接收的脉冲是6000P/S。你可以设定一个脉冲数值,不如达到10000个脉冲的时候就输出为1,同时复位计数器,复位计数器将重新计数,当然电机还是在转,只是重新计数而已或者继续计数。
可以采用向导来做高速计数器。
参考一下:
程序通过先设定计数器的值,本例中设定值为10;按设备启动按钮I0.1启动设备,运行后通过信号输入点I0.0进行计数,当计数当前值等于设定值10时,输出点断开,设备运行停止。I0.2为设备停止按钮。 程序如下:
LD     SM0.1 
MOVB   16#C8, SMB37 
HDEF   0, 0 
MOVD   +0, SMD38 
HSC    0 
上述程序注解:(1)对高数记数器HSC0初始化,写入控制字节(16#C8含义为:要求进行初始值设定;不装入预设值;运行中不要求更改计数方向;计数器类型为增。) (2)执行HDEF指令,进行高速计数器工作模式的选定设置(计数器为HSC0;模式为0) (3)初始值设定:装载高数记数器初始值为0 (4)执行HSC指令,写入HSC0设置。 LDN    M14.0 
EU MOVB   
16#C8, SMB37 
MOVD   +0, SMD38 
HSC    0 
上述程序注解:当记速值达到要求值时,M14.0复位,高速计数器计数将复位为初始值,以备下次计数使用。
 LDD<   HC0, +10
=      M14.0 
上述程序注解:当计数器值小于10 时,M14.0始终处于置位状态。
 LD     I0.1 
O      Q0.0 
AN     I0.2 
A      M14.0
 =      Q0.0 
上述程序注解:I0.1为设备启动信号;I0.2为设备停止信号。高速计数器累计值达到10 时,设备运行停止
参考链接:
http://www.ad.siemens.com.cn/service/answer/solved_89590_1028.html
《西门子 S7-200?LOGO!?SITOP 参考》V0.92版(更新版)(2008.02.15)     下载:
 http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=A0136

高速计数器的使用方法,连接:
http://blog.sina.com.cn/s/blog_5d7ca9d90100cesx.html

http://www.plc100.com/siemens/shili/yingyong.htm 

一个高速计数器的例子:
LD     SM0.1
MOVB   16#FC, SMB37
HDEF   0, 9
MOVD   VD100, SMD38
MOVD   16#FFFFFFFF, SMD42
ATCH   长度到达:INT1, 12
ENI
HSC    0
使用时将HSC0的值做相应的计算;比较。


可参考:
http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=60718_1028.html
参考资料:http://www.ad.siemens.com.cn/service/answer/solved_79333_1028.html

提问者对于答案的评价:
试了下不断中断的话可以实现就是有误差

专家置评

已阅,最佳答案正确。高速计数器记值是不走扫描周期的,那么进行两个高速计数器差值比较,容易产生误差。建议使用大于等于作为比较条件。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日 下午1:16
下一篇 2020年10月31日 下午1:16

相关推荐

  • 求教:怎样让S7200运行几个月后自动停下来程序不再能执行

    公司为了要工程余款,想让程序执行几个月后自动停止运行,请问那位大哥、大姐这样做过向小弟指教一下。 最佳答案 呵呵,在PLC柜里面放进去一只老鼠,一个月后饿的不行就会把线咬断,系统就…

    SIMATIC S7-200 2021年7月5日
  • CPU 224XP模拟量问题

    使用224XP 带一路模拟量输出,我想用个时间来控制输出电压,一开始一按键改路输出为2V,3S定时后输出为4V,再过两秒后停止输出。等下次再按键又走这样一个循环,可以实现…

    SIMATIC S7-200 2017年11月25日
  • S7-200与6RA70通讯

    我以前做过PROFIBUS-DP网络,一台PLC连接多台6RA70,用DP连接器连就可以了,只需要设置下DP连接器的终端电阻开关就行了,通讯布线比交简单。现在用USS通讯协议连接,…

    SIMATIC S7-200 2021年7月5日
  • 关于s7-200PLC的高速计数器的使用问题

    怎样使高速计数停止计数后,再通过一个条件重新再启动高数计数器。要求停止前的数据不清零,再启动时从停止前的数据开始计数。请各位大侠给出个主意。 最佳答案 可以使用有启动端子的高速计数…

    SIMATIC S7-200 2018年12月3日
  • S7-200高速计数器,编码器计算 长度和速度?

    S7-200高速计数器,编码器计算 长度和速度;目前采用的HSC0和9模式,A相I0.0,B相i0.1,计算长度呢一般采用脉冲计数,而速度呢又需要采用中断,中断了,前面的…

    SIMATIC S7-200 2020年11月5日
  • 西门子S7200

    请问哪位大哥有深入浅出西门子S7200PLC这本书,有的请发给我一份好吗?我的邮箱是mingfeng1981@126.com谢谢! 问题补充:我主要是想了解一下,在300里面模拟量…

    SIMATIC S7-200 2021年7月5日
  • PLC数据线

    谁知道S7-200 PLC CPU与扩展模块EM222连接数据线 订货号   另外还有S7-200 PLC下载…

    SIMATIC S7-200 2020年11月1日
  • S7200在数据块中给VD的值与程序中显示值不一样

    请问S7200在数据块中给VD赋的值与程序运行中显示的值不一样是回事?而且如何使用VD给定设定值与过程变量值进行比较?需要单独写程序把两个数据转换成一致后再处理吗?谢谢大家! 问题…

    SIMATIC S7-200 2017年7月25日
  • STEP 7-MicroWIN SMART安装

    我在安装STEP 7 MicroWIN SMART V2.3.0.2的过程中出现程序自动关闭窗口,并一直停留在那里,此时程序应该还没有安装完…

    2021年7月5日
  • s7-226cn自由口通讯的问题

    我用s7-226cn与电机保护器通讯,通讯协议是modbus的,保护器与pc串口调试可以收发信息,用plc发送指令,保护器可以动作,但plc接受不到数据(保护器是485通讯的&nb…

    SIMATIC S7-200 2021年7月5日