198366809 发表于 2021-2-27 22:26:03

如何理解PLC扫描与中断工作方式

https://p1-tt.byteimg.com/origin/pgc-image/1533087205684a1d8095b08?from=pc

说到PLC的工作方式大家都知道是中断,但可能很多人都对中断的本质含义都似懂非懂,这里如果我还是把定义和概念拉出来,肯定有人就要骂娘了,所以这块我拿讲课和大家打个比方,用这个例子把扫描和中断和大家讲清楚。首先我们来看什么是中断工作方式?比方说有1个老师和10个学生,那么老师讲课的过程就相当于执行主程序,这时有学生突然有问题,举手向老师提问,那么这个学生就打断了老师的讲课,相当于中断了主程序。学生提的问题需要被回答当然回答的过程也可以类比成执行程序,此处我们称之为中断程序(中断主程序的程序),老师停止讲课去回答这个学生的问题就相当于在执行中断程序。当老师回答完这个学生的问题,继续开始讲课。这对于PLC来说就相当于执行完中断程序,返回继续执行主程序,需要注意的是所有的中断程序都有触发条件,在上面这个例子中学生举手就是触发条件。那什么又是扫描的工作方式呢?还是以上课为例,老师讲课的时候不允许学生提问,当课程讲完后老师先问第1个学生是否有问题,如果第1个学生没有问题,老师问第2个学生是否有问题,以此类推,但是当老师问到第8个学生的时候,突然第1个学生说我有问题,这时如果按照扫描的工作方式,老师是不去理会第1个学生的,只有当老师问完第10个学生后才会来处理第1个学生的问题。其实稍微熟悉一点计算机工作原理的朋友都应该清楚通常我们的笔记本或者台式机主要都是采用中断的工作方式,我们点一下鼠标或者按一下键盘,都相当于那个举手提问打断老师讲课的学生,而PLC则采用以循环扫描为主,中断为辅的工作模式。既然PLC也是计算机的一种,为什么PLC不采用普通电脑以中断为主的工作方式呢?很明显以中断为主的工作模式的运行效率要比以循环扫描为主的工作模式效率要高得多。下面我们回到这样一个场景,如果一个学生问题非常多老师刚回答完他的问题,他就又举手提问,如此往复不停循环,那么这节课就上不下去了,这对于我们电脑来说就叫做死机,也就是一个进程占据了系统所有的资源。这就是中断工作模式的缺点,虽然工作效率高但有可能会死机,而我们的PLC是绝对不能出现死机这种情况的,因此PLC为了保证运行的稳定,牺牲了部分工作效率而采用了循环扫描为主的工作模式。

312788909 发表于 2021-2-27 22:26:04

真是难得给力的帖子啊。

铅笔小子 发表于 2021-2-28 08:13:30

太生气了,无法HOLD啦 >_<......

得鹿梦鱼 发表于 2024-7-22 10:56:04

强烈支持楼主ing……

zjc 发表于 2025-11-13 16:09:53

谁懂啊!真的被戳中笑点 / 泪点了

laowang 发表于 2025-11-13 16:19:05

已转发给朋友,一起感受这份快乐~

刘宁 发表于 2025-11-13 16:54:04

水贴也要有仪式感,我先来打卡~

13839470631 发表于 2025-11-13 16:55:11

救命!这波发言太秀了,直接原地封神~
疯狂认同!楼主说出了我不敢说的话

kong 发表于 2025-11-13 17:59:36

哈哈哈哈笑不活,楼主这脑洞绝了!

djy1998 发表于 2025-11-13 19:41:06

这波反向操作,我属实没想到!
页: [1] 2
查看完整版本: 如何理解PLC扫描与中断工作方式