1、1PLC的五种标准编程语言PLC 的用户程序是设计人员根据控制系统的工艺控制要求,通过 PLC 编程语言的编制设计的。根据国际电工委员会制定的工业控制编程语言标准(IEC1131-3)。PLC 的编程语言包括以下五种:梯形图语言(LD)、指令表语言(IL)、功能模块图语言( FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。1、梯形图语言(LD)梯形图语言是 PLC 程序设计中最常用的编程语言。它是与继电器线路类似的一种编程语言。由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与
2、原有继电器控制相一致,电气设计人员易于掌握。梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。图 1 是典型的交流异步电动机直接启动控制电路图。图 2 是采用 PLC 控制的程序梯形图。图 1 交流异步电动机直接启动电路图图 2 PLC 梯形图2、指令表语言(IL)指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。在无计算机的情况下,适合采用 PLC 手持编程器对用户程序进行编制。同时,2指令表编程语言与梯形图编程语言图一一对应,在 PLC 编程软件
3、下可以相互转换。图 3 就是与图 2PLC 梯形图对应的指令表。图 3 指令表指令表表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。其特点与梯形图语言基本一致。3、功能模块图语言(FBD)功能模块图语言是与数字逻辑电路类似的一种 PLC 编程语言。采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。图 4 是对应图 1 交流异步电动机直接启动的功能模块图编程语言的表达方式。图 4 功能模块图功能模块图编程语言的特点:功能模块图程序设计语言的特点是:以功
4、能模块为单位,分析理解控制方案简单容易;功能模块是用图形的形式表达功能,直观性强,对于具有数字逻辑电路基础的设计人员很容易掌握的编程;对规模大、控制逻辑关系复杂的控制系统,由于功能模块图能够清楚表达功能关系,使编程调试时间大大减少。4、 顺序功能流程图语言(SFC)顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步的按照顺序动作。每一步代表一个控制功能任务,用方框表示。在方框内含有用于完成相应控制功能任务的梯形图逻辑。这种编程语言使程序结构清晰,易于阅读及维护,大大减轻编程的工作量,缩短编
5、程和调试时间。用于系统的规模校大,程序关系较复杂的场合。图 5 是一个简单的功能流程编程语言的示意图。3图 5顺序功能流程图编程语言的特点:以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;避免梯形图或其他语言不能顺序动作的缺陷,同时也避免了用梯形图语言对顺序动作编程时,由于机械互锁造成用户程序结构复杂、难以理解的缺陷;用户程序扫描时间也大大缩短。5、结构化文本语言(ST)结构化文本语言是用结构化的描述文本来描述程序的一种编程语言。它是类似于高级语言的一种编程语言。在大中型的 PLC 系统中,常采用结构化文本来描述控制系统中各个变量的关系。主要用于其他编程语言较难实现的用户程
6、序编制。结构化文本编程语言采用计算机的描述方式来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作。大多数 PLC 制造商采用的结构化文本编程语言与 BASIC 语言、PASCAL 语言或 C 语言等高级语言相类似,但为了应用方便,在语句的表达方法及语句的种类等方面都进行了简化。结构化文本编程语言的特点:采用高级语言进行编程,可以完成较复杂的控制运算;需要有一定的计算机高级语言的知识和编程技巧,对工程设计人员要求较高。直观性和操作性较差。不同型号的 PLC 编程软件对以上五种编程语言的支持种类是不同的,早期的 PLC 仅仅支持梯形图编程语言和指令表编程语言。目前的 PLC 对梯形图(
7、LD)、指令表(STL)、功能模块图(FBD)编程语言都以支持。比如,SIMATIC STEP7 MicroWIN V3.2。在 PLC 控制系统设计中,要求设计人员不但对 PLC 的硬件性能了解外,也要了解 PLC对编程语言支持的种类。PLC的功能模块图语言(FBD)简介发布日期:2014-07-17 来源:艾特贸易网 作者:佚名 浏览次数:14核心提示: 功能模块图语言是与数字逻辑电路类似的一种 PLC 编程语言。采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。功能模块图如图 3-4所示。 图 3-4 功能模块图 功能模块图语言的特点: 以功能模块为单位,分析理解控
8、制方案简单容易;功能模块是用图形的形式表达功能,直观性强,对于具有数字逻辑电路基础功能模块图语言是与数字逻辑电路类似的一种 PLC 编程语言。采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。功能模块图如图 3-4 所示。图 3-4 功能模块图功能模块图语言的特点:以功能模块为单位,分析理解控制方案简单容易;功能模块是用图形的形式表达功能,直观性强,对于具有数字逻辑电路基础的设计人员很容易掌握编程;对规模大、控制逻辑关系复杂的控制系统,由于功能模块图能够清楚表达功能关系,使编程调试时间大大减少。PLC的顺序功能流程图语言(SFC)简介发布日期:2014-07-17 来源:
9、艾特贸易网 作者:佚名 浏览次数:0核心提示: 顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步地按照顺序动作。每一步代表一个控制功能任务,用方框表示。在方框内含有用于完成相应控制功能任务的梯形图逻辑。这种编程语言使程序结构清晰,易于阅读顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步地按照顺序动作。每一步代表一个控制功能任务,用方框表示。在方框内含有用于完成相应控制功能任务的梯形
10、图逻辑。这种编程语言使程序结构清晰,易于阅读及维护,大大减轻编程的工作量,缩短编程和调试时间。用于系统的规模校大,程序关系较复杂的场合5。图 3-5 所示是一个简单的顺序功能流程图语言的示意图。图 3-5 顺序功能流程图语言的示意图顺序功能流程图语言的特点:以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;避免梯形图或其他语言不能顺序动作的缺陷,同时也避免了用梯形图语言对顺序动作编程时,由于机械互锁造成用户程序结构复杂、难以理解的缺陷;用户程序扫描时间也大大缩短。在功能图中用户可以根据顺序控制步骤执行条件的变化,分析程序的执行过程,可清楚地看到在程序执行过程中每一步的状态,便
11、于程序的设计和调试。6详解 IEC 61131-3=多种 PLC语言各种 PLC 语言简介对应的多种 PLC 语言,其就是由相关国际规范 IEC 61131-3,所定义的。目前常见的是 5 种:LD=LaDder Logic=梯形图IL=Instruction List=指令表ST=Structured Text=结构式文本FBD=Function Block Diagram=功能图SFC=Sequential Function Chart=顺序功能流程图还有一个不常见的,第 6 种:CFC= Continuous Function Chart= 连续功能图PLC 语言发展历史IEC61131
12、-3 组成部分IEC 61131-3 主要分成两部分: 通用元素 编程语言7如图:IEC 61131-3 软件模型8IEC 61131-3 通用的元素 Data Types POUo Functionso Function Blocks=FBso Programs Variables Configuration elements:Resources and Taskso SFC=Sequential Function Chart(顺序功能流程图)9各种不同 PLC 语言示例PLC 语言:梯形图(LD)举例:允许编程人员图形化的去连接中继器和线圈。PLC 语言:功能块图(FBD )举例:允许用户可以快速地实现二进制和模拟表达式方面的编程。10PLC 语言:指令表(IL)类似于汇编语言 Assembly 举例:PLC 语言:结构化文本(ST) 类似于 C 语言或 PASCAL 语言 主要代码逻辑 o 判断:条件是否满足o 赋值:设置 IO 点为 True 还是 False 举例: