l 顯式信息信道。
l 主機查詢改變信道的狀態(tài)循環(huán)。
l 從機I/O改變信道的狀態(tài)循環(huán)。
顯式信息主要服務(wù)于設(shè)備的配置。主機查詢改變狀態(tài)信道使得主機可以向設(shè)備請求I/O數(shù)據(jù)并把輸出數(shù)據(jù)發(fā)送到從機。借助于改變狀態(tài)循環(huán)或從機I/O(通過改變狀態(tài)循環(huán)觸發(fā)或通過應(yīng)用觸發(fā)),從機將輸入數(shù)據(jù)發(fā)送到主機。通過位選通指令,主機可以從最多為64個的從機中請求接收一個輸入數(shù)據(jù)。由于所有的這些信息都是被響應(yīng)的,所以對這些不同的功能性分配了8個信息標(biāo)識符。如果請求獲取數(shù)據(jù)的位選通沒有使用一高效的標(biāo)識符,則通過目的地址場在從機上對信息進行濾波。
CANopen 系統(tǒng)的標(biāo)識符分配使用在CAL子集,其中CMS(CAN-based Message Specification)將信息標(biāo)識符定義了8個優(yōu)先級,每個級別擁有220個ID,范圍從1~1760,剩余的標(biāo)志(0,1761~2031)保留給NMT(Network MessagemenT)。在CANopen的系統(tǒng)中,可能訪問的節(jié)點為128個,所以保留128個信息標(biāo)識符作為節(jié)點保護。
在最小系統(tǒng)配置中,CANopen規(guī)定了一個面向設(shè)備的標(biāo)識符分配方案,這種方法可以供127臺設(shè)備默認連接到一臺主設(shè)備上(如圖1所示)。通過4位的功能代碼可以區(qū)分某些情況的16種基本功能,這些情況分別是:2個數(shù)據(jù)過程信道的接收和發(fā)送、一個點對點信道、節(jié)點狀態(tài)控制、節(jié)點保護、緊急情況通報以及接收同步信息和有時間標(biāo)記的信息。由于信息的優(yōu)先級由它的功能決定,所以功能代碼位于信息標(biāo)識符的最高幾位。

