999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

三菱Q系列PLC串口自由通訊方法的探究

2020-03-09 13:12:44
計算機測量與控制 2020年2期
關鍵詞:指令智能設備

(西北工業大學 自動化學院,西安 710129)

0 引言

工業用PLC環境適應性強,可靠性高,對工業環境中常見的電磁干擾[1]、潮濕狀態具有很好的耐受力,對自身的各類異常具備良好的自我檢測能力[2]。工業用PLC大多能夠加裝各類擴展模塊,以支持豐富多樣的用戶需求[3],三菱Q系列PLC是其中的典型代表[4]。

三菱Q系列PLC主要使用QJ71C24系列通信模塊與外部智能設備通信[5]。該系列模塊可選用無順序協議通過自定格式報文與自定控制步驟實現通信功能。無順序協議在接收方式上分為用于接收固定長度數據的“接收結束數據數”與接收可變長度且具有固定結尾數據的“接收結束代碼”兩種[6]。

智能設備在工業應用中具有運行效率高、故障診斷能力強的特點[7]。但其連續通信時所發送報文的長度與報文結尾可能不固定,設備與Q系列PLC通信協議不匹配現象時有發生。再者,智能設備使用的通信連接接口各異,對于三線式RS-232通信及兩線式RS-485通信,通信模塊的線路連接與數據處理方法并不直接。因此開拓一種使Q系列PLC能夠接收變長度無固定結尾數據并兼容多種通信協議的自由通信方法,對于擴展Q系列PLC對智能設備的支持范圍、節省用戶使用成本具有重要意義。如無特別標注,本文所指通信模塊特指QJ71C24N。

1 通信連接擴展

智能設備的通信端口各異,通信模塊原生支持標準DB9式RS-232以及螺栓端子排式RS-422串行通信接口,于此硬件基礎上可擴展出三線式RS-232(TXD、RXD、GND)與兩線式RS-485(A、B)串行通信的接口線路連接與配套數據處理方式。

對于三線式RS-232通信智能設備。由于通信模塊于通信過程中持續對RS-232端口的RTS/CTS、DTR/DSR端子進行檢測,故三線式連接時不可簡單將TXD、RXD、GND端子直接引出。經實驗,可通過圖1方式接線繞過端子檢測并建立三線式RS-232串口通信。顯然的,依此接線時不可進行DTR/DSR控制,但可進行DC代碼控制。為了對抗可能影響通信的較大外部噪聲,應利用連接電纜的屏蔽層將設備與通信模塊的FG端子連接,并且將RXD、TXD信號連接線分別與GND雙絞連接[6]。

圖1 三線式RS-232串口通信鏈接

對于兩線式RS-485通信設備。通信模塊的RS-422與RS-485共用接口,使用兩線制RS-485通信時應如圖2接線,終端電阻為110 Ω 0.5 W[6]。然而受模塊限制,RS-422與RS-485所在通信通道無法被設定為半雙工模式,這意味著使用圖2接線方式時,模塊發出的數據必然會被自身所接收,由此應采取如下數據處理方式:使用固定結尾接收方式時,需去除前n位,n為發送報文長度。而使用固定接收長度方式時,需要將原指定接收長度延長n位長度,以包容發送報文,再于接收報文處理時將報文前n位去除。類似于232接口,可連接電纜的屏蔽層與模塊FG端子應對外部噪聲[6]。

圖2 兩線式RS-485串口接線

2 通信順序控制程序

通信模塊默認支持3大通信協議:MELSEC通信協議、無順序協議、雙向協議。MELSEC通信協議是由目標通信設備主動對CPU的軟元件數據、程序進行讀寫;無順序協議通信是由通信模塊以任意用戶定義的報文格式及傳送控制步驟對任意數據發送接收;雙向協議為通信雙方設備使用“雙向協議”報文格式及傳送控制步驟實現收發功能的通信方式。智能設備可使用的通信方式出廠即已固定,因此通信方式上只有無順序協議通信可選。

