PLC在工业控制自动化中有着广泛的应用,那你是否想过?工业控制现场为何要用PLC?我们平时接触的基于单片机的嵌入式系统不香吗?
事实上,PLC就是一种嵌入式系统产品,但是与一般嵌入式系统不同的是什么呢?本期将通过拆解一个松下的PLC来寻找答案。如下图所示,这是我花了几百大洋在某鱼上淘回来的,从型号来看,是松下FP-X系列 C60R规格,属于继电器输出型PLC,输入有32点,继电器输出28点,支持100~240V交流电供电。
拆解
拆解完如下图所示,PLC的内部硬件结构非常清晰,从左到右分别是主控板、IO口板以及电源板。
- 主控板
主控芯片为NEC的32位微控制器(UPD70F3107AG),旁边则是赛普拉斯的SARM(CY62147EV30LL)以及SST的Flash,微控制器、运存、存储这3者组成了最基本的嵌入式计算机系统。
功能上,4个黄色旋钮电位器,生锈的USB通信接口采用芯科科技的USB转串口驱动芯片(CP2102),这在很多MCU开发板上都有;旁边是ADI的高速、双通道RS232接口(ADM3202),对应的是发霉的RS232接口,鬼知道这个PLC曾经经历了什么,从这我们也可以看出为什么PLC对可靠性要求极高,它的工作环境实在恶劣了。
还有一些剩下的芯片都被德州仪器包场了:
德州仪器三态输出的 8 位移位寄存器(SN74LV595A);
德州仪器三态输出的 8 通道缓冲器(SN74LV541A);
德州仪器的16位施密特反相器(SN74LV14A);
德州仪器的差分收发器(SN65LBC176A);
德州仪器的TTL 兼容型 CMOS 输入的 4 通道、2 输入与门(SN74HCT08)。
- IO口板
IO口板主要是输入输出的电路,IO口板上面一排是输入端子,下面这一排是输出端子。在输入端使用了光耦隔离,在背面一排,8个器件都是NEC的光耦(PS2805-4),因为使用光耦会影响到信号触发时间,所以采用了TI的施密特触发器进行整形和波形翻转,增加驱动能力。
在输出端的话使用的是继电器驱动,继电器是松下自家的电磁继电器产品(PA1a-24V APA3312),总共28个,对应28点输出。旁边有两颗用于电压检测、系统复位的IC(MITSUBISHI M51957B),剩下的是电源芯片,一颗罗姆半导体降压转换器(BD9701FP),一颗德州仪器的LDO(LMS8117AMP-3.3)。
看完主控制板和IO口板,最大的感受是,德州仪器的器件真多,从这里我们也能看出TI在这方面的优势。
- 电源板
剩下的是一个100~240VAC输入,24输出的电源模块,就不继续拆解了。
所以整个松下PLC的BOM如下:
厂商 | 型号 | 说明 |
德州仪器 | SN74LV595A | 具有三态输出的 8 位移位寄存器 |
德州仪器 | SN74LV541A | 具有三态输出的 8 通道、2V 至 5.5V 缓冲器 |
德州仪器 | SN65LBC176A | 差分收发器 |
德州仪器 | SN74LV14A | 16位施密特反相器 |
德州仪器 | SN74HCT08 | 具有 TTL 兼容型 CMOS 输入的 4 通道、2 输入与门 |
德州仪器 | SN74LV374 | 具有三态输出的八路边沿触发式 D 型触发器 |
德州仪器 | LMS8117AMP-3.3 | LDO |
德州仪器 | SN74LV138A | 3 线至 8 线解码器/多路解复用器 |
德州仪器 | SN74LV125A | 具有三态输出的 4 通道、2V 至 5.5V 缓冲器 |
德州仪器 | SN74LV08A | 4 通道、2 输入、2V 至 5.5V 与门 |
SST | SST39VF040-70-4I | Flash |
赛普拉斯 | CY62147EV30LL | SRAM |
芯科科技 | CP2102 | USB转串口驱动 |
ADI | ADM3202 | 高速、双通道RS232接口 |
松下 | PA1a-24V APA3312 | 电磁继电器 |
MITSUBISHI | M51957B | 电压检测/系统复位IC |
NEC | PS2805-4 | 光耦 |
NEC | UPD70F3107AG | 32位微控制器 |
罗姆 | BD9701FP | 降压转化器 |
小结
拆解完松下的这个PLC,同时我也对比了之前拆解的国产PLC(国产PLC拆解),你猜有什么不同?
事实上无论是硬件还是结构,出奇的相似。硬件上两者基本都是国外半导体厂商的器件,结构上都是3部分组成:主控板、IO口板、电源板。非要追究不同的话可能是软实力方面,比如所用的软件易用性。正如我一开始提到的,PLC也有自己的生态,尤其是全球一些知名的PLC的厂家,比如西门子、三菱、松下等等,已经做好了PLC硬件和软件的功能,也优化好了像EMC这些客户头痛的问题,并且PLC的编程语言相对简单,甚至还有模块化的编程语言,这样提供给PLC工程师使用,降低了从0到1的难度。更何况,PLC配有多种开关量、模拟量等输入输出以及通信扩展模块,方便灵活扩展适应各种工业环境和应用,这也是与一般定制化的嵌入式系统所不同,你get到了吗?
点击进入村田天猫旗舰店:https://url.eefocus.com/11zg