當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀] 引 言 DevICeNet是一種基于CAN總線技術(shù)的符合全球工業(yè)標(biāo)準(zhǔn)的開放型現(xiàn)場總線通信網(wǎng)絡(luò),它用于控制,配置和數(shù)據(jù)采集等方面。CAN 總線具有布線簡單、典型的總線型結(jié)構(gòu)、穩(wěn)定可靠、實時、抗干擾能力強、

引 言

DevICeNet是一種基于CAN總線技術(shù)的符合全球工業(yè)標(biāo)準(zhǔn)的開放型現(xiàn)場總線通信網(wǎng)絡(luò),它用于控制,配置和數(shù)據(jù)采集等方面。CAN 總線具有布線簡單、典型的總線型結(jié)構(gòu)、穩(wěn)定可靠、實時、抗干擾能力強、傳輸距離遠(yuǎn)、布線成本低等特點。由于具備了這些特點,Devi-ceNet總線被廣泛應(yīng)用于工業(yè)自動化控制,它不僅可以接入更多,更復(fù)雜的設(shè)備,還可以為上層提供更多的信息和服務(wù)。在很多歐美國家,越來越多的系統(tǒng)方案設(shè)計采用DeviceNet來實現(xiàn)。

ModBus協(xié)議是應(yīng)用于電子控制器上的一種通用語言,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議,由于該協(xié)議的產(chǎn)生,使控制器之間、控制器經(jīng)由網(wǎng)絡(luò)和其他設(shè)備之間實現(xiàn)相互通信。ModBus協(xié)議現(xiàn)在已經(jīng)成為一種通用的工業(yè)標(biāo)準(zhǔn),應(yīng)用該協(xié)議技術(shù)可以使不同廠商生產(chǎn)的控制設(shè)備連成一個工業(yè)網(wǎng)絡(luò),進行集中監(jiān)控管理。此協(xié)議定義了一個控制器能認(rèn)識使用的消息結(jié)構(gòu)體,從而使用戶不需要關(guān)心它們使用哪種網(wǎng)絡(luò)進行通信。它描述了一個控制器請求訪問其他設(shè)備的過程,如何回應(yīng)來自其他設(shè)備的請求,以及怎樣偵測錯誤并記錄。它制定了消息域格局和內(nèi)容的公共格式。

本文主要解決DeviceNet 與ModBus 之間的協(xié)議轉(zhuǎn)換問題。標(biāo)準(zhǔn)的ModBus口是使用RS-232C兼容串行接口,它定義了連接口的針腳、電纜、信號位、傳輸波特率、奇偶校驗??刂破髂苤苯踊蚪?jīng)由Modem 組網(wǎng)?;贒eviceNet 的嵌入式I/O 模塊通過I/O 口發(fā)送和接收數(shù)據(jù),ModBus通過串口與嵌入式I/O模塊進行通信。通過此過程完成DeviceNet與ModBus之間的協(xié)議轉(zhuǎn)換問題。

1 嵌入式I/O模塊的設(shè)計與實現(xiàn)

DeviceNet是一種上層的應(yīng)用層協(xié)議,其物理層和數(shù)據(jù)鏈路層采用CAN總線技術(shù),ModBus協(xié)議只是用于數(shù)據(jù)鏈路層上的協(xié)議[1].這兩種現(xiàn)場總線是異構(gòu)的,因此要實現(xiàn)兩種協(xié)議之間的通信,必須要進行協(xié)議轉(zhuǎn)換。協(xié)議轉(zhuǎn)換的轉(zhuǎn)換過程是分層次進行的。首先把總線設(shè)備發(fā)送過來的設(shè)備逐層解包,得到需要的數(shù)據(jù),然后再把數(shù)據(jù)按另一協(xié)議所需的方式打包,發(fā)送到相應(yīng)的設(shè)備上。

DeviceNet與ModBus協(xié)議都采用主從通信模式,所以它們之間的通信只能是單向的,主站發(fā)送命令報文而從站被動接收命令報文。本設(shè)計中的嵌入式I/O模塊既是De-viceNet從站,又是ModBus的主站。通過該模塊可以實現(xiàn)DeviceNet主站的數(shù)據(jù)與ModBus從站的數(shù)據(jù)進行傳輸。

嵌入式I/O模塊的功能是把DeviceNet格式的報文轉(zhuǎn)換為ModBus的報文命令,再傳給底層的ModBus設(shè)備,設(shè)備在接收到ModBus命令之后,會向報文轉(zhuǎn)換模塊發(fā)送ModBus格式的響應(yīng)報文,最后經(jīng)協(xié)議轉(zhuǎn)換模塊將報文轉(zhuǎn)換為DeviceNet格式的報文傳輸給DeviceNet主站。本嵌入式I/O模塊既是DeviceNet的從站實現(xiàn)接收主站報文并做出響應(yīng)的功能,同時又可以作為ModBus的主站向其他ModBus設(shè)備發(fā)送報文并接收響應(yīng)報文。

