收藏本页 电工之家_电工基础知识学习网站
当前位置:电工之家 > plc > 西门子plc > 正文

西门子S7300用异或指令实现一键启停

时间:2017-08-27 08:31 来源:电工之家

西门子S7300用异或指令实现一键启停
对于一个学过电子技术中门电路的童鞋来讲,异或逻辑运算应该有所了解,其口诀为:相同出0,相异出1。

那么我们就来实际运用下,首先是程序结构

OB100在程序运行初期执行,且只运行一次。是用来对MD10进行数据清除,避免干扰,保证MD10的初始值为0,这里采用语句表的方式比较简单。

在OB1中编写主程序

这样MD10的初始值为0,按下I0.0,M0.0给个脉冲,异或指令运行一次,MD10中的0经过与1异或运算则输出MD10为1,这样再次按下I0.0,MD10中的1与常数1异或运算,则输出为0。那么就可以通过多次给双字异或指令,保证MD10的值在0和1之间变化。最后用MD10来控制Q0.0的输出。
最后在程序段3中,为什么用的是M13.0呢?因为在300的PLC中异或指令的输入格式为双字(DWORD),那么就是32位,即4个字节。则MD10包含M13.0~M10.7这32位(M10、M11、M12、M13四个字节),同时M13.0在最低位。那么我们需要的就是最低位的值。

1
2
3