登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:求助!梯形图转换语句表问题

点击:2411 回复:3

小弟最近看书时,发现个问题搞不懂!望老大们赐教!梯形图如图所示,上面的梯形图的指令语句表为
              0       LD    X000
              1       OUT  M0
              2       AND  Y000
              3       OUT  Y004  
而下面的梯形图指令语句表为
              0       LD    X000
              1       MPS        
              2       AND  Y000
              3       OUT  Y004  
              4       MPP
              5       OUT  M0
附件
小弟想问,为啥实现同样的功能,第一个指令表不用出栈入栈,而第二个则用,两者差别在哪,写指令语句表时要注意些什么!谢了先!
10-07-06 09:39
附件
不好意思,图弄反了,梯形图和指令表的对应关系应该是下图对上表,上图对下表!
10-07-06 09:44
因为PLC的程序执行顺序是从左往右,从上到下。基于这个特性,因此必须保留相关数据。
0       LD    X000    //X0的值送入寄存器1
1       OUT  M0      //寄存器1的值送入M0
2       AND  Y000   //将Y0的值送入寄存器1,原先X0的值送入寄存器2
                          //做与运算,结果送入寄存器1中,原先寄存器1中的Y0的值送入寄存器2
                          //原先在寄存器2中的X0的值被抛弃。
3       OUT  Y004   //将寄存器1的值送入Y4。  
而下面的梯形图指令语句表为
0       LD    X000   //将X0的值送入寄存器1
1       MPS           //将寄存器1的值进栈,用以保留X0的状态。        
2       AND  Y000 //将Y0的值送入寄存器1,原先X0的值送入寄存器2
                          //做与运算,结果送入寄存器1中,原先寄存器1中的Y0的值送入寄存器2
                          //原先在寄存器2中的X0的值被抛弃。
3       OUT  Y004   //将寄存器1的值送入Y4。
4       MPP            //出栈,将X0的值从栈中送入寄存器1
5       OUT  M0    //将值送入M0
实际上,如果使用西门子的PLC,那么会比较清晰,RLO(逻辑运算结果)是掌控一切,或者对于汇编有所了解的话也会习惯于寄存器间的赋值与运算。
相反,着重于梯形图的话不需要对这些概念有着过于清晰的理解。
Regards
10-07-06 10:25
呵呵;这就是编程技巧;
最后修改:2010/7/6 10:40:12
10-07-06 10:39

工控新闻

更多新闻资讯