本人电子攻城狮一枚,毕业后用过PLC(西门子200系列和三菱、欧姆龙的小型PLC,据说现在都在逐渐淘汰中,不过已经不接触工控很久了),接触过一些工控项目,后来主要开发单片机类产品,从51-AVR-PIC-DSP-STM32这样的路程,用单片机做过工控电力项目,再后来专攻仪器仪表、传感器类,先亮观点(对于真正了解电子的人来说,这是一个非常初级的问题):
1. 不是单片机/Arduino能不能用于工控领域的问题,而是单片机/Arduino的使用者有没有能力把他用到工控领域。
2. 工控上用的很多就是单片机,应该说是用单片机开发的一些设备,例如:PLC的核心实际就是单片机;
3. Arduino是不能直接用在工控上的,需要外接很多保护电路后才能使用;
先说下哪一款的内部没有用到单片机呢?这些产品都是用单片机做出来的成品。
首先来看,这些工业设备核心都是单片机:
这个是PLC内部的电路板(图片来源网络,侵删),中间的黑块明显就是单片机嘛,只不过多了很多外围保护电路,光耦、继电器什么的。
再看这个:
这种用51单片机做的仿PLC工控板子,某宝上大把大把的,很多都是工程师自己做的,因为早些年有位工程师曾经开源过一套代码,写入51单片机后,就可以用老版本的三菱梯形图界面进行编程,所以用51做这种板子才这么风靡。
在电子专业基础知识比较弱,或者是不是很重要的普通工控领域,有几个人能自己开发这样的外围电路呢?虽然这个电路在真正的电子工程师眼里面是非常简单的。
然后,为什么会有PLC这种东西呢?
PLC的编程是这样的:
或者是这样的:
而单片机的编程是这样的:
对于大多数编程基础很弱甚至为零的领域,梯形图简单明了,用梯形图编程根本不需要C语言、汇编的编程基础,理解了意思,直接用就行,最不济还能在线仿真不是。
最后,Arduino是不能直接用在工控系统中的,如果要用,也必须配套完整的外部保护电路,然后插上Arduino做为核心板,这样才能承受得了严酷的工业环境考验,即便如此,也只是应用在简单场合而已。
例如:Arduino PLC外围电路,取代PLC做逻辑控制,只要电路做好,是完全没有问题的,但是,这个电路做好的标准最起码是要过EMC测试的,即便过了EMC测试,也不代表工业现场不出问题,电源、外部保护电路、程序设计等等都不是简单玩玩Arduino那么容易了。
比较复杂的控工系统:例如很多设备中的逆变器部分、伺服电机控制器、高端数控机床的控制板等等,很多带有非常复杂的算法,需要大量的浮点数运算,基于AVR的Arduino是肯定搞不定了,至少得是STM32吧,又或者TI的DSP,而且现在用FPGA/ARM的A8/A9用在高端工控设备上已经不是什么新鲜事了。更何况,高端设备很多时候需要非常专业的算法才能完成程序的编写,这些算法优化又关系着产品的品质,基本都不是一个人能做的了的了。
例如:这种简单的工控仪表,老式的基本都是51单片机,AVR肯定是能做的,但是需要熟悉PID控制算法;还需要模拟量采集:PT100,热电偶(环温补偿);模拟量输出:4-20mA,0-10V;通讯部分:隔离RS485硬件、Modbus协议等;能够通过EMC测试的220V转5V、12V、24V的电源设计。
总结:
工控是一个大的领域,既有各种专业的模块、设备,也有简单的逻辑控制,不同的单片机应用在不同等级的工控领域当中是非常成熟的事情。希望把单片机直接应用到一些工控领域,那是自己能力的问题。Arduino取代PLC的一些简单功能,是完全没有问题的,但是一定要做好外围电路设计。
我也是培训老师,嘿嘿,先找我拿一份入门的全套资料自学看看吧,我把顺序和难易程度都标住了,看完了觉得还想进阶可以买我们的课。不买也交个朋友,我们佛系的很的,有问必答。通过地球259其中的5852最后316有干货~来的都发全套入门课程~
,