分享

三菱PLC基本编程练习(8):利用编码指令ENCO按钮呼叫控制圆转盘捷径运转​

 PLC与自控设备 2022-04-27

往期精彩文章:

项目设计流程:一个项目电气工程师要做的设计思路

三菱Q系列PLC,Modbus 通信控制施耐德变频器运行

万用表应用基础知识,口诀速记万用表使用注意事项
FX5U PLC,FB块的建立与调用,编写延时启保停程序

PLC通信基础知识三菱PLC,CC-Link通信协议基础知识

光电开关的L-ON,D-ON,是什么意思?如何接线 ?

三菱FX5UPLC,MODBUS专用通信指令控制PLC运行

什么是ST语言?三菱PLC,ST语言创建方法及注意事项

电工基础,电工最基础、最核心的知识是掌握电的回路

三菱PLC输出接线,一篇文章搞懂,其他品牌大同小异

变频器前世今生,从电动机使用上浅谈变频器的发展史

基恩士FSN18N光纤传感器感光度异常处理,参数调校

欧姆龙(OMRON)E5CC温控器控制加热启停的设置

欧姆龙E3X-HD10光纤放大器调整20210124资料更新

按钮呼叫控制圆转盘捷径运转

上回说到圆转盘的180度正反转控制,接下来讲一讲转盘捷径呼叫的控制。

案例要求:

一个圆转盘在其周围分布有8个接近开关,对应有8个工位,转盘上有一个工件箱,其边沿有一个感应铁块,每个工位有一个呼叫的照光按钮。当有工位按钮按下,照光开启中,工件箱以最短路径移到该工位,接近开关感应到铁块,照光灯关闭。

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

X0-X7
按钮1-8
SB0-7
X10-X17
接近开关1-8
SQ0-7
Y0-Y7
指示灯1-8
H0-7
Y10
电动机正转
KM1
Y11
电动机反转
KM2

设计思路:

利用按钮和接近开关当前的位置按顺序进行ENCO编码(256转8位),分别存入D0和D1,用减法指令SUB,比较这两个编码值的大小,从而对电动机进行捷径方向的转动输出。

编码指令是单个的位为1时,如果多个取最高位,对这个1的顺序进行二进制n次方的编码。

对这两个差值进行统计,将得到一个差值表:

D1-D0
正反转
D3.3
D3.2
D3.1
D3.0
-1
反转
1
1
11
-2
反转1
110
-3
反转1
10
1
-4
反转1
10
0
-5
正转1
0
1
1
-6
正转1
0
1
0
-7
正转1
0
01
0
停转
0
000
1
正转0
0
0
1
2
正转0
0
1
0
3
正转0
0
1
1
4
反转0
1
0
0
5
反转0
1
0
1
6
反转0
1
1
0
7
反转0
0
11

这里的SUB指令不能用-指令代替,因为他们有如下区别:

接线简图:

这个图挺复杂的,不怎么好画,浪费了不少时间啊。

估计以后的复杂案例要画半天不止哦。

编写程序:

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

梯形图程序,用ENCO\SUB\MOV\LD<=指令设计如下:

还有一种方法,可以把D3值分解为D3.3,D3.2,D3.1,D3.0。

统计这些数据,于是得到D3.2有正转时为0,反转时为1。编程如下:

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

ST语言程序如下:

ENCO(1,X0,3,D0);

ENCO(1,X10,3,D1);

D3:=SUB(D1,D0);

MOVP(NOT SM8020,K2X0,K2Y0);

MOVP( SM8020,0,K2Y0);

OUT((-4 <=D3 AND D3 <=-1)OR(4 <=D3 AND D3 <=7) ,Y11);

OUT((-7 <=D3 AND D3 <=-5)OR(1 <=D3 AND D3 <=3) ,Y10);

参阅:《三菱PLC基本编程练习(7):用DECO解码指令控制圆转盘180度正反转程序

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多