新聞中心

EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 基于Modbus通訊協(xié)議的Rs-485總線在配電自動(dòng)化控制系統(tǒng)中的應(yīng)用(05-100)

基于Modbus通訊協(xié)議的Rs-485總線在配電自動(dòng)化控制系統(tǒng)中的應(yīng)用(05-100)

——
作者:浙江正泰電器股份有限公司 蔣鋒 陳建余 鄭光樞 舒捍剛 時(shí)間:2006-09-03 來(lái)源:電子產(chǎn)品世界 收藏


本設(shè)計(jì)的異步通信數(shù)據(jù)以字節(jié)的方式傳送,在每一個(gè)字節(jié)傳送之前,先要通過(guò)一個(gè)低電平起始位實(shí)現(xiàn)握手。為防止干擾信號(hào)誤觸發(fā)RO(接收器輸出)產(chǎn)生負(fù)跳變,使接收端MCU進(jìn)入接收狀態(tài),在RO腳外接3kΩ上拉電阻;P3.4與DE腳之間通過(guò)74HC86實(shí)現(xiàn)反相控制,以防止MCU上電時(shí)對(duì)總線的干擾。 

MODBUS通訊協(xié)議及編程
 
本設(shè)計(jì)采用通信協(xié)議的RTU通訊模式,消息發(fā)送至少要以3.5個(gè)字符時(shí)間的停頓間隔開(kāi)始。網(wǎng)絡(luò)設(shè)備不斷偵測(cè)網(wǎng)絡(luò)總線,包括停頓間隔時(shí)間內(nèi)。當(dāng)?shù)谝粋€(gè)域(地址域)接收到,每個(gè)設(shè)備都進(jìn)行解碼以判斷是否發(fā)往自己的。一個(gè)典型的消息幀如下所示:起始位 設(shè)備地址 功能代碼 數(shù)據(jù) CRC校驗(yàn) 結(jié)束符。監(jiān)控計(jì)算機(jī)通過(guò)將要聯(lián)絡(luò)的智能控制器的地址放入消息中的地址域來(lái)選通智能控制器。當(dāng)智能控制器發(fā)送回應(yīng)消息時(shí),它把自己的地址放入回應(yīng)的地址域中,以便監(jiān)控計(jì)算機(jī)知道是哪一個(gè)設(shè)備做出回應(yīng)。地址0是用作廣播地址,以使所有的智能控制器都能認(rèn)識(shí)。當(dāng)消息從監(jiān)控計(jì)算機(jī)發(fā)往智能控制器時(shí),功能代碼域?qū)⒏嬷悄芸刂破餍枰獔?zhí)行哪些行為。在這里主要使用到2種功能碼,03H:讀寄存器數(shù)據(jù);06H:寫寄存器數(shù)據(jù)。讀寄存器的內(nèi)容包括開(kāi)關(guān)分/合閘狀態(tài)、當(dāng)前電流值、電壓值、故障記錄值等。智能控制器回應(yīng)時(shí),它使用功能代碼域來(lái)指示是正常回應(yīng)(無(wú)誤)還是有某種錯(cuò)誤發(fā)生(稱作異議回應(yīng))。對(duì)正?;貞?yīng),智能控制器僅回應(yīng)相應(yīng)的功能代碼。對(duì)異議回應(yīng),智能控制器返回一等同于正常代碼的代碼,并將功能代碼首位置為邏輯1。例如:一從監(jiān)控計(jì)算機(jī)發(fā)往智能控制器的消息要求讀一組保持寄存器,將產(chǎn)生如下功能代碼:0 0 0 0 0 0 1 1 (十六進(jìn)制03H) 對(duì)正?;貞?yīng),智能控制器僅回應(yīng)同樣的功能代碼。對(duì)異議回應(yīng),它返回: 1 0 0 0 0 0 1 1 (十六進(jìn)制83H)除功能代碼因異議錯(cuò)誤作了修改外,智能控制器將一獨(dú)特的代碼放到回應(yīng)消息的數(shù)據(jù)域中,監(jiān)控計(jì)算機(jī)應(yīng)用程序得到異議的回應(yīng)后重發(fā)信息,直到智能控制器能夠正確響應(yīng);通過(guò)寫寄存器可實(shí)現(xiàn)開(kāi)關(guān)遙控分/合閘控制及更改智能控制器系統(tǒng)參數(shù)等功能。在最后一個(gè)傳輸字符之后,一個(gè)至少3.5個(gè)字符時(shí)間的停頓標(biāo)定了消息的結(jié)束,一個(gè)新的消息可在此停頓后開(kāi)始,如果停頓時(shí)間小于3.5個(gè)字符時(shí)就會(huì)引起CRC校驗(yàn)錯(cuò)誤。在程序中設(shè)置一個(gè)幀計(jì)時(shí)器,當(dāng)線路上有數(shù)據(jù)時(shí)就刷新該計(jì)時(shí)器,線路空閑時(shí)則停止刷新,計(jì)時(shí)時(shí)間達(dá)到3.5幀時(shí)計(jì)時(shí)器被軟件清除,而下一幀則為地址幀,限于篇幅關(guān)系,下面簡(jiǎn)單給出MODBUS通信中智能控制器查詢發(fā)送處理程序流程圖(圖3)和接收中斷處理程序流程圖(圖4)。

本文引用地址:http://www.2s4d.com/article/16125.htm

 

由于編程主要需處理好CRC校驗(yàn)碼的生成及數(shù)據(jù)包開(kāi)始標(biāo)志的測(cè)試,下面給出CRC校驗(yàn)碼的生成流程,見(jiàn)圖5。

 

結(jié)束語(yǔ)

協(xié)議是目前得到廣泛應(yīng)用的通信協(xié)議,而其構(gòu)筑的硬件平臺(tái)總線具有硬件設(shè)計(jì)簡(jiǎn)單、控制方便、成本低廉等優(yōu)點(diǎn),在工控自動(dòng)化系統(tǒng)中將得到越來(lái)越多的應(yīng)用。

參考文獻(xiàn):《CAN總線在啤酒發(fā)酵過(guò)程控制系統(tǒng)中的應(yīng)用》—何用輝 黃耀志
          《Modbus通信協(xié)議及編程》—朱小襄


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 正泰 Modbus Rs-485 無(wú)線

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