當(dāng)前位置:首頁 > 技術(shù)學(xué)院 > 技術(shù)前線
[導(dǎo)讀]CANopen學(xué)習(xí)筆記

1. TPDO和RPDO都是針對(duì)從站來說的,協(xié)議上沒有有講任何一個(gè)關(guān)于主站的概念,協(xié)議就只是定義從站,沒有定義主站任何東西。

TPDO:從站-<主站

RPDO:主站-<從站

2. PDO的COB-ID是用來唯一標(biāo)識(shí)一個(gè)PDO報(bào)文的,不同的PDO設(shè)置不同的COB-ID。

3. 主站和從站的通信過程基本是這樣的:

a.主站檢測從站是否在線;

b.在線的話開始通過SDO配置從站;

c.配置成功,則發(fā)送一個(gè)NMT start remote node指令讓從站進(jìn)入Operation狀態(tài),開始PDO的通信。

4. CANopen所定義的所有Object都是要在從站上實(shí)現(xiàn)的,只是數(shù)值是由主站在開始PDO傳輸前通過SDO寫入的。

5. 標(biāo)識(shí)符正如其名,是CAN幀的一個(gè)標(biāo)識(shí),CANopen使用了這個(gè)標(biāo)識(shí)符,并且把它定義為COB-ID,規(guī)定了高四位為功能碼,低7位為節(jié)點(diǎn)ID,但是,CANopen并沒有規(guī)定每個(gè)節(jié)點(diǎn)發(fā)出的所有幀都必須帶上自己的ID,也沒有規(guī)定接收的幀都必須跟自己的ID匹配,所以從根上說,COB-ID還是標(biāo)識(shí)符的作用,它只是被規(guī)劃了一下含義,舉兩個(gè)例子:PDO,COB-ID的組成即可以是發(fā)送方ID也可以是接收方ID,看你方便和具體使用規(guī)律;SDO,規(guī)定了使用server的ID來溝通。CANopen的預(yù)定義連接集是比較糾結(jié),描述的不夠清晰。

6. Heartbeat并不分主站和從站,僅是一種斷線檢測機(jī)制,主站可以發(fā)給從站,從站也可以發(fā)給主站,看用戶的需求,一般的主站配置軟件都可以設(shè)置主站或從站是否要監(jiān)控對(duì)方的在線狀態(tài)。

支持heartbeat的從站,都有1016和1017兩個(gè)參數(shù),1017的數(shù)值表示從站送出heartbeat報(bào)文的間隔時(shí)間,1016表示從站監(jiān)控主站或其它從站的超時(shí)時(shí)間(如果從站支持,可以同時(shí)監(jiān)控主站或其它從站的在線狀態(tài),根據(jù)應(yīng)用需求而定),所以1016是一個(gè)數(shù)組型的參數(shù)。

當(dāng)主站在consumer的時(shí)間內(nèi)沒有收到從站的Heartbeat(producer時(shí)間間隔發(fā)送),那么認(rèn)為從站掉線。

7. 實(shí)現(xiàn)CANOPEN的步驟:

① CANopen 協(xié)議體系的實(shí)現(xiàn);

② CANopen 相應(yīng)開發(fā)和配置工具的實(shí)現(xiàn)。

第2 階段主要完成CANopen 標(biāo)準(zhǔn)開發(fā)工具的開發(fā),開發(fā)過程可以分為 2 個(gè)步驟:第1 個(gè)步驟是EDS 和DCF 配置工具的開發(fā);第2 個(gè)步驟是開發(fā)實(shí)現(xiàn)對(duì)象字典的工具。

實(shí)現(xiàn)對(duì)象字典的過程是:將EDS和DCF用“文件轉(zhuǎn)化工具”轉(zhuǎn)化為“內(nèi)部實(shí)現(xiàn)描述(XML)”,再用“目標(biāo)配置代碼工具”從而實(shí)現(xiàn)對(duì)象字典。

EDS就是提供從站的一些默認(rèn)的參數(shù)值給主站的組態(tài)軟件,供用戶配置從站的時(shí)候使用,EDS不是必須的,但大多數(shù)的主站配置軟件都需要,有些主站軟件也不需要EDS文件,比如Bechkoff的主站就不需要從站提供EDS文件。

8. 一般每個(gè)節(jié)點(diǎn)既可以作為server又可以作為client,server向client開放自己的OD供訪問,兩者的parameter都存放在設(shè)備唯一的OD中。

9. 不同的傳輸類型支持幾種不同的數(shù)據(jù)傳輸方式:

① 同步觸發(fā),由同步幀觸發(fā),以同步整個(gè)網(wǎng)絡(luò)數(shù)據(jù),不同的數(shù)據(jù)頻率通過設(shè)置不同的同步數(shù)實(shí)現(xiàn)。

② 事件觸發(fā)。

③ 內(nèi)部定時(shí)觸發(fā)(也可以歸到事件觸發(fā)) 。

