基于Modbus RTU通信協(xié)議的伺服電機聯(lián)動控制系統(tǒng)
2 Modbus RTU協(xié)議及實現(xiàn)
2.1 Modbus協(xié)議
Modbus是OSI模型第7層上的應(yīng)用層報文傳輸協(xié)議,它在連接至不同類型總線或網(wǎng)絡(luò)的設(shè)備之間提供客戶機/服務(wù)器通信。標(biāo)準(zhǔn)的Modbus口是使用RS-232C兼容串行接口,它定義了連接口的針腳、電纜、信號位、傳輸波特率、奇偶校驗??刂破髂苤苯踊蚪?jīng)由Modem組網(wǎng)??刂破?a class="contentlabel" href="http://www.104case.com/news/listbylabel/label/通信">通信使用主-從技術(shù),即僅一設(shè)備(主設(shè)備)能初始化傳輸(查詢)。其它設(shè)備(從設(shè)備)根據(jù)主設(shè)備查詢提供的數(shù)據(jù)做出相應(yīng)反應(yīng)。典型的主設(shè)備:主機和可編程儀表。典型的從設(shè)備:可編程控制器。本系統(tǒng)中主設(shè)備指上位機,從設(shè)備主要指伺服放大器。
上位機可單獨和伺服放大器通信,也能以廣播方式和所有放大器通信。如果單獨通信,伺服放大器返回一消息作為回應(yīng),如果是以廣播方式查詢的,則不作任何回應(yīng)。Modbus協(xié)議建立了上位機查詢的格式:設(shè)備(或廣播)地址、功能代碼、所有要發(fā)送的數(shù)據(jù)、一錯誤檢測域。伺服放大器回應(yīng)消息也由Modbus協(xié)議構(gòu)成,包括確認(rèn)要行動的域、任何要返回的數(shù)據(jù)和一錯誤檢測域。如果在消息接收過程中發(fā)生一錯誤,或不能執(zhí)行其命令,伺服放大器將建立一錯誤消息并把它作為回應(yīng)發(fā)送出去。
通信過程主要分查詢和響應(yīng)。查詢指從上位機通過功能代碼告之被選中的伺服放大器要執(zhí)行的何種功能;響應(yīng)指伺服放大器對查詢信息功能代碼的回應(yīng)。通信是由來自上位機的查詢開始的。伺服放大器之間不能進行查詢。
控制器能設(shè)置為兩種傳輸模式(ASCII或RTU)之中的任意一種標(biāo)準(zhǔn)進行通信。文中選用RTU(遠程終端設(shè)備)模式,還包括設(shè)置其他串口通信參數(shù)(波特率,校驗方式等)。需要注意的是,在同一個Modbus網(wǎng)絡(luò)上所有的設(shè)備都必須有相同的傳輸模式和串口參數(shù)。RTU模式下,數(shù)據(jù)幀格式是:地址+功能代碼+信息+CRC-16校驗。CRC校驗的全稱是循環(huán)冗余校驗,其特點是:檢錯能力極強,花費CPU開銷小。
2.2 參數(shù)編輯
2.2.1 參數(shù)綁定
設(shè)計中伺服電機采用定位數(shù)據(jù)運行,默認(rèn)最多15點定位數(shù)據(jù),AD3~AD0分別對應(yīng)1~15點定位數(shù)據(jù),具體數(shù)據(jù)見表1。本文引用地址:http://www.104case.com/article/154747.htm
在伺服放大器上通過參數(shù)綁定,一一對應(yīng)到伺服放大器輸出端子,然后通過調(diào)整輸出端子的邏輯值(0或者1),進而改變AD3~AD0的數(shù)值,最后決定選取的定位數(shù)據(jù)編號。其中部分參數(shù)綁定信息見表2。
伺服電機相關(guān)文章:伺服電機工作原理
評論