《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > CANOpen協(xié)議如何保證通訊不丟幀

CANOpen協(xié)議如何保證通訊不丟幀

2016-02-17

  摘要:如何讓現(xiàn)場總線通訊更加穩(wěn)定可靠,不丟失,這向來都是工程師們難以解決的問題。本文將運(yùn)用國際規(guī)范的通訊協(xié)議來展示怎樣才能搭建好握手通訊。

  服務(wù)數(shù)據(jù)對象SDO(Service data object)

  SDO主要用于CANopen主站對從節(jié)點(diǎn)的參數(shù)配置。服務(wù)確認(rèn)是SDO的最大的特點(diǎn),為每個消息都生成一個應(yīng)答,確保數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。如圖 1所示,這就像快遞,需要收方簽收后,給寄方發(fā)送一個已經(jīng)簽收的確認(rèn)才算完成一次投遞。

  

proxy (2).png

圖 1 SDO與快遞簽收

  在一個CANopen系統(tǒng)中,通常CANopen從節(jié)點(diǎn)作為SDO服務(wù)器,CANopen主節(jié)點(diǎn)作為客戶端(稱為CS通訊)。SDO客戶端通過索引和子索引,能夠訪問SDO服務(wù)器上的對象字典。這樣CANopen主節(jié)點(diǎn)可以訪問從節(jié)點(diǎn)的任意對象字典項(xiàng)的參數(shù),并且SDO也可以傳輸任何長度的數(shù)據(jù)(當(dāng)數(shù)據(jù)長度超過4個字節(jié)時就拆分成多個報文來傳輸)。

  通訊原則(communication principle)

  SDO的通訊原則非常單一,發(fā)送方(客戶端)發(fā)送CAN-ID為600h+Node-ID的報文,其中Node-ID為接收方(服務(wù)器)的節(jié)點(diǎn)地址,數(shù)據(jù)長度均為8字節(jié);

  接收方(服務(wù)器)成功接收后,回應(yīng)CAN-ID為580h+Node-ID的報文。這里的Node-ID依然是接收方(服務(wù)器)的節(jié)點(diǎn)地址,數(shù)據(jù)長度均為8字節(jié)。如圖 2所示。

  

proxy (4).jpg

圖 2  SDO通訊原則

  快速SDO協(xié)議(Expedited SDO protocol)

  最常用最常見的SDO協(xié)議是快速SDO,所謂快速,就是1次來回就搞定。前提是讀取和寫入的值不能大于32位。如圖 3所示,為快速SDO協(xié)議的示意圖。命令中直接包含了要讀寫的索引、子索引、數(shù)據(jù)。可謂直接命中。

  快速SDO的難點(diǎn)在于CS命令符的記憶,需要讀者收藏這個示意圖。

  

proxy (5).jpg

圖 3  快速SDO示意圖

  通過快速SDO,可以直接對CANopen節(jié)點(diǎn)的對象字典中的值進(jìn)行讀取和修改,所以在做參數(shù)配置之外,也經(jīng)常作為關(guān)鍵性數(shù)據(jù)傳輸之用。比如CANopen控制機(jī)器人的電機(jī)轉(zhuǎn)動角度時,就使用SDO來傳輸,保證可靠到達(dá)。

  普通SDO協(xié)議(Normal SDO protocol)

  當(dāng)需要傳輸?shù)闹党^32位時,就不能使用快速SDO傳輸。必須使用普通SDO進(jìn)行分幀傳輸。在應(yīng)用中較少用到,一般用于CANopen節(jié)點(diǎn)的程序固件升級,或者做網(wǎng)關(guān)轉(zhuǎn)換MVB總線之類數(shù)據(jù)最大可達(dá)256位的應(yīng)用。

  普通SDO協(xié)議難點(diǎn)在于分包邏輯與CS命令符的變化。依然難以記憶,需要讀者將以下示意圖進(jìn)行收藏。

  當(dāng)然普通SDO的CAN幀ID與快速SDO相同,依然發(fā)送方(客戶端)發(fā)送的報文CAN-ID為600h+Node-ID,接收方(服務(wù)器)成功接收后,回應(yīng)CAN-ID為580h+Node-ID的報文。

  下載協(xié)議download protocol 如圖 4所示。

  

proxy (6).jpg

圖 4  普通SDO下載協(xié)議

  上傳協(xié)議upload protocol 如圖 5所示。

 

proxy (7).jpg

 圖 5  普通SDO上傳協(xié)議


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 日韩av无码一区二区三区| 亚洲一区二区在线视频| 亚洲国产精品综合久久20| 久热综合在线亚洲精品| 中文字幕在第10页线观看| a在线视频免费观看| 国产精品亚洲自在线播放页码| 色婷婷亚洲一区二区三区| 熟妇人妻中文字幕无码老熟妇| 最近中文AV字幕在线中文| 成人激爽3d动漫网站在线| 国产麻豆成av人片在线观看| 国产女主播喷水视频在线观看| 凹凸导航第一福利| 亚洲国产精品人久久| 中文字幕黄色片| 2019天天做天天拍天天夜| 草久在线观看视频| 欧美最猛黑人xxxx黑人| 无码一区二区三区亚洲人妻| 国产精品爽爽ⅴa在线观看| 四虎成人免费网址在线| 亚洲日韩精品A∨片无码| 中文字幕一区二区三区永久| 色聚网久久综合| 精品久久久久久久久久中文字幕 | 国产三级在线播放| 亚洲欧美日韩中文无线码| 久久中文字幕视频| 3d动漫精品一区二区三区| 美女被免费视频网站a国产| 欧美va亚洲va在线观看| 天海翼被施爆两个小时| 国产偷窥熟女精品视频| 亚洲欧美不卡视频| 一出一进一爽一粗一大视频| 韩国黄色片在线观看| 欧美特黄高清免费观看的| 怡红院精品视频| 国产偷自拍视频| 亚洲av片不卡无码久久|