無順序協議通信原生支持“接收結束數據數”與“接收結束代碼”兩種數據接收方式。“接收結束數據數”方式即當所接收報文達到指定接收長度后認為報文完結,用于接收固定長度數據。“接收結束代碼”方式即當接收到指定結束代碼時認為報文完結,用于接收變長度有固定結尾的數據[6]。

若用戶使用的智能設備通信方式與智能模塊配合良好(長度始終固定或存在固定結尾),此時使用模塊的自動刷新功能不失為一種方便可靠的通信實現方法。反之應使用順控程序配合無順序協議通信以求最大的兼容范圍及使用靈活性。

順控程序的一般過程為:首先保證通信前線路凈空。發送數據時,將PLC中準備好的通信數據存儲至某一系列連續軟元件組,調用發送指令,數據由模塊發出。接收數據時,依據接收讀取請求信號調用數據接收指令,將緩沖存儲區內數據存儲至目標連續軟元件組。為保證半雙工接口線路凈空可使用應答式通信,即PLC向目標設備發出通信要求后于一定時間范圍內等待目標回文,若通信錯誤或超時則重發通信要求重試通信,通信要求多次重發后仍沒有正確回文則認為通信失敗,置位相應標志位。

常用收發控制指令為G.INPUT與G.OUTPUT[8]。數據發送指令G.OUTPUT在結構化梯形圖模式中構建方式如圖3所示。其中參數數組包括發送通道指定(1或2)、發送數據長度指定、由系統賦值的發送結果三項。發送許可置位后,指令將以緩存軟元件為起始的連續指定個數的軟元件內的數據發出。結束數組由指令是否結束與結束是否正常兩個標志位組成。此外發送指令還有上升沿觸發的GP.OUTPUT形式。

圖3 G.OUTPUT

類似地,數據接收指令G.INTPUT構建方式如圖4所示。特別地,參數數組包括接收通道指定、接收數據允許數指定、由系統賦值的接收結果、接收數據計數值共4項。其中接收數據數計數值用于統計當前緩沖存儲器中已接收到的數據位數,接收數據允許數用于指定緩存軟元件中可存儲的接收數據的長度。連續的數據由串口輸入PLC后將持續存入模塊的操作系統區域,模塊依據“接收結束代碼”或“接收結束數據數”方式對操作系統區域內數據進行接收完成判斷[6]。若接收完成則接收讀取請求(X3/X4)置位,實際接收數據由操作系統區域復制存儲于601H/A01H開始的緩沖存儲器地址中,接收數據計數值保存于地址600H/A00H。順控程序調用G.INPUT則是將緩沖存儲器中的數據賦值給用戶于G.INPUT指令中指定的接收數據計數值與接收數據存儲軟元件,并返回接收狀態。一個方便的順控程序接收方式是將“接收許可”直接指定為X3/X4,如此當有接收結尾被確認則直接可將指定軟元件賦值。

圖4 G.INPUT

顯然地,若接收到的報文內容異常,即“接收結束代碼”確認方式中結束代碼丟失或改變,或“接收數據數”方式中數據丟失或增添任何一個單位數據,則接收結尾失效。理想情況下,使用“接收結束代碼”方式時本次接收數據會同下次的接收數據發生單次“拼接”,而使用“接收數據數”方式會致使往后的所有數據在發生“拼接”的同時均前后移動出現“錯位”,即連續發生“錯位拼接”。對于單次“拼接”情況可由報文中的校驗位將個別異常報文予以濾除。對于連續“錯位拼接”情況應舍棄干擾接收的操作系統區域內的殘余數據,并給順控程序予一個開關量提示。模塊提供一個專用指令ZP.CSET[8],構建方式如圖5所示。參數數組包括兩個固定項:執行類型(指定為0)、請求類型(指定為4),一項系統賦值的結束狀態,以及其他108項系統用軟元件。若某一通道正在執行OUTPUT、INPUT、CSET指令時不可使用CSET指令,否則將觸發“專用指令同時執行錯誤”(錯誤代碼0x7FF0,該錯誤將使模塊報故,順控程序停止),正在執行CSET指令時調用INPUT指令不會出現該錯誤。需要注意的是,指令梯形圖中插槽號軟元件為字符串形,如0槽應為“U00”。

