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