S7200中断子程序和它们之间的区别

合集下载

S7-200的程序结构.

S7-200的程序结构.

3.中断程序
中断程序用来及时处理与用户程序的 执行时序无关的操作,或者不能事先预测 何时发生的中断事件。中断程序不是由用 户程序调用,而是在中断事件发生时由操 作系统调用。中断程序是用户编写的。
因为各个程序都存放在独立的程序块中各程序结束时不需要加入无条件结束指令或无条件返回指令
2.3.2 S7-200的程序结构
S7-200系列PLC,CPU的控制程序由每一个项目都 必须并且只能有一个主程序。在主程序中 可以调用子程序和中断程序。
主程序通过指令控制整个应用程序的 执行,每个扫描周期都要执行一次主程序。 因为各个程序都存放在独立的程序块中, 各程序结束时不需要加入无条件结束指令 或无条件返回指令。
2.子程序
子程序仅在被其他程序调用时执行。 同一个子程序可以在不同的地方被多次调 用。使用子程序可以简化程序代码和减少 扫描时间。

Plc程序设计_S7200讲解

Plc程序设计_S7200讲解
图8-24 单 序 列 顺 序 功 能 图 的 置 位 复 位 法 实现
• 2.选择序列
对于图8-19所 示的选择序列, 采用置位复位 法实现的梯形 图程序如图825所示。选择序 列的分支如 图 8-25所示的 “ 网络3”和 “网络4”, 选择序列的合 并如图825“网络7” 所示。
图8-25 选择序列的置位复位法实 现
• 采用顺序控制继电 器作为步序标志写 出图8-29所示的单 序列顺序功能图, SCR指令实现的梯 形图程序如图8-30 所示。
SM0.1
S0.0
I0.0
S0.1
Q0.0 Q0.1
I0.1
S0.2
Q0.1
I0.2
S0.3
Q0.2
I0.3
图8-29 单序列
2. 选择序列
• 对于图8-31所示的选 择序列,采用SCR指 令实现的梯形图程序 如图8-32所示,请结 合顺序控制指令自行 分析。
图8-40 定义向导所生成的PID初始化子程序和中断程序名及手/自动模式对话框
• 单击图8-40 “下一步”,生成PID子程序、中断 程序及符号表等,即完成PID向导的组态。
图8-41 PID向导生成的符号表示例
• 图8-42所示为在主程 序调用PID子程序的清 单及注释。调用PID子 程序时,不用考虑中 断程序。子程序会自 动初始化相关的定时 中断处理事项,然后 中断程序会自动执行。
(3)自动确定滞后和偏差
• 参数“滞后”(Hysteresis)指定了过程变量相对于给定 值的正负偏移量,过程变量在这个偏移范围内时,不会使 继电控制器改变输出值。
• 参数“偏差”(Deviation)指定了希望的过程变量围绕给 定值的峰-峰值波动量。

S7200程序控制类指令及应用.ppt

S7200程序控制类指令及应用.ppt

5
2020/1/11
二、跳转指令的应用实例
6
2020/1/11
7
2020/1/11
第二节 循环指令
一、循环指令及其功能 FOR-NEXT指令循环执行FOR(开始)指
令和NEXT(结束)指令之间的循环体(程序) 指令段一定次数。
FOR—NEXT指令可以实现8层嵌套。FOR 指令和NEXT指令必须成对使用,在嵌套程序 中距离最近的FOR指令及NEXT指令是一对。
中断事件可分为以下三大类:
1.通讯口中断 通讯口中断含端口0及端口1接收及发送相关中断。
PLC的串行通讯口可由梯形图或指令表程序来控制,这 种通讯口的操作模式称为自由端口模式。在自由端口 模式下,可由用户程序设置波特率、字符的位数、奇 偶校验及通信协议。接收及发送中断可以简化程序对 中断的控制。
19
定时器T32/96中断允许及时地响应一个给定 的时间间隔。这些中断只支持1ms分辨率的延时接 通定时器(TON)和延时断开定时器(TOF)T32和T96。 T32和T96的工作方式与普通定时器相同。中断允 许时且定时器的当前值等于预置值时,执行被连 接的中断程序。
21
2020/1/11
二、中断优先级及中断队列
程序控制类指令可以影响程序执行的流向及 内容,对合理安排程序的结构,提高程序功能以 及实现某些技巧性运算,具有重要的意义。
2
2020/1/11
第一节 跳转指令
一、跳转及标号指令
跳转指令使程序流程跳转到指定标号N处的程序分支执 行。
跳转指令
标号指令
N
N
(JMP)
LBL
JMP N
3
LBL N

