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