发表于:2011-05-03 18:40:42
楼主
所谓程序,就是利用可编程序控制器(PLC)中的运算器(即一个反运算门、一个与运算门、一个或运算门)实现自动化控制的“运算”过程,所谓“运算”,可以理解为接线的意思。
要设计可编程序控制器的程序,就必须先确定输入/输出接口分配表,因为只有输入/输出确定了,才能描述输入/输出之间的关系,为了获得输入/输出之间的关系(也称逻辑关系),就离不开梯形图或卡洛图了,根据梯形图或卡洛图,再结合汇编语言,就得到程序了。
一、汇编语言简介
汇编语言主要是:
LD(取指令)
OUT(输出指令)
AND(与运算指令)
OR(或运算指令)
I(反运算指令)
ANB(电路块与指令)
ORB(电路块或指令)
MPS(入栈指令)
MRD(读栈指令)
MPP(出栈指令)
END(程序结束指令)
上述汇编语言用来控制运算器的运算过程,通过这样的控制,就可以利用这个只有最基本的运算单元(一个与运算器、一个或运算器和一反运算器)的运算器来实现有多个输入/多个输出的自动化控制了,说明如下:
1、LD(取指令)
这条指令表示重新开始一次运算,程序中,每次运算均以这条指令开始;
2、OUT(输出指令)
这条指令用于将运算器的运算结果输出到指定位置,同时表示这次运算结束;
3、两个以上数据的与运算
从21页的图21知道,与运算器是2输入端运算器,如果与运算数据超过2位,就得借助暂存器来实现了,原理如图33所示,图中,编码器4、编码器5来自第26页的图29;
4、两个以上数据的或运算
从21页的图21知道,或运算器也是2输入端运算器,如果或运算数据超过2位,就得借助暂存器来实现了,原理如图34所示,图34中,编码器2、编码器3来自第26页的图29;
5、电路块
有ANB(电路块与指令)和ORB(电路块或指令)两条指令,所谓电路块,在硬件上就是暂存器,示例如图35所示,设置电路块指令和图35这样的硬件,是为了能够实现与或/或与的混合运算,详见§3解读可编程控制器的软件技术;
6、栈指令
所谓的栈,在硬件上就是暂存器,示例如图35所示,栈指令有三条:即MPS(入栈指令)、MRD(读栈指令)、MPP(出栈指令),栈指令的名称古怪,在可编程序控制器中,“栈”其实就是“公共接线点”的意思,所谓“入栈”,就是建立“公共接线点”的意思,所谓“读栈”,就是“从公共接线点上接线”的意思,所谓“出栈”,就是“回到电源线上接线”的意思,详见§3解读可编程控制器的软件技术;
7、基本逻辑运算指令
AND指令、OR指令、I指令三条,I指令不单独存在,而是依附在其它指令上,如ANI、ORI。
二、梯形图的获得
首先绘制电磁继电器实现的自动化控制原理图,这是绘制梯形图的基础,接着有以下几个步骤:
1、输入/输出的转换
根据输入分配表,把电磁继电器实现的自动化控制原理图中的控制按钮等开关全部转换为对应的符号X*,根据输出分配表,把图中的接触器KM*(负载)转换为符号Y*;
2、用辅助继电器取代电磁继电器
再把电磁继电器实现的自动化控制原理图中的中间继电器分别用辅助继电器M*代替后,略加调整,就获得了梯形图了。
三、卡洛图
如果不能绘制电磁继电器实现的自动化控制原理图,就用卡洛图法找到输入/输出之间的逻辑关系。
四、编程方法
编程方法有两种:
1、根据梯形图反映的逻辑关系编程
2、根据卡洛图法获得的逻辑关系编程
五、验证
根据输入/输出接口分配表联接外部线路,将程序输入到可编程序控制器中,验证程序是否正确。
详细内容请看《解读可编程序控制器的软硬件、接线、编程、应用和维护》。