初学者必懂,S7-1200 PLC的程序结构
今天我们来了解一下S7-1200 PLC的程序结构。其实S7-1200 PLC跟S7-200 /200 smart PLC的程序结构是不一样的,它是延续了S7-300/400 PLC的程序结构,分为OB块(组织块),FB块(函数块),FC块(函数)以及数据块(DB)。
下面会分别介绍一下这些程序块的功能和特点。
组织块OB
1、在 CPU 启动时;
2、在一个循环或延时时间到达时;
3、当发生硬件中断时;
4、当发生故障时;
5、组织块根据其优先级执行。
因此,组织块的基本功能是调用用户程序,同时还可以执行自动化系统的启动、循环程序的处理、中断程序的执行以及错误的处理等功能。
不同类型的组织块完成不同的功能,组织块OB的类型主要有以下几种。
通过上图,我们可以看到 OB 组织块分为三个优先组 ,高优先组中的组织块可中断低优先组中的组织块;如果同一个优先组中的组织块同时触发将按其优先级由高到低进行排队依次执行;如果同一个优先级的组织块同时触发时,将按块的编号由小到大依次执行。
数据块DB
什么是数据块DB? 数据块用于存储程序数据,分为全局数据块和背景数据块。数据块就相当于其他的变量地址,访问方式分为直接和间接寻址方式。在创建db块时,如果需要可以插入建好的。对于背景数据块,它与函数块相关联,存储FB的输入、输出、输入/输出、静态变量的参数,其变量只能在FB中定义,不能在背景数据块中直接创建,程序中调用FB时,可以分配一个创建的背景DB,也可以直接定义一个新的DB块,该DB块将自动生成并作为这个FB的背景数据块。
数据块的访问:
符号访问: <DB块名>.<变量名>;例如:Data_Block_1.Var1;
绝对地址访问: <DB块号>.<变量长度及偏移量>:DB1.DBX0.0;DB1.DBB0;DB1.DBW0;DB1.DBD0。
注意:复杂数据类型只能符号寻址。
函数FC
什么是函数? 函数FC是用户编写的没有固定的存储区的块,其临时变量存储在局部数据堆栈中,FC执行结束后,这些数据就丢失。函数FC常用于对一组输入值执行特定运算,例如:可使用 FC 执行标准运算和可重复使用的运算(例如数学计算)或者执行工艺功能(如使用位逻辑运算执行独立的控制)。函数FC也可以在程序中的不同位置多次调用,简化了对经常重复发生的任务的编程。
函数FC在使用时可以选择不带参数的FC和带参数的FC,若需要使用带参数的FC,那么在打开FC后,需要在FC的接口定义相关的接口参数,调用函数FC时需要给FC的所有形参分配实参。接口区的各个参数含义如下图。
点击查看大图
函数块FB
什么是函数块? 函数块FB是用户编写的带有自己的存储区的块。函数块FB在使用时可以使用带参数的FB和不带参数的FB。带参数的FB和带参数的FC的区别在于,带参数的FC调用后需要赋予实参后才可运行,而带参数的FB可以不赋予实参,也可以运行。FB的接口区的各个参数含义如下图:
点击查看大图
FB与FC相比,每次调用函数块都必须为之分配背景数据块,一个数据块可以作为一个函数块的背景数据块,也可以作为多个函数块的背景数据块(多重背景数据块),背景数据块作为函数块的存储器,可以将接口数据区(TEMP类型除外)以及函数块运算的中间数据存储于背景数据块中,其他逻辑程序可以直接使用背景数据块存储的数据。对于FC,中间逻辑结果必须使用函数的输入、输出接口区存储。
函数块FB很少作为子程序使用,通常将函数块作为具有存储功能的函数使用,每调用一次分配一个背景数据块,将运算结果传递到背景数据块中存储。一些特殊编程应用可以在函数块中指定接口数据区存储于多重背景数据块的开始位置,使用更灵活。
那么以上就是S7-1200 PLC的程序结构,OB块、DB块、FB块、FC块的功能和特点,了解这个基础也是很重要的,如果是只使用过S7-200/200 SMART PLC的学员,要想更好的学习1200 PLC,了解这个知识是必不可少的哦。(技成培训原创,作者:蔡慧荥,未经授权不得转载,违者必究!)
↓学习资料
学习PLC编程之前,我们需要了解哪些背景知识点?
在学习PLC编程之前,我们需要了解以下几个关键的背景知识点:
a. 电气工程:PLC(可编程逻辑控制器)是一种用于控制和监控工业过程的电子设。了解电气工程的基本概念和原理将有助于我们更好地理解PLC的工作原理。
b. 计算机科学:PLC编程通常使用一种称为Ladder Diagram(梯形图)或Structured Text(结构化文本)的图形化编程语言。学习计算机科学的基本概念,如数据结构、算法和编程范式,将有助于我们更好地理解PLC编程的逻辑和方法。
c. 自动化技术:PLC编程是自动化技术的一个重要组成部分。了解自动化技术的基本原理和应用,如传感器、执行器和控制系统,将有助于我们更好地理解PLC编程在实际应用中的作用。
d. 通信技术:PLC通常需要与其他设备和系统进行通信,如触摸屏、上位机软件等。了解通信技术的基本原理和应用,如串口通信、以太网通信等,将有助于我们更好地理解PLC编程中的通信部分。
e. 软件工程:PLC编程通常需要使用专门的编程软件进行开发和调试。了解软件工程的基本概念和原则,如模块化设计、版本控制等,将有助于我们更好地组织和管理PLC程序。
PLC编程基本讲解:
PLC(Programmable Logic Controller,可编程逻辑控制器)是一种用于控制和监控工业过程的电子设备。它采用可编程的存储器,用于存储执行控制任务所需的逻辑函数、数据和指令。PLC编程通常使用一种称为Ladder Diagram(梯形图)或Structured Text(结构化文本)的图形化编程语言。这些编程语言具有直观、易读的特点,使得程序员可以快速地编写和修改程序。
具体例子:
a. 问题描述:假设我们需要控制一个生产线上的传送带,当检测到产品到达时,自动将产品送到下一个工位;当检测到产品缺失时,自动停止传送带并报警。
b. 问题分析:为了实现这个功能,我们需要设计一个程序,首先检测产品是否到达,然后根据检测结果控制传送带的动作;同时,我们还需要一个报警机制,当检测到产品缺失时触发报警。
c. 为什么使用该知识点:由于PLC编程具有直观、易读的特点,我们可以很容易地设计出满足问题需求的控制逻辑。此外,PLC还具有丰富的输入输出接口,可以方便地与其他设备和系统进行通信。
d. 应用过程和解答步骤:首先,我们需要使用Ladder Diagram或Structured Text编写程序逻辑,包括检测产品到达/缺失的条件判断、传送带动作的控制以及报警机制的实现。然后,将编写好的程序下载到PLC中进行测试和调试。最后,将调试好的程序部署到实际生产线上运行。
e. 问题计算结果:通过实施PLC编程方案,我们可以实现对传送带的精确控制,提高生产效率和产品质量。同时,报警机制可以及时发现并处理问题,降低生产风险。
对社会、世界、行业的影响和改变:PLC编程在自动化技术领域具有重要的地位,广泛应用于制造业、能源、交通等领域。通过PLC编程实现对生产过程的自动控制,可以提高生产效率、降低成本、保障产品质量和安全,从而推动社会经济的发展和进步。
扩展知识点:
a. 传感器技术:传感器是PLC系统中获取现场信息的关键部件。了解不同类型的传感器及其工作原理,有助于我们更好地设计和配置PLC程序。
b. 人机界面(HMI):HMI是PLC与操作人员之间的重要桥梁。了解HMI的基本概念和应用,可以帮助我们更好地设计友好的人机交互界面。
c. 工业机器人:工业机器人是现代制造业的重要组成部分。了解工业机器人的基本概念和技术特点,可以帮助我们更好地利用PLC编程实现机器人的控制和管理。
d. SCADA系统:SCADA(Supervisory Control and Data Acquisition,监控控制与数据采集)系统是工业自动化领域的一种重要监控和管理工具。了解SCADA系统的基本原理和应用,可以帮助我们更好地实现对生产过程的远程监控和控制。
e. 工业以太网:工业以太网是现代工业通信的基础。了解工业以太网的基本概念和技术特点,可以帮助我们更好地利用PLC编程实现与其他设备的高速、稳定通信。
如何精进PLC编程知识:
如果想更深入地学习PLC编程知识,可以参考以下途径:
阅读专业书籍:市面上有很多关于PLC编程的专业书籍,如《PLC编程与应用》、《PLC原理与应用》等,可以从基础入门到高级应用全方位学习。
参加培训课程:很多培训机构都提供针对PLC编程的培训课程,可以根据自己的需求选择合适的课程进行学习。
加入技术社区:可以加入一些PLC编程的技术社区,如论坛、微信群等,与其他学习者和专家交流心得,共同进步。
相关问答
plc产生的背景是什么?
PLC是可编程逻辑控制器的简称,它产生的背景是工业自动化的需求。传统的机械控制系统难以满足现代工业生产的高效、精准要求,而PLC的出现改变了这种状况。PLC...
plc控制步进电机的应用背景?
比方和电脑配合控制刻字,绘图等。比方和电脑配合控制刻字,绘图等。
plc研究背景?
1968年美国通用汽车公司提出取代继电器控制装置的要求,因为继电器控制太庞大,容易出现问题!同时体力也大!所以通用公司进行招标!需要取代继电器控制装置的要...
plc程序里有黄色的部分是什么原因?
三菱plc程序上载后显示黄色区域是因为程序的一个逻辑行内的指令过多引起。当一个逻辑行中指令实际占用行数超过24行时,在梯形图模式中就会显示黄色。例如:指...
PLC岗位面试自我介绍?
我介绍是PLC岗位面试中的重要环节,也是面试官了解求职者的第一步,需要认真对待为PLC是ProgrammableLogicController的缩写,即可编程逻辑控制器,主要用于工...
plc什么叫带背景模块?
PLC带背景模块是指一种可插拔的模块,可直接插入PLC基础模块中,并提供了额外的功能,如通信、数据存储和处理等。这些功能模块是预先设计和制造的,以便与PLC基...
我的电脑被我不小心删了一个什么程序,屏幕就变成黑色背景了,...
西门子plc编程软件step75.5有几个版本5155浏览4回答OPPO怎么联接小米手环?455浏览6回答mrk文件肿么打开啊?是图片,文字还是视频文件啊?6688浏览7回....
西门子PLCS7-200和S7-300编程有有什么不同?
有什么不同:编程语言不一样,S7-200系列的编程语言有三种:语句表(STL)、梯形图(LAD)、功能块图(FBD);S7-300系列的除了这三种外,还有结构化控制语言(S...有什...
什么是PLC,什么的DCS?
[回答]PLC,即逻辑可编程控制器,是一种数字运算操作的电子系统,专为在工业环境应用而设计的。它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算,...
在PLC编程中肿么判断占了几个程序步?-ZOL问答
4条回答:【推荐答案】PLC中的每条编程语言都是以时钟为基准的!举例来说,一条加法指令2个时钟周期完成,而一条乘法指令4个指令周期完成!PLC也是一种潜入式的系统...