OpenPLC的布尔逻辑编程-PLC技术网(www.plcjs.com)-可编程控制器技术门户


OpenPLC的布尔逻辑编程

 (点击题目可以在互联网中搜索该题目的相关内容)
日期:2007-7-17 20:44:26     来源:   作者: 点击:
点击【 大  中  小 】,可以选择字体的大小,以便你阅读.
 对许多控制应用来说,执行器只有在传感器位于某种状态下才需要进行开关。比如,一个传送带的电机只有在传送带的传感器探测到一个箱子的存在,并且传送带的末端斜坡上没有要移走的箱子的时候才能打开。这时,就有一个布尔逻辑的代数:

IF (传送带上有一个箱子)
AND (斜坡上没有箱子)
THEN(打开传送带电机)

    如果将上述语言转换为传感器和执行器的信号语言,则变为:

IF ( SENSOR_ A IS ON)
        AND ( SENSOR_B is NOT ON)
THEN (turn actuator_C ON)

    在布尔逻辑中,条件非真即假。上述的陈述中,包含两个条件,每个条件都可以是真和假两个状态,如果SENSOR A是开的,那么条件一是真,否则,条件一就是假。而如果SENSOR B是关的,那么条件二就是真,否则,条件二是假。上述两个条件可以有四种组合,导致不同的结果,只有两个条件都是真的组合下,电机的条件才是真,才能打开,其余三种组合,导致的电机的条件都为假,电机不会打开。
    这些开关状态就是由OpenPLC内部的输入或输出的内存映射区的每一位的状态代表的。上面,我们介绍了OpenPLC程序的扫描周期,有输入扫描和输出扫描周期,前一张,我们介绍了内存地址与I/O模块的位置的关系,除了I/O映射区域外,布尔逻辑也可以读写CPU模块中其它区域的内存。
    虽然现在OpenPLC主要采用梯形图来编程,但布尔逻辑实际上是潜在的控制语言。同时,OpenPLC也支持带有布尔逻辑的指令集编程方式和结构化文本方式,还支持C语言编程方式。本书的后面将重点介绍梯形图逻辑语言和指令集语言。OpenPLC是按照IEC 61131-3标准来进行语言编程的,本书的第9章将介绍IEC 6-1131-3标准。
2.1 梯形图的位操作
    梯形图逻辑是一种图形语言。因为它的外观与继电器电路图很相似,所以首先一直PLC的编程中得到应用。后来国际电工委员会将之作为PLC的首选编程语言,由于IEC所制订的IEC6-1131-3标准事实上已经不仅仅是PLC的标准,而且也是所有控制器的标准,因此OpenPLC也采用了IEC6-1131作为自己的标准。
    梯形图由水平方向的两条纵向的轨道中间的横档组成,因此程序象一个梯子,故名。如果当作电路图看的话,左边的轨道可以看作是电源线,右边的可以看作是地线。每个横档都包括有指令元素,来检测对内存位和至少一个输出元素,来控制内存位。如果检测到的位元素条件为真,整个逻辑操作结果就是真,由横档控制的位的输出就被打开,电路的模拟就是,如果从电源线经过开关到地线存在一条电路的话,电流就会将执行器打开。然而,梯形图不象电路,梯形图的输出元件通常只能在每个横档的最右端。
 梯形图的元素
梯形图的基本元素有如下几种:

    检查输入ON,有时也成为检查输入闭合,如果该位是1,则为真。
1的说法通常还有:ON,TRUE,CLOSED,SET,等。

    检查输入OFF,如果输入打开,或者该位为0,则为真。0 的叫法有,OPEN, FALSE,OFF,RESET,等。

    启动输出,有时成为输出线圈,控制一个内存位。当该元素前面的陈述条件是真,则该位置1;如果该元件前面的陈述是假,则将被置0。

    另外,还有两个常用的变化的输出符号:
    输出闭锁,即当该元素前面的陈述为真时,将把相应的内存位置1,但当前面为再变为假时,它不会变回到0。

输出解锁,即当该元素前面的陈述为真时,将把相应的内存位置0,但当前面为再变为假时,它不会变回到1。

    以上每个元素都应该包括一个要检测或要控制的CPU的内存中的位的地址:
1、    检查ON或检查OFF元素可以检查任何一个地址位,包括输入和输出映射表中的数据位,以及非工作数据表中的数据位。

本新闻共4页,当前在第11 2  3  4  

上一篇: 海维森V80在运动控制方面的特点
下一: OpenPLC的计数器和定时器