10. 同步PDO的實(shí)際意義與應(yīng)用場合

應(yīng)用程序刷進(jìn)對(duì)象字典時(shí)間和頻率都是由編程人員自行確定的,你可以根據(jù)PDO的類型自行確定,比如每隔5個(gè)sync的時(shí)間刷新一次對(duì)象內(nèi)容,這樣數(shù)據(jù)的新鮮程度是5個(gè)sync,如果要求更進(jìn)一步的新鮮程度,你可以在刷新對(duì)象內(nèi)容后直接觸發(fā)一幀PDO。

同步PDO在實(shí)際應(yīng)用中的優(yōu)勢:很多,提供一致的系統(tǒng)節(jié)拍,使得總線的數(shù)據(jù)盡量保證新鮮程度的同時(shí),能夠減少通訊量,合理的規(guī)劃總線占用率。比如總線分布式的控制回路,怎樣保證控制周期的準(zhǔn)確性和數(shù)據(jù)的有效性呢?

同步傳輸?shù)淖钪匾獞?yīng)用是多軸同步控制,沒有這種同步機(jī)制,多軸傳動(dòng)功能是沒有辦法實(shí)現(xiàn)的。

PDO只是個(gè)載體,或者說它好比一輛貨車,車廂里裝什么貨,是可以配置的,這些由PDO映射來完成,PDO映射用來指定把對(duì)象字典的那些對(duì)象裝進(jìn)PDO,或者從接收的PDO中將數(shù)據(jù)放到那些對(duì)象中。

SYNC周期是恒定的,它基本上就是系統(tǒng)通信部分的節(jié)拍了,節(jié)拍亂了,一切都是浮云了。

11. http://blog.ednchina.com/whicun/99861/message.aspxCAN 及CANOPEN通訊協(xié)議大全

12. 移植canfestival到ARM上的步驟:

1)在學(xué)習(xí)移植CANopen之前要先熟悉CAN,能夠使用CAN進(jìn)行節(jié)點(diǎn)間的通信設(shè)計(jì)。

2)熟悉CAnopen協(xié)議,通讀一遍301協(xié)議,并且結(jié)合國內(nèi)的一些介紹性資料了解一下CAnopen的結(jié)構(gòu)、定位和工作方式。

3)結(jié)合一些較簡單的協(xié)議棧代碼,比如置頂?shù)膬商仔〈a,能夠讀懂一個(gè),明白運(yùn)行過程,最好能移植到你的硬件上試一下,畢竟它的代碼量較之CANFestival要小的多。

4)準(zhǔn)備移植CANFestival,先在你熟悉和有條件實(shí)驗(yàn)的平臺(tái)下,比如x86的windows下試著編譯運(yùn)行CANFestival(我記得有window的vc工程可以編譯的)。熟悉和理解CANFestival,最后再把CANFestival移植到你的目標(biāo)平臺(tái),可能會(huì)需要編寫硬件接口驅(qū)動(dòng)的。

13. 心跳報(bào)文是單向的,一般的主站都可以提供配置的方法,你可以讓主站監(jiān)控從站是否斷線,也可以讓從站監(jiān)控主站是否斷線,或者兩個(gè)一起互相監(jiān)控。

14. 一般的主站都需要一個(gè)配套的配置軟件,我們習(xí)慣叫網(wǎng)絡(luò)組態(tài)軟件(Configuration tool software),讓用戶可以根據(jù)自己的需求來對(duì)網(wǎng)絡(luò)進(jìn)行配置。

15. 同步和異步,是針對(duì)不同的應(yīng)用需求定義的方式,如果你的控制在各個(gè)從站間不需要配合,其實(shí)異步是比較科學(xué)的方式,一般同步都是運(yùn)動(dòng)控制中使用。

16. EDS文件只是一個(gè)具有可讀性的設(shè)備對(duì)象字典的描述,設(shè)備實(shí)際的對(duì)象字典,是對(duì)它的軟件實(shí)現(xiàn),即設(shè)備實(shí)現(xiàn)了這個(gè)EDS所描述的對(duì)象字典,如果從站資料里面EDS文件支持讀寫,而實(shí)際訪問卻不可寫,要么是從站沒按照這個(gè)對(duì)象字典實(shí)現(xiàn),要么是有其它的條件開啟寫入功能,比如物理開關(guān)或者參數(shù)開關(guān)。最好還是詳細(xì)閱讀一下從站的資料,也可以咨詢?cè)撛O(shè)備的供應(yīng)商。

17. dummy在CANOPEN里原本的意思是空的,沒有意義的對(duì)象,用來占用PDO的數(shù)據(jù),以達(dá)到調(diào)整PDO數(shù)據(jù)結(jié)構(gòu)的目的。你基本上可以理解它的作用是會(huì)占用PDO的數(shù)據(jù)區(qū),但不起作用。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