圖5 ZP.CSET

3 變長度無固定結尾通信實現

通信模塊對于變長度無固定結尾報文并未提供直接接收方法。這里提出一種改良自“接收結束數據數”接收方式,可接收變長度無固定結尾報文的接收方法,其大體思路如下:

智能設備大多可采取應答式的收發方式,主機發送通信要求后智能設備產生的正確回文的數據位數是一定的,連續的通信可被拆分為若干次針對預估正確回文長度的固定長度報文通信。

雖然模塊“接收結束數據數”接收方式的結束數據數設定在初始化時即已被燒寫入模塊,但該參數還被保存于一個緩沖存儲器中,可通過緩沖存儲器訪問指令將其修改。

具體操作流程為:將智能模塊以“接收結束數據數”接收方式初始化,接收結束代碼設定為0xFFFF即無接收結束代碼。主機發送通信要求前調用緩沖存儲器數據寫入指令將存有接收結束數據數的緩沖存儲器0xA4/0x144置為正確回文的數據位數,并啟動一個定時器。通信順利情況下智能設備回文正確地被通信模塊以固定長度報文接收,在下次通信要求發送前再次修改接收結束數據數至新的正確回文長度,重復該流程。反之異常情況有兩種:一種是通信模塊接收到指定長度報文,但原始回文比設定長度更長或者所收到報文與原始回文內容不同而長度相同,這種情況可通過回文的校驗位將異常報文排除,之后由主機重新發送通信要求,再次通信。另一種異常情況是主機一直沒有收到回文或收到的回文長度小于指定長度,此時“接收讀取請求”無法置位,這類異常可通過設定報文長度時啟動的定時器排除,即于定時時間內未完成通信要求則主機重發通信要求,再次要求通信。多次超時異常可作為智能設備離線的判斷依據。

4 通信模塊故障后自恢復

通信過程中模塊可能發生溢出出錯、成幀出錯、奇偶性出錯等通信模塊故障,通信模塊“ERR”燈被點亮,它們將使通信模塊完全停止工作。這類故障于有人值守系統可通過PLC的機械復位開關復位解決,無人值守長時運行系統則需要PLC使用順控程序自行排除故障。系統在調試階段應盡可能模擬實際使用中的外部電磁條件,收集與推測可能出現的故障錯誤代碼并制定故障排除方案。

以無順序協議通信模塊1通道成幀出錯(錯誤代碼7F68)的排除為例:模塊故障,ERR燈亮起,根據出錯端口的不同X0E/0F被置位,這里被置位的為X0E。從緩沖存儲器地址0x201/202中讀取亮燈原因,0x201此時b1即SIO位置位,0X202的b15即CH1 ERR被置位。以此跳轉至地址0X258通道1接收出錯出錯代碼存儲緩沖存儲器中獲取錯誤代碼。其他錯誤對應的緩沖存儲器還有0x268通道2接收出錯、0x203開關設置與模式切換出錯、0x257/267數據發送出錯等。以保存的錯誤代碼為索引執行相關處理步驟,這里強制執行G.INPUT指令將不必要數據舍去并執行ZP.CSET指令清空操作系統區域內數據。于出錯信息初始化請求區(地址0x00/01)賦值00FF /C0FF清除出錯代碼,并將將線圈出錯信息初始化請求Y0E/0F置位,完成故障滅燈,模塊故障排除通信重啟。

5 通信測試實例

