日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]摘要:CANopcn作為一種開放性好、標(biāo)準(zhǔn)化、低成本的基于CAN總線的應(yīng)用層協(xié)議,目前已經(jīng)廣泛地應(yīng)用于工業(yè)自動化領(lǐng)域。文章根據(jù)CANop-en DS301應(yīng)用層協(xié)議規(guī)范,在以C8051F500單片機為控制核心的開發(fā)平臺上建立了CANopen

摘要:CANopcn作為一種開放性好、標(biāo)準(zhǔn)化、低成本的基于CAN總線的應(yīng)用層協(xié)議,目前已經(jīng)廣泛地應(yīng)用于工業(yè)自動化領(lǐng)域。文章根據(jù)CANop-en DS301應(yīng)用層協(xié)議規(guī)范,在以C8051F500單片機為控制核心的開發(fā)平臺上建立了CANopen從節(jié)點協(xié)議棧總框架,并實現(xiàn)了其中的各種功能模塊,整合成完整的協(xié)議棧,在搭建的實驗平臺上進(jìn)行了協(xié)議棧的測試,實驗表明:該協(xié)議棧功能完整,實時性滿足使用要求。
關(guān)鍵詞:CANopen;C8051F500;從站協(xié)議

0 引言
   
隨著現(xiàn)代工業(yè)的發(fā)展,控制系統(tǒng)的規(guī)模與復(fù)雜度成倍增長,數(shù)據(jù)傳輸?shù)耐掏铝亢涂煽啃砸笠搽S之提升,現(xiàn)場總線技術(shù)就是在這種情況下被提出并迅速發(fā)展起來的。CAN總線是現(xiàn)場總線國際標(biāo)準(zhǔn)之一,它具有可靠性好、實時性高、抗干擾能力較強等優(yōu)點,廣泛應(yīng)用于汽車和工業(yè)控制領(lǐng)域。但由于其只定義了物理層和數(shù)據(jù)鏈路層,并非一個完整的協(xié)議,在高級應(yīng)用中需要應(yīng)用層的支持,于是CANopen標(biāo)準(zhǔn)應(yīng)運而生。
    CANopen是自動化CAN用戶和制造商協(xié)會(CiA,CAN-in-Automation)定義的CAN總線應(yīng)用層協(xié)議。它采用面向?qū)ο蟮乃枷朐O(shè)計,具有很好的模塊化特性和很高的適應(yīng)性。CANopcn不僅定義了應(yīng)用層和通信子協(xié)議,還為大多數(shù)重要的設(shè)備類型定義了大量的規(guī)范,不同廠商遵循這些規(guī)范開發(fā)出的設(shè)備之間能夠輕易實現(xiàn)互操作。
    CANopen作為基于CAN總線的高層協(xié)議標(biāo)準(zhǔn),在發(fā)布后不久就獲得了廣泛的承認(rèn)。尤其是在歐洲,CANopcn協(xié)議被認(rèn)為是在基于CAN的工業(yè)系統(tǒng)中占據(jù)領(lǐng)導(dǎo)地位的標(biāo)準(zhǔn)。

1 CANopen協(xié)議總體框架
    CANopen協(xié)議棧主要包含了兩部分,一部分是通信規(guī)范,另一部分是設(shè)備規(guī)范。通信規(guī)范(CiA:DS-3011定義了基本的數(shù)據(jù)通信方式和特性,設(shè)備規(guī)范(CiA DSP 401-DSP4XX)則針對不同的設(shè)備類型進(jìn)行了報文ID的分配和設(shè)備特征數(shù)據(jù)的定義,規(guī)范了設(shè)備的行為規(guī)范。其中通信規(guī)范是通用的,本文設(shè)計與實現(xiàn)的就是這一部分。
    在通信規(guī)范中,為了互操作性和兼容性,CANopcn設(shè)備都必須遵從標(biāo)準(zhǔn)的CANopen設(shè)備模型來進(jìn)行軟件設(shè)計,如圖1所示。


    CAN通信接口通過操作CAN控制器,在總線上收發(fā)各種通信對象,來實現(xiàn)與其他CANopen節(jié)點基于協(xié)議規(guī)范的數(shù)據(jù)交互;對象字典是CANop-cn設(shè)備的核心,存儲節(jié)點所有的信息,并向應(yīng)用程序和通信對象提供訪問接口;通信部分通過對對象字典進(jìn)行操作,與其他節(jié)點交換各種通信對象實現(xiàn)CANopen操作;應(yīng)用程序由用戶根據(jù)應(yīng)用要求和設(shè)備的具體任務(wù)自己實現(xiàn)。

2 CANopen功能模塊實現(xiàn)
2.1 CAN驅(qū)動程序?qū)崿F(xiàn)
   