2020/1/11

中断处理和子程序调用

中断处理和子程序调用

中断处理和子程序调用
中断处理和子程序调用是计算机系统中常见的两种程序控制方式。

中断处理是指当计算机执行某个程序时,发生了特定的事件或条件,导致程序被中断,转而去执行另一个程序,处理完后再返回原来的程序继续执行。

中断处理可以分为硬件中断和软件中断两种类型。

硬件中断是由外部设备触发,例如按键、鼠标等操作;而软件中断则是由程序内部触发,例如异常、系统调用等。

子程序调用是指程序在执行过程中,需要调用某个子程序来完成特定的任务,然后返回主程序继续执行。

子程序通常是独立的、可重复利用的程序模块,可以在不同的程序中多次调用。

在调用子程序时,程序需要将参数传递给子程序,子程序处理完后再返回结果给主程序。

子程序调用是程序设计中常用的一种模块化设计方式,可以提高程序的可读性和维护性。

中断处理和子程序调用都是程序控制的重要手段,但它们的应用场景和实现方式有所不同。

中断处理通常用于处理硬件事件、系统异常等需要及时响应的情况;而子程序调用则更适用于程序中需要复用的功能模块,例如排序算法、字符串处理等。

在程序设计时,需要根据具体情况选择合适的程序控制方式,以实现程序的高效和可靠运行。

- 1 -。

第六章S7200功能指令及使用

第六章S7200功能指令及使用

语句表:INCB OUT 功能:当EN=1时,将单字节长的无符号字节型输入 数IN加1,结果为单字节长无符号整数存入OUT 。
1.四则运算指令—加1指令
②字加1指令 梯形图:
语句表:INCW OUT 功能:当EN=1时,将单字长的有符号输入数IN加1, 结果为单字长有符号整数存入OUT 。
1.四则运算指令—加1指令
到输出端指定的存储单元中去。其中高16位是余数, 低16位是商。
1.四则运算指令—除法指令
在LAD中,执行结果为IN1/IN2→OUT; 在STL中,通常将操作数IN1与OUT共用一个地址单
元,因而执行结果为OUT/ IN2→OUT。
1.四则运算指令—除法指令
①整数除法指令 梯形图:
语句表:/I IN2, OUT 功能:当EN=1时,将两个单字长的有符号整数IN1和 IN2相除,结果为单字长的有符号整数存入OUT 。
1.四则运算指令
(1)加法指令 (2)减法指令
(3)乘法指令
(4)除法指令 (5)加1和减1指令
1.四则运算指令--加法指令
加法指令对两个输入端(IN1、IN2)指定的有符号 数进行相加操作,结果送到输出端(OUT) 。 加法指令可分为整数、双整数、实数加法指令, 它们各自对应的操作数的数据类型分别为有符号整数、
2.数学功能指令—自然指数指令
梯形图:
语句表: EXP IN, OUT 功能:当EN=1时,将32位的实数IN取e为底的指数, 结果为32的实数存入OUT 。
2.数学功能指令—自然对数指令
梯形图:
语句表: LN IN, OUT 功能:当EN=1时,将双字长的实数IN取自然对数, 结果为32的实数存入OUT 。
1.四则运算指令—除法指令

S7200指令总结

S7200指令总结

