摘要:本文歐姆龍CJ1M為例,采用低成本LED數碼管作為數據顯示設備,動態顯示PLC內部數據的方法,該方法簡單實用,適于實驗教學和工程人員的現場操作。
1.引言可編程邏輯控制器(Programming Logic Controller, PLC)作為一臺工業計算機,集數據的采集、處理、顯示于一身,那么作為數據終端,數據的顯示是完全必要的。雖然PLC本身有許多指示燈,可以觀測到PLC的CPU單元、輸入/輸出單元及網絡通信單元的運行工作狀態,但無法顯示PLC內部數據。計算機通過與PLC通信以及觸摸屏都可以實現PLC內部數據顯示,但價格昂貴,對一些小型不需要經常改動的系統來說更是浪費本文采用撥碼開關和數碼管來顯示PLC內部數據,操作簡單成本低廉,對實驗教學和工程人員有參考價值。
(1)應用行業:機加工、過程控制等。
(2)使用產品:CJ1M(CPU22), CS1W-ID211,CS1WOD261
(3)應用的主要工藝點及要解決的主要問題:內部數據的動態顯示
(4)應用方案簡介:用高頻率晶體管輸出單元,結合高速定時器指令TIMH實現內部數據的動態顯示。
2.動態數據顯示
2.1 硬件系統設計
LED數碼管有7段顯示燈,可以用來顯示0~9間的10個數字。CJ1M系列PLC內部通道數據一般都是四位,如果用借用每個輸出點來控制一個顯示燈,那么一個數碼管就需要7個輸出點,這顯然要占用大量的輸出點,是不經濟的。這里選用含有內置譯碼電路的數碼管如CD4511,可以把8421碼自動譯成7段碼。8421碼或BCD碼用4個接口加選通信號,就可以顯示一個數據位。將四個8421輸入線組合與某個輸出通道的最低四位相連每個選通信號的輸入信號與通道中剩下的四位相對應連接,這樣一個輸出通道就能顯示PLC四位(一個字)內部數據。具體接線圖如圖1所示。
注意,這里的PLC輸出模塊應選用晶體管或者晶閘管輸出單元,而不宜采用繼電器輸出單元。因為繼電器輸出單元為有觸點開關,響應慢、速度低,不適用于高頻率的通斷,也不適用于動態數據顯示[1]。故圖1中采用OMRON公司CJ1W-OD261(64點)晶體管作為輸出單元,其在本PLC機架上的IO地址分配為6.00~9.15,這里用0006通道作為內部數據的顯示通道。6.00~6.03為CD4511的數據輸入端A、B、C、D,其中A為最低位,D為最高位, 為高電平時鎖存數據,四位數據的 端由PLC的6.04~6.07分別控制,4個數碼管共占用8個輸出點。
2.2 選通信號的生成
由于4個數碼管 的線皆由一個I/O口控制,因此,在每一瞬間,4位LED會顯示相同的字符。要想每位顯示不同的字符,就必須采用掃描方式輪流點亮各位LED,即在每一瞬間只使某一位顯示字符。使每位分時顯示該位應顯示字符,根據人眼視覺特性,當LED所加信號頻率大于50Hz時,人眼不能感覺其變化,所以每位顯示的間隔不能超過20ms,也就是說要在20ms之內分時的點亮所有LED,LED越多所分的時間越短,亮度就會不足;如果增加點亮時間,又會使掃描頻率下降,有閃爍感容易造成人眼的彼勞,故常采用動態掃描方式[2]。這種掃描方式僅適用于LED不超過10個時的場合,本例中只有4只LED數碼管,故可以選用此方法。
CJ1M系列PLC有豐富的定時指令,其定時器類型有1ms、10ms和100ms,這里選用TIMH指令[3],定時器的設定值為#1,這樣選通信號的周期為10ms。
2.3 同步化處理
PLC采用循環周期掃描工作方式,指令的執行由上至下,有左至右,前面的結果將影響后面;前一個周期的結果影響下一周期。PLC邏輯設計同步化就是設法實現:用脈沖信號控制輸出及內部狀態的轉換,有脈沖作用的周期,執行指令才有效果;而且在脈沖信號起作用的這周期中,前面指令的執行結果,不改變后面指令的執行條件[4]。同步化處理的方法很多,在圖2中是通過合理安排指令的先后順序來實現同步的。
圖2中,系統上電,高速定時器開始定時,10ms后,其常閉觸點斷開,即T0輸出一個脈沖,寬度為一個掃描周期。第一個脈沖到了, 6.04置位,成為前一行的指令執行條件,但這時它的指令已經執行完畢,故在此脈沖作用期間,也不會有什么變化。依此類推,第四個脈沖之后,6.07置位,6.06復位,成為工作寄存器W0.00輸出的條件,第五個脈沖到來,6.07復位,梯形圖又回到初始狀態,如此反復,分時實現四位數據的 端6.04~6.07輪流接通10ms。
2.4 數據顯示
采用MOVD指令,將要顯示的內部數據如DM區、W區、T/C區等中的一個字通過通道6顯示出來。如圖3所示,本例中,依不同的選通信號,將D0中的數據通過選擇不同的位進行顯示。
3 功能擴展
3.1 顯示雙字
在圖1中,PLC輸入端0.01接撥碼開關SA,其作用根據其所在位置不同結合跳轉指令(JMP/JME)來確定數據顯示是哪個通道。如圖4中,當SA為ON時,顯示D0中的數據;當SA為OFF時,顯示D1中的數據。
3.2 硬件擴展
如果對4個選通輸出點6.00~6.03采用一片4線-16線譯碼器(如SG74HC154)進行譯碼,可以擴展成16個循環的選通信