工作:三菱PLC R系列的程序、子程序及中断程序

工作:三菱PLC R系列程序扫描与子程序、中断程序

Ⅰ、理论

一、程序的执行

扫描流程构成

在这里插入图片描述

1. 初始处理及RUN时初始化处理

在初始处理及RUN时初始化处理中,进行以下处理。
在这里插入图片描述

2. I/O刷新

开始程序运算前执行以下内容。

  • 从输入模块/智能功能模块至CPU模块的ON/OFF数据的输入
  • 从CPU模块至输出模块/智能功能模块的ON/OFF数据的输出
  • 执行恒定扫描时,恒定扫描的等待时间结束之后再进行I/O刷新。

3. 程序的运算

按照程序设置,从各程序的步0开始执行至END/FEND指令为止。该程序称为主程序。此外,可以将主程序分割为子程序等等

4. END处理

在这里插入图片描述
在END处理中也会执行中断程序或恒定周期触发类型的程序、事件触发类型的程序(触发类型发生中断时)。不希望在END处理中执行中断程序的情况下,应在END处理之前通过DI指令将其置为中断禁止状态,之后在程序的起始处通过EI指令将其置为中断允许状态。

二、数据通信及输入输出处理

(一)数据通信

在数据通信中,对CPU模块与智能功能模块等的输入输出信号以及缓冲存储器、链接软元件等的数据进行通信。
数据通信中,分为将模块数据通过END处理自动发送接收到CPU模块的软元件及标签中的刷新方式和执行程序指令时进行访问的直接方式。

(二)输入输出处理及响应延迟

CPU模块的输入输出处理是刷新方式。但是,可通过在程序中使用直接访问输入输出

1.刷新方式

在这里插入图片描述
*1也有不是在每个END处理时执行,而是在指定的END处理时执行刷新处理的模块

2.直接方式

在执行程序时进行用指令直接访问输入输出模块。

3. 刷新方式和直接方式的对比

在这里插入图片描述

(三)刷新方式

在指定的时机对输入输出模块进行批量访问。
输入刷新及输出刷新的时机取决于指定的刷新时机的设置。
在这里插入图片描述

1. 详细内容

在这里插入图片描述

*1远程输入刷新区是指在CC-Link IE控制网络、CC-Link IE现场网络、CC-Link IE现场网络Basic、MELSECNET/H、CC-Link中对输入(X)中进行了刷新设置情况下的区域。
*2可对工程工具用输入区域进行ON/OFF的操作如下所示。
· 通过工程工具进行的测试操作
· 来自网络模块的写入
· 使用了来自SLMP的外部设备的写入
*3可对输出(Y)用软元件存储器进行ON/OFF的操作如下所示。
· 通过工程工具进行的测试操作
· 来自网络模块的写入
· 使用了来自SLMP的外部设备的写入

在这里插入图片描述

2. 响应延迟

对于相对于输入模块变化的输出的变化,根据外部触点ON的时机,将有最长2个扫描的延迟。
梯形图示例:输入X5为ON时输出Y5E为ON的梯形图
在这里插入图片描述

(四)直接方式

在CPU模块中,使用直接访问的指令【输入(DX)、输出(DY)】进行直接方式的输入输出处理。
在这里插入图片描述

1. 详细内容

在这里插入图片描述
*1可对工程工具用输入区域进行ON/OFF的操作如下所示。
· 通过工程工具进行的测试操作
· 来自网络模块的写入
· 使用了来自SLMP的外部设备的写入
*2可对输出(Y)用软元件存储器进行ON/OFF的操作如下所示。
· 通过工程工具进行的测试操作
· 来自网络模块的写入
· 使用了来自SLMP的外部设备的写入
在这里插入图片描述

2. 响应延迟

根据外部触点ON的时机,将有最长1个扫描的延迟。
梯形图示例:输入DX5为ON时,输出DY5E为ON的梯形图
在这里插入图片描述

三、程序的类型

(一)初始处理类的程序

用于智能功能模块的初始处理之类的,Run的第一个扫描周期只执行一次
在这里插入图片描述

(二)扫描类型的程序

执行初始处理类的程序后,每个扫描周期都执行1次的程序。
在这里插入图片描述

(三)恒定周期间隔触发类的程序

是在各指定时间执行的中断程序。但是,与通常的中断程序不同,无需记述中断指针(I)及IRET指令,而是以程序文件单位执行。
在这里插入图片描述

  • 执行恒定周期类型程序时,需要通过EI指令置为中断允许状态

1. 恒定周期间隔的设置

[CPU参数]-[程序设置]
在这里插入图片描述

“程序设置”画面
在这里插入图片描述
“详细设置”画面在这里插入图片描述
“恒定周期执行类型详细设置”画面
在这里插入图片描述

2. 执行条件成立时

■ 通过EI指令置为中断允许状态之前执行条件成立的情况下

程序成为等待状态,在变为中断允许执行状态的时刻执行。此外,在等待的状态中,即使该恒定周期执行类型程序的执行条件多次成立,在变为中断允许状态的时刻也仅执行1次程序。

■ 在链接刷新程序执行中发生了恒定周期执行类的程序中断被触发的情况下

