什么是线性化编程、模块化编程、结构化编程?
今天我们来说一说什么是线性化编程、模块化编程和结构化编程。
线性化编程的程序结构示意图如上图所示,线性化化编程 是将整个用户程序都放在循环组织块OB1中,也就是主程序中,CPU循环扫描时不断地依次执行OB1中的全部指令。线性化编程的特点是结构简单,不带分支,一个程序块包含了系统的所有指令。由于所有的指令都在OB1中,循环扫描工作方式下每个扫描周期都要扫描执行所有的指令,即使某些部分代码在大多数时候并不需要执行,因此,CPU效率低下,没有充分利用。另一方面,如果需要多次执行相同或者类似的操作,需要重复编写相同或类似的程序。再者,由于程序结构不清晰,会造成管理和调试的不方便。建议在编写大型程序时应尽量避免采用线性化编程。
模块化编程的程序结构示意图如上图所示,模块化编程 是将程序根据功能分为不同的逻辑块,在OB1中可以根据条件决定块的调用和执行。模块化编程的特点是控制任务被分成不同的块,易于几个人同时编程,调试也比较方便。由于OB1中根据条件只有在需要时才调用相关的程序块,因此每次循环中不是所有的块都执行,CPU的利用效率得到了提高。模块化编程中,被调用块和调用块之间没有数据交换。
结构化编程的程序结构示意图如上图所示,结构化编程 是将过程要求类似或相关的任务归类,形成通用的解决方案,在相应的程序块中编程,可以在OB1或者其它程序块中调用。该程序块编程时采用形式参数,可以通过不同的实际参数调用相同的程序块。结构化编程中,被调用块和调用块之间有数据交换,需要对数据进行管理。结构化编程必须对系统功能进行合理地分析、分解和综合,对编程设计人员的要求较高。在对西门子S7-1200 CPU编程时,推荐使用结构化编程方法。
以上,我们介绍了西门子S7-1200的几种编程方法,并给大家讲解了什么是线性化编程、模块化编程和结构化编程。想要学习更多西门子PLC编程知识,请持续关注本号内容,我们共同学习提高!
西门子PLC的三种程序结构介绍
西门子PLC有三种程序结构,分别是:线性化编程、模块化编程、结构化编程。这三种模式各有特点,我们要取其长、避其短。我们以西门子PLC300为基础来各举一个例子:
一、线性化编程
线性化编程序就是一条路走到黑,没有什么功能和功能块,最多用个DB和符号表。所有的程序都写在了OB1里面。这对于一些功能简单,短小的程序比较适合,一旦涉及一些大一点的程序,需要一个功能所复使用的,就不方便了,程序大而且占用CPU运行时间,对变量的管理也不灵活。下面来举一个例子来说一下线性化编程。
这就是线性化编程,一台电机用一段程序来启停,假如有一百台电机,这一段程序就要写一百遍。
二、模块化编程
在模块化编程里面,我们用到了功能(FC),把电机启动程序写到FC里面,然后在OB1里面调用,但是FC里面用的变量都是真实变量,所以说FC的使用,只比线性化编程强了一点点,使程序看着更加直观,方便调试和查找。
FC相当于一个子程序,对应一个功能。这里我写了三台电机启停,分别用了三个FC,然后OB1里面的内容很简洁,直接调用它就可以了。
三、结构化编程
结构化编程的思想比较先进,就是功能只写一次,需要用的时候就调用一次,可以调用多次,变量也可以用临时变量,所以变量的占用更少,管理也简单,相对来说,程序也变得直观且简洁。
这里就只写了一个FC1,然后在OB1里面调用了三次,只是每次调用分别给它不同的I点和Q点,它就可以分别控制三台电机的启动和停止。
相关问答
学好PLC有什么用?
其实就业环境是不错的。经常有人问到:“学会PLC可以找什么工作?”其实学会了这门技术活工作真的不用愁!下面来分享下我的浅见:1.机械设计,产品设计,就是...
在PLC中使用数学问题有哪些?
在PLC(可编程逻辑控制器)中使用数学问题主要涉及以下几个方面:算术运算:PLC可用于执行基本的算术运算,如加法、减法、乘法和除法。这些运算可用于各种应用,...
高数难还是编程难?
感谢邀请!过来人,经验性的分享,请参考。我是一名工科生,学了很多数学,大学课程包括,高等数学,线性代数,概率论与数理统计,数学建模。研究生的数学课程...当...
plc是运动控制器吗--jiagee的回答-懂得
plc不是运动控制器。PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算...
plc是运动控制器吗-很懂的懂的回答-懂得
plc不是运动控制器。PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算...
全自动杀菌锅设备的特点是什么?
[回答]◆电脑自动控制,内存100多道杀菌公式,适合于生产多种产品。????◆公司设计、制造、安装三证齐全,便于客户办理安装告知手续◆上罐内有两个消音装置,...
哪个品牌的plc(可编程逻辑控制器)比较好用?
1、首先从市场需求来看,西门子在整个自动化市场占有份额占48%,所以从市场的大环境来看西门子的市场使用率和应用率看,学习西门子更加实用2、第二西门子的是欧...
三菱PLC的模拟量编程,最好有例子?
三菱PLC模拟量编程,最好有例子:1.将模拟量输入口Y0~Y3配置成相应的值。2.为Y0~Y3配置对应的输出X0~X3,将X0~X3设置成对应的或运算。3.为Y0~Y3设置...三...
PLC适用于什么场合?有谁可以回答一下吗?
[回答]PLC精度:实现了位置,速度和力矩的闭环控制;克服了步进电机失步的问题;转速:高速性能好,一般额定转速能达到2000~3000转;适应性:抗过载能力强,能承受...
PLC是什么?
[最佳回答]深圳市星科研自动化培训属下的培训部开设课程广,课程体系完善,教学设备齐全。本星科研自动化培训以诚信为本,理论加实操,让您在尽可能短的时间内学...