(STRCK8)是数据则丢失;出栈时,数据从栈顶被取出,所有数据向上串行
一位,在栈底(STRCK8)中装入一个随
名称
说明
机数据。 当所有触点呈简单的串联、并联关系
STRCK0
第1级堆栈(栈顶)
时,可用前面介绍的逻辑指令。当所有触 点呈比较复杂的连接关系时就要用到堆栈
STRCK1 第2级堆栈
操作。因此,逻辑堆栈指令主要用来完成
I0.1
LD I0.1
R
Q0.0,2 Q0.0 Q0.1
5-1 置位、复位指令
六 堆栈指令
⒈ 堆栈的概念
PLC的堆栈是一组存取数据的临时存储单元,是由堆栈位存储器组成的串 联堆栈。逻辑堆栈的操作原则是“先进后出”、“后进先出”。进栈时,数据
串联堆栈。进栈时,数据由栈顶压入,堆栈中原数据行被串行下移一位,在栈底
主程序 子程序1
● ● ●
子程序m
中断程序1
● ● ●
中断程序n
程序结构图
主程序:主程序是程序的主体,每个项目都必须 有并只能有一个主程序。在主程序中可以调用子 程序和中断程序。主程序控制整个程序的执行, 每次CPU扫描都要执行一次主程序。
子程序:子程序是一个可选的指令集合,仅在被 其他程序调用时才执行。同一子程序可在不同的 地方被多次调用,使用子程序可以简化程序和减 少扫描时间。
MSB LSB
7
0
VB10
首字节地址 访问一个字
高有效
字节
MSB
15
87
第有效 字节
LSB
0
MW20
MW21
区域标识符
双字 V D 100 寻址:
MSB 31
VD100

2.11 子程序和中断程序指令[共11页]

2.11 子程序和中断程序指令[共11页]

PLC 职业技能培训及视频精讲——西门子S7-200系列266图2.10.23 TBL_FIND 查表指令应用例(续)2.11 子程序和中断程序指令子程序和中断程序指令包括如下7种:SBR_0(SBR0);-(RET);ATCH ;DTCH ;-(ENI);-(DISI);-(RETI)。

在S7-200 PLC 中,有4种程序:OS 系统程序、OB1主程序、SBR 子程序和INT 中断程序。

OB1主程序、SBR 子程序和INT 中断程序也称为用户程序。

当CPU 工作在STOP 状态,只运行OS 系统程序。

当CPU 工作在RUN 状态时,既运行OS 系统程序,也运行OB1主程序;当满足调用SBR 程序状态时,会暂停现在执行的用户程序进入执行SBR 子程序,执行完SBR 子程序后,再返回原来的地方继续执行原来的程序;当声明允许开中断,有中断源产生,会暂停执行现在的用户程序(包含OB1主程序、SBR 子程序和级别较低的中断程序),进入声明与该中断源有联系的INT 中断程序,中断程序执行完毕自动返回到原来的地方继续执行原来的程序。

OB1是自动循环执行的程序,没有OB1主程序的程序是不可能完成用户程序任务的。

中断连接和中断分离指令的样式如图2.11.1和图2.11.2所示。

第2章 PLC快速提高267图2.11.1 中断连接指令图2.11.2 中断分离指令1.子程序可以从OB1主程序、另一个子程序或中断程序调用子程序,但不能从子程序本身调用子程序。

S7-200 CPU 中总共有64个子程序(0~63)【CPU 226XM 有128个子程序(0~127)】。

在主程序中可以嵌套子程序(在子程序中调用另一个子程序),最大嵌套深度为8,但在中断程序中不能嵌套子程序。

在图2.11.3~图2.11.5的程序中,当I0.0和I0.1都没有上升沿时,执行用户的程序流程是:主程序网络1→主程序网络2→主程序网络3→主程序网络4→主程序网络1。

最完整总结,彻底搞定PLC指令系统(S7200为例)图文并茂

最完整总结,彻底搞定PLC指令系统(S7200为例)图文并茂

最完整总结,彻底搞定PLC指令系统(S7200为例)图文并茂PLC的操作指令在PLC编程之中占着举足轻重的地位,是PLC 编程的万水之源。

PLC指令系统总体如图:PLC操作指令表总表一、位逻辑指令位逻辑指令位逻辑指令主要指对PLC 存储器中的某一位进行操作的指令,它的操作数是位。

位逻辑指令是依靠 1、0 两个数进行工作的,1 表示触点或线圈的通电状态,0 表示触点或线圈的断电状态。

利用位逻辑指令可以实现位逻辑运算和控制,在继电器系统的控制中应用较多。

1.1触点取用指令与线圈输出指令1.2触点串联指令1.3触点并联指令1.4电路块串联指令1.5电路块并联指令1.6置位复位指令1.7脉冲生成指令1.8触发器指令1.9取反与空操作指令1.10逻辑堆栈指令二、定时器指令定时器指令定时器是PLC 中最常用的编程元件之一,其功能与继电器控制系统中的时间继电器相同,起到延时作用。

与时间继电器不同的是定时器有无数对常开常闭触点供用户编程使用。