暂停链接刷新的程序,执行恒定周期执行类型的程序。CC-Link IE现场网络等的链接刷新中,即使进行了循环数据的站单位块保证,在恒定周期执行类型程序中使用了设置为刷新目标的软元件的情况下,将无法进行循环数据的站单位块保证。
在这里插入图片描述

■ 执行恒定扫描时的END处理后的等待时间中,发生了恒定周期执行类的程序中断被触发的情况下

执行恒定周期执行类型程序。
在这里插入图片描述

■ 恒定周期执行类的程序在执行中发生了其他类型程序中断被触发的情况下

恒定周期执行类型的程序执行中发生了中断程序(也包括发生事件执行类型程序的中断时的指定)的情况下,按照中断优先度执行动作

3.恒定周期执行模式

在恒定周期执行类型的程序及通过CPU模块的内部定时器进行的恒定周期中断(I28~I31、I48、I49)中,可以设置有多次触发中断情况下,在中断允许后的程序执行次数。但是,发生通过DI指令等进行的中断禁止设置,执行时,不在恒定周期执行模式的对象范围内。

■ 恒定周期执行模式的动作
  • 优先执行次数
    ,对保证程序的执行次数。
    触发次数全部记录后,执行时,执行对应触发次数遍中断程序
    在这里插入图片描述
  • 优先恒定周期性
    中断程序存在执行要等待的情况下,将该程序的执行在从扫描周期开始的延迟限制值的范围内执行,但是,即使存在多次中断被触发也仅执行1次
    在这里插入图片描述
■ 恒定周期执行模式的设置

[CPU参数]-[中断设置]-[恒定周期执行模式设置]
在这里插入图片描述

项目 内容 设置范围 默认
恒定周期执行模式 恒定周期性优先的情况下,将该执行在从周期开始的延迟限制值的范围内执行。执行次数优先的情况下,按执行等待的次数全部执行。 优先恒定周期性 / 优先执行次数 优先恒定周期性
■ 从扫描周期开始的延迟限制值设定

从扫描周期开始的延迟(偏差)的允许值设定如下所示,在该范围内中断使能变为允许状态的情况下,执行等待的程序。否则超出范围了就不在执行中断程序。
在这里插入图片描述
从周期开始的延迟限制值根据以下情况而有所不同。

  • 恒定周期执行类型的程序的情况下
    变为所有恒定周期执行类型程序的恒定周期间隔的最大公约数。例如,存在有周期为2ms、4ms、12ms的恒定周期执行类型程序的情况下,从周期开始的延迟限制值将变为2ms。
  • 通过CPU模块的内部定时器进行的恒定周期中断(I28~I31、I48、I49)的情况下
    固定为与恒定周期间隔相同的值。例如,如果周期为I28:100ms,I29:20ms,从周期开始的延迟限制值将变为I28:100ms,I29:20ms。

(四)事件触发类的程序

是将指定的事件作为触发的程序
在这里插入图片描述

1. 触发类型

■ 通过中断指针(I)触发执行的中断程序

中断指针(I)被触发时,立即执行1次程序。此外,执行之前,需要通过EI指令预先置为中断允许状态。由于可以作为独立中断程序,因此扫描执行类型程序中无需记述通过FEND指令、中断指针及IRET指令分割的程序。
在这里插入图片描述

■ 位数据的ON(TRUE)来触发的程序

如设置Y50为ON的情况下执行事件程序。Y50为OFF的情况下不执行程序。
设置为“清除输出及定时器的当前值”的情况下,Y50变为OFF后,下一次事件类型程序执行时,相应程序内使用的输出(Y)及定时器(T)及超长定时器(LT)的当前值将被清除。
在这里插入图片描述

  • 事件执行类型的程序的触发执行的条件未成立时,定时器及累计定时器也在继续进行计测的情况下,应使用超长定时器(LT)及超长累计定时器(LST)。此外,对于定时器(T)及累计定时器(ST),可以在事件执行类型程序中使用,但事件执行类型程序的触发执行条件未成立时不能进行计测。使用定时器(T)及累计定时器(ST)的情况下,应将“清除输出及定时器的当前值”的设置设置为“清除”。
■ 经过一定时间之后触发的中断程序

将CPU模块置为RUN后,以CPU参数的程序设置中指定的执行顺序执行程序,经过指定时间后相应的事件执行类型的程序在前一个程序执行完后被执行1次程序。从对应的事件执行类的程序的程序执行开始重新计测时间,经过指定时间后,相应的事件执行类型的程序在前一个程序执行完后被执行1次程序,并重复上述动作。不是中断其他程序的执行立马执行的,而是经过指定时间后定期执行程序的情况下,可以使用此类型的模式。此外,经过指定时间后,变为下一个相应的事件执行类型程序的执行时,相应程序内使用的输出(Y)以及定时器(T)及超长定时器(LT)的当前值将被清除。
在这里插入图片描述
(1) 经过指定时间后,变为相应的事件执行类型程序的执行对应的顺序时,将执行事件执行类型程序C。
(2) 设置为“清除输出及定时器的当前值”的情况下,经过指定时间后的下一个事件执行类型程序的执行顺序时,相应程序内使用的输出(Y)以及定时器(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尖枫508

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值