技术论坛

跟我一起玩200 smart PLC---- 沿的比较使用

作者 主题
至圣

经验值: 72011
发帖数: 8043
精华帖: 145
主题:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 楼主 2017-01-20 11:30:01

跟我一起玩200 smart PLC

沿的比较使用

  前些天有网友提问,西门子200是否具有类似与第三方PLC编程中的“PLS”上升沿指令类似的指令应用?本人看了这个贴子,思考后回复:“如果用西门子200PLC编程可以使用200的沿指令,只是沿的个数是根据PLC型号的不同是有所区别和限制的”。

问题链接:【S7-200一个周期脉冲变量】

http://www.ad.siemens.com.cn/service/answer/tobe_solution.aspx?Q_ID=153826&cid=1076

   第三方编程指令,“PLS”指令是指上升沿指令的应用,当触发这个指令时,有一个周期的接通过程,我用第三方软件模拟了一个上升沿指令被触发的过程,图示:


当X0接通的本周期,触发“PLS”指令并以M0做沿触发的表记,结果仍然存放在M0标志位中,再由这个标志位置位Y0,Y0仅仅是验证上升沿是否有作用,从时序图中可以看出,M0有效地置位了Y0,沿触发有效。

假设,我变更一下指令在程序中的位置关系,看沿是否仍然有效,图示:


上升沿M0标志位仍然有效,只是需要经过一个周期才能置位Y0。

   回过头来看西门子200,因没有200的实体PLC作验证工具,故用200 smart PLC替代来验证结果。编辑一个简单的控制程序,看输出V0.1是否有一次周期的触发,图示:

打开“状态图表”中的“趋势视图”,监控程序变量状态。


 

V0.1有被上升沿触发的次数在VB10被记录,上述程序验证了上升沿触发INC_B指令的过程。

仍然改变程序的结构,再看上升沿触发的效果,图示:


验证结果,仍然再次被触发,并在VB10中记录了被触发的次数。

V0.1没有看到上升沿触发的原因是无法将趋势视图的监控时间调整为1mS级或更小时间,时基单位只能从1/4秒 ~ 5分钟选择。

小结:

   2款小型PLC均具备有沿触发的作用,沿的概念是一致的,无论是上升沿还是下降沿。想要使沿触发有效,必须产生一个高、低脉冲的跳变,并保持有一定的脉冲宽度时间。

不知道什么版本的软件开始(修改指令的版本不详),第三方PLC的上升沿、下降沿早已经被直接使用沿触点指令所替代,如上升沿指令“PLS”被“︱↑∣”;下降沿指令“PLF”被“∣↓∣”替代了。

   西门子S7-200及S7-200 smart PLC还具备外部输入作线圈的作用,而第三方PLC不支持该功能。图示:线圈地址用输入“I”地址替代。


当接通M0.0后,通过上升沿激活I0.0地址作为线圈,INC_B指令仍然执行加1指令。

反过来,改变程序结构,看INC_B指令是否仍然被执行,图示:


测试结果,当程序结构改变后,网络段1的INC_B指令不被执行了,VB0没有数据。用户在实际应用该类型的程序时,需要注意程序在网络段中位置的逻辑关系。



 
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1364693&b_id=64&s_id=0&num=8

至圣

经验值: 19840
发帖数: 8834
精华帖: 39
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 1楼 2017-01-20 15:47:19

最后一个INC不被执行是因为在扫描周期的开始 I 区被系统刷新了


 
以下网友喜欢您的帖子:

  
版主

经验值: 25998
发帖数: 11809
精华帖: 43
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 2楼 2017-01-20 23:29:30

W,最后一个用I来作例子,有点极端。I区是个特别区,与普通的变量区有区别的。原因如shine所言。


 
以下网友喜欢您的帖子:

  
侠士

经验值: 1154
发帖数: 232
精华帖: 0
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 3楼 2017-01-21 15:38:09

感谢分享,楼主辛苦了!这个“一个扫描周期的脉冲”其长度是否 = "从产生脉冲的指令往下开始 到 本条产生脉冲指令相邻上边一条指令为止" ; 也就是说一个脉冲长度其作用域可以是跨脉冲扫描周期的。


雨过分洼种瓜,旱时饮水浇麻。
以下网友喜欢您的帖子:

  
至圣

经验值: 67550
发帖数: 14784
精华帖: 100
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 4楼 2017-01-27 23:25:36

没有被代替。

pls;plf是线圈指令。

上跳变触点;下跳变触点是触点指令。

两者互相不递属,是两种完全不同概念的指令。

相同的只是他们都是围绕能流的边缘处做文章。

程序中出现很多个一样的pls指令的时候,就是双线圈。但是出现很多个上跳变指令是没问题的。而200的两个P和N指令既不等同plsplf,也不等同跳变触点。西家的是对当前能流的判断。而那个是对当前所属触点的判断。

两种品牌之间翻译的时候你就知道是不同的了。


 
以下网友喜欢您的帖子:

  
至圣

经验值: 67550
发帖数: 14784
精华帖: 100
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 5楼 2017-02-06 13:06:11

第一行和第三行功能达成一致。

第二行功能有异于其他两行。

只有第三行可以直接翻译成200的程序。

200并没有第一第二两行对应的指令。




 
以下网友喜欢您的帖子:

  
侠士

经验值: 1440
发帖数: 57
精华帖: 0
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 6楼 2017-02-10 09:57:16

需要慢慢研究


 
以下网友喜欢您的帖子:

  
侠士

经验值: 1747
发帖数: 258
精华帖: 3
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 7楼 2017-02-20 21:51:08

确定用I当线圈好使吗 那外面来了这个信号又怎么算


相互学习 共同进步
以下网友喜欢您的帖子:

  
版主

经验值: 25998
发帖数: 11809
精华帖: 43
回复:跟我一起玩200 smart PLC---- 沿的比较使用


只看楼主 8楼 2017-02-21 00:25:44

凡是可写的位变量都可以当线圈。

I区是可读可写的。


 
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
跟我一起玩200 smart PLC---- 沿的比较使用
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。