CANopen對象字典生成辦法.doc_第1頁
CANopen對象字典生成辦法.doc_第2頁
CANopen對象字典生成辦法.doc_第3頁
CANopen對象字典生成辦法.doc_第4頁
CANopen對象字典生成辦法.doc_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

CANopen對象字典生成辦法發(fā)布時間:2013-09-25 來源:中國自動化網(wǎng) 類型:解決方案1081人瀏覽關鍵字:CANopen對象字典生成器導讀:本文在闡述CANopen對象字典的概念與結構的基礎之上,結合生成對象字典常用方法的不足,引出一種可快速可靠創(chuàng)建與修改對象字典的對象字典生成器ODBuilder,不僅有效減少編輯對象字典的時間,而且最大限度地避免工程師手工編輯對象字典的錯誤出現(xiàn),為CANopen設備參數(shù)設置提供有力可靠的解決方案。摘要:本文在闡述CANopen對象字典的概念與結構的基礎之上,結合生成對象字典常用方法的不足,引出一種可快速可靠創(chuàng)建與修改對象字典的對象字典生成器ODBuilder,不僅有效減少編輯對象字典的時間,而且最大限度地避免工程師手工編輯對象字典的錯誤出現(xiàn),為CANopen設備參數(shù)設置提供有力可靠的解決方案。關鍵詞:CANopen,對象字典,生成器,ODBuilder,EDS文件Abstract:Inthispaper,ontheintroductionoftheconceptandstructureoftheCANopenobjectdictionary,combinedwiththeshortageofcommonmethodsofgeneratingobjectdictionary,leadtoaobjectdictionarygenerator-ODBuilder,whichisquicklyandreliablycreateandmodifytheCANopenobjectdictionary.Thistoolnotonlyeffectivelyreducethetimeofeditingobjectdictionary,butsignificantlyminimizetheoccurrenceoferrorofmanuallyeditingtheobjectdictionary,andprovidearobustandreliablesolutionsfortheparameterSettingsofCANopenequipment.Keywords:CANopen,Objectdictionary,generator,ODBuilder,EDSFile引言CANopen協(xié)議是一種基于控制器局域網(wǎng)(CAN)的應用層協(xié)議,該協(xié)議具有實時高效、組網(wǎng)靈活和產品兼容性高等優(yōu)勢,CANopen協(xié)議在國內越來越受到青睞,其應用領域也越來越多廣泛,不僅應用于過程與生產自動化等領域,還涉及到醫(yī)療、鐵路、軍事、太陽能等等領域。目前CANopen協(xié)議由CiA(CANinAutomation)組織負責管理與推廣。對象字典是CANopen通信接口與應用程序之間接口,是CANopen協(xié)議的重要組成部分。在CANopen網(wǎng)絡中,每個標準的CANopen設備都有一個對象字典,用來描述CANopen設備的全部功能。一般在CANopen配置或者開發(fā)工程中,對象字典的創(chuàng)建與管理是一個不可缺少的步驟,同時也是保證CANopen正常通訊的重要保障。如果CANopen系統(tǒng)工程相對比較簡單,人工編寫對象字典是可行的。但是如果面對系統(tǒng)較復雜、通訊量龐大的CANopen工程,單純用人工編寫對象字典是很低效的,同時也很容易出現(xiàn)編寫錯誤,可能給CANopen工程帶來潛在的危險。為了提高對象字典的編輯效率,同時最大限度地避免對象字典的編輯錯誤,本文描述的一個快速可靠的對象字典生成器ODBuilder,為CANopen工程的對象字典生成與修改提供一個很好的解決方案。一、對象字典結構與EDS文件描述1.1對象字典結構對象字典是一個有序的對象組,每個對象采用一個16位的索引值來尋址,為了允許訪問數(shù)據(jù)結構中的單個元素,同時定義了一個8位的子索引。對象字典中索引值0000-0x0FFF是數(shù)據(jù)類型的定義,具體類型有固定的分區(qū)。而一個CANopen節(jié)點的對象字典相關的常用范圍在0x1000到0x9FFF之間。其中,索引1000h-1FFFh描述的是通信對象(COB),如設備類型,錯誤寄存器,支持的PDO數(shù)量等等,該參數(shù)定義了CANopen接口的通信功能。索引2000h-5FFFh是預留給制造商定義的特定對象。索引000h-9FFFh是用于標準化設備子協(xié)議的對象描述,例如I/O模塊子協(xié)議、驅動與運動控制設備子協(xié)議、傳感器與測量設備子協(xié)議、醫(yī)療器材子協(xié)議、電梯子協(xié)議等等。CANopen對象字典通用結構如表1所示。索引對象0000h未用(Notused)0001-001F靜態(tài)數(shù)據(jù)類型(標準數(shù)據(jù)類型,如Boolean,Integer16)0020-003F復雜數(shù)據(jù)類型(預定義由簡單類型組合成的結構如PDOCommPar,SDOParameter)0040-005F制造商規(guī)定的復雜數(shù)據(jù)類型0060-007F設備子協(xié)議規(guī)定的靜態(tài)數(shù)據(jù)類型0080-009F設備子協(xié)議規(guī)定的復雜數(shù)據(jù)類型00A0-0FFF保留(Reserved)1000-1FFF通訊子協(xié)議區(qū)域(如設備類型,錯誤寄存器,支持的PDO數(shù)量)2000-5FFF制造商特定子協(xié)議區(qū)域6000-9FFF標準的設備子協(xié)議區(qū)域A000-FFFF保留(Reserved)表1CANopen對象字典通用結構1.2EDS文件描述CANopen網(wǎng)絡中每個節(jié)點都有一個對象字典,對象字典包含了描述這個設備和它的網(wǎng)絡行為的所有參數(shù)。而在描述CANopen設備時,使用了一種標準化的ASCII格式的描述文件,即:電子數(shù)據(jù)表(EDS)。電子數(shù)據(jù)表不僅記錄了對象字典的所有參數(shù),同時也對設備及其配置進行標準化的描述,所以EDS電子數(shù)據(jù)表是對象字典的載體與保存方式。二、對象字典的實現(xiàn)通常來說,在CANopen工程中將所有的CANopen通信描述條目放在一個表格中,然后用索引來訪問所有的對象。這不失是一個解決方法,不過這種方法只適用于系統(tǒng)簡單、通信參數(shù)少、非CANopen通信標準化的產品中,而且對象字典的修改與管理工作都較為繁瑣。由此本文介紹一種動態(tài)輸入掩碼顯示各個參考的對象類型,編輯過程不斷檢查其正確性并修正的對象字典生成器ODBuilder。ODBuilder工具生成的對象字典,通信描述完全符合CANopen標準規(guī)范CiADS301以及設備描述符合EDS標準文件CiADSP306規(guī)范,具有CANopen標準化設備的通用性。三、對象字典生成器ODBuilder3.1對象字典生成原理對象字典生成器ODBuilder生成對象字典的原理是根據(jù)CANopen通信協(xié)議的訪問對象字典的機制,通過固定的索引、子索引來創(chuàng)建每一個CANopen對象字典條目。訪問對象字典示意圖如圖3.1所示。圖3.1CANopen訪問對象字典對象字典條目表格提供一個指向存儲器中某個變量的指針,而應用程序可直接通過變量名稱訪問所需的條目。因此對象字典條目列表就構成了索引/子索引與對應變量名稱之間的接口。對象字典列表分為幾個不同的塊,目的為了方便對象的查找。通常分為用戶可通過索引查找相應的列表(如通信CommunicationProfileArea),再通過偏移量訪問該列表中所需的單元。因此在生成對象字典時為了描述索引里的單元,就先創(chuàng)建該單元的訪問類型、數(shù)據(jù)類型和指針變量等的結構體。然后利用創(chuàng)建好的結構體與應用變量建立相關聯(lián)的索引條目。此外,還會編輯一個包含指向子索引字段的指針列表,方便查找相關條目。3.2對象字典生成過程對象字典生成器ODBuilder創(chuàng)建一個簡明樹形結構的對象字典工程,方便修改與訪問對象字典條目;在編輯對象字典條目過程中,無需手工輸入不同條目的數(shù)據(jù)類型,直接通過下拉選項選擇對應類型;在編輯過程中,ODBuilder不斷檢查對象字典的輸入條目的正確性并提供修正參考,最后完成后可生成標準EDS文件。ODBuilder對象字典生成過程原理框圖如圖3.2所示。圖3.2對象字典生成過程原理框圖3.3創(chuàng)建簡明樹型條目根據(jù)對象字典條目的分布特性,ODBuilder將創(chuàng)建的對象字典以簡明的樹型結構,索引值由小到大排列。用戶需要訪問或者修改某一條索引,可直接點擊該條目就可以進行訪問或修改。如圖3.3所示。圖3.3樹型結構索引結構3.4編輯對象字典索引屬性1.根據(jù)CANopen協(xié)議CiADSP306規(guī)范,輸入不同的索引值,可靈活設定其“可選”、“制造商”、“強制”屬性。以編輯0x1000h索引為例,如圖3.3.1所示,通常用于DeviceType,如果作為從站的產品,該索引通常為“強制”屬性,ODBuilder將其自動設置為“強制”屬性。圖3.4.1編輯對象字典索引屬性2.根據(jù)不同的CANopen設備的存儲需要,可選擇索引是否存儲在非易失存儲器以及ROM或者RAM中。3.索引的對象參數(shù)、數(shù)據(jù)類型、訪問類型等直接通過下拉條選擇,如圖3.3.2所示,另外可選該索引條目是否有PDO映射功能。圖3.4.2下拉條選項輸入4.根據(jù)對象參數(shù)屬性,如果選擇為變量,默認值、最小值和最大值為可輸入狀態(tài)。5.子索引自動繼承索引屬性,無需要重新設定其存儲屬性、PDO映射參數(shù)。3.5檢查輸入正確性在CANopen系統(tǒng)工程較復雜的情況下,ODBuilder隨時提示對象字典的輸入,確保對象字典條目的每一個屬性參數(shù)不遺漏,檢查對象字典條目的輸入正確性。例如,如果編輯對象字典時遺漏索引標示符(Designator)的輸入,則會提示用戶輸入對應值。同樣,遺漏索引值、對象類型、數(shù)據(jù)類型、訪問類型任何一項都有相應的輸入提示。如圖3.5所示。圖3.4檢查輸入提示3.6導出EDS文件當完成對象字典所有條目的編輯,ODBuilder的檢查功能已經很大程度的減少對象字典的輸入錯誤,同時導出符合CiADSP306規(guī)范的EDS文件,該文件不僅包含了CANopen設備的對象字典所有的內容,同時也要求添加文件描述信息,設備信息等信息。如圖3.6所示。圖3.6生成EDS結語本文在CANopen對象字典的概念基礎上,進一步闡述了一種可快速可靠靈活創(chuàng)建對象字典的工具ODBuilder,并生成標準化EDS文件,不僅為CANopen設備的生產也為CANopen工程設備的參數(shù)配置,提供快速創(chuàng)建與修改對象字典的解決方案,目前該軟件已經應用于多家大型醫(yī)療器材、運動控制、軌道運輸?shù)刃袠I(yè)設備的對象字典生成。參考文獻1Olafpfeiffer,AndrewAyre,ChristanKeydel,embeddednetworkingwithCANandCA

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論