少有人走的路

勇哥的工业自动化技术网站

三菱PLC练习题初级挑战篇,附答案



D-1.呼叫单元

控制一个餐馆中的呼叫单元

要求: 如下图,如果客人按下桌子下的x0和x1,对应的灯y0,y1会长亮。

           如果灯y0和y1都亮了,工作人员会控制面板上看到灯y23亮了。于是知道客人要求服务了。
           然后工作人员可以按下x20按钮,这时候灯y0,y1和控制面板上的灯y23熄灭。


image.png image.png


参考例程:

image.png



D-2.检测传感器灯

当检测一个物体时,接通闪烁灯。


image.png


要求:

当检测到人或汽车时使闪烁灯点亮。

使用事先学习过的基础指令和定时器。


人一侧

1) 当入门传感器 (X0) 检测到人通过时,闪烁绿灯 (Y1) 点亮。

2) 传感器 Out (X1) 检测到人的消息5秒后,闪烁绿灯 (Y1) 熄灭。


汽车一侧

1) 当入门传感器 (X2) 检测到汽车通过时,闪烁绿灯 (Y4) 点亮。

(注意,这里的闪烁不需要去实现,点亮y4灯自动在闪烁)

2) 传感器 Out (X3) 检测到汽车上的消息5秒后,闪烁绿灯 (Y4) 熄灭。

3) 如果汽车没有在10秒内通过入门传感器 (X2) 和Out (X3) 之间的区域,闪烁红灯 (Y3) 点亮而且蜂鸣器 (Y7) 响。

4) 一旦汽车通过传感器 Out (X3), 闪烁红灯 (Y3) 熄灭而且蜂鸣器 (Y7) 停止。


参考例程:


人一侧:

image.png


车一侧:

image.png



D-3.交通灯的时间控制

控制一个以指定时间间隔变化的交通灯


image.png

要求:

控制交通灯使之在规定的时间间隔内变换信号。 使用先前学习过的基本指令和定时器。


1)当按下操作面板上的 [PB1] (X20) 时,进程开始。

2)首先,红信号灯 (Y0) 点亮 10 秒。

3)红信号灯 (Y0) 在点亮 10 秒后熄灭。黄信号灯 (Y1) 点亮 5 秒。

4)黄信号灯(Y1) 在点亮 5 秒后熄灭。绿信号灯 (Y2) 点亮 10 秒。

5)绿信号灯 (Y2) 在点亮 10 秒后熄灭。

6)重复以上的 2) 起的动作。


参考例程:





上面代码不够精简,改进版本如下:

image.png



D-4.不同尺寸的部件分捡(1)

通过传感器,分捡不同尺寸的部件


image.png

image.png


要求:

将3个不同大小的部件从传送带上分类。

 

1) 当按下操作面板上的 [PB1] (X10) 后,机器人的供给指令 (Y5) 就被打开了。

当松开 [PB1] (X10) , 供给指令 (Y5) 被关闭。

2) 当操作面板上的 [开始操作] (X14) 被打开后, 输送带正转 (Y3) 被打开。

当控制面板上的 [开始操作] (X14) 被关闭后, 输送带正转 (Y3) 被关闭。

3) 在传送带上的大, 中或小的部件被传感器 上 (X0), 中 (X1) 和 下 (X2)分别拣选, 那么一个相应的灯点亮。

• 大 >> Y10

• 中 >> Y11

• 小 >> Y12

4) 当传感器 (X0, X1, X2) 拣选以后,一个指示灯立即点亮,然后它在部件通过传感器 (X4)后熄灭。


注意:

在此练习中我们编程的时候假设每次只有一个部件被放到传送带上。

要控制两个或者更多的部件我们还需要另一个程序。这个程序不在此练习范围内。



错误代码:

image.png


正确的参考代码:

image.png




D-5.输送带起动/停止

根据预先的顺序,起动和停止输送带


image.png


要求:

根据以前准备好的程序启动或者停止传送带。

 

在此单元中执行以下的动作:

1) 当操作面板上的 [PB1] (X20) 被按下时, 闪烁黄灯 (Y7) 点亮而且蜂鸣器 (Y3) 拉响 5 秒。

如果松开 [PB1] (X20) , 黄灯 (Y7) 保持点亮。

2) 当闪烁黄灯 (Y7) 熄灭而且蜂鸣器 (Y3) 停止后, 输送带正转 (Y1) 被设置为 ON。

在输送带正转 (Y1) 为ON的期间,闪烁绿灯 (Y6) 保持点亮。

3) 当操作面板上的 [PB2] (X21) 被按下,在 1) 和 2) 中描述的动作停止。

当1) 中的程序执行时动作被重复。



参考代码1:

下面的代码虽然实现了效果,但是按文字表达意,所以程序不精简。

image.png


参考代码2:

下面的代码精简多了,是正确的plc思维。

image.png




D-6.输送带驱动

根据传感器的数据,运行输送带

image.png


需求:

根据传感器数据操作传送带。

 

1) 当操作面板上的 [PB1] (X20) 按下, 如果机器人在原点位置 (X5) ,控制机器人供给指令 (Y7) 被置为ON。

当松开 [PB1] (X20) , 直到机器人回到原点位置 (X5),供给指令 (Y7) 被锁存。 

2) 当传感器 (X0) 检测到一个部件, 上段输送带正转 (Y0) 被置为 ON。

3) 当传感器 (X1) 检测到一个部件,中段输送带正转 (Y2) 被置为 ON 而 上段输送带正转 (Y0) 停止。

4) 当传感器 (X2) 检测到一个部件, 下段输送带正转 (Y4) 被置为 ON 而 中段输送带正转 (Y2) 停止。

5) 当传感器 (X3) 检测到一个部件, 下段输送带正转 (Y4) 停止。

6) 当传感器 (X3) 被置为 ON, 供给指令 (Y7) 被置为ON 而且如果机器人在 原点位置 (X5) ,一个新部件被补给。


注意:

在此练习中我们编程的时候假设每次只有一个部件被放到传送带上。

要控制两个或者更多的部件我们还需要另一个程序。这个程序不在此练习范围内。



参考程序1:


这个程序 有问题,最后一个y4有时候关闭不了;另外机器人会自动搬运第二次,但是第三次就卡住了。

因为关闭拉带的条件设置为下一个拉带的入料感应器,这种方式不妥。

应该改为下一个拉带的状态。


image.png


参考程序2:

image.png





发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2026年8月    »
12
3456789
10111213141516
17181920212223
24252627282930
31
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接

Powered By Z-BlogPHP 1.7.3

Copyright www.skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864