基于ARM Cortex-M3的MODBUS協(xié)議實現(xiàn)及其應用
摘要 針對變頻器通信應用,介紹了MODBUS協(xié)議的特點及其組成;設計了RS485電路接口;并以ARMCortex-M3微控制器為核心,設計了MODBUS協(xié)議的實現(xiàn)方案。針對變頻器F2000-G開發(fā)了嵌入式系統(tǒng).實現(xiàn)變頻調(diào)速功能,應用于無損檢測試驗儀。
關鍵詞 MODBUS;RS485;ARM Cortex-M3;變頻調(diào)速;嵌入式系統(tǒng)
漏磁探傷作為非接觸式的無損探傷技術,其具有檢測速度快、靈敏度高、無需耦合劑、易于實現(xiàn)自動化等特點,是鋼軌探傷技術的重點研究方向。為解決漏磁探傷研究中的實驗仿真問題,研制了基于嵌入式系統(tǒng)的無損探傷試驗儀,通過實現(xiàn)MODBUS協(xié)議與變頻器通信,以此驅(qū)動交流電機與機械試驗裝置,完成運動控制并進行無損探傷試驗。
針對無損探傷試驗儀中變頻器通信問題,依據(jù)MODBUS協(xié)議規(guī)定,利用RealView MDK開發(fā)了基于ARM Cortex-M3微控制器的嵌入式軟件,實現(xiàn)了與變頻器的MODBUS通信,完成變頻調(diào)速的運動控制功能。
1 MODBUS協(xié)議
1.1 MODBOS協(xié)議簡介
MODBUS是Gould Ine注冊的通訊協(xié)議商標,該協(xié)議具有糾錯能力強、數(shù)據(jù)傳輸量大、實時性好等特點,是工業(yè)自動控制領域使用較廣泛的通訊語言,目前已成為我國工業(yè)自動化領域的一種國家標準。
MODBUS協(xié)議定義了一個控制器能識別的消息結(jié)構,它描述了控制器請求訪問和應答回應其他設備的過程,以及錯誤檢測和記錄的規(guī)范,制定了報文字段和內(nèi)容的公共格式。MODBUS屬于應用層報文傳輸協(xié)議,其通信結(jié)構為一對多的主從查詢模式,即主從Master-Slave模式。 MODBUS網(wǎng)絡上可以有多個從節(jié)點,但有且只能有一個主節(jié)點,主節(jié)點按照通信協(xié)議對從節(jié)點發(fā)出請求操作,從設備收到主節(jié)點的請求后,做出相應的響應再向主節(jié)點回復應答消息。
1.2 MODBOS協(xié)議組成
MODBUS協(xié)議具有兩種傳輸模式:ASCII模式和RTU模式。ASCII模式中數(shù)據(jù)以ASCH字符碼表示,通過冒號、回車字符判定數(shù)據(jù)幀的起始和結(jié)束,采用IRC數(shù)據(jù)檢驗;RTU模式中數(shù)據(jù)以非壓縮BCD碼表示,通過時間標記實現(xiàn)數(shù)據(jù)幀起始判定,采用CRC數(shù)據(jù)校驗,具有數(shù)據(jù)吞吐量高、傳輸穩(wěn)定、通信效率高的優(yōu)點。
由于變頻調(diào)速系統(tǒng)的安全性能要求較高,所以選擇通信效率高、時間管理嚴格的RTU傳輸模式。在協(xié)議幀組成上,MODBUS定義了一個基本的,與通信層無關數(shù)據(jù)協(xié)議單元PDU(Protocol Data Unit),并通過在PDU上添加地址、校驗等附加域定義了應用數(shù)據(jù)單元ADU(Application Data Unit),形成完整的數(shù)據(jù)幀,MODBUS RTU數(shù)據(jù)幀組成如表1所示。
在數(shù)據(jù)幀起始判定上,MODBUS RTU采用了如圖1所示的時間標記方法,即相鄰的兩幀之間必須間隔至少為總線發(fā)送3.5個字符的時間,該時間稱為T3.5。
評論