c#发展

注册

 

发新话题 回复该主题

三菱Q系列PLC,定时中断程序设置基 [复制链接]

1#
白癜风协会常务理事 https://m.39.net/news/a_9192508.html

写主程序:

程序部件→程序→POU_01→程序本体(主程序),写完后在程序设置中把无执行类型指定中的MAIN拖入到扫描程序。

例:

启中断→MCJ

一一一一一II一一ENENO一

P0一p←一跳转到P0

DI←一中断禁止

一一ENENO

M←关中断CJ

P0一一一II一一一一ENENO一

P1一p←一跳转到P1

MMOVP←传送到数组[1]

一一一II一一一ENENO一

H一sd一数组[1]

转换二进制就是00

IMASK←中断执行数组

一一一一一ENENO一

数组一s

EI←中断使能

一一一ENENO一

M0Y20

P1一一一II一一一()

S的数组表:

数组标签建立:全局标签设置→Global1→类:VAR_GLOBAL→标签名:数组→对象:全部,数据类型:如Word,类型分类:基本数据,数组元素:数组,元素数:如16→确定→软元件:如D,元素0,D10;元素1,D11……

建立“中断”过程:

扫描程序→MAIN→新建数据→数据类型:任务→数据名:中断程序1→确定

选择程序名字右击→新建数据→数据类型:程序块→数据名:中断程序1→程序语言:结构化梯形图/FBD→确定

选择程序名字右击→属性→详细→事件:I28(定时中断指针)→恒定周期:0→优先度:28→确定。

同样设置中断程序2的属性为I31,定时中断只有4个指针:I28~I31。

中断设置:

参数→选择“PLC参数”双击→PLC系统设置→系统中断设置。

编写“中断程序1”:

例:

M3Y21

一一一一II一一一()

编写“中断程序2”:

例:

M11+←一一一加法指令

一一一II一ENENO一

数据1一s1d1一数据2

数据2一s2

M10M12

一一II一一一一()

中断监视:

中断程序不能仿真,结构化梯形图不用IRET返回。#plc#

分享 转发
TOP
发新话题 回复该主题