【西门子案例】西门子PLC控制彩灯项目

导读:本案例主要让读者练习西门子S7-200SMART系列PLC位逻辑指令、定时器、移位指令、子程序的结构等。

01左中括号【控制示意图】左中括号如图3-1所示为彩灯控制示意图。

图3-1 彩灯控制02左中括号【控制要求描述】左中括号现有L1-L8共8盏彩灯,要求按下开始按钮,霓虹灯L1-L8以正序每隔1S轮流点亮,当L8亮后,停2S;然后,反向逆序间隔1S轮流点亮,当L1再亮后,停5S,重复上述过程。按下停止按钮,彩灯停止工作。03左中括号【I/O分配】左中括号根据控制要求描述对需要用到的I/O进行分配,如图3-2所示:符号名称地址符号名称地址启动按钮I0.0L1指示灯Q0.0停止按钮I0.1L2指示灯Q0.1L3指示灯Q0.2L4指示灯Q0.3L5指示灯Q0.4L6指示灯Q0.5L7指示灯Q0.6L8指示灯Q0.7图3-2 I/O分配表【相关指令解读】:此案例主要用到移位指令和其它指令配合,这里主要解读移位指令。循环左移字节(图3-2):循环移位指令将输入值 IN 的位值循环左移位,位置循环移位计数 N,然后将结果装载到分配给 OUT 的存储单元中。循环移位操作为循环操作。

图3-2:循环左移字节举例说明1:程序如图3-3,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据左移一位,Q0.1变为1。

图3-3举例说明2:程序如图3-4,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据左移二位,Q0.2变为1。

图3-4循环右移字节: 如图3-5,循环移位指令将输入值 IN 的位值循环右移,位置循环移位计数 N,然后将结果装载到分配给 OUT 的存储单元中。循环移位操作为循环操作。

图3-5:循环右移字节举例说明1:程序如图3-6,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据右移一位,Q0.7变为1。

图3-6举例说明2:程序如图3-7,利用系统时钟SM0.1第一个扫描周期给QB0字节中赋值为1,此时QB0中最低位(Q0.0)为 1。当按下I0.0按钮后,QB0字节中的数据右移二位,Q0.6变为1。

图3-704左中括号【程序控制程序】左中括号(1)主程序,对数据初始化,调用相关子程序。M1.0接通代表左移位开始,左移开始之前,将1赋值给QB0。M1.2接通代表右移开始,将128给到QB0,   Q0.7为1。程序如图3-8所示

图3-8主程序(2)循环子程序主要控制灯是启停和循环。按下启动按钮,左移开始标志位M1.0自锁,总共移7位,定时时间为7秒,左移完成断开M1.0延时2秒接通右移标志位M1.2。右移完成延时5秒接通M1.0左移开始标志位,形成循环。程序如图3-9所示

图3-9循环程序(3)左移程序,利用移位指令和系统时钟配合。程序如图3-10所示

图3-10左移程序(4)右移子程序程序,利用移位指令和系统时钟配合。程序如图26-6所示

图3-11右移程序结束语:本案例采用子程序的结构编程,并且结合循环指令、定时器指令等编写彩灯循环案例。希望大家能在此文章中汲取西门子200SMART PLC编程相关知识及理念。来源:PLC发烧友,作者:郭彪。转载请注明出处!评论处大家可以补充文章解释不对或欠缺的部分,这样下一个看到的人会学到更多,你知道的正是大家需要的。。。

(0)

相关推荐