其结构主要由一个 16 位当前值寄存器(用来存储当前值)、一个 16 位预置值寄存器(用来存储预置值)和 1 位状态位(反映其触点的状态)组成。

三、计数器指令计数器指令计数器是一种用来累计输入脉冲个数的编程元件,在实际应用中用来对产品进行计数或完成复杂逻辑控制任务。

其结构主要由一个16 位当前值寄存器、一个 16 位预置值寄存器和1 位状态位组成。

3.1加计数器3.2减计数器3.3加减计数器四、比较与数字传送指令比较与数字传送指令比较指令是将两个操作数或字符串按指定条件进行比较,当比较条件成立时,其触点闭合,后面的电路接通;当比较条件不成立时,比较触点断开,后面的电路不接通。

数据传送指令用来完成各存储单元之间一个或多个数据的传送,传送过程中数值保持不变。

根据每次传送数据的多少,可将其分为单一传送指令和数据块传送指令,无论是单一传送指令还是数据块传送指令,都有字节、字、双字和实数等几种数据类型;为了满足立即传送的要求,设有字节立即传送指令,为了方便实现在同一字内高低字节的交换,还设有字节交换指令。

中断处理和子程序调用

中断处理和子程序调用

中断处理和子程序调用一、引言中断处理和子程序调用是计算机领域中常用的两种编程技术。

中断处理是指在程序执行过程中,遇到特定事件时,暂停当前任务,转而执行特定的中断处理程序。

而子程序调用是指将一个独立的程序段作为子程序,在需要的时候进行调用,执行完毕后返回到原程序继续执行。

本文将深入探讨中断处理和子程序调用的原理、应用场景及其优缺点。

二、中断处理中断处理是计算机系统中的一种重要机制,用于处理外部事件的发生。

当特定事件发生时,中断会打断当前程序的执行,转而执行中断处理程序。

中断可以分为硬件中断和软件中断两种类型。

2.1 硬件中断硬件中断是由硬件设备触发的中断,例如外部设备的输入输出、定时器的溢出等。

硬件中断需要通过硬件电路来实现,当硬件设备触发中断时,会向CPU发送中断请求信号,CPU则根据中断向量表找到对应的中断处理程序并执行。

2.2 软件中断软件中断是由软件指令触发的中断,也称为软中断或系统调用。

软件中断通常由程序员在程序中主动设置的中断指令触发,用于处理一些特定的操作,如操作系统的系统调用。

软件中断的触发和处理过程由CPU完成,通过改变程序计数器的值,使CPU跳转到中断处理程序的入口地址执行。

2.3 中断处理过程中断处理过程主要包括中断请求、中断响应和中断处理三个阶段。

1.中断请求:当硬件设备或软件触发中断时,会向CPU发送中断请求信号,请求CPU执行中断处理程序。

2.中断响应:CPU在接收到中断请求后,会根据中断类型和中断向量表找到对应的中断处理程序的入口地址,并将当前程序的状态保存起来,以便中断处理完成后能够恢复执行。

3.中断处理:CPU跳转到中断处理程序的入口地址开始执行中断处理代码。

中断处理程序会根据具体的中断类型进行相应的处理,处理完毕后会恢复之前保存的程序状态,并返回到原程序继续执行。

三、子程序调用子程序调用是一种将一个独立的程序段作为子程序,在需要的时候进行调用的编程技术。

子程序通常用于完成某个独立的功能,可以在不同的地方多次调用,提高代码的复用性和可维护性。

S7200SMART与S7200软件的比较

S7200SMART与S7200软件的比较

S7-200 SMART是西门子公司推出的高性价比小型PLC,是国内广泛使用的S7-200的更新换代产品。

我通过大量使用S7-200 SMART,感觉与S7-200相比,它有很多亮点。

因为刚刚诞生,还有一些不足之处,可以期望今年9月升级后的S7-200 SMART会给我们带来更多的惊喜。

1.硬件的比较S7-200 SMART吸取了竞争对手三菱FX系列的一些优点。

FX分为FX1S、FX1N 和FX2N等子系列,它们的性能和价格拉开了差距,给用户更多的选择。

S7-200 SMART的CPU模块分为标准型和经济型,经济型的40点CPU CR40在淘宝网上的售价为900多元,与24点的CPU 224还要便宜一点。