本設(shè)計采用的處理器為LPC2129,硬件結(jié)構(gòu)如圖1所示。它是NXP 公司的32 位工業(yè)級ARM7 處理器,其內(nèi)部集成了兩個CAN 控制器,在一片處理器內(nèi)首先將主站端的DeviceNet協(xié)議數(shù)據(jù)轉(zhuǎn)換成中間協(xié)議數(shù)據(jù),之后轉(zhuǎn)換成ModBus可以識別的協(xié)議數(shù)據(jù)。

撥碼開關(guān)用來設(shè)置DeviceNet 端的波特率及MAC地址,其中波特率的開關(guān)為3 位,分別代表125 Kb/s,250 Kb/s,500 Kb/s;MAC地址的開關(guān)為6位,地址為0~63.

RS 232 既可作為程序下載接口,也可作為通用的RS 232串口實現(xiàn)與上位機的通信。系統(tǒng)的供電電源采用24 V的直流供電,并在內(nèi)部將24 V電源轉(zhuǎn)化為模塊需要的5 V,3.3 V及1.8 V電壓電源。

2 DeviceNet 和ModBus 協(xié)議介紹

2.1 DeviceNet協(xié)議規(guī)范

DeviceNetTM規(guī)范由Rockwell 公司開發(fā),并將其作為一個基于CAN協(xié)議的開放式現(xiàn)場總線標(biāo)準(zhǔn)而公布。與其他現(xiàn)場總線相比,它具有突出的高可靠性、實時性和靈活性。其主要技術(shù)特點可歸納為:

(1)采用CAN物理層和數(shù)據(jù)鏈路層規(guī)約,使用CAN規(guī)約芯片,從而有強大的支持。

(2)可以容納64個節(jié)點地址,每個節(jié)點支持無限個的I/O口;

(3)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),節(jié)點設(shè)備配電方式靈活,可網(wǎng)絡(luò)統(tǒng)一配電或自行供電;

(4)網(wǎng)絡(luò)速度可選125 Kb/s,250 Kb/s 和500 Kb/s;有誤接線保護功能;

(5)數(shù)據(jù)傳送方式多樣,支持選通、輪詢、循環(huán)、狀態(tài)變化等方式;

(6)采用逐位仲裁機制實現(xiàn)按優(yōu)先級發(fā)送信息;

(7)支持輪詢或狀態(tài)改變(基于事件),多主站和主從,支持從設(shè)備的即用即拔,無需網(wǎng)絡(luò)斷電。

DeviceNet是面向連接服務(wù)的網(wǎng)絡(luò),任意兩個節(jié)點的通信必須建立在邏輯連接的基礎(chǔ)上。建立連接時與連接相關(guān)的傳送會分配一個11位連接標(biāo)識符(Connec-tion ID,CID),連接標(biāo)識符由設(shè)備媒體訪問控制標(biāo)識符(MAC ID)和信息標(biāo)識符(Message ID)兩部分組成。連接建立后設(shè)備可通過發(fā)送釋放連接或刪除連接請求服務(wù)來斷開連接。在某個特定的連接上長時間沒有進行通信,這個通信將自動斷開以釋放資源。其中,MAC ID可通過硬件設(shè)定,也可通過軟件來配置。標(biāo)識符分為四組,如圖2所示。DeviceNet連接分為顯式信息連接和I/O連接。

2.2 DeviceNet與CAN

DeviceNet總線協(xié)議是基于CAN總線技術(shù)的。它的數(shù)據(jù)鏈路層完全遵循CAN 規(guī)范的定義,并通過CAN 控制器芯片實現(xiàn)。它只使用CAN 2.0A 中的定義,不支持CAN 2.0B中的擴展報文格式。DeviceNet只用125 Kb/s,250 Kb/s,500 Kb/s 三種可選速率,達(dá)不到CAN 的最高通信速率1 Mb/s.DeviceNet 只使用數(shù)據(jù)幀,錯誤幀和超載幀三種幀表示和控制,并未使用CAN 中定義的遠(yuǎn)程幀。

DeviceNet 在CAN 總線的基礎(chǔ)上又增加了面向?qū)ο?、基于連接的現(xiàn)代通信技術(shù)理念,并開發(fā)了應(yīng)用層。

