PLC编程入门带您认识6种编程语言~附详细解读!
- 格式:doc
- 大小:288.50 KB
- 文档页数:7
超实用PLC编程入门教程PLC(可编程逻辑控制器)是一种用于自动化控制的电子设备,广泛应用于工业自动化、楼宇自动化、交通控制等领域。
对于初学者来说,掌握PLC编程的基本概念和技巧至关重要。
本教程将帮助你从零开始,逐步掌握PLC编程的使用方法。
一、PLC概述1. 定义:PLC是一种用于工业自动化控制的电子设备,可以通过编程来实现对各种生产过程的自动化控制。
2. 应用:PLC广泛应用于工业自动化、楼宇自动化、交通控制等领域,如生产线自动化、电梯控制、交通信号灯控制等。
3. 优势:PLC具有可靠性高、稳定性好、易于编程和维护等优点,是现代工业自动化控制的首选设备。
二、PLC编程语言1. 梯形图(Ladder Diagram):梯形图是一种图形化的编程语言,类似于电气控制电路图。
它使用继电器、接触器等符号来表示逻辑关系,易于理解和编写。
2. 指令表(Instruction List):指令表是一种文本化的编程语言,使用特定的指令来表示逻辑关系。
它具有更高的灵活性和可读性,适用于复杂的控制逻辑。
3. 功能块图(Function Block Diagram):功能块图是一种图形化的编程语言,使用功能块来表示逻辑关系。
它具有模块化的特点,便于编写和维护复杂的控制程序。
三、PLC编程环境1. 选择合适的PLC编程软件:根据PLC型号和品牌,选择合适的编程软件。
常见的编程软件有Siemens STEP 7、Mitsubishi GX Developer、Rockwell RSLogix等。
2. 安装和配置编程软件:按照软件的安装指南,将编程软件安装到计算机上,并配置好与PLC的通信参数。
3. 创建新项目:在编程软件中创建新项目,选择PLC型号和配置参数,并设置项目名称和保存路径。
四、基本编程技巧1. 理解输入/输出:在PLC编程中,输入/输出是控制逻辑的核心。
理解输入/输出的概念,并正确地配置它们,是编写有效控制程序的关键。
PLC 常用程序设计语言简介可编程控制器程序设计语言:在可编程控制器中有多种程序设计语言, 它们是梯形图语言、布尔助记符语言、功能表图语言、功能模块图语言及结构化语句描述语言等。
梯形图语言和布尔助记符语言是根本程序设计语言,它平时由一系列指令组成,用这些指令可以完成大多数简单的控制功能,比方,代替继电器、计数器、计时器完成序次控制和逻辑控制等,经过扩展或增强指令集,它们也能执行其他的根本操作。
功能表图语言和语句描述语言是高级的程序设计语言,它可依照需要去执行更有效的操作,比方,模拟量的控制,数据的控制,报表的报印和其他根本程序设计语言无法完成的功能。
功能模块图语言采用功能模块图的形式,经过软连接的方式完成所要求的控制功能,它不但在可编程序控制器中获取了广泛的应用,在集散控制系统的编程和组态时也常常被采用,由于它拥有连接方便、操作简单、易于掌握等特点,为广阔工程设计和应用人员所喜爱。
依照可编程器应用范围,程序设计语言可以组合使用,常用的程序设计语言是:梯形图程序设计语言布尔助记符程序设计语言〔语句表〕功能表图程序设计语言功能模块图程序设计语言结构化语句描述程序设计语言梯形图与结构化语句描述程序设计语言布尔助记符与功能表图程序设计语言布尔助记符与结构化语句描述程序设计语言1、梯形图〔 Ladder Diagram 〕程序设计语言梯形图程序设计语言是用梯形图的图形符号来描述程序的一种程序设计语言。
采用梯形图程序设计语言,程序采用梯形图的形式描述。
这种程序设计语言采用因果关系来描述事件发生的条件和结果。
每个梯级是一个因果关系。
在梯级中,描述事件发生的条件表示在左面,事件发生的结果表示在后边。
梯形图程序设计语言是最常用的一种程序设计语言。
它本源于继电器逻辑控制系统的描述。
在工业过程控制领域,电气技术人员对继电器逻辑控制技术较为熟悉,因此,由这种逻辑控制技术睁开而来的梯形图碰到了欢送,并获取了广泛的应用。
梯形图程序设计语言的特点是:〔1〕与电气操作原理图相对应,拥有直观性和对应性;〔2〕与原有继电器逻辑控制技术相一致,对电气技术人员来说,易于撑握和学习;〔3〕与原有的继电器逻辑控制技术的不同样点是,梯形图中的能流〔 Power FLow〕不是实质意义的电流,内部的继电器也不是实际存在的继电器,因此,应用时,需与原有继电器逻辑控制技术的有关看法差异对待;〔4〕与布尔助记符程序设计语言有一一对应关系,便于相互的变换和程序的检查。
3. PLC编程语言有哪几种?关键信息项:1、编程语言名称2、编程语言特点3、编程语言适用场景4、编程语言学习难度5、编程语言应用领域11 PLC 编程语言简介可编程逻辑控制器(PLC)作为工业自动化领域中广泛应用的控制设备,其编程是实现控制逻辑和功能的关键。
不同的 PLC 编程语言具有各自的特点和优势,适用于不同的应用场景和用户需求。
111 梯形图(Ladder Diagram,LD)梯形图是 PLC 编程中最常用的语言之一,它类似于电气控制原理图。
特点:直观易懂,与传统电气原理图相似,易于电气工程师掌握。
逻辑清晰,通过触点、线圈和连线来表示逻辑关系。
适用场景:适用于逻辑控制较为简单的系统,如电机启动停止、顺序控制等。
学习难度:相对较低,对于有电气控制基础的人员容易上手。
应用领域:广泛应用于工业生产中的各种设备控制,如机床、输送线等。
112 指令表(Instruction List,IL)指令表是一种基于文本的编程语言。
特点:指令简洁,占用存储空间小。
能够精确控制每一条指令的执行。
适用场景:适用于对程序执行效率要求较高的场合。
学习难度:相对较高,需要对指令有深入的理解。
应用领域:在一些对实时性要求苛刻的控制系统中使用。
113 功能块图(Function Block Diagram,FBD)功能块图以功能块为单位来描述控制逻辑。
特点:模块化编程,便于程序的复用和维护。
能够清晰地表示功能之间的关系。
适用场景:适用于复杂的控制系统,如过程控制。
学习难度:适中,需要掌握功能块的概念和连接方式。
应用领域:常用于化工、电力等行业的控制系统。
114 结构化文本(Structured Text,ST)结构化文本是一种类似于高级编程语言的文本语言。
特点:具有较强的数学运算和逻辑判断能力。
能够编写复杂的控制算法。
适用场景:适用于需要进行复杂数据处理和算法实现的系统。
学习难度:较高,需要具备一定的编程基础。
应用领域:在智能控制、优化控制等领域有广泛应用。
lc常见的编程语言1.?梯形逻辑图(LAD)梯形逻辑图简称梯形图(ladder diagram 简写为LAD),它是从继电器-接触器控制系统的电气原理图演化而来的,是一种图形语言,它沿用了常开触点、常闭触点、继电器线圈、接触器线圈、定时器和计数器等等术语和图形符号,也增加了一些简单的计算机符号,来完成时间上的顺序控制操作。
触点和线圈等的图形符号就是编程语言的指令符号。
这种编程语言与电路图相呼应,简单、形象、直观、易编程、容易掌握,是目前应用最广泛的编程语言之一。
?2.指令语句表(STL)指令语句表简称语句表(statement list 简写为STL),类似于计算机的汇编语言,它是用语句助记符来编程的。
不同的机型有不同的语句助记符,但都要比汇编语言简单得多,很容易掌握,也是目前用得最多的编程方法。
命令语句主要使用逻辑语言建立PLC 输入和输出的关系,其中包括逻辑AND、OR、NOT及定时器、计数器、移位寄存器、算术运算和PID控制功能等。
中小型PLC一般用语句表编程。
每条命令语句包括命令部分和数据部分。
其命令部分要指定逻辑功能;其数据部分要指定功能存储器的地址号或直接数值。
语句表编程简单明了,语句少,其结构类似于电路的串并联方式,容易掌握。
计算机通用语言可以实现梯形图法和指令语句表法难以实现的复杂逻辑控制功能,但它没有梯形图法形象,比指令语句表编程复杂,因此较难掌握。
常用的通用语言有C、BASIC、PASCAL、FORTRAN等,其中采用C语言较多。
另外,还有控制系统流程图(CSF)、逻辑方程式(布尔代数式)等方法,使用较少,而且工程技术人员对于计算机通用语言又比较难掌握,因此,大部分编程方法都采用梯形图法和指令语句表。
目前常用的PLC产品很多,不同厂家的PLC各种指标和性能不同,其编程方法、具体的指令格式以及继电器编号也不同,当具体操作时,可查阅有关产品说明书。
计算机通用语言可以实现梯形图法和指令语句表法难以实现的复杂逻辑控制功能,但它没有梯形图法形象,比指令语句表编程复杂,因此较难掌握。
PLC编程语言和编程方法简介PLC(可编程逻辑控制器)是一种专门用于工业自动化控制的电子设备。
它程序化地监控输入信号,并根据预设的逻辑规则输出控制信号,实现对各种工业设备的自动化控制。
而PLC编程语言和编程方法则是用于编写和管理PLC程序的关键要素。
一、PLC编程语言PLC编程语言是一种特殊的计算机语言,用于编写PLC程序,控制工业设备的运行。
以下是几种常见的PLC编程语言:1. 指令列表(IL)指令列表是一种基于指令的编程语言,将程序表示为一系列的指令,用于描述控制器内部的运算和逻辑操作。
它的语法类似于汇编语言,程序员需要具备对底层硬件的了解。
2. 柱状图(LD)柱状图是一种图形化的编程方法,通过用线和框画出设备和输入输出信号之间的逻辑关系,直观地表示程序的执行顺序。
它适合于需要清晰展示逻辑流程的应用场景。
3. 功能块图(FBD)功能块图是一种图形化编程语言,通过连接不同功能块来表示各种逻辑和算术操作。
功能块图的程序结构与现实世界的控制系统相似,易于理解和维护。
4. 结构化文本(ST)结构化文本是一种类似于高级编程语言的编程语法,使用结构化的语句来描述程序控制流程。
该语言适合于编写复杂的控制算法和逻辑操作。
二、PLC编程方法PLC编程方法是指程序员在进行PLC编程时所采用的一些常用策略和方法。
下面介绍几种常见的PLC编程方法:1. 图解法图解法是一种通过绘制电路图或逻辑图来规划和设计PLC程序的方法。
通过图解法,程序员可以直观地了解各个信号之间的关系,避免出现逻辑错误。
2. 分层法分层法是一种将PLC程序按照功能逐层分解组织的方法。
程序员首先将整个控制系统划分为多个子系统,然后逐层设计和编写相应的PLC程序。
这种方法使得程序的结构清晰,易于扩展和维护。
3. 模块化设计模块化设计是一种将程序分为独立的功能模块的方法,每个模块负责完成特定的任务。
通过模块化设计,程序员可以重复使用已有的模块,提高程序的可重用性和可维护性。
PLC编程语言PLC是一种常用于工业控制的计算机,它的主要功能是接受传感器发回的信息,并通过命令控制执行器的动作,从而实现自动化生产。
PLC在现代工业中扮演着重要的角色,而PLC编程语言则是PLC实现自动化的基础。
一、PLC编程语言的种类常见的PLC编程语言有以下几种:1、梯形图(Ladder Diagram,LD):也称作梯形逻辑图,是一种最为常用的PLC编程语言。
它的原理类似于电路开关,将输入信号和输出信号看做开关,通过逻辑判断最终控制执行器的开关状态。
梯形图视觉效果强,具有易理解、易编写、易调试等特点。
2、指令列表(Instruction List,IL):也称作指令表、指令序列等。
它以指令的形式,通过扫描周期实现信号的读写,按照指令的顺序逐一执行。
指令列表编写简单,程序运行速度快,可以用于简单控制。
3、功能块图(Function Block Diagram,FBD):将程序分解为单一的功能块,然后再将硬件连接到这些块上,可以降低程序的维护难度。
FBD的可重用性强,可以将一部分程序代码保存下来以便复用。
4、结构化文本(Structured Text,ST):类似于C语言,是PLC编程功能较强的语言,可以用于简单控制和高级控制。
5、顺序功能图(Sequential Function Chart,SFC):类似于流程图,可以将程序分解为一系列的步骤,便于可视化。
二、PLC编程语言的特点1、易编写:PLC编程语言通常以图形化界面进行编辑,使得编写电路和编写程序有很大的相似性。
因此,即使是对于没有编程基础的用户,也能够轻松地掌握PLC编程。
2、易维护:PLC编程语言的程序结构清晰,易于阅读和修改。
并且由于PLC运算速度快,程序的响应速度也很快,这使得修改程序后立即能够生效,维护起来也很方便。
3、可靠性高:PLC编程语言能够实现高度可靠的运行,因为它们通常使用硬实时、并行处理和冗余控制等技术,让PLC在控制系统中稳定运行。
关于PLC编程语言表达国际电工委员会IEC61131标准中标准的五种PLC编程语言的混合编程,即梯形图(LAD)、流程图(SFC)、功能图(FBD) 、结构化文本(ST)和语句表(STL)。
1.梯形图(LAD-LAdder Diagram)梯形图是利用最多的PLC编程语言。
因与继电器电路很相似,具有直观易懂的特点,很容易被熟悉继电器操纵的电气人员所把握,专门适合于数字量逻辑操纵。
梯形图由触点、线圈和用方框表示的指令组成。
触点代表逻辑输入条件,线圈代表逻辑运算结果,常常利用来操纵的指示灯,开关和内部的标志位等。
指令框用来表示按时器、计数器或数学运算等附加指令。
在程序中,最左侧是主信号流,信号流老是从左向右流动的,不适合于编写大型操纵程序。
2.流程图(SFC-Seauential Fuction Chart)顺序功能图(SFC)这是位于其它编程语言之上的图形语言,用来编程顺序操纵的程序(如:机械手操纵程序)。
编写时,工艺进程被划分为假设干个顺序显现的步,每步中包括操纵输出的动作,从一步到另一步的转换由转换条件来操纵,专门适合于生产制造进程。
3. 功能块图(FBD-Function Block Diagram)功能块取利用类似于布尔代数的图形逻辑符号来表示操纵逻辑,一些复杂的功能用指令框表示,适合于有数字电路基础的编程人员利用。
功能块图用类似于与门、或门的框图来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右边为输出变量,输入、输出端的小圆圈表示“非”运算,方框用“导线”连在一路,信号自左向右。
4.结构化文本(ST-Structured Text)STEP7的S7 SCL结构化操纵语言,编程结构和C语言和Pascal语言相似,专门适合于适应于利用高级语言编程的人利用。
5.语句表(STL-STatement List)语句表(STL)是一种类似于微机汇编语言的一种文本编程语言,由多条语句组成一个程序段。
(1)梯形图梯形图编程语言习惯上叫梯形图。
梯形图沿袭了继电器控制电路的形式,也可以说,梯形图编程语言是在电气控制系统中常用的继电器、接触器逻辑控制基础上简化了符号演变而来的,具有形象、直观、实用,电气技术人员容易接受,是目前用得最多的一种PLC编程语言。
(2)指令表这种编程语言是一种与计算机汇编语言相类似的助记符编程方式,用一系列操作指令组成的语句表将控制流程热核出来,并通过编程器送到PLC中去。
(3)顺序功能图采用IEC标准的SFC(Sequential Function Chart)语言,用于编制复杂的顺控程序。
利用这种先进的编程方法,初学者也很容易编出复杂的顺控程序,大大提高了工作效率,也为调试、试运行带来许多言传的方便。
(4)状态转移图类似于顺序功能图,可使复杂的顺控系统编程得到进一步简化。
(5)逻辑功能图它基本上沿用了数字电路中的逻辑门和逻辑框图来表达。
一般用一个运算框图表示一种功能。
控制逻辑常用“与”、“或”、“非”三种功能来完成。
目前国际电工协会(IEC)正在实施发展这种编程标准。
(6)高级语言近几年推出的PLC,尤其是大型PLC,已开始使用高级语言进行编程采用高级语言编程后,用户可以象使用PC机一样操作PLC。
在功能上除可完成逻辑运算功能外,还可以进行PID调节、数据采集和处理、上位机通信等。
艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。
如需进一步了解台达PLC、西门子PLC、施耐德plc、欧姆龙PLC的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城。
6 种三菱PLC编程语言今天就给大家分享三菱PLC的几种编程语言,一起来看看吧!三菱PLC稳定性好,使用方便,编程易学。
即有微小型的F系列,又有中大型的A、Q、L系列,功能齐全,应用范围广。
下面给大家介绍种6种三菱PLC编程语言。
第一种,指令表编程形成程序基础的指令表编程方式特点就是通过指令语言输入顺控指令的方式。
该方式是顺控程序中基本的输入形态。
第二种,梯形图编辑特点就是使用顺序符号和软元件编号画顺控梯形图的方式。
由于顺控回路是通过触点符号和线圈符号来表现的,所以程序的内容更加容易理解。
即使在梯形图显示的状态下也可以执行可编程控制器的运行监控。
第三种,步进梯形图可以根据机械的动作流程进行顺控设计的输入方式。
特点就是根据机械的动作流程设计顺控的方式。
可以相互转换的指令表程序及梯形图程序,如果依照一定的规则编制,就可以倒过来转换成SFC图。
第四种,ST(结构文本)具有与C语言等相似的语法构造、文本形式的程序语言。
特点是可以通过语法进行控制,例如与C语言等高级语言同样,采用条件语句进行选择分支、利用循环语句进行重复等。
这样,便可以简洁的方法书写清楚的程序。
第五种,结构化梯形图可以使用触点、线圈、功能、功能模块等回路符号,将程序以图形的形式描述的语言。
特点是基于继电器回路的设计技术创建的图形语言。
容易直观理解,因此普遍用于顺控程序。
第六种,FBD(功能模块表)可以使用进行特定处理的部件(功能、功能模块)、变量部件、常数部件等,将程序以图形的形式描述的语言。
特点是沿着数据以及信号的走向连接部件,可以方便地创建程序,提高程序的生产性。
PLC的编程语言所谓程序编制,就是用户根据控制对象的要求,利用PLC厂家提供的程序编制语言,将一个控制要求描述出来的过程。
PLC最常用的编程语言是梯形图语言和指令语句表语言,且两者常常联合使用。
1)梯形图(语言)梯形图是一种从继电接触控制电路图演变而来的图形语言。
它是借助类似于继电器的动合、动断触点、线圈以及串、并联等术语和符号,根据控制要求联接而成的表示PLC输入和输出之间逻辑关系的图形,直观易懂。
梯形图中常用{INCLUDEPICTURE"/jiaocheng/bianch3.gif"|图形符号分别表示PLC编程元件的动合和动断触点;用()表示它们的线圈。
梯形图中编程元件的种类用图形符号及标注的字母或数加以区别。
触点和线圈等组成的独立电路称为网络,用编程软件生成的梯形图和语句表程序中有网络编号,允许以网络为单位给梯形图加注释。
梯形图的设计应注意到以下三点:①梯形图按从左到右、自上而下地顺序排列。
每一逻辑行(或称梯级)起始于左母线,然后是触点的串、并联接,最后是线圈。
②梯形图中每个梯级流过的不是物理电流,而是“概念电流”,从左流向右,其两端没有电源。
这个“概念电流”只是用来形象地描述用户程序执行中应满足线圈接通的条件。
③输入寄存器用于接收外部输入信号,而不能由PLC内部其它继电器的触点来驱动。
因此,梯形图中只出现输入寄存器的触点,而不出现其线圈。
输出寄存器则输出程序执行结果给外部输出设备,当梯形图中的输出寄存器线圈得电时,就有信号输出,但不是直接驱动输出设备,而要通过输出接口的继电器、晶体管或晶闸管才能实现。
输出寄存器的触点也可供内部编程使用。
2)指令语句表指令语句表是一种用指令助记符来编制PLC程序的语言,它类似于计算机的汇编语言,但比汇编语言易懂易学,若干条指令组成的程序就是指令语句表。
一条指令语句是由步序、指令语和作用器件编号三部分组成。
下例为PLC实现三相鼠笼电动机起/停控制的两种编程语言的表示方法:PLC编程语言的设计与应用1 引言在PLCPLC是一种专门在工业环境下应用而设计的数字运算操作的电子装置。
关于PLC编程语言叙述国际电工委员会IEC61131标准中规范的五种PLC编程语言的混合编程,即梯形图(LAD)、流程图(SFC)、功能图(FBD) 、结构化文本(ST)和语句表(STL)。
1.梯形图(LAD-LAdder Diagram)梯形图是使用最多的PLC编程语言。
因与继电器电路很相似,具有直观易懂的特点,很容易被熟悉继电器控制的电气人员所掌握,特别适合于数字量逻辑控制。
梯形图由触点、线圈和用方框表示的指令构成。
触点代表逻辑输入条件,线圈代表逻辑运算结果,常用来控制的指示灯,开关和内部的标志位等。
指令框用来表示定时器、计数器或数学运算等附加指令。
在程序中,最左边是主信号流,信号流总是从左向右流动的,不适合于编写大型控制程序。
2.流程图(SFC-Seauential Fuction Chart)顺序功能图(SFC)这是位于其它编程语言之上的图形语言,用来编程顺序控制的程序(如:机械手控制程序)。
编写时,工艺过程被划分为若干个顺序出现的步,每步中包括控制输出的动作,从一步到另一步的转换由转换条件来控制,特别适合于生产制造过程。
3. 功能块图(FBD-Function Block Diagram)功能块图使用类似于布尔代数的图形逻辑符号来表示控制逻辑,一些复杂的功能用指令框表示,适合于有数字电路基础的编程人员使用。
功能块图用类似于与门、或门的框图来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入、输出端的小圆圈表示“非”运算,方框用“导线”连在一起,信号自左向右。
4.结构化文本(ST-Structured Text)STEP7的S7 SCL结构化控制语言,编程结构和C语言和Pascal语言相似,特别适合于习惯于使用高级语言编程的人使用。
5.语句表(STL-STatement List)语句表(STL)是一种类似于微机汇编语言的一种文本编程语言,由多条语句组成一个程序段。
语言表适合于经验丰富的程序员使用,可以实现某些梯形图不能实现的功能。
PLC的编程语言简介PLC(可编程逻辑控制器)被广泛应用于工业领域,用于自动化控制系统,从而实现对机械设备、工艺流程和生产线的精确控制。
PLC的编程语言是一种特殊的面向过程的语言,用于编写逻辑和控制程序。
本文将介绍几种常见的PLC编程语言及其特点。
一、梯形图(Ladder Diagram,简称LD)梯形图是最早也是最常见的PLC编程语言之一。
它采用与真实的继电器电路类似的图形符号,使用横向的梯形线作为继电器线圈和接触器的连接线。
横向的梯形线中央用于表示逻辑操作,如与(AND)、或(OR)、非(NOT)等。
梯形图简单直观,易于理解和调试,适用于处理逻辑输入输出信号的控制任务。
二、指令表(Instruction List,简称IL)指令表是一种类似于汇编语言的PLC编程语言,它使用简洁的指令代码来表示逻辑和控制操作。
指令表语言基于栈操作和寄存器操作,其语法与典型的汇编语言非常相似。
指令表语言相比梯形图更为灵活,可用于编写复杂的逻辑运算和算术计算等程序。
三、功能块图(Function Block Diagram,简称FBD)功能块图是一种图形化的PLC编程语言,其图形符号表示控制系统的功能块和信号之间的连接关系。
每个功能块表示一个逻辑或控制操作,如算术运算、比较操作、计数、定时器等。
功能块图结构清晰,易于维护和扩展,适用于大型和复杂的控制任务。
四、结构化文本(Structured Text,简称ST)结构化文本是一种基于高级编程语言的PLC编程语言。
它使用类似于Pascal或C语言的结构化代码,具有完整的变量类型、条件语句、循环和函数等编程结构。
结构化文本语言非常强大,可用于编写复杂的算法和逻辑控制程序,但对于初学者来说可能较为复杂。
五、顺序功能图(Sequential Function Chart,简称SFC)顺序功能图是一种图形化的PLC编程语言,用于描述程序的状态和过程流程。
它由不同的状态和状态之间的转换组成,简化了复杂逻辑的编写过程。
PLC编程入门带您认识6种编程语言~附详细解读!
传统的plc编程语言只有两种,指令表(IL)及梯形图(LD),有的称梯形逻辑图(LLD)。
而今为便于各类型的工程技术人员都能使用PLC,PLC厂商都增加了它的编程语言。
国际电工组织也制定与几次修订了plc编程语言国际标准。
并在1993年做了全面修订后称之为IEC 61131-3的修订版。
我国在1995年11月发布了GB/T 15969-1/2/3/4标准,与IEC 61131-1/2/3/4等同。
该标准推荐了6种编程语言,除了指令表及结构化文本(ST)为文字语言,还有梯形图、功能块图(FBD)、连续功能图(CFC)及顺序功能图(SFC)等图形语言。
目前,IEC 61131-3编程语言不仅用于PLC,而且还用于集散型控制系统、工业控制计算机、数控系统和远程终端单元。
由于这个标准的建立是在PLC已广泛使用之后,加上它不是强制性标准,所以,有些老的PLC厂商还是在原来语言的基础上做了扩展,并没有完全采用这个标准。
再就是,即使语言相同,但细节还是有不少差异。
倒是国产PLC,如和利时公司的LM、LK系列机,是在有了标准之后才开发的,能全面采用这个标准。
再就是ABB公司的PLC也使用标准规定的6中语言编程。
下面就给大家简要介绍一番:
1.指令表(IL)
指令表语言是PLC编程最基本的语言。
但是,用它编的程序,可读性较差,目前已不常用。
故不在此做介绍。
2.结构化文本语言(ST)
ST语言与BASIC语言、PASCAL语言或C语言等类似。
它没有单一的指令,只有由一组指令构成的含义完整的各种语句。
具体语句有赋值语句、条件语句、选择语句、循环语句及其他语句(EXIT语句、RETURN 语句、功能块调用语句等)。
不同品牌PLC的ST语言所提供的函数、运算符可能略有不同。
ST语言功能比图形语言强,但不如图形语言直观,目前用的还不大普及。
如欧姆龙plc只是在自编功能块的程序中才可使用它。
同样为ST语言,各PLC厂商的细节不完全一样。
3.梯形图(LD)
梯形图来源于美国,是一种基于梯级的图形符号布尔语言。
梯形图语言与电气原理图相对应,与原有继电器逻辑控制技术相一致。
与原有的继电器逻辑控制技术不同的是,梯形图中的功率流不是实际意义的电流,内部的继电器也不是实际存在的继电器。
梯形图的左母线好像电气原理图的电源线一样,一般不直接与输出类指令(相当于电气原理图的负载)相连,中间总要有能建立逻辑条件的一些指令(相当于电气原理图的控制元件)。
但有的PLC也允许这么做。
用梯形图符号编的PLC程序,很像电气原理图。
如上图所示。
图b为施耐德公司Naza PLC用的梯形图。
下图所示为与IL语言程序对应的梯形图程序
关于梯形图的文章有很多,在此不再赘述。
4.功能块图(FBD)
FBD语言(一种对应于逻辑电路的图形语言),与电子线路图中的信号流图非常相似。
FBD广泛地用于过程控制。
FBD语言是以功能模块为单位,描述控制功能。
特别是控制规模较大、控制关系较复杂的系统,用它表达将更为方便。
目前,PLC厂商推出一些高功能及高性能的硬件模块的同时,多提供与其有关的功能块图程序,这为用户使用这些硬件及进行编程提供了很大方便。
FBD语言占用内存较大,执行时间较长,因此,这种语言多只在大、中型可编程序控制器和集散控制系统的编程和组态中采用。
5.连续功能图(CFC)
CFC与FBD类似,也是按需要选用种种功能块。
所不同的是,它更灵活,块的位置可任意摆放,特别有信号反馈时,画起来更方便。
为了块的执行有明确的顺序,它的每个块的右上角都标有序号。
但在实际表达时,这个标号也可选择不显示。
FBD及CFC语言在dcs系统编程中用得较多。
此外,由于这两种语言差别不大,有时,仅使用FBD语言。
因而,有的也把IEC 61131-3自动化编程语言说成5种。
6.顺序功能图(SFC)
SFC语言以描述控制程序的顺序为特征,以图形方式,简单、清楚地描述系统的所有现象,并能对系统中存有的像死锁、不安全等反常现象进行分析和建模,并可在此基础上编程。
所以,得到了广泛的应用。
其实,SFC语言仅仅是一种组织程序的图形化方式。
其实际使用要与其它语言配合,否则无法实现其功能。
所以,严格地讲,它不能算是完整的编程语言。
1)组成
步(Step)
用方框表示,分有初始步、活动步、不活动(休止)步三种。
一个步是否为活动步,即是否处于激活状态,则取决于上一步及与其相应的转移。
动作(Action)
动作是步的组成部分,一个步含有一个或多个动作,用一个附加在步上的矩形框来表示。
每一动作中的程序代码都可以用IEC的任一语言
如ST、FBD、LD或IL来编写。
每一动作还有一个修饰词(Qualifier),用来确定步激活时其动作什么时候执行或终止。
有向连线
从上到下、从左到右的步间连线。
也可用加箭头做非上下、左右的步间连线。
转移
在有向连线上的垂直短线。
与转移相关的逻辑条件,用文字、布尔代数表达式、图形符号标注在转移短线旁。
2)SFC转移规则
步的转移指的是有向连线相连的前后步激活状态的转换。
步间转移的规则是:
①步间的转移逻辑条件为真;
②被转移步的前一步是活动的。
不满足此两条件,将不转移。
为了启动顺序功能流程图程序的执行,总是要指定一个初始步,其标志为S0,是程序运行开始时被激活的那个步。
有个这个初始步,则随着相应转移逻辑条件满足,流程图中步的激活状态将逐步转换,直至最后一步被激活,或根据有向线指定路线不停地循环转换。
3)SFC主要形式
根据结构的不同,可分为以下几种形式:单序列控制、并行序列控制、分支结构序列、转移序列等。
下图所示为一段SFC语言编写的程序。
同样称SFC语言,但有的是合乎标准的,如欧姆龙CJ2所用的,其Action有以上修饰词。
有的没有,使用时要看具体软件的说明。