如圖6所示,驗證系統由三線式RS-232通信下的一臺RW3-3035冷卻機,兩線式RS-485通信下的數臺D08-8C溫度控制器與數臺AI518P流量積算儀組成。通信線纜額外由通信模塊端子根部接出至測試PC串口,測試PC通過該線路在PLC與智能設備通信時發送若干位干擾或模擬異常設備發送錯誤報文,以檢測本通信方法對異常的耐受能力。測試PC還通過PLC數據線監視當前PLC緩沖存儲區與相應軟元件儲值情況,作為測試結果評判依據。

圖6 驗證系統

溫度控制器使用AIBUS通信協議[9],流量積算儀使用自有通信協議,冷卻機使用Modbus通信協議[10]。前兩者接入同一RS-485端口,采用應答式通信,出廠預設通信報文首字節均為本智能設備地址,且波特率、數據位、停止位相同,這也是他們共線通信的基礎。

自由通信方法可實現不同協議下“變長度無固定結尾”數據的接收,即能夠共線但使用不同協議的智能設備可與PLC在沒有固定報文結尾的情況下實現變長度報文通信。 PLC以AIBUS通信協議發送 “81 81 52 0C 00 00 53 0C”意為要求地址為81的溫度控制器回報當前設定精度。返回報文“C4 08 B8 0B 64 60 81 00 62 75” 報文共10字節無固定結尾,校驗位“62 75”校驗正確,目標參數“81 00”即小數精度0.01同時顯示減一位,實時溫度“C4 08”即22.44℃,設定溫度“B8 0B” 即30.00℃。此時溫度控制器儀表畫面顯示:實時溫度22.4℃(精度0.1),設定溫度30.00℃,此時智能模塊正確完成一次無干擾10字節數據接收。PLC以流量積算儀自有協議發送“02 03 00 02 00 08 E5 FF” 意為要求訪問地址為02的流量積算儀的狀態。返回報文“02 03 10 02 01 08 10 03 00 01 13 0F 0F 00 00 00 12 11 80 49 60”,該報文共21字節無固定結尾,其中CRC校驗“49 60”校驗正確,瞬時流量“02 01 08 10”即0.812 L/Min,累積流量“03 00 01 13 0F 0F”即3.103 L。流量積算儀面板顯示流量0.812 L/Min,累積流量3.092 L,智能模塊接收21字節報文正常。通過以上兩次連續收發可證實智能模塊此時具備對可共線智能設備使用不同通信協議接收變長度無固定結尾報文的能力。

自由通信方法可實現對于異常數據的濾除:將PLC與智能設備間連接斷開,由測試PC模擬異常智能設備,發送超長、不足長度、錯誤內容的回文,并使用GX Works2監視PLC軟元件置位情況[11],以此檢測通信方法對異常數據的適應性。PLC發送“01 05 00 18 00 FF 0D 8D”意為對01地址流量積算儀流量清零,智能設備發送的正確回文應與PLC發送報文相同。測試PC回文“01 05 00 18 00 FF 0D”模擬回文缺失字節情況,PLC于指定時間內未收到足夠長度數據,定時器超時,正確認定數據異常。重發流量清零報文,要求重新通信。測試PC回文“AA 05 00 18 00 FF 0D”模擬字節錯誤情況,由監視發現報文CRC校驗失敗,數據異常被正確識別,PLC再次重發流量清零報文。測試PC回文“01 01 05 00 18 00 FF 0D 8D”模擬回文超長情況,此時PLC緩存軟元件收數據如圖7所示,超長部分不被接收,且由于已接收部分CRC校驗失敗,此次通信數據異常判定正確。由于連續3次接收數據異常,PLC正確認定智能設備或通信線路失能,對應離線標志位置位。測試PC通過監視還發現以上三次通信均由于正確觸發數據異常判定而調用過ZP.CSET指令,操作系統區域內錯誤數據按設定被清除,正確消除單次通信失敗對往后通信的負面影響。至此可認為智能模塊對異常數據報文的適應性良好。

圖7 超長回文緩沖軟元件監視

