第四章 顺序功能流程图语言
- 格式:ppt
- 大小:940.00 KB
- 文档页数:35
可编程序控制器的五种标准编程语言本文介绍了按照国际电工委员会制定的工业控制编程语言标准,对PLC制定的五种编程语言。
PLC的用户程序是设计人员根据控制系统的工艺控制要求,通过PLC编程语言的编制设计的。
根据国际电工委员会制定的工业控制编程语言标准(IEC1131-3)。
PLC的编程语言包括以下五种:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。
1、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言。
它是与继电器线路类似的一种编程语言。
由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。
梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。
梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。
图1是典型的交流异步电动机直接启动控制电路图。
图2是采用PLC控制的程序梯形图。
图1 交流异步电动机直接启动电路图图2 PLC梯形图2、指令表语言(IL)指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。
在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。
同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。
图3就是与图2PLC梯形图对应的指令表。
图3 指令表指令表表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。
其特点与梯形图语言基本一致。
3、功能模块图语言(FBD)功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。
采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。
可编程序控制器的五种标准编程语言2005-11-22来源:本文介绍了按照国际电工委员会制定的工业控制编程语言标准,对PLC制定的五种编程语言。
PLC的用户程序是设计人员根据控制系统的工艺控制要求,通过PLC编程语言的编制设计的。
根据国际电工委员会制定的工业控制编程语言标准(IEC1131-3)。
PLC的编程语言包括以下五种:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。
1、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言。
它是与继电器线路类似的一种编程语言。
由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。
梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。
梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。
图1是典型的交流异步电动机直接启动控制电路图。
图2是采用PLC控制的程序梯形图。
图1 交流异步电动机直接启动电路图图2 PLC梯形图2、指令表语言(IL)指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。
在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。
同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。
图3就是与图2PLC梯形图对应的指令表。
图3 指令表指令表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。
其特点与梯形图语言基本一致。
3、功能模块图语言(FBD)功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。
顺序功能图方法顺序功能图(Sequence Diagram),是软件工程中用来描述对象之间的交互行为的一种图形化表示方法。
它主要由对象、消息和时间线三个要素构成。
顺序功能图可以帮助开发人员更好地理解和识别系统中的交互关系,从而进行系统设计、开发和维护。
顺序功能图通过描述对象之间的交互行为来展示系统中的流程和功能。
它以时间为轴,按照对象之间的交互顺序来表示系统运行过程中对象之间的消息传递。
在顺序功能图中,每个对象被表示为一个竖直的矩形,称为生命线(Lifeline),而对象之间的交互行为则以消息的形式呈现。
在顺序功能图中,消息可以分为同步消息和异步消息。
同步消息是指发送消息的对象暂停自己的执行,等待接收消息的对象完成对消息的处理后才能继续执行。
而异步消息则是指发送消息的对象不需要等待接收消息的对象的响应,即可继续执行自身的操作。
在顺序功能图中,事件可以被表示为一个水平的虚线,用来说明系统中一些重要的时间点,例如系统初始化、生成结果等。
时间线上的坐标表示系统运行的时间顺序。
顺序功能图可以呈现对象之间的交互流程,有助于开发人员理解系统中的交互关系,从而进行系统设计和开发。
它可以用来描述系统中的各个对象之间的交互过程,以及各个对象之间的消息传递。
通过顺序功能图,可以清晰地表示出系统的流程和功能,帮助开发人员更好地理解和把握系统的需求,从而实现系统设计和开发的有效性和可靠性。
开发人员可以使用各种工具来创建顺序功能图,例如UML工具、建模工具等。
在创建顺序功能图时,需要先定义对象、消息和时间线,然后按照系统的执行顺序,绘制对象之间的消息传递过程,最后在时间线上标记重要的时间点。
绘制完成后,可以对图形进行优化和调整,使其更加清晰和易于理解。
通过顺序功能图,开发人员可以更好地理解和识别系统中的交互关系,从而更好地进行系统设计和开发。
它可以帮助开发人员分析和评估系统的性能和可行性,从而实现系统的高效运行和稳定运行。
第四单元顺序功能图任务一运料小车任务二按钮式人行道交通灯任务三自动门控制系统任务四液体混合装置任务五冲床机械手的运动任务六十字路口交通灯任务七用凸轮实现的旋转工作台任务八组合钻床任务九大小球分选系统任务一运料小车一、任务提出在自动化生产线上经常使用运料小车,如图4-1所示,货物通过运料小车M从A地运到B地,在B地卸货后小车M再从B地返回A地待命。
本任务用PLC来控制运料小车的工作。
图4-1 运料小车示意图二、原理分析为了用PLC控制器来实现任务,PLC需要3个输入点,4个输出点,输入输出点分配见表4-1 输入输出点分配表根据控制要求,画出时序图如图4-2所示。
图4-2 运料小车时序图运料小车的一个工作周期分为装料、右行、卸料和左行4步,再加上等待装料的初始步,一共有5步。
各限位开关、按钮和定时器提供的信号是各步之间的转换条件,由此画出顺序功能图如图4-3所示。
图4-3 运料小车单周期工作方式顺序功能图运料小车单周期工作方式梯形图如图4-4所示。
图4-4 运料小车单周期工作方式梯形图三、知识链接1.经验设计法与顺序控制设计法第三单元中各梯形图的设计方法一般称为经验设计法,经验设计法没有一套固定的方法步骤可循,具有很大的试探性和随意性,对于不同的控制系统,没有一种通用的容易掌握的设计方法。
顺序控制设计法是一种先进的设计方法,很容易被初学者接受,有经验的工程师使用顺序控制设计法,也会提高设计的效率,程序调试、修改和阅读也更方便。
所谓顺序控制,就是按照生产工艺预先规定的顺序,在各个输入信号的作用下,根据内部状态和时间的顺序,生产过程的各个执行机构自动有序地进行操作。
使用顺序控制设计法时首先根据系统的工艺过程,画出顺序功能图,然后根据顺序功能图画出梯形图。
2.顺序功能图顺序功能图由步、有向连线、转换、转换条件和动作(或称命令)五部分组成。
(1)步顺序控制设计法最基本的思想是将系统的一个工作周期划分为若干个顺序相连的阶段,这些阶段称为步,可以用编程元件M和S来代表各步。
顺序功能图SFC顺序功能图(Sequential Function Chart,简称SFC)是一种用来描述控制程序的图形化编程语言。
它是根据电气工程师国际协会(International Electrotechnical Commission)标准IEC 61131-3定义的一种流程图。
SFC能够非常清晰地显示控制系统的逻辑和流程,并方便工程师进行调试和维护。
SFC的组成顺序功能图由若干不同的元素组成,这些元素可以按照特定的规则组合在一起,构成一个完整的控制程序。
以下是SFC中常见的元素:1.步骤(Step):步骤是顺序功能图的最基本的组成单位,表示一个操作、功能或者动作。
步骤一般使用矩形来表示。
2.转变(Transition):转变表示步骤之间的条件或者触发条件,用来决定程序是否继续执行或跳转到下一个步骤。
转变一般使用带箭头的线段来表示,箭头指向下一个步骤。
3.分支(Branch):分支用来根据条件决定程序的执行路径。
分支可以有多个选择,每个选择都可以引导程序到不同的步骤。
分支一般使用菱形来表示。
4.迭代(Iteration):迭代用来循环执行一组步骤。
迭代一般使用一个圆圈包含一组步骤的表示。
5.并行(Parallel):并行表示多个步骤可以同时执行。
并行一般使用平行线段表示。
6.联结(Connect):联结用来将多个SFC图连接起来,实现跨图的控制逻辑。
联结一般使用箭头和标签来表示。
SFC的编程规则为了能够正确地描述控制程序的逻辑,SFC遵循一定的编程规则:1.SFC程序从Step 0开始执行,然后按照转变的条件逐步执行。
转变可以是条件触发,也可以是时间触发。
2.每个步骤必须包含至少一个转变,否则程序将无法执行或者被卡死。
3.分支必须包含一个默认的转变,用来处理除了定义条件以外的情况。
4.迭代必须包含一个退出条件,否则程序将陷入死循环。
5.并行步骤中的每个步骤必须同时完成,否则将导致程序执行错误。
PLC的五种标准编程语言PLC的用户程序是设计人员根据控制系统的工艺控制要求,通过PLC编程语言的编制设计的。
根据国际电工委员会制定的工业控制编程语言标准(IEC1131-3)。
PLC的编程语言包括以下五种:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。
1、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言。
它是与继电器线路类似的一种编程语言。
由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。
梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。
梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。
图1是典型的交流异步电动机直接启动控制电路图。
图2是采用PLC控制的程序梯形图。
图1 交流异步电动机直接启动电路图图2 PLC梯形图2、指令表语言(IL)指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。
在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。
同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。
图3就是与图2PLC梯形图对应的指令表。
图3 指令表指令表表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。
其特点与梯形图语言基本一致。
3、功能模块图语言(FBD)功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。
采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。
图4是对应图1交流异步电动机直接启动的功能模块图编程语言的表达方式。
顺序功能流程图(SFC-Sequential Function Chart)顺序功能流程图,是一种强大的描述控制程序的顺序行为特征的图形化语言,可对复杂的过程或操作由顶到底地进行辅助开发。
SFC允许一个复杂的问题逐层地分解为步和较小的能够被详细分析的顺序。
1。
顺序功能流程图的基本概念顺序功能流程图可以由步、有向连线和过渡的集合描述。
介绍SFC的主要特征。
步SFC设计法是将系统的一个工作周期划分为若干个顺序相连的阶段,这些阶段称为“步”,步是顺序功能图的最基本组成部分,它是某一控制功能的程序段。
步用矩形框表示,描述了被控系统的每一特殊状态,框内的数字是步的编号,有的用编程元件的元件号作为步的编号。
SFC中的每一步的名字应当是唯一的并且应当在SFC中仅仅出现一次。
一个步可以是激活的,也可以是休止的,只有当步处于激活状态时,与之相应的动作才会被执行,至于一个步是否处于激活状态,则取决于上一步及过渡。
步是某一控制功能的程序段,要执行相应的动作,用矩形框中的文字或符号来表示与该步相对应的动作,该矩形框应与对应步的矩形框相连。
代表步的方框之间用有向连线连接,如果有向连线的方向是从上至下或从左至右,则可以省略表示方向的箭头。
有向连线有向连线表示功能图的状态转化路线,每一步是通过有向连线连接的。
过渡过渡表示从一个步到另一个步的转化,这种转化并非任意的,只有当满足一定的转换条件时,转化才能发生。
转换条件可以用ST、LD或FBD来描述。
转换定义可以用ST、IL、LD或FBD来描述。
过渡用一条横线表示,可以对过渡进行编号。
动作(action)每一步是用一个或多个动作(action)来描述的。
动作包含了在步被执行时应当发生的一些行为的描述,动作用一个附加在步上的矩形框来表示。
每一动作可以用IEC的任一语言如ST、FBD、LD或IL来编写。
每一动作有一个限定(Qulifier),用来确定动作什么时候执行;标准还定义了一系列限定器(Qulifier),精确地定义了一个特定与步相关的动作什么时候执行。