韓迎輝(常州輕工職業(yè)技術(shù)學院,江蘇 常州 213164)
交流調(diào)速在工業(yè)中的發(fā)展十分迅速,變頻器調(diào)速控制系統(tǒng)已廣泛應用于機械、冶金、化工、包裝等各個行業(yè),在電氣傳動控制中已普遍應用。
隨著工業(yè)自動化水平提高,對變頻器的數(shù)據(jù)通訊要求已經(jīng)成為控制系統(tǒng)的必然趨勢,與傳統(tǒng)的I/O方式硬接點、D/A輸出控制方式相比較,通訊控制具有硬件連接簡單、給定精度高、能進行復雜數(shù)據(jù)交換等優(yōu)點。變頻器采用通訊控制可以實現(xiàn)車間級的電氣傳動現(xiàn)場總線網(wǎng)絡控制。
本文結(jié)合涂布生產(chǎn)線放卷裝置的變頻器通訊程序設(shè)計,為確保變頻器通訊控制的可靠性,必須要綜合考慮到硬件和軟件方面。在硬件系統(tǒng)上可以考慮采用濾波、屏蔽、隔離、接地、增設(shè)終端匹配電阻等措施,此處不再贅述,本文主要闡述PLC通訊程序軟件方面的可靠性設(shè)計。
放卷設(shè)備是涂布機的關(guān)鍵設(shè)備,其基本結(jié)構(gòu)由A、B雙工位放卷軸和壓緊輥組成。圖1為系統(tǒng)組成框圖:
圖1 通訊控制系統(tǒng)框圖
放卷裝置在卷軸切換時PLC需將初始卷徑傳給變頻器,變頻器運行過程中也要將實時卷徑、線速度等參數(shù)反饋給PLC,PLC與變頻器必須采用RS485通訊控制,否則難以實現(xiàn)放卷控制所需的數(shù)據(jù)傳遞。
放卷裝置的通訊系統(tǒng)硬件配置為:匯川MD330變頻器加RS485通訊卡、可編程控制器采用三菱FX3U PLC外接FX3U-485-BD通訊模塊。
PLC與MD330變頻器通訊硬件接線簡單,將通訊模塊上的RDA與SDA端子短接,RDB和SDB端子短接,RDA接變頻器485+,RDB接變頻器485-,屏蔽雙絞線接地,根據(jù)需要接駁終端匹配電阻。
本系統(tǒng)兩臺變頻器接入RS485總線,采用以PLC為主站,兩個變頻器為從站的“單主多從”主從方式控制網(wǎng)。這樣上位機便能通過RS485通信線和各變頻器信息交換進行控制操作。
PLC初始化時將通訊格式參數(shù)D8120設(shè)置為H0C99時:即數(shù)據(jù)長度為8位,停止位1位,無標題符和終結(jié)符,無奇偶校驗N,波特率19200bps 。通訊設(shè)置無校驗,可以減少硬件上的數(shù)據(jù)通訊攔截,提高通訊響應。由于PLC與變頻器距離不遠,較高的波特率可以減少通訊時間。
設(shè)置的通信超時時間D8129=K1,在D8129中默認單位是10ms,所以超時設(shè)置為10ms。PLC與變頻器的通訊參數(shù)應當一致,其中通訊地址不能重復。PLC初始化程序如圖2所示:
圖2 初始化梯形圖
由于工業(yè)現(xiàn)場不可避免的存在各種干擾,通訊過程中也可能受到強烈干擾而導致數(shù)據(jù)錯誤,所以必須對RS485發(fā)送和接收的通訊過程進行嚴格的校驗,以保證數(shù)據(jù)傳輸?shù)目煽啃浴樘岣咄ㄓ嵉目煽?,需要設(shè)計合理的通訊系統(tǒng)結(jié)構(gòu)。程序結(jié)構(gòu)框圖如圖3所示。
本文涉及的PLC與MD330變頻器總共有6個通訊數(shù)據(jù):A/B軸初始卷徑、A/B軸實際卷徑、A/B軸線速度。如何合理安排好這些數(shù)據(jù)的通訊收發(fā),是關(guān)鍵要素,否則會影響通訊的可靠性。
(1)通訊數(shù)據(jù)優(yōu)先級和次序
圖3 通訊程序結(jié)構(gòu)框圖
A/B軸實際卷徑、A/B軸線速度這4個數(shù)據(jù)要不斷的定時輪詢,而A/B軸初始卷徑這2個數(shù)據(jù)是不定期的隨機通訊,但這2個數(shù)據(jù)的通訊優(yōu)先級比輪詢數(shù)據(jù)要高。
PLC采用定時輪詢的方法輪流讀取4個數(shù)據(jù):可以設(shè)定一個時間周期,每隔0.1秒進行一個數(shù)據(jù)的讀取,通訊波特率是19200bps,經(jīng)過示波器測量通訊波形分析在此波特率下,PLC發(fā)一幀8個字節(jié)數(shù)據(jù)所需小于5ms,考慮到變頻器接收、處理、回送數(shù)據(jù)及通訊延時,每次這樣的完整收發(fā)過程應不大于20ms左右,間隔時間正常情況下是完全足夠的。要注意下位機一般不會立即響應,理論上19.2K的波特率下收發(fā)周期10ms,實際很難實現(xiàn)。
輪詢的定時間隔不宜過小,只要滿足生產(chǎn)設(shè)備的數(shù)據(jù)更新要求即可,不需要過分追求數(shù)據(jù)更新速度。這樣的定時輪詢在抗干擾方面是有明顯效果的,因為在0.1秒的間隔時間內(nèi),只有約20ms時間在雙向數(shù)據(jù)通訊,其他約80ms時間是通訊休眠沉默期,這樣通訊受到干擾的幾率大大降低,有效的提高了通訊的安全可靠性。
(2)定時輪詢梯形圖
數(shù)據(jù)輪詢的次序也不能忽視,經(jīng)實際通訊測試,同一地址的不同數(shù)據(jù)訪問不宜連續(xù),可以交替訪問:先讀取A軸卷徑,然后讀B軸卷徑,再讀A軸線速度,最后讀B軸線速度。這種方法比連續(xù)讀取A軸2個數(shù)據(jù),再連讀B軸2個數(shù)據(jù),通訊更可靠。因為,連續(xù)讀取A軸數(shù)據(jù)時,前后通訊數(shù)據(jù)幀中的地址碼不變,反而容易產(chǎn)生通訊錯誤。圖4為定時輪詢梯形圖。
(3)輪詢之外的隨機通訊
在PLC正常輪詢A/B放卷軸的過程中,會隨機性的要求設(shè)定A/B軸的初始卷徑,必須要合理安排這2個隨機通訊數(shù)據(jù)的要求。既不能等太久時間,否則影響控制的實時性要求,但也不能在當前輪詢通訊數(shù)據(jù)未完成的情況下立即響應,導致通訊效率降低。
圖4 定時輪詢梯形圖
當要求傳送隨機的初始卷徑時,如果當前輪詢的數(shù)據(jù)通訊未完成,必須等當前輪詢的數(shù)據(jù)通訊結(jié)束后,打斷下一個輪詢通訊立即發(fā)送初始卷徑,只有等初始卷徑發(fā)送給變頻器完成后才能繼續(xù)開始輪詢。本文提出了一種通訊插隊方法,梯形圖如圖5所示:
圖5 隨機通訊梯形圖
程序中增加了寫A、B軸初始卷徑命令輔助繼電器M150、M160,一旦M150或M160有效,會立即終止正常的定時輪詢通訊,但不能打斷當前尚未完成正在進行的某個定時輪詢通訊,必須要等當前的輪詢通訊完成后,才能立即進行插隊的通訊任務。M150、M160與輪詢的M92、M95、M300、M320是互斥的。當然,要插隊的2個通訊任務彼此間也是互斥的。
(4)通訊時序圖
圖6是PLC在19200bps發(fā)送一幀數(shù)據(jù)的通訊時序圖,在編程時務必注意通訊時長和間隔,否則無法正常和下位機變頻器進行RS485通訊。
通過PLC編程自測發(fā)送一幀數(shù)據(jù)大致需要5ms左右,與示波器測量相似。
通訊雙方遵照相同的總線協(xié)議。每幀數(shù)據(jù)格式為:地址碼、命令碼、數(shù)據(jù)長度、所需數(shù)據(jù)、CRC效驗碼等。利用三菱PLC的RS指令無協(xié)議通訊編程可實現(xiàn)MODBUS RTU協(xié)議的通訊。
RS指令能實現(xiàn)RS485串行口發(fā)送和接收數(shù)據(jù),其指令格式為[RS S m D n],數(shù)據(jù)格式在D8120中設(shè)定。RS指令的編程標志位M8122為發(fā)送請求標志、M8123是接收處理完標志。其中M8122發(fā)送啟動僅需置位一次,但RS指令需要驅(qū)動直至發(fā)送和接收都完成。發(fā)送完成后M8122會自動清零,接收完成或超時溢出則M8123會置位。處理完接收數(shù)據(jù)后,軟件需對M8123及時清零。
圖6 一幀數(shù)據(jù)通訊時序圖
在一次完整的通訊過程中,RS指令必須保持一直有效,直至發(fā)送和接收數(shù)據(jù)完成。在接收數(shù)據(jù)的過程中,如在D8129指定的時間內(nèi)數(shù)據(jù)接收,則超時標志M8129變?yōu)镺N,表明接收異常結(jié)束,則M8123置位。
根據(jù)MD330變頻器的MODBUS通訊協(xié)議要求,設(shè)計針對該協(xié)議的通訊程序流程。合理的軟件算法保證了PLC和MD330變頻器準確無誤的傳遞數(shù)據(jù)。每個數(shù)據(jù)的PLC通訊程序流程圖7所示:
圖7 PLC通訊程序流程圖
PLC發(fā)送一幀通訊數(shù)據(jù)的梯形圖如圖8所示:
圖8 發(fā)送通訊數(shù)據(jù)梯形圖
通訊程序中M98輔助繼電器的作用是將通訊指令RS執(zhí)行時間延后一個掃描周期,使前后2幀數(shù)據(jù)通訊過程有短暫間隔時間,防止前后數(shù)據(jù)幀在線路上的重疊碰撞,保證通訊的可靠性。M93為發(fā)送限制,防止M8122一直為ON,導致通訊出錯。
程序增加了通訊限時定時器T70,延時時間是0.2秒,其作用是防止當前通訊任務失敗后,PLC能自動退出該訪問數(shù)據(jù)部分的通訊,及時訪問其他設(shè)備,不至于產(chǎn)生通訊卡阻死鎖現(xiàn)象。通過示波器實際測量,在變頻器無應答的情況下,PLC每隔200ms輪流發(fā)送一幀數(shù)據(jù),不會停頓在某一處,進一步提高了通訊的容錯能力。圖9為實測通訊無響應波形:
圖9 通訊輪詢實測波形
注意PLC每次都要在發(fā)送數(shù)據(jù)前明確的給所有的被發(fā)送的數(shù)據(jù)賦值,盡量不要利用初始化脈沖對有的數(shù)據(jù)僅一次性賦值,以后每次通訊不再賦值,這樣會給通訊帶來隱患,在強干擾環(huán)境下,PLC的內(nèi)存數(shù)據(jù)寄存器可能會受到干擾,導致初始化賦值更改,致使通訊出錯。
某些應用場合,甚至要求PLC對通訊接收到的數(shù)據(jù)立即轉(zhuǎn)存,同時將直接收到的數(shù)據(jù)清空。可以說,這種方式的接收數(shù)據(jù),也可以提高通訊的質(zhì)量。
由于工業(yè)現(xiàn)場存在各種干擾,PLC和變頻器數(shù)據(jù)通訊完成后,為保證通訊的可靠有效,除了設(shè)計合理的通訊流程結(jié)構(gòu)和程序外,還必須對接收的數(shù)據(jù)進行嚴格的通訊檢驗、故障自檢以及其他附加措施。
(1)通訊數(shù)據(jù)校驗
本文提出的校驗方法如下:對通訊的地址碼和校驗碼均進行驗證,通過雙重校驗合格的數(shù)據(jù)才會接收下來被采信,參與后續(xù)的數(shù)據(jù)處理。否則,未通過校驗的數(shù)據(jù)被丟棄。
圖10 通訊數(shù)據(jù)校驗梯形圖
通過塊比較指令BKCMP,先對接收到的地址碼D110、D111這2個寄存器和先前RS指令發(fā)送出去的目標地址碼D100、D101進行比對,如果相同表明通訊接收到的地址正確無誤,如果地址碼不對,說明通訊出錯,本次接收到的數(shù)據(jù)無效。地址碼核對無誤后,PLC再對接收到的前6個數(shù)據(jù)計算CRC校驗碼,PLC計算出的CRC效驗碼和通訊線路實際收到的CRC效驗碼進行比較,如果一致,說明本次收到的數(shù)據(jù)是完全正確的。
只有通過地址和CRC碼比對后的數(shù)據(jù)才進行后續(xù)處理,這樣有效的保證了PLC與變頻器在工業(yè)現(xiàn)場通訊的可靠性,極大的降低了通訊數(shù)據(jù)錯誤。
(2)通訊故障檢測
在PLC程序設(shè)計中,增加了通訊故障報警信號。思路是:如果每個通訊任務都能正常通訊,在1秒時間內(nèi),均能執(zhí)行幾次,設(shè)置一個通訊指示繼電器,每次正常通訊后,對其進行取反,這樣通訊指示繼電器應該是一個交替信號,對該繼電器進行判斷,如果不是交替信號,說明通訊故障,可發(fā)出通訊故障報警信號。
另外,還可以利用PLC自身提供的通訊輔助標志位M8128、M8129進行通訊診斷編程。
(3) 自動多次握手
如果有個別通訊數(shù)據(jù)非常重要,可以設(shè)計一次通訊失敗后自動再次發(fā)起主動握手通訊,達到一定時間或次數(shù)仍然無法通訊就發(fā)出報警信號。自動握手次數(shù)也可根據(jù)需要設(shè)定,但不宜過多,否則影響其它數(shù)據(jù)的通訊。
由于通訊程序的設(shè)計采用了多種可靠性措施,使PLC與變頻器在復雜的涂布機工業(yè)環(huán)境下,能夠正常傳遞各種數(shù)據(jù),保證了通訊數(shù)據(jù)的可靠和正確,提高了控制系統(tǒng)的品質(zhì)。
通過在現(xiàn)場的實際使用情況,采用以上方法的變頻器通訊系統(tǒng)能有效的抵抗絕大多數(shù)的干擾,剔除受到干擾的非正常數(shù)據(jù),高效地保證了通訊過程的正??煽浚挛粰C出現(xiàn)故障也能診斷出并能忽略該故障,不會影響其它數(shù)據(jù)通訊。
該通訊軟件程序經(jīng)受了實踐的檢驗,得到了涂布機設(shè)備制造商和運行企業(yè)的認可。本文闡述的技術(shù)方法在變頻器通訊應用的工業(yè)領(lǐng)域具有很好的技術(shù)推廣價值。
[1]李江全, 王建平. 三菱FX系列PLC數(shù)據(jù)通信及測控應用 [M]. 北京: 電子工業(yè)出版社, 2011.
[2]唐志文. PLC與變頻器的RS485通訊 [J]. 變頻器世界, 2005, 1.
[3]羅宏權(quán). 基于RS485通訊的軟件結(jié)構(gòu)設(shè)計 [J]. 紡織機械, 2006, (3).
[4]張祖光. RS485通訊在拉絲機變頻控制中的應用 [J]. 玻璃纖維, 2008, (3).
[5]瞿選益. 談三菱FX系列PLC與D系列變頻器的RS_485通訊[J]. 科技資訊,2013, 24.
[6]夏雨. 基于三菱可編程控制器無協(xié)議通訊的應用 [J]. 可編程控制器與工廠自動化, 2006 (02).
[7]張智明. 基于RS-485的變頻器與PLC的通訊技術(shù)的研究 [J]. 現(xiàn)代制造工程. 2005 (12).