淺談用單片機模擬PLC(山寨三菱系列)
個人覺得PLC和單片機的關系就好比圖章和圓珠筆一樣,圖章操作簡單傻子能蓋出漂亮的圖案但缺點也顯而易見靈活性太差了你不能用圖章蓋出一些復雜的圖案,圓珠筆就正好相反雖然操作難度大點但靈活性強了n個數(shù)量級。
本文引用地址:http://m.butianyuan.cn/article/201612/324257.htm既然單片機的靈活性那么強那么我們能用單片機來模擬PLC嗎,很明顯是可以的而且PLC的核心其實也是單片機,那么該怎么模擬PLC呢?PLC分程序和硬件部分,硬件部分主要是做好外圍電路設計,實現(xiàn)PLC的IO輸入輸出功能,一般用光耦做IO口電路設計提高單片機的抗干擾能力,做好穩(wěn)定的電源設計,電源是可靠性的基礎。其實模擬PLC的關鍵再于程序部分,思路是寫個編譯器把梯形圖編譯成 單片機能執(zhí)行的機器碼,但寫編譯器工程太大了,我們只是模擬又不是造PLC所以不用考慮寫那種直接把梯形圖編譯成機器碼的編譯器了,我們可以把編譯過程分解為梯形圖—>指令表—>C51代碼—>機器碼,這樣的話問題就簡單多了梯形圖轉(zhuǎn)指令表可以手工完成或者寫個圖形編輯程序來完成但這不是重點,指令表轉(zhuǎn)C51代碼才是模擬PLC的靈魂所在,雖然是個偽編譯器但每條指令的翻譯都是蛋疼的過程,我肯定是沒辦法把所有的三菱指令都模擬出來的,要完成這個任務還得認真學學編譯原理啊……
這是PLC模擬程序的運行截圖,對應指令表的邏輯,發(fā)現(xiàn)運行結(jié)果是正確的,雖然只完成了幾條最簡單指令的翻譯而且與反指令還存在問題但畢竟思路是正確的完成只是時間問題了,太晚了不搞了果然比泥瑪搬磚還辛苦想問題的時候根本睡不了……艾瑪
評論