?
圖2 CANopen最小系統(tǒng)標(biāo)識符分配方案
2.2 交換過程數(shù)據(jù)
在一分布式自動化系統(tǒng)的設(shè)備之間發(fā)送過程數(shù)據(jù)是CAN 通訊系統(tǒng)的目的,它應(yīng)以最高效率的方式完成。因此,對于應(yīng)用規(guī)定的數(shù)據(jù)(過程數(shù)據(jù)、I/O數(shù)據(jù))其傳送應(yīng)該根據(jù)產(chǎn)生者使用者的模型來執(zhí)行,其意思就是說, 通過相關(guān)的信息ID推斷所發(fā)送的數(shù)據(jù)。信息的產(chǎn)生者和使用者在這種情況下被假設(shè)擁有使用數(shù)據(jù)的知識或明白發(fā)送數(shù)據(jù)的含義。
在CAN基本協(xié)議中,各個節(jié)點采用規(guī)定的模式交換數(shù)據(jù)。CAN的數(shù)據(jù)流由數(shù)據(jù)幀、遠程幀、錯誤幀和超載幀4種不同的幀類型所表示和控制。數(shù)據(jù)幀攜帶數(shù)據(jù)從發(fā)送器至接收器。遠程幀由總線單元發(fā)出,請求發(fā)送具有同一識別符的數(shù)據(jù)幀。任何單元檢測到一總線錯誤就發(fā)出錯誤幀。超載幀用以在先行的和后續(xù)的數(shù)據(jù)幀(或遠程幀)之間提供一附加的延時。
但是,DeviceNet和CANopen在過程數(shù)據(jù)交換采用不同的解決方案。DeviceNet過程數(shù)據(jù)通過“I/O信息”傳送,CANopen過程數(shù)據(jù)通過“過程數(shù)據(jù)對象”(PDOs Process Data Object)傳送。
DeviceNet 支持下列的觸發(fā)模式:循環(huán)、改變狀態(tài)和應(yīng)用對象觸發(fā)。通過循環(huán)觸發(fā)的模式當(dāng)指定信息的傳送觸發(fā)定時器終止時,信息的發(fā)送就會被啟動。通過狀態(tài)改變的模式當(dāng)檢測到應(yīng)用對象狀態(tài)改變時,信息發(fā)送就會開始,當(dāng)一特定間隔時間結(jié)束而沒有發(fā)送信息,信息也會被發(fā)送。通過應(yīng)用對象觸發(fā)模式,應(yīng)用對象可以決定何時觸發(fā)信息的發(fā)送,當(dāng)一特定間隔時間結(jié)束而沒有發(fā)送信息時信息也會被發(fā)送。
CANopen的觸發(fā)模式劃分為事件、應(yīng)用請求或預(yù)定義同步信息接收后的觸發(fā)模式。事件觸發(fā)可以在子協(xié)議(Profile)或應(yīng)用指定的事件(異步 PDO)中產(chǎn)生。PDO的發(fā)送也可以通過接收一遠程請求信息而被觸發(fā)?!巴絇DO” 是通過接收同步信息的一指定號碼而被循環(huán)觸發(fā)的。同步信息也可以被用作為整個網(wǎng)絡(luò)中數(shù)據(jù)獲得的同步以及輸出數(shù)據(jù)濾波的同步。傳輸實時數(shù)據(jù)時,數(shù)據(jù)從一個生產(chǎn)者傳到一個或多個消費者,傳送限制在1到8個字節(jié),即一個PDO可以傳輸最多64個數(shù)字I/O值或者4個16位的AD值。
數(shù)據(jù)交換過程中,網(wǎng)絡(luò)設(shè)備會產(chǎn)生或者消耗一個以上的映射應(yīng)用對象。DeviceNet和CANopen為靈活地將應(yīng)用數(shù)據(jù)映射到通訊對象而提供了非常完善的方法。
DeviceNet 中,應(yīng)用數(shù)據(jù)的分組是由集合對象的實例(instance)規(guī)定的。這個“集合”對象的實例定義了發(fā)送的應(yīng)用對象數(shù)據(jù)格式。一個設(shè)備可能包含多于一個 I/O集合而且其相應(yīng)集合的選擇也是一個可配置的設(shè)備選項。
CANopen 規(guī)定了有關(guān)應(yīng)用對象映射,應(yīng)用對象通過一個叫“PDO映射記錄”的數(shù)據(jù)結(jié)構(gòu)映射到PDO中。這個結(jié)構(gòu)以對象標(biāo)識符列表(對象目錄索引子索引)和數(shù)據(jù)長度的形式規(guī)定了映射的應(yīng)用對象數(shù)據(jù)。由于PDO映射可通過SDO(Service Data Object)訪問,所以PDO映射可通過配置工具配置。
2.3 建立過程數(shù)據(jù)信息連接
在CAN 網(wǎng)絡(luò)里,信息生產(chǎn)者發(fā)送信息以及信息消耗者接收信息,其各自標(biāo)識符的分配建立了通訊路徑。通過已經(jīng)分配的信息標(biāo)識符的預(yù)定義信息可以建立信息的連接,或通過信息的各種標(biāo)識符分配來達到建立信息的連接目的。非預(yù)定義標(biāo)識符分配的主要優(yōu)點是:建立任何類型的通訊結(jié)構(gòu)的可能性,根據(jù)應(yīng)用需求的最大數(shù)量信息標(biāo)示符的有效性以及面向控制而設(shè)計的信息標(biāo)示符分配有效性。
在一預(yù)定義信息的系統(tǒng)中,信息的功能和信息的標(biāo)示符已經(jīng)被定義DeviceNet和 CANopen使用1:n系統(tǒng)結(jié)構(gòu)的預(yù)定義連接組方法。根據(jù)預(yù)定義組,一個已經(jīng)分配了從設(shè)備預(yù)定義查詢連接的DeviceNet主機,已經(jīng)知道關(guān)于發(fā)送查詢請求以及期待查詢響應(yīng)信息的信息ID,因為它們來源于從機的MAC-ID。同樣的,在CANopen中除了其他的預(yù)定義信息之外, 默認的預(yù)定義連接組提供了2個預(yù)定義的接收和發(fā)送PDO, 默認PDO的用法和含義是由設(shè)備的類型決定。
DeviceNet標(biāo)識符分配方法是通過設(shè)備擁有的信息標(biāo)示符庫決定的,這個標(biāo)示符出自于信息發(fā)送設(shè)備的標(biāo)示符庫。DeviceNet最大為64個設(shè)備發(fā)布有效的標(biāo)識符。在連接過程中,一個產(chǎn)生模塊的信息從它的信息ID庫中,分配一個空閑的信息ID,并將此空閑的信息ID與它的源MAC ID(Source MAC ID)結(jié)合在一起,產(chǎn)生一個所謂的“連接ID”。而CANopen的變量標(biāo)識符分配方案基于中央信息標(biāo)識符庫,系統(tǒng)管理員通過SDO(Service Data Object)信道設(shè)置設(shè)備對象目錄中相應(yīng)的PDO標(biāo)識符實現(xiàn)信息連接的建立。
評論