自由通信方法具備通信模塊故障的自恢復能力:在PLC與智能設備通信過程中由測試PC強行于線路中發送若干位干擾數據,以此引發通信模塊故障。由PLC錯誤履歷中發現若干次成幀出錯、奇偶性出錯,但肉眼未見模塊ERR燈亮起,同時由監視發現通信過程中除少量報文由于異常報文濾除功能出現丟失外繼續進行。可推斷通信模塊曾出現過使模塊失能的故障,PLC執行了錯誤自恢復程序,故障被順控程序消除。可見通信方法錯誤自恢復能力良好,具備長時無人值守工作能力。

6 結束語

以上介紹了Q系列PLC基于QJ71C24N通信模塊的擴展通信方法,該方法實現了模塊的自由通信,拓寬了模塊的應用場景,具備“變長度無固定結尾”數據接收、異常數據消除與通信模塊故障自恢復能力。

猜你喜歡
指令智能設備
聽我指令:大催眠術
諧響應分析在設備減振中的應用
智能前沿
文苑(2018年23期)2018-12-14 01:06:06
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
智能前沿
文苑(2018年19期)2018-11-09 01:30:14
智能前沿
文苑(2018年17期)2018-11-09 01:29:26
智能前沿
文苑(2018年21期)2018-11-09 01:22:32
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
主站蜘蛛池模板: 免费中文字幕在在线不卡| 精品视频一区二区三区在线播| 91精品国产福利| 午夜视频www| 欧美精品aⅴ在线视频| 欧美三级日韩三级| 久久人搡人人玩人妻精品一| 一区二区三区成人| 91色综合综合热五月激情| 久久99国产视频| 亚洲人成在线精品| 国产精品观看视频免费完整版| 国产精品林美惠子在线播放| 国产小视频免费观看| 国产亚洲欧美在线人成aaaa| 国产精品亚洲专区一区| 亚洲人网站| 欧洲在线免费视频| 久久精品电影| 亚洲精品国产精品乱码不卞| AⅤ色综合久久天堂AV色综合| 国产小视频网站| 谁有在线观看日韩亚洲最新视频 | 欧美成人精品在线| 99久久精品国产综合婷婷| 亚洲伊人电影| 99久久国产自偷自偷免费一区| 国产又大又粗又猛又爽的视频| 欧美精品v欧洲精品| 亚洲无码电影| 丰满人妻中出白浆| 国产美女在线观看| 亚洲经典在线中文字幕| 国产精品尤物铁牛tv| 国产成人亚洲毛片| 国国产a国产片免费麻豆| 四虎精品免费久久| 午夜性刺激在线观看免费| 国产玖玖视频| 美女高潮全身流白浆福利区| 中文字幕人成人乱码亚洲电影| 亚洲熟女偷拍| 国产女人在线视频| 国产男人天堂| 国产小视频在线高清播放| 亚洲区第一页| 国产亚洲精品无码专| 欧美啪啪一区| 高清不卡毛片| 国产探花在线视频| 91亚瑟视频| a亚洲视频| 国产成人综合欧美精品久久| 久久99国产综合精品1| 中文字幕伦视频| 91久久天天躁狠狠躁夜夜| 亚洲第一成年人网站| 欧美亚洲一区二区三区在线| 香蕉在线视频网站| 国产精品视屏| 亚洲国产理论片在线播放| 成人欧美日韩| 国产精选小视频在线观看| 国产美女精品一区二区| 久久免费精品琪琪| 国内熟女少妇一线天| 91视频免费观看网站| 欧美自拍另类欧美综合图区| 国产xx在线观看| 色天堂无毒不卡| 亚洲香蕉在线| 国产一区二区精品福利| 亚洲精品成人片在线观看| 99re这里只有国产中文精品国产精品| 亚洲综合国产一区二区三区| 欧美精品高清| 视频二区国产精品职场同事| 视频二区欧美| 亚洲av无码牛牛影视在线二区| 日本欧美在线观看| 日韩精品一区二区三区swag| 国产自产视频一区二区三区|