針對C8051F500單片機,實現(xiàn)了CAN驅(qū)動程序。CAN驅(qū)動程序負(fù)責(zé)完成CAN控制器的操作、報文收發(fā)、CAN錯誤處理等任務(wù),由以下部分組成:1)CAN控制器的初始化,主要對CAN控制器的相關(guān)寄存器進(jìn)行配置,包括波特率的設(shè)置,消息對象的配置,接收、發(fā)送屏蔽寄存器的設(shè)置;2)CAN發(fā)送程序,任務(wù)是將打包好的數(shù)據(jù)根據(jù)幀標(biāo)識符,通過接口寄存器分發(fā)到相應(yīng)的郵箱里,然后啟動發(fā)送;3)CAN接收程序,由CAN中斷處理程序來完成,負(fù)責(zé)將報文分配給各個通信模塊處理。
2.2 對象字典實現(xiàn)
   
對象字典OD(Object Dictionary)是一個有序的對象組:每個對象采用一個16位的索引值來尋址,同時定義了一個8位的子索引用于訪問數(shù)據(jù)結(jié)構(gòu)中的單個元素。每個CANopen設(shè)備中都必須包含一個對象字典。對象字典分為了兩部分,通用的通信子協(xié)議區(qū)域和特定的設(shè)備子協(xié)議區(qū)域,前者包含了描述這個設(shè)備通信行為的所有參數(shù),后者包含了設(shè)備任務(wù)相關(guān)的所有數(shù)據(jù)。
    本文設(shè)計的對象字典結(jié)構(gòu)如圖2所示。


    針對單片機計算資源緊缺的特點,對象字典實體采用二維靜態(tài)結(jié)構(gòu)體來實現(xiàn),它具有結(jié)構(gòu)簡單、訪問效率高等優(yōu)點。讀寫函數(shù)與對象字典實體配套使用,目的是將對象字典封閉起來,有效地杜絕非法訪問的情況,保障對象字典的數(shù)據(jù)安全。
2.3 通信對象的實現(xiàn)
    CANopcn協(xié)議規(guī)定了4類通訊對象:SDO(Service Data Objeet,服務(wù)數(shù)據(jù)對象)、過程數(shù)據(jù)對象)、NMT(NetworkManagement,網(wǎng)絡(luò)管理對象)以及特殊功能對象。
2.3.1 PDO模塊
    PDO服務(wù)主要用來實現(xiàn)實時數(shù)據(jù)的傳輸,基于生產(chǎn)者和消費者模式,它的通信行為由通信參數(shù)決定,傳送的數(shù)據(jù)由映射參數(shù)來決定。本文實現(xiàn)的PDO模塊包含了三個子模塊,如圖3所示。


    建立PDO報文模塊被其他兩個模塊調(diào)用,他的任務(wù)是根據(jù)映射參數(shù)表把對象字典中對象的數(shù)據(jù)復(fù)制進(jìn)PDO報文中,交由其他模塊處理,建立過程中需注意PDO報文的剩余容量。接收PDO模塊的任務(wù)是完成PDO數(shù)據(jù)的解析,將數(shù)據(jù)放入指定對象中;發(fā)送模塊負(fù)責(zé)根據(jù)CANopen協(xié)議規(guī)范,依據(jù)PDO通信參數(shù),實現(xiàn)各種PDO傳輸方式,包括同步周期、同步事件預(yù)觸發(fā)、異步事件觸發(fā)等方式。
2.3.2 SDO模塊
    SDO模塊是對象字典的遠(yuǎn)程訪問接口,一般被用來進(jìn)行節(jié)點參數(shù)配置和獲取。它基于客戶端服務(wù)器模式,每個訪問請求都必須應(yīng)答,實現(xiàn)了可靠的點對點數(shù)據(jù)傳輸。CANopen為SDO服務(wù)設(shè)計了5個請求/應(yīng)答子協(xié)議,分別是:啟動域下載/上傳、域分段下載\上傳、中止域傳送。
本文設(shè)計的SDO模塊包含了訪問發(fā)起模塊和應(yīng)答模塊。訪問發(fā)起模塊的任務(wù)是根據(jù)上層的調(diào)用發(fā)起SDO通信,實現(xiàn)了5個訪問子協(xié)議中的請求部分;應(yīng)答模塊則解析收到的SDO報文中攜帶的命令字,實現(xiàn)了5個訪問子協(xié)議中的應(yīng)答部分。
2.3.3 NMT模塊
   
