『7x24小时有问必答』

往期精彩文章:

用一个按钮控制三个(组)灯

学习PLC就是要多练习,在接下来的一段时间里,小李会准备更多的PLC基础编程案例,有兴趣的老铁可以来一起练习。今天我们来学习第一个简单的照明灯控制程序案例。

案例程序要求:

用一个按钮控制三个灯的开关,要求按一下按钮,亮一个灯,亮度不够,再按一下按钮,再亮一个灯,直到三个灯全部点亮。点亮后,再按一下按钮,先亮的灯先灭一个,再按一下按钮,第二亮的灯再灭一个,直到全灭,如果一直按下按钮3秒钟,则灯全灭。

软元件分配/使用如下表:

Y0

灯1

D0=0

灯全灭

Y1

灯2D0=1

灯1亮

Y2

灯3D0=2

灯12亮

D0=3

灯123亮

X0

按钮

D0=4灯23亮

D0=5

灯3亮

D0=6

复位不亮

设计思路:

X0每按一次D0自加1,根据计数设定灯亮与灭。

接线简图:

编写程序:

首先,我们用梯形图语言来编写,打开三菱PLC编程软件MELSOFT GX Works3,新建一个工程,选择系列、机型,选择梯形图语言编写:

梯形图程序,用INCP指令设计如下:

这里T0接通也可以把D0的数一并复位,再按按钮时就从开始计算。

其次,我们再用ST语言来编写,打开三菱PLC编程软件MELSOFT GX Works3,新建一个工程,选择系列、机型,选择ST语言编写:

ST语言程序如下:

RST(SM402,D0);

INCP(LDF(1,X0),D0);

OUT_T(X0,T0,30);

IF D0=6 OR T0 THEN
D0:=0;
END_IF;

CASE D0 OF //整型数据类型的值
1://值为1,则
Y0:=1;
2://值为2,则
Y1:=1;
3://值为3,则
Y2:=1;
4://值为4,则
Y0:=0;
5://值为5,则
Y1:=0;
6://值为6,则
Y2:=0;
ELSE//否则
Y0:=0;
Y1:=0;
Y2:=0;
END_CASE;

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

本帖子中包含更多资源

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

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

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码