说说200 smart高速计数器的计数2

已锁定

WWCWWC

西门子1847工业学习平台

  • 帖子

    9114
  • 精华

    157
  • 被关注

    1474

论坛等级:至圣

注册时间:2008-07-26

钻石 钻石 如何晋级?

说说200 smart高速计数器的计数2

1040

7

2016-12-21 10:02:12

说说200 smart高速计数器的计数2

  上文说到编写西门子200 smart PLC采用直接编程方式编写测试例子程序,及编写类似程序中需要注意的关键问题。今天再来编写一个模拟主轴位置程序,假设,仍然使用旋转编码器货号:koyo TRD-2T1000BF模拟一个假象的主轴,该旋转编码器转动一周产生1000个脉冲,通过高速计数器读取到高速脉冲转换为-360~360度的位置值,其中正、负符号表示主轴方向。

编写该程序的思路:使用高速计数器号HSC0

初始化高速计数器:

1)  设置控制字节SMB37 = 16# F8

2)  设置当前值SMD38 = 0

3)  设置预设值SMD42 = 360

4)  定义高速计数器模式:HSC0模式9

5)  开改变方向中断,中断事件号27(目的是监控SM36.5的值)

有网友提问该位的状态含义

6)  开中断

7)  启用高速计数器HSC0

主程序调用初始化,当高速计数器的当前值大于360时,重新写入0值;同样,当高速计数器反转当前值小于-360时,重新写入0值。这样让高速计数器转换始终在-360~360的脉冲数据复范围内作正、负方向的位置显示,当然实际应用还需要进行编码器与实际主轴的减速比关系,为方便理解这里不再作转换控制的程序。

程序:

初始化高速计数器:



主程序调用:



当高速计数器大于360或者小于-360时,重新清0:



改变方向中断检测程序:也可以直接监控标志位SM36.5的状态



编译、保存程序,连接外部编码器及plc电源,上电测试,新建“状态图表”,图示:

当增计数时:SM36.5 = 1


当减计数时:SM36.5 = 0


高速计数器显示在-360~+360之间变化的数据。

上次在回复网友提问中没有详细说明该位的含义,该位状态只有在调用“改变方向”中断时,与文档的说明一致显示为加(增)计数时=1,减计数时=0。当调用“当前值等于预设值”中断时,该位当前值等于预设值时=1,大于预设值仍然=1。

帮助文档,图示:



说说200 smart高速计数器的计数2 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8947条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。