读书的时分由于学的自动化所以一向以为PLC是操控的王道,常常轻视楼下电子系搞单片机的,并且灰常2B的以为单片机都TM弱电太娇气不耐艹玩单片机的都是吊丝!所以常常混迹于PLC实验室电子实验室竟然只去了几回,但是跟着对单片机和PC机的了解逐步加深,越来越觉得自己当年的自己太傻太单纯了哎……
个人觉得PLC和单片机的联系就比如图书印章和圆珠笔相同,图书印章操作简略傻子能盖出美丽的图画但缺陷也清楚明了灵活性太差了你不能用图书印章盖出一些杂乱的图画,圆珠笔就正好相反尽管操作难度大点但灵活性强了n个数量级。
已然单片机的灵活性那么强那么咱们能用单片机来模仿PLC吗,很明显是能够的并且PLC的中心其实也是单片机,那么该怎样模仿PLC呢?PLC分程序和硬件部分,硬件部分主要是做好外围电路规划,完结PLC的IO输入输出功用,一般用光耦做IO口电路规划进步单片机的抗干扰才能,做好安稳的电源规划,电源是可靠性的根底。其实模仿PLC的要害再于程序部分,思路是写个编译器把梯形图编译成 单片机能履行的机器码,但写编译器工程太大了,咱们仅仅模仿又不是造PLC所以不必考虑写那种直接把梯形图编译成机器码的编译器了,咱们能够把编译进程分解为梯形图—>指令表—>C51代码—>机器码,这样的话问题就简略多了梯形图转指令表能够手艺完结或许写个图形修改程序来完结但这不是要点,指令表转C51代码才是模仿PLC的魂灵地点,尽管是个伪编译器但每条指令的翻译都是蛋疼的进程,我肯定是没办法把一切的三菱指令都模仿出来的,要完结这个使命还得仔细学学编译原理啊……
这是PLC模仿程序的运转截图,对应指令表的逻辑,发现运转结果是正确的,尽管只完结了几条最简略指令的翻译并且与反指令还存在问题但毕竟思路是正确的完结仅仅时间问题了,太晚了不搞了公然比泥玛搬砖还辛苦想问题的时分底子睡不了……艾玛