三菱的FX1N有60点的基本单元(即CPU模块),FX2N有64点、80点和128点的基本单元,大I/O点数的基本单元平均每个I/O点的价格较低。

S7-200 SMART 有60点的CPU,而S7-200的CPU (CPU 226)最多40点,它们的价格相差不多。

和S7-1200一样,S7-200 SMART的CPU内可安装一块有多种型号的信号板,使配置更为灵活。

S7-200 SMART的CPU保留了S7-200的RS-485接口,增加了一个以太网接口,还可以用信号板扩展一个RS-485/RS-232接口。

S7-1200没有集成的RS-485接口。

以太网给人的感觉非常好,S7-200用19.2 bps的波特率下载一个30多KB 的项目用了8s,同样的项目用以太网下载,给人的感觉是一瞬间下载就结束了。

我只有最早的S7-1200,同样要求的项目它用以太网下载的速度比S7-200还慢(因为程序增大了100多倍)。

用以太网和交换机(或路由器)实现多台PLC、HMI和计算机的通信非常方便。

S7-1200的24M SIMATIC存储卡可以用来更新操作系统,但是价格高达1000多元,和CPU模块的价格差不多了。

西门子S7-200系列PLC的程序结构

西门子S7-200系列PLC的程序结构

S7-200的程序有三种:主程序、子程序、中断程序。

主程序只有一个,名称为OB1。

子程序可以达到64个,名称分别为SBR0~SBR63。

子程序可以由子程序或中断程序调用。

中断程序可以达到128个,名称分别为INT0~INT127。

中断方式有输入中断、定时中断、高速计数中断、通信中断等中断事件引发,当CPU响应中断时,可以执行中断程序。

由这三种程序可以组成线性程序和分块程序两种结构。

一、线性程序结构线性程序是指一个工程的全部控制任务都按照工程控制的顺序写在一个程序中,比如写在OB1中。

程序执行过程中,CPU不断地扫描OB1,按照事先准备好的顺序去执行工作,显然,线性程序结构简单,一目了然。

但是,当控制工程大到一定程序之后,仅仅采用线性程序就会使整个程序变得庞大而难于编制、难于调试了。

二、分块程序结构分块程序是指一个工程的全部控制任务被分成多个小的任务块,每个任务块的控制任务根据具体情况分别放到子程序中,或者放到中断程序中。

程序执行过程中,CPU不断地调用这些子程序或者被中断程序中断,分块程序虽然结构复杂一些,但是可以把一个复杂的过程分解成多个简单的过程。

对于具体的程序块容易编写,容易调试。

从总体上看,分块程序的优势是十分明显的。

艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。

如需进一步了解台达PLC、西门子PLC、施耐德plc、欧姆龙PLC的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城/。

s7200PLC编程及应用第3章200

s7200PLC编程及应用第3章200

3.2.3 CPU的存储区
1.过程映像输入寄存器(I):外部输入电路接通时对应的过程映像输入 寄存器为ON(1状态),反之为OFF(0状态)。
2.过程映像输出寄存器(Q):梯形图中Q0.0的线圈“通电”时,输出 模块中对应的硬件继电器的常开触点闭合。
3.变量存储区(V):用来存放中间结果和有关数据。 4.位存储区(M):类似于继电器控制系统的中间继电器,32个字节。 5.定时器存储区(T):定时器、计数器的当前值为16位有符号整数,定 时器位用来描述定时器的延时动作的触点的状态。 6.计数器存储区(C):计数器用来累计其计数脉冲上升沿的次数。计数 器位用来描述计数器的触点的状态。 7.高速计数器(HC):用来累计比CPU的扫描速率更快的事件。当前值 为32位有符号整数。 8.累加器(AC0~AC3):32位,可以按字节、字和双字来访问累加器中 的数据。按字节、字只能访问累加器的低8位或低16位。
3.3 位逻辑指令
3.3.1 触点指令与堆栈指令
1.标准触点指令 常开触点对应的位地址为ON时,该触点闭合。 常闭触点对应的位地址为OFF时,该触点闭合。 2.输出指令 输出指令(=)对应于梯形图中的线圈。梯形图中两个并联的线圈用两条 相邻的输出指令来表示。
【例3-2】 已知图3-14中I0.1的波形,画出M0.0的波形。 在I0.1上升沿之前,I0.1的常开触点断开,M0.0和M0.1均为OFF,其波形
【例3-3】 已知图3-17中的语句表程序,画出对应的梯形图。 首先将电路划分为若干块,各电路块从含有LD的指令(例如LD、LDI和 LDP等)开始,在下一条含有LD的指令(包括ALD和OLD)之前结束;然 后分析各块电路之间的串并联关系。 OLD或ALD指令并、串联的是它上面靠近它的已经连接好的电路。

