從CANopen到CANopen FD的技術(shù)升級(jí)
發(fā)布時(shí)間:2020-02-29 責(zé)任編輯:wenwei
【導(dǎo)讀】2019年11月21日,在SPS 2019慶祝30周年展會(huì)上,CiA組織通過兩個(gè)網(wǎng)橋連接的網(wǎng)絡(luò)展示了從經(jīng)典CANopen到CANopen FD的移植。那么,CANopen FD的出現(xiàn)帶來哪些變化?本文重點(diǎn)介紹一下CANopen FD的特性。
本文簡(jiǎn)單介紹CiA 1301——從經(jīng)典CANopen到CANopen FD的技術(shù)升級(jí)。
2019年11月21日,在SPS 2019慶祝30周年展會(huì)上,CiA組織通過兩個(gè)網(wǎng)橋連接的網(wǎng)絡(luò)展示了從經(jīng)典CANopen到CANopen FD的移植。那么,CANopen FD的出現(xiàn)帶來哪些變化?本文重點(diǎn)介紹一下CANopen FD的特性。
自1991年頒布了CAN 2.0技術(shù)規(guī)范起,CiA便一直致力于CAN協(xié)議的推廣,其中包括CAN底層(CAN數(shù)據(jù)鏈路層、CAN物理層)設(shè)計(jì)及CAN的應(yīng)用層(CANopen)。CANopen協(xié)議在CiA 301中明確規(guī)定其PDO、SDO、NMT網(wǎng)絡(luò)管理等協(xié)議的規(guī)范,并使用經(jīng)典CAN數(shù)據(jù)鏈路層,而在SPS展會(huì)中CiA展示了CiA 1301中指定的CANopen FD協(xié)議。相比CANopen使用經(jīng)典CAN數(shù)據(jù)鏈路層,數(shù)據(jù)段提供8字節(jié)有效負(fù)載,CANopen FD是基于CAN FD,數(shù)據(jù)段有效負(fù)載提升到64字節(jié),解決了某些應(yīng)用中出現(xiàn)數(shù)據(jù)段不夠用的問題。
CANopen協(xié)議升級(jí)到CANopen FD的相同之處
1、NMT網(wǎng)絡(luò)管理協(xié)議
網(wǎng)絡(luò)管理系統(tǒng)(NMT)負(fù)責(zé)啟動(dòng)網(wǎng)絡(luò)和監(jiān)控設(shè)備。工程師將CANopen FD網(wǎng)絡(luò)管理系統(tǒng)設(shè)計(jì)成一種主/從系統(tǒng)。在CANopen FD網(wǎng)絡(luò)中只允許存在一個(gè)活動(dòng)的NMT主機(jī),所有CANopen FD設(shè)備都具有NMT從機(jī)功能,并且由NMT主機(jī)來啟動(dòng)、監(jiān)控、重啟,同時(shí)分配給唯一的節(jié)點(diǎn)ID。
為了方便管理設(shè)備,所有設(shè)備都內(nèi)置一個(gè)內(nèi)部狀態(tài)機(jī),狀態(tài)之間的轉(zhuǎn)變由內(nèi)部事件或者主機(jī)外部觸發(fā)。
NMT從站狀態(tài)機(jī)由初始化狀態(tài),預(yù)操作狀態(tài),操作狀態(tài)和停止?fàn)顟B(tài)組成,其狀態(tài)轉(zhuǎn)換方式如圖1所示 。
圖1 NMT網(wǎng)絡(luò)管理示意圖
控制設(shè)備狀態(tài)的NMT指令,通過具有最高優(yōu)先級(jí)的CAN標(biāo)識(shí)符來發(fā)送。CANopen FD設(shè)備一旦接收到控制設(shè)備狀態(tài)的NMT指令,則必須進(jìn)行轉(zhuǎn)換。如圖2所示,NMT協(xié)議映射到具有兩個(gè)字節(jié)數(shù)據(jù)長(zhǎng)度的單個(gè)CAN FD數(shù)據(jù)幀。第一個(gè)字節(jié)確定要發(fā)出去的指令,即指令說明符;第二個(gè)字節(jié)指定CANopen FD設(shè)備的節(jié)點(diǎn)ID。
圖2 NMT協(xié)議示意圖
2、錯(cuò)誤控制協(xié)議
在CANopen FD網(wǎng)絡(luò)中通過錯(cuò)誤控制協(xié)議(如圖3啟動(dòng)協(xié)議、如圖4心跳協(xié)議)可以監(jiān)視CANopen FD設(shè)備是否仍在網(wǎng)絡(luò)中,并且處于預(yù)期的NMT FSA狀態(tài),同時(shí)也可以檢測(cè)到新加入網(wǎng)絡(luò)的CANopen FD設(shè)備。所有的CANopen FD設(shè)備都是基于相同的CAN FD信息,并具有CANopen FD設(shè)備的CAN-ID700H+節(jié)點(diǎn)ID。
注意:CANopen FD不支持CAN遠(yuǎn)程框架,因此不支持CANopen節(jié)點(diǎn)/生命防護(hù)。
圖3 啟動(dòng)協(xié)議示意圖
圖4 心跳協(xié)議示意圖
3、緊急通訊對(duì)象協(xié)議(EMCY)
當(dāng)CANopen FD設(shè)備內(nèi)部發(fā)生錯(cuò)誤時(shí),會(huì)由緊急錯(cuò)誤生產(chǎn)者發(fā)送EMCY,從而觸發(fā)中斷報(bào)警。每次發(fā)生錯(cuò)誤事件只會(huì)發(fā)送一次EMCY,并且以廣播的方式發(fā)送給所有支持EMCY功能的設(shè)備上,進(jìn)而針對(duì)錯(cuò)誤進(jìn)行調(diào)整。沒有新錯(cuò)誤發(fā)生時(shí),將不再發(fā)送EMCY報(bào)文如圖5所示。
圖5 緊急通訊對(duì)象協(xié)議EMCY示意圖
4、SYNC同步協(xié)議
與CANopen相同,CANopen FD設(shè)備中,SYNC同步協(xié)議是由生產(chǎn)者定期發(fā)送,用于網(wǎng)絡(luò)同步。所有CANopenFD設(shè)備都可以作為SYNC的生產(chǎn)者。通常情況下,SYNC協(xié)議用作總線負(fù)載管理。SYNC報(bào)文提供1字節(jié)的SYNC計(jì)數(shù)器值。每次發(fā)送SYNC,對(duì)應(yīng)計(jì)數(shù)器就會(huì)加1。同時(shí),SYNC的傳輸周期是可以配置的,計(jì)數(shù)器初值為1,最大值可在數(shù)據(jù)對(duì)象同步計(jì)數(shù)器溢出寄存器(1019H)進(jìn)行配置,如圖6所示。
圖6 SYNC同步協(xié)議示意圖
5、時(shí)間戳協(xié)議
時(shí)間戳協(xié)議可以使CANopen FD系統(tǒng)調(diào)整到唯一的網(wǎng)絡(luò)時(shí)間。由CANopen FD主站設(shè)備發(fā)出,用于同步所有從站的內(nèi)部時(shí)鐘。時(shí)間戳被映射到一個(gè)6字節(jié)長(zhǎng)度的CAN單幀。如圖7所示,默認(rèn)情況下,該CAN幀具有標(biāo)識(shí)符100h。這六字節(jié)長(zhǎng)度的數(shù)據(jù)提供“時(shí)間“”信息,該信息是以午夜之后的毫秒數(shù)和自1984年1月1日以來的天數(shù)。
圖7 時(shí)間戳協(xié)議示意圖
CANopen到CANopen FD的改變之處
1、USDO協(xié)議
● USDO用于CANopen FD系統(tǒng)中的配置和診斷任務(wù)。但是,過程數(shù)據(jù)也可以通過USDO服務(wù)進(jìn)行傳輸。USDO具有以下特性:
● USDO服務(wù)可以在單個(gè)或多個(gè)USDO服務(wù)器之間確認(rèn)通信;
● USDO客戶端可以訪問CANopen FD設(shè)備中所有的對(duì)象字典條目;
● USDO可以提供USDO服務(wù)器對(duì)象字典中一個(gè)或幾個(gè)子索引的讀寫訪問權(quán)限;
● USDO具有路由功能,可以實(shí)現(xiàn)CANopen FD網(wǎng)絡(luò)邊界上的數(shù)據(jù)傳輸;
● USDO客戶端和USDO服務(wù)器可以連接到不同的CAN物理層;
● USDO客戶端和USDO服務(wù)器之間可以傳輸任意長(zhǎng)度的數(shù)據(jù)內(nèi)容。
如圖8所示,是USDO已確認(rèn)的單播、廣播通信。
圖8 USDO單播、廣播通信
USDO協(xié)議“目的地地址”確定USDO是以點(diǎn)對(duì)點(diǎn)連接還是以多路或廣播方式進(jìn)行通信。命令說明符決定USDO傳輸?shù)念愋汀?huì)話ID用作交易編號(hào),使客戶端能夠區(qū)分對(duì)同一USDO服務(wù)器的USDO訪問。與傳統(tǒng)的CANopen SDO中一樣,索引和子索引標(biāo)識(shí)在USDO服務(wù)器的對(duì)象字典中訪問的數(shù)據(jù)元素。除了經(jīng)典的SDO,USDO還按大小和數(shù)據(jù)類型描述要傳輸?shù)臄?shù)據(jù),這使數(shù)據(jù)接收者能夠執(zhí)行一致性檢查。如圖9所示,為加速USDO協(xié)議傳輸。
圖9 加速USDO協(xié)議傳輸
對(duì)于較長(zhǎng)的數(shù)據(jù)對(duì)象,如類型為域的數(shù)據(jù),超過了7字節(jié),加速USDO傳輸方式效率并不是很高。類似于CANopen協(xié)議,CANopen FD協(xié)議中為了提高USDO傳輸?shù)男?,引入一種擴(kuò)展USDO傳輸方式:即塊傳輸。這種USDO傳輸方式效率更高、速度更快。這種塊傳輸?shù)幕驹砭褪菍?shù)據(jù)劃分為幾個(gè)單一的包,在連續(xù)的請(qǐng)求或者應(yīng)答中逐塊傳輸這些包。如圖10所示,是USDO塊傳輸方式。
圖10 USDO塊傳輸方式
USDO客戶端告知USDO服務(wù)器目標(biāo)索引和子索引以及預(yù)期的數(shù)據(jù)類型和長(zhǎng)度。USDO服務(wù)器確認(rèn)其請(qǐng)求后,給出其可以處理的最大塊的大?。ㄟB續(xù)塊消息的數(shù)量)。USDO客戶端就會(huì)發(fā)出第一塊的各個(gè)分段,知道服務(wù)器確認(rèn)接收結(jié)束。
2、PDO協(xié)議
過程數(shù)據(jù)對(duì)象(PDO)在CANopen FD中用于廣播高優(yōu)先級(jí)控制和狀態(tài)信息。一個(gè)PDO由一個(gè)CAN數(shù)據(jù)幀組成,并可以通信多達(dá)64個(gè)字節(jié)的數(shù)據(jù)。但是,CAN FD數(shù)據(jù)幀的數(shù)據(jù)長(zhǎng)度從8字節(jié)之后呈非線性規(guī)律。因此,當(dāng)PDO生產(chǎn)者使用填充字節(jié)將PDO填充到下一個(gè)支持的CAN FD幀長(zhǎng)度時(shí),PDO的消費(fèi)者可能會(huì)收到比預(yù)期更多的數(shù)據(jù)。如圖11所示。
圖11 PDO協(xié)議示意圖
CANopen FD與嵌入式網(wǎng)絡(luò)、工業(yè)物聯(lián)網(wǎng)
現(xiàn)如今,工業(yè)物聯(lián)網(wǎng)在逐步發(fā)展崛起,慢慢走向成熟。嵌入式也在向云應(yīng)運(yùn)程序中集成發(fā)展,大數(shù)據(jù)時(shí)代需要更多的數(shù)據(jù)來進(jìn)行更準(zhǔn)確更安全的算法分析。CANopen FD底層基于CAN FD提供了長(zhǎng)達(dá)64字節(jié)的有效負(fù)載,能夠更好的滿足大數(shù)據(jù)時(shí)代的安全性能要求。
CANopen FD能夠更好的滿足未來工業(yè)互聯(lián)網(wǎng)的發(fā)展需求,其中重要的原因還是歸功于新的USDO協(xié)議的出現(xiàn)。由于USDO特性靈活,CANopen FD/IOT網(wǎng)關(guān)可以輕松的訪問網(wǎng)絡(luò)中的任何數(shù)據(jù),并且通過路由功能可以進(jìn)行遠(yuǎn)程網(wǎng)絡(luò)CANopen FD設(shè)備連接和訪問。
CANopen FD減輕了開發(fā)人員處理CAN硬件特定細(xì)節(jié)的負(fù)擔(dān),例如位時(shí)序和驗(yàn)收過濾。CANopen FD提供了標(biāo)準(zhǔn)化的通信對(duì)象COB,用來配置及網(wǎng)絡(luò)管理數(shù)據(jù)。
CANFDSM-100——串口轉(zhuǎn)CANFD轉(zhuǎn)換模塊
在實(shí)際應(yīng)用中,工程師經(jīng)常會(huì)使用串口來收發(fā)數(shù)據(jù)或進(jìn)行調(diào)試。這樣,對(duì)于CANopen FD設(shè)備的問題,我們會(huì)需要實(shí)現(xiàn)串口轉(zhuǎn)CANFD,幫助我們更好的實(shí)現(xiàn)數(shù)據(jù)的傳輸和轉(zhuǎn)換。如圖12所示, 是廣州致遠(yuǎn)電子研發(fā) 的一款串口轉(zhuǎn) CAN(FD)模塊CANFDSM-100,內(nèi)置微處理器。該模塊支持透明轉(zhuǎn)換、透明帶標(biāo)識(shí)符轉(zhuǎn)換、格式轉(zhuǎn)換、Modbus轉(zhuǎn)換四種模式。同時(shí),該模塊集成1路CANFD接口和1路UART接口。在CAN通訊方面,可以在40Kbps~1Mbps之間任意可編程;在CANFD通訊方面,可以在1Mbps~5Mbps之間任意可編程。滿足工業(yè)級(jí)要求,支持在線固件升級(jí)等。
圖12 CANFDSM-100示意圖
USBCANFD系列CAN FD接口卡
在CANopen FD設(shè)備的使用過程中,經(jīng)常會(huì)通過抓取底層的CAN FD報(bào)文來進(jìn)行數(shù)據(jù)分析或者故障排除等。如圖13所示是ZLG致遠(yuǎn)電子開發(fā)的高性能CANFD接口卡,集成1-2路CANFD接口,每個(gè)接口具備獨(dú)立的2500VDC電氣隔離保護(hù)電路,使接口卡避免由于地環(huán)流的損壞,增強(qiáng)系統(tǒng)在惡劣環(huán)境中使用的可靠性。PC通過USB2.0端口連接USBCANFD接口卡,從而能與CAN(FD)網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)收發(fā),構(gòu)成CAN(FD)-bus控制節(jié)點(diǎn)。
圖13 USBCANFD-200U接口卡示意圖
推薦閱讀:
特別推薦
- 增強(qiáng)視覺傳感器功能:3D圖像拼接算法幫助擴(kuò)大視場(chǎng)
- PNP 晶體管:特性和應(yīng)用
- 使用IO-Link收發(fā)器管理數(shù)據(jù)鏈路如何簡(jiǎn)化微控制器選擇
- 用好 DMA控制器這兩種模式 MCU效率大大提高!
- 深入分析帶耦合電感多相降壓轉(zhuǎn)換器的電壓紋波問題
- Honda(本田)與瑞薩簽署協(xié)議,共同開發(fā)用于軟件定義汽車的高性能SoC
- 第13講:超小型全SiC DIPIPM
技術(shù)文章更多>>
- 技術(shù)創(chuàng)新+場(chǎng)景多元,協(xié)作機(jī)器人產(chǎn)業(yè)騰飛正當(dāng)時(shí)
- 躍昉科技五周年:以技術(shù)創(chuàng)新為引擎,推動(dòng)行業(yè)數(shù)字化轉(zhuǎn)型
- 2025第六屆深圳國(guó)際芯片、模組與應(yīng)用方案展覽會(huì)
- 接線端子的類型與設(shè)計(jì)選擇考慮事項(xiàng)
- 想提高高壓LED照明中的效率和功率密度?上GaN技術(shù)!
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
端子機(jī)
斷路器
斷路器型號(hào)
多層PCB
多諧振蕩器
扼流線圈
耳機(jī)
二極管
二極管符號(hào)
發(fā)光二極管
防靜電產(chǎn)品
防雷
防水連接器
仿真工具
放大器
分立器件
分頻器
風(fēng)力渦輪機(jī)
風(fēng)能
風(fēng)扇
風(fēng)速風(fēng)向儀
風(fēng)揚(yáng)高科
輔助駕駛系統(tǒng)
輔助設(shè)備
負(fù)荷開關(guān)
復(fù)用器
伽利略定位
干電池
干簧繼電器
感應(yīng)開關(guān)