📱 手机上看不到完整课程(数字人讲师需要电脑浏览器的 3D 支持)。下面是这节课的图文讲解 + 音频,内容完全一样,手机上也能完整学完。想体验完整课程,用电脑打开这一页即可。
仍然在手机上试试完整课程
让程序插个队
0:39让程序插个队
- 为什么要中断窄脉冲,扫描一圈就过去了
- 怎么理解主程序停手,去执行一小段
- 两大类外部中断 与 定时中断
- ★ 写在哪FEND 之后,IRET 结束
按一下 X2,它就插队执行
前面所有程序都是从前往后、一圈一圈扫描的。可有些事等不起:八毫秒的窄脉冲,扫描一圈就过去了。中断就是让程序插队——事情来了,主程序马上停手,转去执行一小段专门的程序,执行完再回来,不受扫描周期限制。中断分两类:由输入端子触发的叫外部中断,按固定时间自己触发的叫定时中断。中断程序写在主程序结束之后:末尾写 FEND,后面跟中断标号,处理完用 IRET 结束。画面里按下 X2,程序就把 D0 加一。
哪个端子对哪个标号
0:42哪个端子对哪个标号
- 一张表X2 到 X13 各一个标号
- ★ 上升下降各一个X2 上升 I0000、下降 I0001
- 记法端子号减二,再乘一百
- 禁止某一路SM050 起,每路加一
三个端子,三个标号
标号怎么定?手册给了一张表:X2 到 X7、X10 到 X13,每个端子对应一个标号。上升沿和下降沿各占一个:X2 的上升沿是 I 零零零零,下降沿是 I 零零零一。X3 是 I 零一零零,往后每一路加一百,一直到 X13 的 I 零九零零。记法是端子号减二,再乘一百。不想让某一路进来,就接通它的禁止继电器,X2 那一路是 SM050,往后每路加一。三个端子各按一下,三个计数器各加一。
不用按钮,它自己来
0:35不用按钮,它自己来
- 不用外部信号按时间自己触发
- 二十路I40 开头到 I59 开头
- ★ 后两位写时间I4010 就是每 10ms
- 两个注意一路上只用一个时间
不用按钮,每十毫秒自己来
第二类中断按时间自己触发,叫定时中断。标号从 I 四零开头到 I 五九开头,二十路。后两位是时间,单位毫秒,写一到九十九,比如 I 四零一零,就是第一路、每十毫秒一次。它同样写在 FEND 之后,用 IRET 结束。要注意:同一个定时中断只能用一个时间,写了 I 四零一零,就不能再写 I 四零五零;时基能切到一百微秒,但只有 I 五九那一路支持。不用按任何按钮,读数条每隔十毫秒自己加一。
不想让它进来怎么办
0:38不想让它进来怎么办
- 为什么要禁正算着账,不想被岔开
- ★ 禁止继电器定时 SM070 起,外部 SM050 起
- DI 到 EI这一段所有中断都不响应
- 最常用的办法什么都不写
合上 M0,它就不来了
不是所有时候都欢迎中断。正在算一笔要紧的账,就不想被岔开。办法有三条。第一条是禁止继电器:每一路都配了一个。定时中断从 SM070 起,一路一个;外部中断从 SM050 起。要把哪一路关掉,就把对应那个继电器接通。第二条是 DI 和 EI 两条指令:DI 到 EI 之间这一段,所有中断都不响应。第三条最常用,就是什么都不写:可编程控制器平时就呈允许中断状态。画面里 M0 一合上,倒数就停住了。
八毫秒的窄脉冲
0:39八毫秒的窄脉冲
- 问题的根子8ms 脉冲碰上 10ms 滤波
- 手册的解法把计数放进中断里
- 数满就置位数满三十,置 M0
- 一轮结束要复位X1 一响,全复位
数到三十,机械手动作
手册有个包装线的例子:每检测到三十个产品,机械手动作一次。麻烦在于传送带跑得快,传感器每次只导通八毫秒,而输入点的默认滤波时间是十毫秒,用普通计数器,大部分脉冲会被滤掉。手册的解法是把计数放进外部中断里:X2 一有上升沿立刻计数,不受扫描周期影响。数满三十,把标志位 M0 置位,主程序看到 M0 就让机械手动作。包完了,X1 一响,把输出和标志一起复位,等下一批。画面里数到三十个,机械手就动作。
碰到一个点,换一次速度
0:37碰到一个点,换一次速度
- 难题三段速度不同,换速点不固定
- 三只接近开关接到 X2、X3、X4
- 中断里改频率HD0 一改,速度就变
- 到终点急停复位启动位,脉冲停
碰到 A 点,自动换速度
再看手册一个例子:工作台走三段工位,每段速度不一样,换速的位置还会变。办法是在三个位置各装一个接近开关,接到 X2、X3、X4,正好是外部中断端子。脉冲用 PLSF 发,频率放在 HD0 里。一开始 HD0 装一万赫兹,往 A 点走;碰到 A 点的 X2,中断立刻把 HD0 改成三万;碰到 B 点的 X3,改成两万;碰到 C 点的 X4,复位启动位,脉冲停止。画面里碰到 A 点,频率换成三万。