其應(yīng)用層規(guī)定了CAN 數(shù)據(jù)幀的使用方法、重復(fù)節(jié)點地址檢測機制、對象模型及設(shè)備的標(biāo)準(zhǔn)化。使DeviceNet的應(yīng)用更廣泛,安全性更好。

2.3 ModBus協(xié)議介紹

ModBus 是一種應(yīng)用于工業(yè)控制器的網(wǎng)絡(luò)通信協(xié)議,它是由MoDICon 公司開發(fā)的,主要應(yīng)用于電子控制器方面,現(xiàn)已成為一種通用工業(yè)標(biāo)準(zhǔn)。該協(xié)議支持傳統(tǒng)的RS 232,RS 422,RS 485和以太網(wǎng)設(shè)備。它定義了一個控制器能認(rèn)識使用的消息結(jié)構(gòu),使用者不需要關(guān)心它們內(nèi)部的網(wǎng)絡(luò)通信方式??刂破髋c控制器,控制器與其他設(shè)備之間(通過網(wǎng)絡(luò))的通信都要通過ModBus協(xié)議來實現(xiàn)。ModBus 協(xié)議制定了消息域格局和內(nèi)容的公共格式,并詳細(xì)描述了一個控制器請求訪問其他設(shè)備的過程以及如何回應(yīng)其他設(shè)備的請求,以及偵測錯誤并記錄的過程。當(dāng)使用ModBus網(wǎng)絡(luò)進行通信時,按照此協(xié)議的規(guī)定,每個控制器需要知道它們的設(shè)備地址,并能識別按地址發(fā)來的消息,根據(jù)這些信息決定要產(chǎn)生的動作。

ModBus協(xié)議的消息也能在其他網(wǎng)絡(luò)上進行傳輸,只需要將消息轉(zhuǎn)換為適用于其他網(wǎng)絡(luò)上使用的幀或包結(jié)構(gòu)即可。

ModBus分為兩種傳輸模式,ASCII和RTU模式。本文采用RTU模式進行說明??刂破魇褂弥?從技術(shù)進行通信,能直接或經(jīng)由調(diào)制解調(diào)器(Modem)組網(wǎng)。網(wǎng)絡(luò)上的每個從站必須有惟一的地址。地址范圍為1~247.

從站地址用于尋址從站設(shè)備。ModBus通信由主節(jié)點發(fā)起,即僅主設(shè)備能發(fā)起數(shù)據(jù)傳輸(即查詢),從設(shè)備根據(jù)主設(shè)備查詢提供的數(shù)據(jù)做出回應(yīng)信息或響應(yīng)動作。主設(shè)備以單播或廣播模式與從設(shè)備通信。在單播模式下,從設(shè)備返回消息作為回應(yīng),在廣播模式下,不作任何回應(yīng)(地址0作為廣播地址)。ModBus協(xié)議建立了主設(shè)備查詢的格式:設(shè)備(或廣播)地址、功能代碼、所有要發(fā)送的數(shù)據(jù)、錯誤檢測域,具體的ModBus 協(xié)議通信過程如圖3所示。

從設(shè)備回應(yīng)消息也由ModBus協(xié)議構(gòu)成,包括確認(rèn)要行動的域、要返回的數(shù)據(jù)、和錯誤檢測域。如果在消息接收過程中發(fā)生錯誤,或從設(shè)備不能執(zhí)行其命令,從設(shè)備將建立錯誤消息并把它作為回應(yīng)發(fā)送出去。

對于ModBus通信協(xié)議,信息傳輸為異步方式,以字節(jié)為單位傳送。報文的信息幀格式分為獨立的信息頭和發(fā)送的編碼數(shù)據(jù)兩部分,其報文結(jié)構(gòu)如圖4所示,下面分別介紹。

地址碼為通信傳送的第一個字節(jié)。每個從機都有具有惟一的地址碼,響應(yīng)回送以各自的地址碼開始。主機發(fā)送的地址碼表明將發(fā)送到的從機地址,而從機發(fā)送的地址碼表明回送的從機地址。

功能碼為通信傳送的第二個字節(jié)。ModBus通信規(guī)約定義功能號為1~127.作為主機請求發(fā)送,通過功能碼告訴從機執(zhí)行什么動作。作為從機響應(yīng),從機發(fā)送的功能碼與從主機發(fā)送來的功能碼一樣,并表明從機已響應(yīng)主機進行操作。

數(shù)據(jù)區(qū)是根據(jù)不同的功能碼而不同。數(shù)據(jù)區(qū)可以是實際數(shù)值、設(shè)置點、主機發(fā)送給從機或從機發(fā)送給主機的地址。CRC碼為字節(jié)的錯誤檢測碼。

當(dāng)通信命令發(fā)送給

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