在生产实践过程中,某些生产机械常要求既能正常起动,又能实现调整位置的点动工作。图示为几种常用的继电—接触器系统实现的控制线路。
图 1 异步电动机控制线路图
图( a )为主电路。工作时,合上刀开关 qs ,三相交流电经过 qs ,熔断起 fu ,接触器 km 主触点,热继电器 fr 至三相交流电动机。
图( b )为最简单的点动控制线路。起动按钮 sb 没有并联接触器 km 的自锁触点,按下 sb , km 线圈通电,松开按钮 sb 时,接触器 km 线圈又失电,其主触点断开,电动机停止运转。
图( c )是带手动开关 sa 的点动控制线路。当需要点动控制时,只要把开关 sa 断开,由按钮 sb 2 来进行点动控制。当需要正常运行时,只要把开关 sa 合上,将 km 的自锁触点接入,即可实现连续控制。
图( d )中增加了一个复合按钮 sb 3 来实现点动控制。需要点动运行时,按下 sb 3 点动按钮,其常闭触点先断开自锁电路,常开触发后闭合接通起动控制电路, km 接触器线圈得电,主触点闭合,接通三相电源,电动机起动运转。当松开点动按钮 sb 3 时, km 线圈失电, km 主触点断开,电动机停止运转。
若需要电动机连续运转,由停止按钮 sb 1 及起动按钮 sb 2 控制,接触器 km 的辅助触点起自锁作用。
二、应用可编程控制器技术实现对三相异步电动机的点动及连续运转控制
作用可编程控制器的编程元件及基本逻辑指令的应用,本模块介绍运用基本的编程来控制电动机的点动及连续运行,进而引出可编程控制器的基本逻辑指令。
三、可编程控制器的硬件连接
实现电动机的点动及连续运行所需的器件有:起点按钮 sb 1 ,停止按钮 sb 2 ,交流接触器 km ,热继电器 jr 及刀开关 qs 等。主电路的连接如图 2 所示。
图 2 输入输出接线图
由图可知,起动按钮 sb 1 接于 x0 ,停止按钮接于 x1 ,热继电器常开触点接于 x2 ,交流接触器接于 y0 ,这就是端子分配,其实质是为程序安排控制系统中的机内元件。
四、梯形图的设计
可编程控制器的基本逻辑控制功能是基于继电-接触器控制系统而设计的,而控制功能的实现是由应用程序来完成的,而用户程序是由使用者根据可编程控制器生产厂家所提供的编程语言并结合所要实现的控制任务而设计的。梯形图便是诸多编程语言中较常用的一种类型,它是以图形符号及图形符号在图中的相互关系表示控制关系的编程语言,是从继电器电路图演变而来。两者部分符号对应关系如表 1 所示。
表 1 符号对照表
根据输入输出接线圈可设计出异步电动机点动运行的梯形图如图 3 ( a )所示。工作过程分析如下:当按下 sb 1 时,输入继电器 x0 得电,
图 3 电动机控制梯形图
其常开触点闭合,因为异步电动机未过热,热继电器常开触点不闭合,输入继电器 x2 不接通,其常闭触点保持闭合,则此时输出继电器 y0 接通,进而接触器 km 得电,其主触点接通电动机的电源,则电动机起动运行。当松开按钮 sb 1 时, x0 失电,其触点断开, y0 失电,接触点 km 断电,电动机停止转动,即本梯形图可实现点动控制功能。大家可能发现,在梯形图中使用的热继电器的触点为常开触点,如果要使用常闭触点,梯形图应如何设计?
可编程控制器的优点之一是不改变硬件接线的情况下,通过变更软件设计,可完成不同的控制的任务。图 3 ( b )为电动机连续运行的梯形图,其工作过程分析如下:
当按 sb 1 被按下时 x0 接通, y0 置 1 ,这时电动机连续运行。需要停车时,按下停车按钮 sb 2 , 串联于 y0 线圈回路中的 x1 的常闭触点断开, y0 置 1 ,电机失电停车。
梯形图( b )称为启 - 保 - 停电路。这个名称主要来源于图中的自保持触点 y0 。并联在 x0 常开触点上的 y0 常开触点的作用是当钮 sb 1 松开,输入继电器 x0 断开时,线圈 y0 仍然能保持接通状态。工程中把这个触点叫做“自保持触点“。启 - 保 - 停电路是梯形图中最典型的单元,它包含了梯形图程序的全部要素。它们是:
a 、事件 每一个梯形图支路都针对一个事件。事件输出线圈(或功能框)表示,本例中为 y0 。
b 、事件发生的条件 梯形图支路中除了线圈外还有触点的组合,使线圈置 1 的条件既是事件发生的条件,本例中为起动按钮 x0 置 1 。
c 、事件得以延续的条件 触点组合中使线圈置 1 得以持久的条件。本例中为与 x0 并联的 y0 的自保持触点。
d 、使事件终止的条件 触点组合中使线圈置 1 中断的条件。本例中为 x1 的常闭触点断开。
五、语句表
点动控制即图 3 ( a )所使用到的基本指令有:从母线取用常开触点指令 ld ;常闭触点的串联指令 ani ;输出继电器的线圈驱动指令 out 。而每条指令占用一个程序步,语句表如下。
语句步
指令
元素
0
ld
x0
1
ani
x2
2
out
y0
连续运行控制即图 1-3 ( b )所使用到的基本指令有:从母线取用常开触点指令 ld ;常开触点的并联指令 or ;常闭触点的串联指令 ani ;输出继电器的线圈驱动指令 out 。语句表如下:
语句步
指令
元素
0
ld
x0
1
or
y0
2
ani
x1
3
ani
x2
4
out
y0
六、 fx 2 系列可编程控制器基本指令
fx 2 系列可编程控制器共有 20 条基本指令,供设计者编制语句表使用,它与梯形图有严格的对应关系。
1 、 逻辑取及输出线圈( ld 、 ld1 、 out )
ld、ldi、out指令的功能、电路表示、操作元件、所占的程序如表2所示。
表 2
ld指令是从母线取用常开触点指令,ldi是从母线上取用常闭触点指令,它们还可以与后面介绍的anb、orb指令配合用于分支回路的开头;out指令是对输出继电器、辅助继电器、状态继电器、定时器、计数器的线圈进行驱动的指令,但不能用于输入继电器。图4-12给出了本组指令的梯形图实例,并配有指令表。这儿还需指出的是:out指令可连续使用无数次,相当线圈的并联(如图4中的out m100和out t0);定时器或计数器的线圈,在使用out指令后,必须设定常数k,或指定数据寄存器的地址号。
图 4 ld、ldi、out指令的使用
2 触点串联( and 、 ani )
and、ani指令的功能、电路表示、操作元件、程序步如表3所示。
表 3
and、ani指令为单个触点的串联连接指令。and用于常开触点。ani用于常闭触点。串联接点的数量无限制。图1-5是使用本组指令的实例。图中out指令后,通过触点对其他线圈使用out指令(如图的out y004),称之为纵接输出或连续输出。此种纵接输出,如果顺序正确可多次重复。但限于图形编程器和打印机幅面限制,应尽量做到一行不超过10个接点及一个线圈,总共不要超过24行。
在图 5中驱动m101之后可通过触点t1驱动y004。但是,若驱动顺序换成图6的形式,则必须用后述的mps指令。
图 5 and、ani指令的应用
图 6 不能使用连续输出的例子
3 触点并联( or 、 ori )
or、ori指令的功能、操作元件等如表4所示。
表 4
or、ori指令为单个触点的并联连接指令。or为常开触点的并联,ori为常闭触点的并联。将两个以上触点的串联回路和其他回路并联时,采用后面介绍的orb指令。
or、ori指令紧接在ld、ldi指令后使用,亦即对ld、ldi指令规定的触点再并联一个触点,并联的次数无限制,但限于编程器和打印机的幅面限制,尽量做到24行以下。
or、ori指令的使用如图1-7所示
图 7 or、ori指令的使用
4 串联电路的并联( orb )
orb指令的功能、电路表示等如表5所示。
表 5
orb指令是不带操作元件的指令。两个以上的触点串联连接的电路为串联电路块,将串联电路块并联使用时,用ld、ldi指令表示分支开始,用orb指令表示分支结束。图8给出了orb指令的使用情况。若有多条并联电路时,在每个电路块后使用orb指令,对并联电路数没有限制,但考虑到ld、ldi指令只能连续使用8次,orb指令的使用次数也应限制在8次。
图 8 orb指令的使用
5 并联电路块的串联( anb )
anb指令的功能、电路表示等如表6所示。
表 6
anb指令是不带操作元件编号的指令。两个或两个以上触点并联连接的电路称为并联电路块。当分支电路并联电路块与前面的电路串联连接时,使用anb指令。即分支起点用ld、ldi指令,并联电路块结束后使用anb指令,表示与前面的电路串联。anb指令原则上可以无限制使用,但受ld、ldi指令只能连续使用8次影响,anb指令的使用次数也应限制在8次。图9为anb指令使用的梯形图实例。
图 9 anb指令的使用
6 多重输出电路( mps/mrd/mpp )
mps、mrd、mpp指令功能、电路表示等如表6所示。
表 6
指令助记符、名称
功能
电路表示及操作元件
程序步
mps ( push )
进栈
1
mrd ( read )
读栈
1
mpp ( pop )
出栈
1
这组指令分别为进栈、读栈、出栈指令,用于多重输出电路。可将连续点先存储,用于连接后面的电路。如图 10所示。在fx2系列可编程序控制器中有11个用来存储运算的中间结果的存储区域被称为栈存储器。使用一次mps指令,便将此刻的运算结果送入堆栈的第一层,而将原存在第一层的数据移到堆栈的下一层。 使用mpp指令,各数据顺次向上一层移动,最上层的数据被读出。同时该数据就从堆栈内消失。
图 10 堆栈示意图
mrd指令用来读出最上层的最新数据,此时堆栈内的数据不移动。
mps、mrd、mpp指令都是不带软元件的指令。
mps、mpp必须成对使用,而且连续使用应少于11次。
以下给出了几个堆栈的实例。
[例1] 一层堆栈,见图 11。
语句步
指令
元素
语句步
指令
元素
0
ld
x000
14
ld
x006
1
and
x001
15
mps
2
mps
16
and
x007
3
and
x002
17
out
y004
4
out
y000
18
mrd
5
mpp
19
and
x010
6
out
y001
20
out
y005
7
ld
x003
21
mrd
8
mps
22
and
x011
9
and
x004
23
out
y006
10
out
y002
24
mpp
11
mpp
25
and
x012
12
and
x005
26
out
y007
13
out
y003
图 11 一层堆栈
[例3] 二层堆栈,见图12。
语句步
指令
元素
语句步
指令
元素
0
ld
x000
9
mpp
1
mps
10
and
x004
2
and
x001
11
mps
3
mps
12
and
x005
4
and
x002
13
out
y002
5
out
y000
14
mpp
6
map
15
and
x006
7
and
x003
16
out
y004
8
out
y001
图 12 二层堆栈
[例4] 四层堆栈,见图13。
语句步
指令
元素
语句步
指令
元素
0
ld
x000
9
mpp
1
mps
10
and
x004
2
and
x001
11
mps
3
mps
12
and
x005
4
and
x002
13
out
y002
5
mps
14
mpp
6
and
x003
15
and
x006
7
mps
16
out
y004
8
and
x004
17
图 13 四层堆栈
7 自保持及解除( set/rst )
set、rst指令的功能、电路表示、操作元件等如表7所示。
表 7
符号、名称
功能
电路表示及操作元件
程序步
set(置位)
元件自保持 on
y、m:1
s、特m:2
rst(复位)
( reset)
清除动作保持寄存器清零
t、c:2
d、v、z、特d:3
语句步
指令
元素
语句步
指令
元素
0
ld
x000
9
set
s0
1
set
y000
11
ld
x005
2
ld
x001
12
rst
s0
3
rst
y000
14
ld
x006
4
ld
x002
15
rst
d0
5
set
m0
16
ld
x000
6
ld
x003
17
out
t250
7
rst
m0
sp
k10
8
ld
x004
20
ld
x007
21
rst
t250
图 14 set、rst指令的使用
set为置位指令,使操作保持。rst为复位指令,使操作保持复位。set、rst指令的使用如图14所示。图中x000接通后,y000被驱动为on,即使x000再成为off,也不能使y000变为off的状态;x001接通后,y000复位为off,即使x001再为off,也不能使y000变为on状态。
对同一元件,如例中 y000、m0、s0等,set、rst指令可以多次使用,且不限制使用顺序,最后执行者有效。
rst指令还可以用于使数据寄存器d、变址寄存器v、z的内容清零。使积算定时器t246~t255的当前值以及触点复位。使计数器c的输出触点复位及当前值清零。rst指令对计数器、定时器的应用如图15。
图 15定时器、计数器中的set、rst指令
8 脉冲输出指令( pls/plf )
pls、plf指令的功能、操作元件等如表8所示。
表 8
符号、名称
功能
电路表示及操作元件
程序步
pls(pulse)
上升沿微分输出
2
plf
( plf)
下降沿微分输出
2
pls、plf为脉冲输出指令。pls在输出信号上升沿产生脉冲输出,而plf在输入信号下降沿产生脉冲输出。图16是脉冲输出指令的例子。从时序图可以看出,使用pls指令y、m仅在驱动输入断开后的一个扫描周期内动作(置1)。使用plf指令时,元件y、m仅在驱动输入断开后的一个扫描周期内动作。在就是说,pls、plf指令可将脉宽较宽的输入信号变成脉宽等于可编程序控制器的扫描周期的触发脉冲信号,而信号周期不变。
特殊继电器不能用作 pls或plf的操作元件。
9 空操作指令( nop )
nop指令的功能、程序步如表9所示。
表 9
符号、名称
功能
电路表示及操作元件
程序步
nop(空操作)
无动作
无元件
1
图 16 pls、plf指令的使用
空操作指令使该步做空操作。在程序中加入空操作指令,在变更或增加指令时可以减少步序号的变化。用 nop指令替换一些已写入的指令,可以改变电路。若将ld、ldi、anb、orb等指令换成nop指令,电路组成将发生很大的变化,亦可能使电路出错。
举例如下。
(1)and、ani指令改为nop指令时使相关触点短路(如图18)
(2)anb指令改为nop时使前面的电路全部短路(如图19)
(3)or指令改为nop时使相关电路的切断(如图20)
(4)orb指令改为nop前面的电路全部切断(如图21)
(5)与前面的out电路纵接(如图22)
图 18
图 19
图 20
图 21
图 22
当执行程序全部清零操作时,所有指令均变成 nop 。
10 程序结束( end )
end 指令的功能、电路表示如表 19 所示。
表19
符号、名称
功能
电路表示及操作元件
程序步
end(结束)
输入输出处理回到第“ 0”步
无元件
1
end为程序结束指令。可编程序控制器按照输入处理、程序执行、输出处理循环工作,若在程序中不写入end指令,则可编程序控制器从用户程序的第一步扫描到程序存储器的最后一步。若在程序中写入end指令,则end以后的程序步不再扫描,而是直接进行输出处理。也就是说,使用end指令可以缩短扫描周期。end指令的另一个用处是分段程序调试。调试时,可将程序分段后插入end指令,从而依次对各程序段的运算进行检查。而后,在确认前面电路块动作正确无误之后依次删除end指令。