每個CANopen節(jié)點內(nèi)都運行著一個狀態(tài)機,狀態(tài)轉(zhuǎn)換由主節(jié)點控制,不同的狀態(tài)對應(yīng)不同的節(jié)點任務(wù),也對應(yīng)了不同的模塊可用性。狀態(tài)轉(zhuǎn)換如圖4所示。


    本文實現(xiàn)的從節(jié)點NMT模塊的任務(wù)是響應(yīng)主站的NMT控制命令,并反饋自身狀態(tài),匯報錯誤信息。狀態(tài)轉(zhuǎn)換模塊的流程:接收到NMT命令后,首先解析NMT命令字,檢查狀態(tài)轉(zhuǎn)換合法性,然后設(shè)置節(jié)點狀態(tài),啟停各功能模塊:狀態(tài)反饋模塊采用了CiA組織推薦使用的心跳模式,即從節(jié)點周期性地向網(wǎng)絡(luò)上發(fā)送包含自身狀態(tài)信息的心跳報文,供主站和其他節(jié)點監(jiān)視。
2.3.4 總體流程
   
借助于狀態(tài)機,設(shè)計了如圖5的程序運行總體流程。


    從節(jié)點上電啟動后,先進(jìn)行必要的硬件初始化,如系統(tǒng)時鐘、port、CAN接口、定時器、AD等,完成后設(shè)置節(jié)點狀態(tài)為initialization,進(jìn)入狀態(tài)機,軟件在狀態(tài)機內(nèi)循環(huán)運行。通信初始化函數(shù)主要負(fù)責(zé)初始化從節(jié)點的對象字典,節(jié)點初始化函數(shù)則負(fù)責(zé)將節(jié)點的輸出置為上電值,設(shè)置完成后設(shè)置節(jié)點狀態(tài)為pre-operational,軟件運行至preoperational函數(shù),這個函數(shù)的功能是協(xié)助主站完成對從節(jié)點的通信配置。當(dāng)從節(jié)點收到start remote node命令后,進(jìn)入operational狀態(tài),此狀態(tài)包含了從節(jié)點的控制程序,即從節(jié)點開始正常運行,執(zhí)行指定的底層任務(wù),如數(shù)據(jù)采集、控制輸出等。若節(jié)點接收到主站的stop remote node命令,則進(jìn)入stopped函數(shù),在此狀態(tài)下從節(jié)點停止執(zhí)行底層任務(wù),等待主節(jié)點的啟動命令。

3 實驗
3.1 測試實驗平臺的搭建
   
為了測試本文的CANopen從節(jié)點協(xié)議,搭建了基于USB-CAN模塊的測試平臺,結(jié)構(gòu)如圖6所示。主站是裝有ZLGCANTest的計算機,以USB-CAN通信模塊作為CAN網(wǎng)絡(luò)接口,實現(xiàn)與從站的連接。示波器監(jiān)視總線波形,通信波特率設(shè)置為500kb/s。


3.2 實時性測試
   
首先進(jìn)行了協(xié)議棧的實時性測試,測試分為兩步,第一步是測試PDO通信的最小周期,設(shè)置PDO為同步周期發(fā)送模式,即收到一個同步報文后返回一個數(shù)據(jù)包,測試結(jié)果如圖7所示。


    可見同步幀與數(shù)據(jù)包的間隔時間約為1ms,整個總線占用時間約為1.3ms。
    第二步進(jìn)行了SDO模塊的最小響應(yīng)時間測試,測試結(jié)果如圖8所示。


    可見SDO請求報文和響應(yīng)報文間隔時間約為0.7ms,總線占用時間約為1.1ms。協(xié)議棧的實時性基本滿足我們的使用要求。
3.3 功能性測試
   
我們對實現(xiàn)的協(xié)議棧進(jìn)行了CANopen協(xié)議功能和兼容性的測試,測試結(jié)果如表1所示。


    目前,我們已經(jīng)將該協(xié)議棧應(yīng)用于實驗室建立的低溫等離子體測控設(shè)備系統(tǒng)中,經(jīng)過一段時間的使用,此協(xié)議棧滿足我們的使用要求。

4 結(jié)論
   
本文依據(jù)CiA DS301規(guī)范,設(shè)計了CANopen協(xié)議總體框架和軟件功能模塊,并將其應(yīng)用于基于C8051F500獸片機的嵌入式CAN智能節(jié)點上,實現(xiàn)了CANopen從站軟件。協(xié)議棧采用C語言編寫,可移植性較好。經(jīng)測試表明:協(xié)議棧實時性滿足使用要求,功能完整性較好。

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

