分享

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

 PLC发烧友 2021-01-22
导读:本案例主要让读者练习西门子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.0

L1指示灯

Q0.0

停止按钮

I0.1

L2指示灯

Q0.1



L3指示灯

Q0.2



L4指示灯

Q0.3



L5指示灯

Q0.4



L6指示灯

Q0.5



L7指示灯

Q0.6



L8指示灯

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-7

04
左中括号
【程序控制程序】
左中括号

(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

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多