[西门子] 博途S7-300神奇的指示灯控制程序

[复制链接]
查看139 | 回复0 | 2024-5-27 22:15:12 | 显示全部楼层 |阅读模式
说到指示灯控制,大家肯定第一时间想到,走马灯、交通灯等!但不知道大家有没有想过使用偶数奇数来控制指示灯呢?比如Q0.0—Q0.7这8个位我让它以奇数偶数的形式点亮,偶数点亮是Q0.0/Q0.2/Q0.4/ Q0.6,奇数点亮是Q0.1/Q0.3 /Q0.5/ Q0.7,以及高低位方法。

01一学习目的本文章是运用S7-300字逻辑运算指令来完成程序设计,此目的让大家对字逻辑运算指令了解和运用。






02控制要求有8盏指示灯,当按下按钮I124.0时,偶数灯亮,当按下按钮I124.1奇数灯亮,当按下按钮I124.2高四位灯亮,当按下按钮I124.3低四位灯亮。



03IO分配表




04组态配置第一步:(点击添加新设备,选择CPU 315-2 DP版本号根据实际版本来设定,点击确认)



第二步:(项目树—PLC变量创建一下变量地址)




05设计程序

在OB1主程序编写程序,如下图所示:
程序段1:(偶数灯的控制Q0.0/Q0.2/Q0.4/ Q0.6)



程序段2:(奇数灯的控制Q0.1/Q0.3 /Q0.5/ Q0.7)



程序段3:(高四位灯的控制Q0.7/Q0.6 /Q0.5/ Q0.4)



程序段4:(低四位灯的控制Q0.3/Q0.2/Q0.1/ Q0.0)



程序段5:(复位Q0.0/Q0.1/Q0.2/ Q0.3/Q0.4/Q0.5/Q0.6/Q0.7)




06演示效果程序段1:(当偶数灯按钮I124.0按下时,将W#16#00FF与W#16#0055按位相与的关系,结果存放到MW10(W#16#0055),取MW10的低八位(MB11)传送到QB124,从而形成偶数灯亮)




程序段2:(当奇数灯按钮I124.1按下时,将W#16#0与W#16#00AA按位相或的关系,结果存放到MW10(W#16#00AA),取MW10的低八位(MB11)传送到QB124,从而形成奇数灯亮)




程序段3:(当高四位按钮I124.2按下时,将W#16#00FF与W#16#000F按位相异或的关系,结果存放到MW10(W#16#00F0),取MW10的低八位(MB11)传送到QB124,从而形成高四位灯亮)




程序段4:(当低四位按钮I124.3按下时,将W#16#00F0按位取反,结果存放到MW10(W#16#FF0F),取MW10的低八位(MB11)传送到QB124,从而形成低四位灯亮)




程序段5:(按下M0.0,使用MOVE传送指令把Q0.0/Q0.1/Q0.2/ Q0.3/Q0.4/Q0.5/Q0.6/Q0.7全部复位)




是不是很简单呢?此时此刻博途S7-300神奇的指示灯控制程序已编写测试完成,大家都理解并且掌握了吗?可以在上述文章找答案!



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则