S7-200中断

S7-200中断

S7-200中断由于中断方式可以随机地、高速地处理若干事件,因此在PLC的应用中是经常使用的,因此在本书扼要介绍S7-200的中断功能及其编程的概要。

S7-200的中断能力中断源在CPU 212中,可有下述六种不同的中断源:1.二个I/O事件中断(I0.0的上升沿和下降沿);2.一个定时中断;3.二个串行通信中断(port 0的接收和发送);4.一个高速计数器HSC0中断。

在CPU 214中,可有下述21种不同的中断源:1.八个I/O事件中断(I0.0—I0.3的上升沿和下降沿);2.二个定时中断;3.二个串行通信中断(port 0的接收和发送);4.七个高速计数器中断;5.二个脉冲输出中断(PLS0和PLS1脉冲计数完成)。

在CPU 215中,可有下述24种不同的中断源:1.八个I/O事件中断(I0.0—I0.3的上升沿和下降沿);2.二个定时中断;3.二个串行通信中断(port 0的接收和发送);4.七个高速计数器中断;5.二个脉冲输出中断(PLS0和PLS1脉冲计数完成);6.定时器T32和T96的CT=PT的二个中断;7.一个port 0的完成接收信息中断。

在CPU 216中除具有CPU 215的24种不同的中断源外,还具有下述三个不同的中断源:1.Port 1的完成接收信息中断;2.Port 1接收字符中断;3.Port 1完成发送的中断。

中断的优先级S7-200中的中断优先级别从大的方面可按下列顺序分级:通信(最高级);I/O(含HSC和脉冲序列输出);定时(最低级);在每一级又按表所示的级别分级。

注:* 由于通讯本来就是半双工的,所以发送和接收具有相同的优先级。

** 如果时间12(HSC0,PV=CV)连接到一个中断,则事件0和1都不能连接到中断链中。

相反,如果事件0和1被连接到中断,则事件12就不能连接到中断链中。

优先级还有下列约定:1.在指定的优先级内按先来先服务的原则;2.任何情况下只执行一个中断服务程序,即没有中断嵌套功能(即在执行一个中断服务程序过程中不能再响应并执行另一中断服务程序);3.一个中断正在处理时又有若干中断的申请,则需要按级别分别排列(形成队列),待以后陆续处理。

第16节子程序、中断

第16节子程序、中断

子程序和中断程序在我们西门子PLC S7-200里面有2种程序系统程序和用户程序系统程序是无法改变的,只能拿出来用用户程序分为:主程序子程序中断程序主程序系统程序和用户程序之间的接口,是时刻受到扫描的程序子程序分为不带参数的子程序带参数的子程序子程序有条件返回Micro/WIN会自动增加要求使用的从子程序无条件返回指令,且不在程序编辑器的"子程序POU"标记显示的程序逻辑中显示。

所以在子程序中可以省略不写。

有时候需要有条件强制返回的话,可用此指令!西门子PLC S7-200中子程序范围为0~~~63,一共64个子程序子程序中的程序必须通过子程序调用指令才会被执行。

子程序嵌套最大为8层意思为在0号子程序里面,不包含0号子程序本身,可以调用另外7个子程序。

不带参数的子程序,不需要进行变量声明。

带参数的子程序,必须进行变量声明。

变量声明表变量类型IN:参数输入(输入)IN_OUT:参数地址中的数据输入子程序,经处理后又返回参数地址中。

(输入输出)OUT:参数输出(输出)TEMP:临时存储器(类似M区的中间继电器,但只有在子程序中才生效)数据类型BOOL:位INT:整数BYTE:字节DINT:双整数WORD:字REAL:实数DWORD:双字STRING:字符串如果想增加变量类型可以单击右键插入在变量声明表中所声明的地址,只有在调用该子程序时,才会将实际的局部地址分配给该程序,将该程序执行完后,所有的局部地址会被全部释放掉,为下一个程序做准备。

