查看原文
其他

漫谈MCU与PLC

易哥 架构研究所 2022-09-08
文章前记


        程序员工作久了便可能整日忙碌于“增删改查”中,迷失方向,毫无进步。


        该公众号致力于分享软件开发相关的原创干货,助你完成从程序员到架构师的进阶之路!


        努力!做一个NB的Coder!








许多人在接触到单片机(MCU)和可编程逻辑控制器(PLC)时,都会感到疑惑。疑惑主要有两点:


  • 工业环境中,很多控制逻辑用MCU都可以很容易的实现,为何要用PLC?


  • 其实MCU与PLC两者都是可编程的控制器件,有什么不同?


此文便在于解答大家的疑惑。



1工业环境为何都用PLC



接触过工业生产的工程师可能会发现,其实大多数工业生产的控制要求,使用MCU都可以做到。

但同时又会发现,MCU在工业环境中极少被应用,取而代之的是PLC。那为什么在廉价的MCU可以实现功能的地方,要使用昂贵的PLC呢?



PLC实物图





1.1可靠性方面



工业现场要求设备达到工业级。我们一般购买的单片机及其他元器件一般为商业级。加之自己开发后测试等水平达不到,所以可靠性很难保证,例如防电磁干扰等,要知道工业环境中电磁干扰是非常多的,如继电器的通断、电机的起停,这都可能导致单片机的重启、通讯的失误。

PLC等设备满足工业级要求,在抗干扰方面、输入输出点可靠性方面更为优越,并采用可靠的组态方式,因此可靠性更高,而且通信方面有很多工业控制设备采用光纤以抗干扰。




1.2易用性方面



采用单片机实现,通信等系统架构太过麻烦,例如一个工业车间的几十个单片机工作小站可靠通信就很难实现。同时代码的增加也进一步降低了可靠性。在简单并且不关键的部位可采用单片机实现部分功能。

PLC等设备可采用整体式或者积木式,各个组件可以按需选用,并便于组态实现。各个工作站之间采用规范的总线通讯,这都是模块内置的,只需配置无需编写代码,可靠简单。

工业设备的可靠性是极为关键的,关系到人身安全、连续工作的时间、生产的质量等,这时候生产设备的成本是相对次要的,可靠性才是首要的。因此单片机虽然便宜,但用单片机作为工业设备控制器是舍本逐末的。



自动化流水线



当然,也并不是说单片机在工业环境中就完全没有应用。例如,目前有采用Arduino进行工业环境和设备运行情况监测的应用,但不涉及关键生产过程的控制。相信以后也会有更多的单片机应用到工业环境中,但也不会作为核心的控制器。



2MCU与PLC到底有何异同?



那究竟是何种原因导致了PLC和MCU的不同呢?假设,你要用一款MCU完成工业现场的核心控制任务,那应该怎么做?


MCU实物图



首先,工业环境下,受周围交流电机启停等的影响,电压可能会有较大的波动。为了应对这种恶劣的环境,必须为MCU设计相应的电源模块,是的电压剧烈变动时不会引发MCU的工作异常。

同时,在工业环境下,传感器的输出多采用4~20mA、0~10V的形式,这与MCU常用的0~3.3V或者0~5V的AD模块不相符合,因此需要针对工业环境设计传感信号接收模块。

并且,工业环境的输出很多是用来控制继电器(经过继电器隔离后,再去控制电机等的启停),而MCU的输出只能控制微型继电器,无法驱动常用的工业继电器,因此,要在MCU外围设计具有大驱动能力的IO接口。

同时,为了保证工业环境下通讯的可靠:

  • 有很多工业数据总线协议。为了能保证MCU与外界正常通讯,需要封装模块来支持这些协议;

  • 为了能够控制变频器,需要设计相应的变频器控制模块;为了能保证一定的防尘、防水级别,需要设计外壳满足相应的防护等级;

  • 为了保证编程的简单性,可能需要设计一套便于工业使用的控制语言……

当以上这些工作都完成的时候,一个PLC就诞生了!

所以,PLC就是在MCU基础上,针对工业环境专门设计的产物。PLC的内部就是一款MCU。

到这里,PLC与MCU的异同,大家也应该明了了。



END




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存