G3小型PLC與Flash存儲設(shè)備進(jìn)行自由口通訊方案
[
07-9-4 14:35
]
太平洋汽車網(wǎng) 來源:
pcauto
責(zé)任編輯:
dongyousheng
摘要: HOLLiAS-LEC G3小型一體化PLC支持自由口通訊功能,可以與任何協(xié)議的第三方設(shè)備進(jìn)行自由口通訊。 關(guān)鍵詞: 自由口通訊; PLC;FLASH存儲; 1 引言 和利時G3系列PLC是杭州和利時公司自主研發(fā)的小型一體化PLC產(chǎn)品。G3系列PLC具有可靠性高、指令豐富、通訊能力強(qiáng)等特點。其支持六種編程語言,包括LD、IL、FBD、SFC、ST、CFC,能夠適應(yīng)多種PLC編程基礎(chǔ)的人群。一些大的控制系統(tǒng)具有很多現(xiàn)場設(shè)備,其中一部分現(xiàn)場設(shè)備可能不支持標(biāo)準(zhǔn)的通訊協(xié)議, 但是還需要與第三方控制設(shè)備進(jìn)行數(shù)據(jù)通訊,任何一個廠商的PLC都不可能支持所有現(xiàn)場設(shè)備的數(shù)據(jù)通信協(xié)議。如何實 PLC與非標(biāo)準(zhǔn)協(xié)議的第三方設(shè)備進(jìn)行互聯(lián)呢,G3系列PLC推出了自由口的通訊方式,可以實現(xiàn)與任何協(xié)議的第三方設(shè)備進(jìn)行互聯(lián)。本文介紹的是G3系列PLC通過自由口與Flash存儲設(shè)備進(jìn)行數(shù)據(jù)通訊。
2 G3系列PLC的通訊方式
G3系列PLC支持多種通訊方式,如Profibus DP、以太網(wǎng)、自由口通訊。G3系列PLC的CPU模塊本體集成了一個RS232通訊口和一個RS485通訊口,RS232和RS485支持標(biāo)準(zhǔn)的Modbus RTU、G3專有協(xié)議和自由口通訊協(xié)議。用戶可以用圖程序設(shè)定通訊口的協(xié)議、通訊速率、數(shù)據(jù)位、校驗、發(fā)送數(shù)據(jù)和接收數(shù)據(jù)。下圖為和PLC自由口相關(guān)的功能塊指令。 圖1為設(shè)定自由口通訊速率、數(shù)據(jù)位、校驗的指令;圖2為恢復(fù)Modbus RTU和G3專有協(xié)議的指令,同時也可以設(shè)定通訊速率、數(shù)據(jù)位和校驗;圖3為數(shù)據(jù)發(fā)送指令;圖4為數(shù)據(jù)接收指令。同時軟件中有CRC校驗的功能塊指令,可以進(jìn)行數(shù)據(jù)校驗。也可以通過ST語言方便的編寫校驗程序。以計算CRC校驗碼為例,下面是變量聲明部分: FUNCTION_BLOCK Generate_CRC VAR_INPUT pData:POINTER TO BYTE; byteCounter:WORD; END_VAR VAR_OUTPUT CRC_Code:WORD; FINISH:BOOL:=FALSE; END_VAR VAR Reg16: WORD; j: BYTE; i: WORD; mval: WORD; temp_byte: BYTE; flg: WORD; END_VAR 以下是ST語言的程序代碼部分: Reg16 := 16#FFFF; mval := 16#A001; FOR i:=0 TO byteCounter-1 BY 1 DO temp_byte:=pData^; pData:=pData+1; Reg16:=(Reg16 XOR temp_byte); FOR j:=0 TO 7 BY 1 DO flg := 0; flg:=(Reg16 AND 16#0001); Reg16 := SHR(Reg16,1); IF (flg = 1) THEN Reg16:=Reg16 XOR mval; END_IF; END_FOR; END_FOR; CRC_Code:=Reg16; FINISH:=TRUE;
3 數(shù)據(jù)存儲系統(tǒng)的設(shè)計
該P(yáng)LC控制系統(tǒng)是應(yīng)用在節(jié)能汽車上,通過PLC對液壓回路的控制使汽車達(dá)到降低油耗的目的,在該車的試驗階段,需要把運(yùn)行過程中的一些過程數(shù)據(jù)進(jìn)行記錄。當(dāng)時提出了三種設(shè)計方案,第一種方案是對PLC進(jìn)行改造,在內(nèi)部增加一條FLASH芯片,修改PLC的底層程序,實現(xiàn)數(shù)據(jù)的存儲;第二種方案是通過GPRS收發(fā)器把數(shù)據(jù)上傳到遠(yuǎn)程PC;第三種方案是通過自由口與U盤讀寫模塊進(jìn)行通訊,把數(shù)據(jù)實時寫入U盤中。我們對運(yùn)行環(huán)境進(jìn)行了現(xiàn)場考察和反復(fù)研??作,權(quán)衡利弊,最終選擇了方案三進(jìn)行實施。 Flash存儲設(shè)備首先要配置各項參數(shù),包括接口方式、功能設(shè)置、通訊速率等,如圖5所示: 圖5模塊配置 PLC進(jìn)行壓力、流量、速度等一些參數(shù)的采集,并把數(shù)據(jù)轉(zhuǎn)換為ASII碼的形式進(jìn)行實時存儲。然后通過自由口對U盤讀寫模塊發(fā)送指令,U盤讀寫模塊對發(fā)送的指令進(jìn)行響應(yīng),并完成相應(yīng)的讀寫U盤操作。系統(tǒng)要求在每組數(shù)據(jù)后面進(jìn)行時間記錄,所以PLC在每次數(shù)據(jù)發(fā)送的同時把時間寫在文件中,程序流程圖如圖6所示: 圖6程序流程圖
4 結(jié)論
經(jīng)過長時間的應(yīng)用證明,數(shù)據(jù)存儲系統(tǒng)的穩(wěn)定性很好,這種數(shù)據(jù)存儲的實現(xiàn)方式大大節(jié)省了系統(tǒng)的成本,且實現(xiàn)起來較為方便,可以大力推廣。可見,G3系列PLC的自由口應(yīng)用起來相當(dāng)靈活,可以方便的和第三方設(shè)備進(jìn)行通訊。
|
|
|
如果網(wǎng)友需要將本文轉(zhuǎn)載到論壇,請點擊下方按鈕復(fù)制代碼,再在“PCauto論壇”發(fā)貼框里粘貼即可,該方法也同樣適用于其它大部分論壇,非常方便! |
|
|