最近寫的PLC程式的一些感想

這一陣子在這個單位做到工作內容和程設比較有關係的,大概就是幫LAB寫PLC程式來控制設備了吧。頂多再用 InTouch 寫個人機操作介面。

這個工作內容讓我從打開Editor開始,感覺愉悅。(大概是其他的工作內容實在是太無聊了。)

寫PLC的Ladder程式的時候,其實沒有太多其他例子可以參考也沒有老手可以問,所以很多設計的概念都是參考之前寫程式和看書的經驗。

在一開始寫的時候,也是想說把所有功能都混在一起寫,但是在需要控制兩三個部件又不互相干擾的情況之下,就出現了程式寫出來第二天就看不懂的情形。

後來的做法就是開始把各個小功能寫成各個小副程序,然後再組合成比較大的主要控制系統來控制各個部件。

然後各個比較大的主要控制系統再用一些Global Variable 來做 flag ,介此組合出各種操作模式。

寫到後來,忽然有種好像在寫某種作業系統的錯覺。這錯覺應該是來自於最近唸了一些Linux Kernel的書的關系吧...Orz...

然後又碰到了一個叫做InTouch的圖形介面軟體,因為第一次碰到這個軟體,書店和圖書館以及國內原廠都找不到教學資源。結果竟然在網路上找到了教學軟體,這到是我始料未及的。

然後在InTouch和PLC電腦之間碰到了一些通訊上的問題,就去看了一下MODBUS這一類的通訊協定在rs232上大概的實作方法...感覺還蠻有趣的...

後來在腦子無力放空的一下午,上網閒晃,竟然發現 Linux 上也有套裝軟體可以做到現在正在做的PLC、MODBUS和人機介面的實作。

PLC的Ladder語言雖然有Free的Compiler在Linux系統上,但是感覺只要能在MCU(不知為何,個人偏愛AVR系列的MCU)上用UART實作出MODBUS,其實用C語言來取代Ladder語言寫控制系統似乎比較上手。

InTouch這種已經包好MODBUS實作的的人機控制介面軟體在Linux上也找到了像是OpenSCADA這一類的軟體。

如果哪天WindowsXP不行了,我大概會建議單位把設備的控制系統改成OpenSCADA on Linux 加上用 AVR MCU來做設備的控制系統。如果那個時候我還沒"Quit" 的話...科科....Orz...

留言

  1. 你好!可以請教InTouch教學軟體在哪可以看到,還請指教,謝謝!

    回覆刪除
    回覆
    1. 很久之前的事了。我記得是在掏寶上面看到有人在賣教學光碟,內容是 InTouch 的教學影片。現在還在不在就不知道了。

      刪除

張貼留言

熱門文章