工控行业的看门狗到底是啥
在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱,会导致程序指针错误,不在程序区,取出错误的程序指令等,都会陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续正常工作,会造成整个系统的陷入停滞状态,发生不可预料的后果。看门狗就是定期的查看芯片内部的情况,一旦发生错误就向芯片发出重启信号的电路。看门狗命令在程序的中断中拥有最高的优先级。
看门狗定时器是一种硬件,通常内置于单板计算机(SBC)或嵌入式PC中,当它确定系统已挂起或不再执行正确的代码序列时,可导致复位。
一个设计合理的看门狗机制至少应该捕获挂起系统的事件。在电噪声环境中,电源故障可能会破坏程序计数器,堆栈指针或RAM中的数据。即使代码完全没有错误,该软件也可能崩溃。这正是监管机构将要捕获的那种短暂失败。
软件中的错误会导致系统挂起,因此最好修复根本原因而不是依赖于监视程序计时器。在复杂的嵌入式系统中,可能无法保证没有错误,但是通过使用监视程序,您可以防止这些错误无限期地挂起系统。
从简单的文字定义来说,多数看门狗是由硬件组成的一个定时器,也有软件控制的定时器作看门狗的。看门狗的功能就是当程序跑飞后,程序是无法给看门狗清0的,所以程序跑飞后看门狗很快会溢出,产生复位信号给mcu,使程序重新回到起点。
计讯小编从一个生动的比喻给你解析一下: "看门狗是防止CPU进入死循环或死机,就象看门狗一样,定时给它喂食,它才不会叫,否则……会不停的汪!汪!汪! 地叫个不停"。
工机机看门狗作为一个定时器,用来监视PLC扫描时间的状况 看门狗技术在电子技术中经常应用到,不仅PLC,还有单片机等。看门狗的作用是不可忽略的。 我们都知道,PLC程序工作机制采用循环扫描工作机制,每次循环都要有一个时间,这个时间就是扫描时间。 扫描时间是要有限制的,不能超出这个限制,一旦超出限制,说明PLC的扫描机制出现问题,问题一般都是用户编程序时出现了"合法不合理"现象。在这种情况下,必须停机报警。用什么来监视呢,就是扫描时间监视器,一个系统定时器,俗称"看门狗"。 看门狗一旦作用,结果就是PLC停机报警。
计讯物联研发生产的工业路由器、工业DTU采用三级看门狗检测机制:CPU自带看门狗、硬件电路和软件看门狗专利技术,智能软件唤醒和硬件断电重启机制,保证设备正常运行、永不死机。