武漢2025年9月9日 /美通社/ -- 7月24日,2025慧聰跨業(yè)品牌巡展——湖北?武漢站在武漢中南花園酒店隆重舉辦!本次巡展由慧聰安防網(wǎng)、慧聰物聯(lián)網(wǎng)、慧聰音響燈光網(wǎng)、慧聰LED屏網(wǎng)、慧聰教育網(wǎng)聯(lián)合主辦,吸引了安防、...

關(guān)鍵字: AI 希捷 BSP 平板

上海2025年9月9日 /美通社/ -- 9月8日,移遠(yuǎn)通信宣布,其自研藍(lán)牙協(xié)議棧DynaBlue率先通過藍(lán)牙技術(shù)聯(lián)盟(SIG)BQB 6.1標(biāo)準(zhǔn)認(rèn)證。作為移遠(yuǎn)深耕短距離通信...

關(guān)鍵字: 藍(lán)牙協(xié)議棧 移遠(yuǎn)通信 COM BSP

上海2025年9月9日 /美通社/ -- 為全面落實黨中央、國務(wù)院和上海市委、市政府關(guān)于加快發(fā)展人力資源服務(wù)業(yè)的決策部署,更好發(fā)揮人力資源服務(wù)業(yè)賦能百業(yè)作用,8月29日,以"AI智領(lǐng) HR智鏈 靜候你來&quo...

關(guān)鍵字: 智能體 AI BSP 人工智能

北京2025年9月8日 /美通社/ -- 近日,易生支付與一汽出行達(dá)成合作,為其自主研發(fā)的"旗馭車管"車輛運營管理平臺提供全流程支付通道及技術(shù)支持。此次合作不僅提升了平臺對百余家企業(yè)客戶的運營管理效率...

關(guān)鍵字: 一汽 智能化 BSP SAAS

深圳2025年9月8日 /美通社/ -- 晶泰科技(2228.HK)今日宣布,由其助力智擎生技制藥(PharmaEngine, Inc.)發(fā)現(xiàn)的新一代PRMT5抑制劑PEP0...

關(guān)鍵字: 泰科 AI MT BSP

上海2025年9月5日 /美通社/ -- 由上海市經(jīng)濟(jì)和信息化委員會、上海市發(fā)展和改革委員會、上海市商務(wù)委員會、上海市教育委員會、上海市科學(xué)技術(shù)委員會指導(dǎo),東浩蘭生(集團(tuán))有限公司主辦,東浩蘭生會展集團(tuán)上海工業(yè)商務(wù)展覽有...

關(guān)鍵字: 電子 BSP 芯片 自動駕駛

推進(jìn)卓越制造,擴(kuò)大產(chǎn)能并優(yōu)化布局 蘇州2025年9月5日 /美通社/ --?耐世特汽車系統(tǒng)與蘇州工業(yè)園區(qū)管委會正式簽署備忘錄,以設(shè)立耐世特亞太總部蘇州智能制造項目。...

關(guān)鍵字: 智能制造 BSP 汽車系統(tǒng) 線控

慕尼黑和北京2025年9月4日 /美通社/ -- 寶馬集團(tuán)宣布,新世代首款量產(chǎn)車型BMW iX3將于9月5日全球首發(fā),9月8日震撼亮相慕尼黑車展。中國專屬版車型也將在年內(nèi)與大家見面,2026年在國內(nèi)投產(chǎn)。 寶馬集團(tuán)董事...

關(guān)鍵字: 寶馬 慕尼黑 BSP 數(shù)字化

北京2025年9月4日 /美通社/ --?在全球新一輪科技革命與產(chǎn)業(yè)變革的澎湃浪潮中,人工智能作為引領(lǐng)創(chuàng)新的核心驅(qū)動力,正以前所未有的深度與廣度重塑各行業(yè)發(fā)展格局。體育領(lǐng)域深度融入科技變革浪潮,駛?cè)霐?shù)字化、智能化轉(zhuǎn)型快車...

關(guān)鍵字: 人工智能 智能體 AI BSP

上海2025年9月2日 /美通社/ -- 近日,由 ABB、Moxa(摩莎科技)等八家企業(yè)在上海聯(lián)合發(fā)起并成功舉辦"2025 Ethernet-APL 技術(shù)應(yīng)用發(fā)展大會"。會議以"破界?融合...

關(guān)鍵字: ETHERNET 智能未來 BSP 工業(yè)通信
關(guān)閉