第3部分三菱FX系列PLC基本指令主要介绍三菱FX2系列PLC的20条基本逻辑指令,这20条指令功能十分强大,已经能解决一般的继电接触控制问题。本章还重点介绍梯形图和助记符语言以及其程序设计方法。三菱FX系列PLC的程序设计语言三菱FX系列PLC的编程语言一般以梯形图语言为主,同时还有助记符语言、流程图语言。一、梯形图(Ladder)梯形图一种图形编程语言,是面向控制过程的一种“自然语言”,它延用继电器的触点、线圈、串并联等术语和图形符号,同时也增加了一些继电器控制系统中没有的特殊符号,以便扩充PLC的控制功能。三菱FX系列PLC的程序设计语言从继电接触控制图到梯形图按下SB1KM线圈得电KM辅触点闭合自锁电机M转动KM主触点闭合按下SB2KM线圈失电KM辅触点打开电机M停转KM主触点打开电机过载主电路FR动作控制电路常闭FR断开电机M停转图1电机启―保-停控制电路图与图1等效PLC控制梯形图如图3。三菱FX系列PLC的程序设计语言图3电机启―保-停控制梯形图图1电机启―保-停继电器控制电路图表1输入、输出点分配表PLCKMSB1SB2FRX0X1X2COMCOMY0FU220V~图2PLC控制电机启―保-停连线图三菱FX系列PLC的程序设计语言1.梯形图中的图形符号表3.2梯形图中的图元符号与继电接触控制图中的图形符号比较①对应继电器的各种符号。②其它指令符号:三菱FX系列PLC的程序设计语言2.梯形图的格式:①左边垂直线为起始母线(相当于电源正级,右边垂直线为终止母线电源负极(可省)。②每一逻辑行由一个或几个支路组成,左边由若干触点组成,表示控制元件;右边为线圈或其它指令,表示控制结果。③同名常开、常闭触点可多次使用;同名线圈只能使用一次。④最后一行以“END”指令结束。PLC编程软件安装1、安装MELSOFT环境先点击“EnvMEL”文件夹下面的“SETUP.EXE”2、安装GxDeveloper8.86Q点击“Develope”文件夹下面的“SETUP.EXE”“监视专用”那里千万不要打勾PLC仿真软件安装PLC应用练习①硬件连接图:②I/O分配表:③梯形图:1、按过启动按钮后,灯亮;按过停止按钮后,灯灭。PLC应用练习①I/O分配表:②梯形图:2、按过启动按钮后,灯亮;10秒后,灯灭。PLC应用练习3、按下启动按钮后,红灯亮15秒,而后绿灯亮10秒,而后黄灯亮5秒;而后红灯亮,依次反复;按下停止按钮后,所有灯都熄灭。①硬件连接图:②梯形图:PLC应用练习4、按下启动按钮后,红灯亮15秒,而后绿灯亮10秒,而后黄灯亮5秒;反复5次;按下停止按钮后,所有灯都熄灭。①I/O分配表:输入输出启动按钮X0红灯Y0停止按钮X1绿灯Y1黄灯Y2②梯形图:二、助记符语言(Mnemonic)在现场调试时,小型PLC往往只配备显示屏只有几行宽度的简易编程器,这时,梯形图就无法输入了,但助记符指令却可以一条一条的输入,滚屏显示。三菱FX系列PLC的程序设计语言助记符指令组成:操作码+操作数。操作码用便于记忆的助记符表示,用来表示指令的功能,告诉CPU要执行什么操作。人工将图3梯形图转换成指令表方法:也是按梯形图的逻辑行和逻辑组件的编排顺序自上而下、自左向右依次进行。表3.4对应图3.3梯形图的指令表图3电机启―保-停控制梯形图三菱FX系列PLC的程序设计语言3.2三菱FX系列PLC的基本逻辑指令13.2.1逻辑取与输出线圈驱动指令LD、LDI、OUT1.指令用法(1)LD(取常开):常开接点与母线连接指令。(2)LDI(取常闭):常闭接点与母线连接指令。(3)OUT(线圈驱动):线圈驱动指令。表3.4逻辑取与输出线圈驱动指令3.2.1逻辑取与输出线圈驱动指令LD、LDI、OUT22.指令说明(1)LD和LDI指令用于接点与母线相连。与ANB和ORB指令配合,还作为分支起点指令。目标组件:X、Y、M、T、C、S。(2)OUT指令用于驱动输出继电器、辅助继电器、定时器、计数器、状态继电器和功能指令,但是不能用来驱动输入继电器,目标组件:Y、M、T、C、S和功能指令线圈F。(3)OUT指令可以并行输出,相当于线圈是并联的,如图3.6中的M100和T1就是并联的。注意,输出线圈不能串联使用。(4)在对定时器、计数器使用OUT指令后,须设置时间常数K,或指定数据寄存器的地址。如图3.6中T1的3.2.1逻辑取与输出线圈驱动指令LD、LDI、OUT3时间常数设置为K10。时间常数K的设定,要占一步。表3.6中给出了时间常数K的设定值范围与对应的时间实际设定值范围,及以T、C为目时OUT指令所占步数。例3.3阅读图3.6中的梯形图,试解答:(1)写出图3.6中梯形图所对应的指令表。(2)指出各指令的步序并计算程序的总步数。(3)计算定时器T1的定时时间。表3.5定时器/计数器时间常数K的设定3.2.1逻辑取与输出线圈驱动指令LD、LDI、OUT4时间常数设置为K10。时间常数K的设定,要占一步。表3.6中给出了时间常数K的设定值范围与对应的时间实际设定值范围,及以T、C为目时OUT指令所占步数。例3.3阅读图3.7中的梯形图,试解答:(1)写出图3.7中梯形图所对应的指令表。(2)指出各指令的步序并计算程序的总步数。(3)计算定时器T1的定时时间。图3.7LD、LDI和OUT指令应用举例解:(1)从梯形图到指令表,按自上而下、自左向右依次进行转换,得到对应图3.7梯形图的指令表如表3.7所示。(2)总的程序步为10步。各指令的步序如表3.7第1列所示。3.2.1逻辑取与输出线圈驱动指令LD、LDI、OUT5(3)由附录中的表A.1可知T1是100ms定时器,所以T1定时时间为10×0.1=1s。表3.6对应图3.7梯形图的指令表3.2.2接点串联指令AND、ANI11.指令用法(1)AND(串常开):常开接点串联指令。(2)ANI(串常闭):常闭接点串联指令。2.指令说明(1)AND和ANI指令用于单个接点串联,串联接点的数量不限,重复使用指令次数不限。目为X、Y、M、T、C、S。表3.7接点串联指令3.2.2接点串联指令AND、ANI2(2)在执行OUT指令后,通过接点对其它线圈执行OUT指令,称为“连续输出”(又称纵接输出)。正确:图3.8中紧接OUTM101后,通过接点T1输出OUTY001。错误:图3.9中M101与T1和Y001交换,出错。非要这样纵接,要使用后述的MPS和MPP指令。图3.9纵接错误举例图3.8AND与ANI指令应用举例3.2.2接点串联指令AND、ANI3例3.4阅读图3.8中的梯形图,试解答:(1)写出图3.8梯形图所对应的指令表。(2)指出各指令的步序并计算程序的总步数。解:(1)对应图3.8梯形图的指令表如表3.9所示。(2)各指令步序如表3.9。程序总的占9步。表3.8对应图3.8梯形图的指令表3.2.3接点并联指令OR、ORI11.指令用法(1)OR(并常开):常开接点并联指令(2)ORI(并常闭):常闭接点并联指令。例3.5阅读图3.10(a)中的梯形图,试解答:(1)写出图3.10(a)梯形图所对应的指令表。(2)指出各指令的步序并计算程序的总步数。表3.9接点并联指令3.2.3接点并联指令OR、ORI2解:(1)对应图3.10梯形图的指令表如图3.10(b)所示。(2)各指令步序也如图3.10(b),各指令均为1步,所以程序总的占10步。图3.10OR与ORI指令举例3.2.3接点并联指令OR、ORI32.指令说明(1)OR和ORI指令引起的并联,是从OR和ORI一直并联到前面最近的LD和LDI指令上,如图3.10(a),并联的数量不受限制。操作目标组件为X、Y、M、T、C、S。(2)OR和ORI指令只能用于单个接点并联连接,若要将两个以上接点串联而成的电路块并联,要用后述的ORB指令。3.2.4串联电路块的并联指令ORB1.指令用法ORB(串联电路块):将两个或两个以上串联块并联连接的指令。串联块:两个以上接点串联的电路。串联块并联,支路始端用LD和LDI,终端用ORB指令。2.指令说明(1)ORB指令无操作数,其后不跟任何软组件编号。(2)多重并联电路中,ORB指令可以集中起来使用;切记:在一条线上LD和LDI指令重复使用次数要≤8。表3.10串联电路块的并联指令3.2.4串联电路块的并联指令ORB2例3.5阅读图3.11(a)中的梯形图,试解答:(1)写出图3.11(a)梯形图所对应的指令表。(2)指出各指令的步序并计算程序的总步数。图3.11ORB指令举例3.2.4串联电路块的并联指令ORB3解:(1)对应图3.11(a)梯形图的指令表如图3.11(b)所示。按照两两并联的原则,在首次出现的两个串联块后应加一个ORB指令,此后每出现一个要并联的串联块,就要加一个ORB指令。(2)各指令步序也如图3.11(b),各指令均为1步,所以程序总的占10步。3.2.5并联电路块的串联指令ANB11.指令用法ANB(并联电路块):将并联电路块的始端与前一个电路串联连接的指令。并联块:两个以上接点并联的电路。并联块串联时要用ANB指令,支路始端用LD和LDI,终端用ANB指令。3.2.5并联电路块的串联指令ANB22.指令说明(1)ANB指令无操作数,其后不跟任何软组件编号。(2)ANB指令可以集中起来使用,但是切记,此时在一条线上LD和LDI指令重复使用次数要≤8。例3.6阅读图3.12(a)中的梯形图,试解答:(1)写出图3.12(a)梯形图所对应的指令表。(2)指出各指令的步序并计算程序的总步数。解:(1)对应图3.12(a)梯形图的指令表如图3.12(b)。按两两串联原则,在首次出现的两并联块后应加一个ANB指令,表3.11并联电路块的串联指令3.2.5并联电路块的串联指令ANB3此后每出现一个并联块,就要加一个ANB。前一并联块结束时,应用LD或LDI指令开始后一并联块。(2)各指令步序也如图3.12(b),各指令均为1步,所以程序总的占11步。图3.12ANB指令举例3.2.6多重输出指令MPS、MRD、MPP11.指令用法(1)MPS(进栈):进栈指令。(2)MRD(读栈):读栈指令。(3)MPP(出栈):出栈指令。这组指令可将接点的状态先进栈保护,图3.13栈操作示意当需要接点状态时,再出栈恢复,以保证与后面的电路正确连接。表3.12多重输出指令3.2.6多重输出指令MPS、MRD、MPP22.指令说明(1)PLC中,有11个可存储中间运算结果的存储器,它们相当于微机中的堆栈,是按照先进后出的原则进行存取的一段存储器区域。堆栈指令的操作如图3.13。(2)使用一次MPS指令,该时刻的运算结果就压入第一个单元中(栈顶)。再次使用MPS,当前结果压入栈顶,原先数据依次向栈的下一个单元推移。(3)使用MPP指令,各数据依次向上一个栈单元传送。栈顶数据在弹出后就从栈内消失。(4)MRD是栈顶数据的读出专用指令,但栈内的数据不发生下压或上托的传送。(5)MPS、MRD、MPP指令均无操作数。(6)MPS和MPP应配对使用,连续使用次数≤11次。3.2.6多重输出指令MPS、MRD、MPP3例3.7阅读图3.14(a)中一层堆栈的梯形图,试解答:(1)写出图3.14(a)梯形图所对应的指令表。(2)指出各指令的步序并计算程序的总步数。图3.14例3.7多重输出指令举例3.2.6多重输出指令MPS、MRD、MPP4解:(1)对应图3.14(a)梯形图的指令表如图3.14(b)。注意,栈操作指令在梯形图中并非显式可见的,需要人工将它们加在指令表中。为了减少出错,可用FXGPC软件先画好梯形图,然后再将梯形图转换为指令。(2)用FXGP先画好梯形图,然后用工具_转换命令,即可得到图3.14(b)所示的指令表。各指令的步序已经在此程序中标出,并可得到总的程序步为21步。例3.8阅读图3.15(a)中二层堆栈的梯形图,试解答:(1)写出图3.15(a)梯形图所对应的指令表。(2)指出各指令的步序并