CAN總線和基于CAN總線的高層協(xié)議
DeviceNet 中,應(yīng)用數(shù)據(jù)的分組是由集合對(duì)象的實(shí)例(instance)規(guī)定的。這個(gè)“集合”對(duì)象的實(shí)例定義了發(fā)送的應(yīng)用對(duì)象數(shù)據(jù)格式。一個(gè)設(shè)備可能包含多于一個(gè) I/O集合而且其相應(yīng)集合的選擇也是一個(gè)可配置的設(shè)備選項(xiàng)。
CANopen 規(guī)定了有關(guān)應(yīng)用對(duì)象映射,應(yīng)用對(duì)象通過一個(gè)叫“PDO映射記錄”的數(shù)據(jù)結(jié)構(gòu)映射到PDO中。這個(gè)結(jié)構(gòu)以對(duì)象標(biāo)識(shí)符列表(對(duì)象目錄索引子索引)和數(shù)據(jù)長(zhǎng)度的形式規(guī)定了映射的應(yīng)用對(duì)象數(shù)據(jù)。由于PDO映射可通過SDO(Service Data Object)訪問,所以PDO映射可通過配置工具配置。
2.3 建立過程數(shù)據(jù)信息連接
在CAN 網(wǎng)絡(luò)里,信息生產(chǎn)者發(fā)送信息以及信息消耗者接收信息,其各自標(biāo)識(shí)符的分配建立了通訊路徑。通過已經(jīng)分配的信息標(biāo)識(shí)符的預(yù)定義信息可以建立信息的連接,或通過信息的各種標(biāo)識(shí)符分配來達(dá)到建立信息的連接目的。非預(yù)定義標(biāo)識(shí)符分配的主要優(yōu)點(diǎn)是:建立任何類型的通訊結(jié)構(gòu)的可能性,根據(jù)應(yīng)用需求的最大數(shù)量信息標(biāo)示符的有效性以及面向控制而設(shè)計(jì)的信息標(biāo)示符分配有效性。
在一預(yù)定義信息的系統(tǒng)中,信息的功能和信息的標(biāo)示符已經(jīng)被定義DeviceNet和 CANopen使用1:n系統(tǒng)結(jié)構(gòu)的預(yù)定義連接組方法。根據(jù)預(yù)定義組,一個(gè)已經(jīng)分配了從設(shè)備預(yù)定義查詢連接的DeviceNet主機(jī),已經(jīng)知道關(guān)于發(fā)送查詢請(qǐng)求以及期待查詢響應(yīng)信息的信息ID,因?yàn)樗鼈儊碓从趶臋C(jī)的MAC-ID。同樣的,在CANopen中除了其他的預(yù)定義信息之外, 默認(rèn)的預(yù)定義連接組提供了2個(gè)預(yù)定義的接收和發(fā)送PDO, 默認(rèn)PDO的用法和含義是由設(shè)備的類型決定。
DeviceNet標(biāo)識(shí)符分配方法是通過設(shè)備擁有的信息標(biāo)示符庫決定的,這個(gè)標(biāo)示符出自于信息發(fā)送設(shè)備的標(biāo)示符庫。DeviceNet最大為64個(gè)設(shè)備發(fā)布有效的標(biāo)識(shí)符。在連接過程中,一個(gè)產(chǎn)生模塊的信息從它的信息ID庫中,分配一個(gè)空閑的信息ID,并將此空閑的信息ID與它的源MAC ID(Source MAC ID)結(jié)合在一起,產(chǎn)生一個(gè)所謂的“連接ID”。而CANopen的變量標(biāo)識(shí)符分配方案基于中央信息標(biāo)識(shí)符庫,系統(tǒng)管理員通過SDO(Service Data Object)信道設(shè)置設(shè)備對(duì)象目錄中相應(yīng)的PDO標(biāo)識(shí)符實(shí)現(xiàn)信息連接的建立。
2.4 網(wǎng)絡(luò)管理
由于應(yīng)用是分布的,所以必須處理某些事件,如應(yīng)用部件的故障或節(jié)點(diǎn)的故障,如果同一應(yīng)用還沒有被分配,則這些事件就不會(huì)出現(xiàn)。因此,對(duì)于一個(gè)正確的網(wǎng)絡(luò)管理,其主要任務(wù)是檢測(cè)和顯示網(wǎng)絡(luò)中的錯(cuò)誤,并通過服務(wù)以一協(xié)調(diào)的方式控制分布節(jié)點(diǎn)的通訊。狀態(tài)取決于系統(tǒng)的解決方案,網(wǎng)絡(luò)的功能性可以通過顯式網(wǎng)絡(luò)管理設(shè)施提供,或通過其他方法提供。
CAN網(wǎng)絡(luò)的錯(cuò)誤檢測(cè)包括位錯(cuò)誤、填充錯(cuò)誤、CRC錯(cuò)誤、格式錯(cuò)誤和應(yīng)答錯(cuò)誤,每當(dāng)檢測(cè)到一個(gè)錯(cuò)誤該節(jié)點(diǎn)的錯(cuò)誤計(jì)數(shù)器就加1,當(dāng)節(jié)點(diǎn)的錯(cuò)誤計(jì)數(shù)器大于或等于256時(shí),節(jié)點(diǎn)進(jìn)入總線關(guān)閉狀態(tài)。
CANopen 網(wǎng)絡(luò)管理基于CAL NMT(Network ManagemenT)服務(wù)元素,這些元素應(yīng)用了“節(jié)點(diǎn)保護(hù)”原則來檢測(cè)節(jié)點(diǎn)故障。為了這個(gè)目的,一個(gè)NMT主機(jī)通過一個(gè)遠(yuǎn)程請(qǐng)求幀對(duì)網(wǎng)絡(luò)的每個(gè)節(jié)點(diǎn) NMT從機(jī)循環(huán)發(fā)送一個(gè)保護(hù)請(qǐng)求。被訪問的從機(jī)用它的實(shí)際通訊狀態(tài)響應(yīng)每個(gè)請(qǐng)求。如果NMT主機(jī)檢測(cè)到節(jié)點(diǎn)狀態(tài)改變或被訪問的節(jié)點(diǎn)沒有響應(yīng),就會(huì)有一個(gè)保護(hù)錯(cuò)誤告示NMT主機(jī)應(yīng)用。當(dāng)節(jié)點(diǎn)連接到網(wǎng)絡(luò)上后,節(jié)點(diǎn)保護(hù)就啟動(dòng)。每一個(gè)節(jié)點(diǎn)也監(jiān)督到達(dá)節(jié)點(diǎn)的保護(hù)請(qǐng)求信息。節(jié)點(diǎn)的“生存時(shí)間”過期后如果沒有進(jìn)一步的保護(hù)請(qǐng)求信息,則此節(jié)點(diǎn)的應(yīng)用被告之有網(wǎng)絡(luò)錯(cuò)誤。
根據(jù)面向連接的設(shè)計(jì),DeviceNet中的每個(gè)連接都受到監(jiān)控。因此,根據(jù)配置的期望信息包速率(expected packet rate),每個(gè)接收的連接端點(diǎn)都有靜止看門狗定時(shí)器(Inactivity/Watchdog-Timer),用于監(jiān)控到達(dá)節(jié)點(diǎn)的信息。如果定時(shí)器溢出,連接就會(huì)執(zhí)行專有的超時(shí)行動(dòng)。在接收到創(chuàng)建服務(wù)(Create Service)顯式信息后,可以通過使用專有的顯式信息服務(wù)的順序來配置連接,并且,要在整個(gè)連接完成了配置以后才允許連接。在訪問每個(gè) DeviceNet節(jié)點(diǎn)之前,每個(gè)節(jié)點(diǎn)必須重復(fù)執(zhí)行MAC ID檢查,使用這個(gè)特殊的協(xié)議順序,可以確保設(shè)備MAC ID的唯一性。所有的DeviceNet模塊都要求參與這個(gè)MAC ID的檢測(cè)算法。
2.5 設(shè)備建模和設(shè)備子協(xié)議
除了標(biāo)準(zhǔn)的通訊外, 還要求相似設(shè)備在開放式自動(dòng)化系統(tǒng)中應(yīng)具有額外的互用性和可交換性。CAN協(xié)議各個(gè)廠商間的設(shè)備功能可交換性較差DeviceNet和CANopen在這方面改進(jìn)了很多。DeviceNet和CANopen以設(shè)備模型的形式描述網(wǎng)絡(luò)上所看見的設(shè)備的功能性。為了提高相似設(shè)備的可交換性,DeviceNet 和CANopen規(guī)定了工業(yè)自動(dòng)化中主要設(shè)備類型的設(shè)備子協(xié)議,以確保不同廠家器件的相同基本標(biāo)準(zhǔn)行為。除了設(shè)備的功能性描述外,設(shè)備模型還提供關(guān)于設(shè)備的身份特點(diǎn)、版本號(hào)、狀態(tài)診斷信息、通訊設(shè)施和配置參數(shù)的描述。
DeviceNet的節(jié)點(diǎn)模型包括了幾個(gè)對(duì)象,其中一些是由DeviceNet要求的,其他則是由產(chǎn)品的應(yīng)用功能要求的。對(duì)象提供有關(guān)于設(shè)備中特殊部件的描繪和相關(guān)的數(shù)據(jù)屬性以及數(shù)據(jù)的過程服務(wù)的描繪。DeviceNet中的對(duì)象訪問是基于一個(gè)具有等級(jí)劃分的訪問方案,對(duì)象訪問包括媒體訪問控制標(biāo)識(shí)符、類型標(biāo)識(shí)符、實(shí)例標(biāo)示符以及屬性標(biāo)識(shí)符。媒體訪問控制標(biāo)識(shí)符用以將一個(gè)節(jié)點(diǎn)從同一網(wǎng)絡(luò)中的所有其他節(jié)點(diǎn)中區(qū)分開來,類型標(biāo)識(shí)符用以識(shí)別對(duì)象類型,實(shí)例標(biāo)示符用以在相同類型的所有實(shí)例中識(shí)別一個(gè)實(shí)例,屬性標(biāo)示符用以識(shí)別一個(gè)類型或?qū)嵗锏膶傩浴?br />DeviceNet的設(shè)備子協(xié)議(Device Profile) 包含三方面的信息:設(shè)備類型的對(duì)象模型、設(shè)備類型的I/O數(shù)據(jù)格式以及配置數(shù)據(jù)和數(shù)據(jù)的公共接口。一個(gè)設(shè)備可能包含高達(dá)32個(gè)嵌入對(duì)象,而且這些對(duì)象都是總線可尋址的實(shí)體。根據(jù)嵌入對(duì)象的級(jí)別可以確定屬性、行為和事件。
CANopen通過對(duì)象目錄描述對(duì)象設(shè)備的功能性。目錄項(xiàng)是由一個(gè)16位索引和一個(gè)8位子索引號(hào)碼識(shí)別,數(shù)據(jù)和參數(shù)的功能被規(guī)定其中。除了用于定義數(shù)據(jù)類型的區(qū)段外,還有3個(gè)主要的區(qū)段,分別是:通訊子協(xié)議區(qū)段、標(biāo)準(zhǔn)化的設(shè)備子協(xié)議區(qū)段和廠商細(xì)節(jié)區(qū)段。通訊子協(xié)議區(qū)段信息對(duì)于任何CANopen設(shè)備類型都是一致的,并包含與信息、參數(shù)和功能相關(guān)的設(shè)備。這些信息參數(shù)和功能又與設(shè)備的鑒別、錯(cuò)誤管理、包括將應(yīng)用對(duì)象映射到過程數(shù)據(jù)對(duì)象的設(shè)備通訊信道的定義有關(guān)。CANopen設(shè)備子協(xié)議區(qū)段為特殊類別的基本標(biāo)準(zhǔn)設(shè)備的功能性提供了一個(gè)接口,其中有些條目是強(qiáng)制的,有些是可選的。強(qiáng)制的、共有的條目要確保設(shè)備在一個(gè)定義的基本方式中運(yùn)轉(zhuǎn)。主要工業(yè)設(shè)備不同的設(shè)備子協(xié)議用以提高設(shè)備的可交換性。廠商特殊的或不標(biāo)準(zhǔn)的設(shè)備的功能性可以通過廠商特殊子協(xié)議區(qū)段進(jìn)行提供。本文引用地址:http://butianyuan.cn/article/156338.htm
3 結(jié)束語
文章通過對(duì)CAN、DeviceNet、CANopen在五方面的比較,使CAN總線用戶更深入的了解這幾種總線。這幾種協(xié)議最明顯的不同是信息標(biāo)識(shí)符的使用。DeviceNet基于面向連接的觀點(diǎn),CANopen基于面向信息的觀點(diǎn)。DeviceNet、CANopen協(xié)議和 CAN協(xié)議構(gòu)成了一個(gè)完整的協(xié)議體系CAN總線因其具備其獨(dú)特的設(shè)計(jì)思想、優(yōu)良的性能和高可靠性在汽車、醫(yī)學(xué)、機(jī)器人等領(lǐng)域有著很好的應(yīng)用,而CAN的高層協(xié)議DeviceNet、CANopen滿足了不同產(chǎn)品的兼容和互操作性,使得CAN總線的功能更加的豐富和適應(yīng)更加復(fù)雜的應(yīng)用,進(jìn)一步推進(jìn)了CAN總線在工業(yè)領(lǐng)域的推廣和應(yīng)用。
評(píng)論