<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è) > 嵌入式系統 > 設計應用 > CAN應用層協(xié)議詳解之DeviceNet協(xié)議

CAN應用層協(xié)議詳解之DeviceNet協(xié)議

作者:ZLG致遠電子 時(shí)間:2017-04-13 來(lái)源:電子產(chǎn)品世界 收藏

  是基于總線(xiàn)技術(shù)并符合全球工業(yè)標準的開(kāi)放型通信網(wǎng)絡(luò )。定位于工業(yè)控制的設備級網(wǎng)絡(luò ),不僅降低了系統的復雜性,還減少了設備通信的電纜硬件接線(xiàn),提高系統可靠性,降低安裝、維護成本,是分布式控制系統的理想解決方案。

本文引用地址:http://dyxdggzs.com/article/201704/346569.htm

  規范定義了一個(gè)網(wǎng)絡(luò )通信標準,以便組成工業(yè)控制系統的各個(gè)設備之間可以進(jìn)行數據通信。規范除了提供ISO模型的應用層定義之外,還定義了部分物理層和數據鏈路層。規范中不僅對DeviceNet節點(diǎn)的物理連接也作了規定,連接器、電纜類(lèi)型、長(cháng)度以及與通信相關(guān)的指示器、開(kāi)關(guān)、相關(guān)的室內銘牌都作了詳細規定。

  1.DeviceNet基本概念

  DeviceNet是建立在協(xié)議基礎之上,沿用了協(xié)議所規定的物理層和數據鏈路層,并補充了不同的報文格式、總線(xiàn)訪(fǎng)問(wèn)仲裁規則及故障檢測和隔離方法。DeviceNet的功能和特點(diǎn)如表1所示。

  表1 DeviceNet特點(diǎn)

  DeviceNet的應用層協(xié)議則采用的是通用工業(yè)協(xié)議(CIP)。CIP是一個(gè)在高層面上嚴格面向對象的協(xié)議。每個(gè)CIP對象具有屬性(數據),服務(wù)(命令),連接和行為(屬性值與服務(wù)間的關(guān)系),其主要功能有兩個(gè):一是面向連接的通信;二是定義了標準的工業(yè)應用對象。下文詳細介紹通信部分。

  CIP通信最重要的特點(diǎn)是它用不同的方式傳輸不同類(lèi)型的報文,根據報文質(zhì)量要求將需要發(fā)送的報文分為:顯式報文和隱式報文。

  CIP另一個(gè)重要特點(diǎn)是通信基于連接的。因此DeviceNet網(wǎng)絡(luò )上任意兩個(gè)節點(diǎn)通信之前必須建立起連接,且連接是可以動(dòng)態(tài)建立和撤銷(xiāo)。請注意這里的“連接”是邏輯上的關(guān)系,而非物理層的連接。

  DeviceNet支持兩種類(lèi)型的連接:顯式信息連接和I/O連接。

  顯式信息連接是點(diǎn)對點(diǎn)的連接方式,報文接收方必須對接到的報文做出相應的響應,通常這類(lèi)報文對時(shí)間要求不高,主要用于上傳/下載程序、修改設備參數、趨勢分析和診斷等。

  I/O連接則用于傳送實(shí)時(shí)性要求較高的I/O報文,可以一對一、一對多的數據傳送。DeviceNet支持多種I/O數據觸發(fā)方式,如位選通(Bit strobe)、輪詢(xún)(Poll)、狀態(tài)改變(COS:Change Of State)/循環(huán)(Cyclic)等。

  位選通:利用8字節的廣播報文,每一位分別對應著(zhù)網(wǎng)絡(luò )上64個(gè)節點(diǎn),指定要求響應的從節點(diǎn),響應報文最大為8個(gè)字節。

  輪詢(xún):這種觸發(fā)方式適用于絕大多數設備,相比位選通的少量I/O數據,輪詢(xún)命令可傳送任意數量的數據。輪詢(xún)命令依次發(fā)送到各從站設備,從站接收到命令后做出應答。

  狀態(tài)改變:此方式多用于離散的設備,當設備狀態(tài)發(fā)生改變時(shí),使用事件觸發(fā)方式,發(fā)生通信,而不是依靠主設備不斷查詢(xún)。為了防止設備掉線(xiàn),增加了心跳報文,定時(shí)獲取設備運行狀態(tài)。

  循環(huán):適用于一些模擬設備,可以根據設備信號發(fā)生快慢,靈活的設定循環(huán)通信的時(shí)間間隔,可以降低不必要的網(wǎng)絡(luò )流量,循環(huán)時(shí)間設定值應小于模擬量輸入發(fā)生變化的時(shí)間值。每臺設備中,循環(huán)和狀態(tài)改變是互斥的,同一時(shí)刻只能使用一種連接方式。

  下面通過(guò)圖1介紹DeviceNet網(wǎng)絡(luò )中兩臺設備建立通信的一般流程。

  圖1 DeviceNet通信基本流程

  DeviceNet網(wǎng)絡(luò )上最多可有64個(gè)節點(diǎn),節點(diǎn)地址(MAC ID)可為0~63,每一個(gè)節點(diǎn)都具有唯一的MAC ID。因此每個(gè)節點(diǎn)在上電之后、上線(xiàn)之前必須進(jìn)行重復MAC ID檢測,以確認其MAC ID是否已被網(wǎng)絡(luò )上其它節點(diǎn)使用。節點(diǎn)在上電之后,將發(fā)送重復MAC ID檢測報文,間隔一秒,如果連續兩次發(fā)送都沒(méi)有接收到來(lái)自其它節點(diǎn)的重復MAC ID響應報文,那么該節點(diǎn)可以使用此MAC ID并轉為在線(xiàn)狀態(tài),否則表示該MAC ID已被其它節點(diǎn)占用,該節點(diǎn)為離線(xiàn)狀態(tài)。然后,通過(guò)未連接顯式信息建立顯式信息連接,主從站通過(guò)顯式信息進(jìn)行各種配置和信息交換,主站通過(guò)顯式信息讀取從站的標識信息,并與預先保存的配置信息進(jìn)行對比,只有完全一致時(shí)主站才會(huì )對從站進(jìn)行下一步操作,否則主站將會(huì )主動(dòng)釋放顯式信息連接。最后,建立I/O連接,并通過(guò)I/O連接進(jìn)行實(shí)時(shí)數據收發(fā)。

  注:不同的主站模塊建立I/O連接的流程有所差別,上文強調的是DeviceNet網(wǎng)絡(luò )是基于連接的一種通信網(wǎng)絡(luò )。

  DeviceNet 是一個(gè)基于連接的網(wǎng)絡(luò )系統一個(gè)DeviceNet 的連接提供了多個(gè)應用之間的路徑當建立連接時(shí)與連接相關(guān)的傳送被分配一個(gè)連接ID CID 如果連接包含雙向交換那么應當分配兩個(gè)連接ID 值見(jiàn)圖2。

   

  圖2 連接及連接ID

  2.DeviceNet 關(guān)于CAN 標識區的使用

  在DeviceNet 上有效的11 位CAN 標識位被分成4 個(gè)單獨的信息組組1 組2和組3 和組4。

   

  圖3 DeviceNet的CAN報文定義

  信 息 ID (Message ID) :在一特定端點(diǎn)內的信息組中識別一個(gè)信息信息ID 使得在一特定的端點(diǎn)內單個(gè)信息組中可以建立多重連接連接建立時(shí)該端點(diǎn)利用信息ID與MAC ID 的結合生成一個(gè)連接ID 該連接ID 在與相應傳輸有關(guān)的CAN 標識區內指定具體細節在本規范的后續部分中將被描述注意組2 和組3 預定義了確定信息ID 的使用;

  源 MAC ID (Source MAC ID) :此 MAC ID 分配給發(fā)送節點(diǎn)組1 和3 需要在CAN標識區內指定源MAC ID;

  目 的 MAC ID (Destination MAC ID): 此 MAC ID 分配給接收設備信息組2 允許在CAN 標識區的MAC ID 部分指定源或目的MAC ID。

  3.信息組1

  DeviceNet 并不預定義組1 信息ID 的使用組1 信息ID 描述了通過(guò)一個(gè)特別端點(diǎn)交換的各種組1 信息。

  圖4 DeviceNet的信息組1定義

  在組1 的傳輸中總線(xiàn)訪(fǎng)問(wèn)優(yōu)先權被均勻地分配到網(wǎng)絡(luò )的所有設備上當兩個(gè)或多個(gè)組1 信息進(jìn)行CAN 總線(xiàn)訪(fǎng)問(wèn)仲裁時(shí)小數字的組1 信息ID 值的信息將贏(yíng)得仲裁并獲得總線(xiàn)訪(fǎng)問(wèn)權。例如device #20 message_ID = 2將先于 device #5 message_ID = 6 贏(yíng)得仲裁。

  如果兩個(gè)或多個(gè)信息ID 值相等的組1 信息進(jìn)行總線(xiàn)仲裁那么來(lái)自MAC ID 值較低的設備的發(fā)送將贏(yíng)得仲裁,例如device #2 message_ID=5 將先于 device #3 message_ID=5 贏(yíng)得仲裁。這樣在組1 中就提供了16 個(gè)級的優(yōu)先權均勻分配方案

  4.信息組2

  組2 信息ID 描述了在一個(gè)特定端點(diǎn)上交換各種組2 ,信息組2 中的信息ID 值為6 和7 的用法例外

  DeviceNet 預定義了一組用于主/從應用通訊的連接見(jiàn)第7 章這個(gè)定義保留組2 信息ID 值6。組 2 信息ID 值7 被保留用作被賦予相同MAC ID 節點(diǎn)的檢測見(jiàn)第6 章網(wǎng)絡(luò )訪(fǎng)問(wèn)狀態(tài)機制。

  在組2 內MAC ID 可以是發(fā)送節點(diǎn)的MAC ID 源MAC ID 也可以是接收節點(diǎn)的MAC ID 目的MAC ID 當通過(guò)組2 建立連接時(shí)端點(diǎn)將確定是源MAC ID還是目的MAC ID在組2 傳輸中總線(xiàn)訪(fǎng)問(wèn)優(yōu)先權是根據標識符的MAC ID 部分的MAC ID 值來(lái)決定的當兩個(gè)或多個(gè)組2 傳輸進(jìn)行CAN 總線(xiàn)仲裁時(shí)其 MAC ID 數值較小的信息將獲得總線(xiàn)訪(fǎng)問(wèn)權。

  目前,致遠電子的CANScope總線(xiàn)綜合分析儀已免費標配CANPRO軟件,可以解析主流的DeviceNet協(xié)議。

  圖5 協(xié)議解析



關(guān)鍵詞: CAN DeviceNet

評論


相關(guān)推薦

技術(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>