中断:就是终止当前正在运行的程序,去执行为立即响应的信号而编制的中断服务程序,执行完毕再返回原先终止的程序并继续执行。

中断源:是指发出中断请求的事件,又叫中断事件。

S7-200系列可编程控制器有34个中断源,分为三大类:通信中断、输入/输出(I/O)中断、时基中断(中断优先级由高到低)中断程序1 中断程序不受扫描周期影响2 中断程序在用户程序中拥有最高的执行权3 中断程序只执行一个扫描周期4 中断程序会保持中断返回前的状态5 正在执行的中断程序有最高的执行权6 中断程序范围为0~127,一共128个中断7 不受扫描周期影响的,只需定义一次(激活一次)注意:子程序和中断在执行到末尾时自动返回,不必加返回指令RET和RETI是有条件的返回,也是说可以控制在子程序或者中断没有执行到末尾,强制性的返回到主程序。

关于中断程序与子程序

关于中断程序与子程序

关于中断程序与子程序一.必须先调整PLC当前时钟,见下图:进入SIMATIC MANAGER界面\PLC菜单\单击“显示可访问的节点”必须是在连线的情况下;选择(MPI=2),单击PLC\诊断和设置\设置时钟项弹出如下图:并选择来设置PLC实时时钟。

二.中断程序什么时候会被调用?在s7300/400中,中断程序不是由程序块调用,而是在中断事件发生时由操作系统调用。

例如日期时间中断组织块(OB10);1.在一项目双击CPU ,选择‘时刻中断’选项,选中’激活’,同时设置’执行‘选项,本例选择“每分钟“,“每年”等选项包括:“无”不使用“一次”只执行一次“每分钟”执行一次“每小时”执行一次“每周”执行一次“每月”执行一次“月末”执行一次”每年”执行一次设置开始执行的日期(Start date)和时间(Time of day),设置完成后保存编译。

例如我们选择了”每小时”执行一次.见下图:2.创建OB10,然后打开OB10 组织块编写程序.所要编写的程序就是你Every hour 每小时执行要执行的程序。

3.OB10编写完成后并将项目下载后,PLC运行。

每当Every hour 一小时,系统会自动调用OB10来执行你要执行的程序。

OB10内程序如下:当PLC系统内时钟运行到200-5-25 14:16时,用OB10程序内的M11.0控制OB1程序功能如下:二. s7300/400的中断一般包括:日期时间中断;延时中断;循环中断;硬件中断。

在s7300/400中,上述中断均需调用相应的OB块来实现。

2009-5-25夏永旺。

中断与子程序的区别.

中断与子程序的区别.

3、软硬件的配合 子程序
主程序调用子程序过程完全属于软件处理过程,不 需要专门的硬件电路。
中断
中断处理系统是一个软、硬件结合系统,需要专门 的硬件电路才能完全中断处理的过程。
4、嵌套级的实现 子程序
子程序嵌套可实现若干级,嵌套的最多级数由计算机 内存开辟的堆栈大小限制。
中断
中断嵌套级数主要由中断优先级数来决定,一般优先 级数不会很大。因为FX2N系列PLC可实现不多于2级的 中断嵌套 。
总结
子程序调用是事先在程序中用CALL给定的。
中断调用要求响应时间小于机器的扫描周期,是由外设(中 断源)随机地通过硬件向CPU发中断请求。 整个中断是一个软硬件结合的过程。
作业
请结合课程内容从中断程序与子程序在程序调用,与主 程序关系等方面简述二者的区别。
பைடு நூலகம்
中断与子程序的区别
课程:《激光设备控制技术》 院系:电子工程系 主讲人:蔡文明
中断与子程序的区别 教学目标:
了解中断程序与子程序各自的特点与区别
1、调用发生的时刻
子程序
调用子程序的过程发生时间是已知和固定的。在主程 序中执行调用指令CALL时发生主程序调用子程序,调 用指令所在位置是已知和固定的。
中断
中断调用的过程发生时间是随机的。CPU在执行某 一主程序时收到中断源提出的中断申请时,就会由系 统工作环境随机决定执行中断服务程序。
2、与主程序的关系 子程序
子程序完全为主程序服务,二者属于主从关系。主程 序需要子程序时就去调用子程序,并把调用结果带回主 程序继续执行。
中断
中断服务程序与主程序两者无关,不存在谁为谁服 务的问题,两者是平行关系。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档