最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

《五》canfestival系列教程之sdo

2021-08-14 10:31 作者:GXTon_阿通  | 我要投稿

如果把pdo比作高速公路,那么sdo就是普通的小路.

pdo高速公路雖然效率高,但是下雨,下雪,有霧的時會封路.(有干擾)

sdo小路有時候很方便,很穩(wěn)定.

因?yàn)閜do發(fā)送是生產(chǎn)--消費(fèi)模式.就是只管pdo發(fā)送,誰愿意接收就接收,不接收也無所謂.因?yàn)槲也还苡袥]有人接收,更不確定有沒有送到.

相比之下,sdo就穩(wěn)妥多了.它是服務(wù)器--客戶端模式,就是客戶發(fā)給我,我必須要回復(fù),要對客戶負(fù)責(zé).這樣有了來回消息交互,就不會出現(xiàn)數(shù)據(jù)錯誤.傳輸也比較穩(wěn)定了.


canopen的知識點(diǎn)和概念比較多,也比較散,建議大家準(zhǔn)備一個小本子,可以隨時記錄和查閱,用電腦記錄實(shí)際上很不方便.(親身體會......)

因?yàn)閟do穩(wěn)定的特性,所以一般作為pdo不能使用時的應(yīng)急方案,或者作為配置參數(shù)時使用的指令.

例如驅(qū)動器,上電后需要進(jìn)行配置,這里使用的就是sdo.

(這里驅(qū)動器是服務(wù)端,電腦是客戶端,用電腦去訪問驅(qū)動器的參數(shù).)

配置完成之后發(fā)送數(shù)據(jù),為了效率,才使用pdo.

但是電機(jī)故障,需要查找錯誤的時候,可以切換到sdo進(jìn)行錯誤的查找.

sdo是很重要的,因?yàn)榇蟛糠衷O(shè)備都需要進(jìn)行參數(shù)配置.

就以支持canopen的驅(qū)動器為例,通過編寫canfestival程序,配置驅(qū)動為速度模式.

在拿到驅(qū)動器后,可以先用sdo去讀取內(nèi)部的字典,

根據(jù)字典返回的數(shù)據(jù),就知道驅(qū)動器當(dāng)前的配置和運(yùn)行模式.

這一節(jié)我們只講解sdo發(fā)送的數(shù)據(jù)流程.

sdo的數(shù)據(jù)結(jié)構(gòu)為:

圖一

例如:

601, 22 00 14 01 01 02 00 80

上面是一條sdo指令,

0x601:?發(fā)送時can的id,它由兩部分組成,600+1,600代表了這時一條sdo. 1代表發(fā)送給1號節(jié)點(diǎn)的驅(qū)動器.

0x22:?寫命令,向驅(qū)動器里面寫入數(shù)據(jù),就是圖一中的指令字CS,它還有很多中,比如讀是0x40,這里需要查找ds301協(xié)議.

0x00 14:?因?yàn)閏an是小端模式,真正的順序是0x1400,這里是一個索引.

0x 01:?子索引,和上面的1400?組合在一起就是 1400,01索引.這個索引號是針對字典的,從字典表格中查找這個號(就相當(dāng)于一棟樓的門牌號),這個索引里面"住"的數(shù)據(jù),代表:驅(qū)動器接收的cob-id.

0x01 02?00 80:?數(shù)據(jù),因?yàn)槭切《四J?正常的數(shù)據(jù)順序應(yīng)該是0x 80 00 02 01.這條數(shù)據(jù)的意思是cob-id為0x80000201.

綜上,整條語句的意思也就是,向驅(qū)動器1400,01索引中寫入數(shù)據(jù)0x80000201.

如何把這條指令發(fā)送出去:

(從函數(shù)的名字也能看出這個是設(shè)置節(jié)點(diǎn)字典的,就是發(fā)送sdo的)

最核心的是writeNetworkDict()函數(shù).

跳進(jìn)去看一下

跳進(jìn)去看一下,_writeNetworkDict


《五》canfestival系列教程之sdo的評論 (共 條)

分享到微博請遵守國家法律
含山县| 罗定市| 太原市| 屯留县| 长海县| 大港区| 岳普湖县| 湘西| 弥勒县| 循化| 曲阳县| 邯郸县| 和硕县| 吉隆县| 伽师县| 永福县| 泗阳县| 唐山市| 石泉县| 天峻县| 大姚县| 邢台市| 阿拉善盟| 大田县| 普格县| 荥阳市| 五家渠市| 唐山市| 凤庆县| 新野县| 茂名市| 东光县| 平邑县| 江达县| 南昌市| 华容县| 德钦县| 诸暨市| 平阴县| 惠州市| 新沂市|