<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 電源與新能源 > 設計應用 > 基于DeviceNet 的嵌入式I/O模塊設計

基于DeviceNet 的嵌入式I/O模塊設計

作者: 時(shí)間:2016-12-09 來(lái)源:網(wǎng)絡(luò ) 收藏

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

本文引用地址:http://dyxdggzs.com/article/201612/328302.htm

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

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

1 嵌入式I/O模塊的設計與實(shí)現

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

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

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

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

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

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

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

2.1 DeviceNet協(xié)議規范

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

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

(2)可以容納64個(gè)節點(diǎn)地址,每個(gè)節點(diǎn)支持無(wú)限個(gè)的I/O口;

(3)網(wǎng)絡(luò )拓撲結構,節點(diǎn)設備配電方式靈活,可網(wǎng)絡(luò )統一配電或自行供電;

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

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

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

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

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

2.2 DeviceNet與CAN

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

DeviceNet 在CAN 總線(xiàn)的基礎上又增加了面向對象、基于連接的現代通信技術(shù)理念,并開(kāi)發(fā)了應用層。

其應用層規定了CAN 數據幀的使用方法、重復節點(diǎn)地址檢測機制、對象模型及設備的標準化。使DeviceNet的應用更廣泛,安全性更好。

2.3 ModBus協(xié)議介紹

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

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

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

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

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

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

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

功能碼為通信傳送的第二個(gè)字節。ModBus通信規約定義功能號為1~127.作為主機請求發(fā)送,通過(guò)功能碼告訴從機執行什么動(dòng)作。作為從機響應,從機發(fā)送的功能碼與從主機發(fā)送來(lái)的功能碼一樣,并表明從機已響應主機進(jìn)行操作。

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

當通信命令發(fā)送給接收設備時(shí),符合相應地址碼的設備接通信命令,將地址碼去掉,獲取真正的命令內容,判斷是否有誤,無(wú)誤則執行相應的任務(wù)并把執行結果返送給發(fā)送者?;厮偷男畔⒅邪ǖ刂反a、執行動(dòng)作的功能碼、執行動(dòng)作后結果的數據以及錯誤校驗碼,如果出錯就不發(fā)送任何信息。

3 嵌入式I/O模塊的設計與實(shí)現

協(xié)議轉換模塊的功能是把DeviceNet格式的命令報文轉換為ModBus的報文命令,再傳給底層的ModBus設備,設備在接收到ModBus命令之后,會(huì )向報文轉換模塊發(fā)送ModBus格式的響應


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

關(guān)鍵詞: DeviceNet嵌入式IO模塊設

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>