《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DSP的CANopen通訊協議的實現
基于DSP的CANopen通訊協議的實現
互聯網
摘要: 1引言CANopen是一個開放的、標準化的應用層協議,在各種控制系統中得到了廣泛的應用。依靠CANopen協議的支持...
關鍵詞: DSP TMS320LF2407A CANopen
Abstract:
Key words :

1 引言

CANopen" title="CANopen">CANopen是一個開放的、標準化的應用層協議,在各種控制系統中得到了廣泛的應用。依靠CANopen協議的支持,可以對不同CAN廠商的設備通過總線進行實時通訊。

本文針對自主研發的全數字電機伺服驅動系統,使用CANopen通訊協議實現了CAN總線數字信號處理器(DSP" title="DSP">DSP)系統與上位機CAN卡之間的通訊,并通過測試實驗驗證了信息傳遞的可靠性,保證了全數字網絡化伺服驅動系統中對電機控制的快速性、準確性和實時性。

2 通訊系統實現的基本原理

2.1 LF240x系列DSP的CAN控制器模塊

LF240x系列DSP的CAN控制器模塊,是一個完全的CAN控制器。具有以下特性[6]:

(1)完全支持CAN2.0B協議;

(2)對象有6個郵箱,用于接收和發送信息,其數據長度為0~8個字節;

(3)可編程的中斷配置,位定時器及CAN總線喚醒功能;

(4)當發送出現錯誤或仲裁丟失數據時,CAN控制器有自動重發功能;

(5)總線錯誤自診斷功能;

(6)支持自測試模式。

2.2 CANopen協議

CANopen協議以CAN芯片為硬件基礎,有效利用CAN芯片所提供的簡單通信功能區實現工業控制網絡的復雜應用層協議要求。應用中應該注意以下幾個方面的內容:

2.2.1 對象字典OD(Object Dictionary)

OD是CANopen協議的核心概念[1],它是一個有序的對象組,每個對象用一個16位的索引值和一個8位的子索引尋址。CANopen網絡中的每個節點都有一個OD,包含了描述這個設備和它的網絡行為的所有參數。

2.2.2 CANopen 標識符

CANopen定義了強制性的缺省標識符(COB-ID)分配表。它是基于11位的CAN-ID,包括4位功能段(Function Code)和7位地址段(Node-ID),如圖1所示。文獻[1]中給出了CANopen預定義主/從連接集CAN標識符分配情況。



2.2.3 CANopen通訊機制

CANopen通訊模型定義了四種報文(通訊對象)[1]:

1) 管理報文NMT(Network Management)

用于網絡中主節點對從節點監控和管理。此消息不需要應答。NMT消息格式如表1所示。



2)服務數據對象SDO(Service Data Object)

SDO通過使用索引和子索引來訪問一個設備的OD。協議屬于確認服務類型。根據傳送數據的長度不同,有兩種傳送機制:加速傳送(最多4字節)和分段傳送(大于4字節)。發送和應答報文總是包含8字節信息,基本結構如表2所示:


3) 過程數據對象PDO(Process Data Object)

用于傳輸正常網絡操作中的實時數據。每個PDO在OD中用2個對象描述:PDO通訊參數和PDO映射參數。在此舉例說明PDO的使用方法。假設第二個發送PDO映射如表3所示,如果這個報文被發送,則由3字節組成,報文結構如表4所示。


4) 預定義報文或特殊功能報文

定義了三個用于同步,應急指示和時間標記的特定對象。用于配合以上三種通訊機制。

3系統通訊的軟、硬件設計

3.1 CAN總線硬件設計

由于TMS320LF2407A" title="TMS320LF2407A">TMS320LF2407A芯片內自帶了CAN總線控制器模塊,使得CAN總線的電路設計變得非常簡單。將TMS320LF2407A的CANTX、CANRX引腳和CAN收發器PCA82C250的TXD、RXD引腳相連即可。CAN總線之間需要使用一個合適的終端電阻連接。為了進一步提高系統的抗干擾能力,可以在控制器和傳輸介質之間加接光電隔離器件6N137。電路原理圖如圖2所示。



3.2 CANopen協議對象字典OD的建立

本伺服驅動器通訊支持CANopen通訊子協議(DS301)和驅動設備子協議及運動控制命令(DSP-402)。在開發的過程中,根據應用的具體要求,將數字輸入/輸入模塊、電機及驅動設備、控制器、編碼器等設備類型及其相應的功能在設備描述的協議中進行了描述。建立的OD分為三個部分:

1) 通訊協議對象(Index 0x1000-0x1AFF)

定義設備類型,錯誤寄存器,廠商指定狀態寄存器,COB-ID同步信息,通訊循環周期,同步CAN信息窗口,以及設備名,軟硬件版本號等。另外SDO的通訊參數以及PDO的通訊和映射參數也在該部分定義。本設計中采用固定PDO映射,不允許動態映射。

2) 標準設備子協議對象(Index 0x6000-0x65FF)

定義三類信息:第一類是電機及驅動器的相關設備參數,如類型,廠商信息,分類號等;第二類是命令字和狀態字;第三類是位置、速度的相關參數。

3) 廠商指定協議對象(0x2000-0x20FF)

根據廠商需求,靈活定義所使用的變量。 此部分的使用使CANopen協議既保證了設備的通用性,又保證了系統良好的擴展性。

3.3 通訊程序的設計及實現

針對帶CAN控制器的TMS320LF2407A和PC機CAN卡之間的通訊進行了軟件設計。

TMS320LF2407A的CAN控制器的郵箱2配置為接收方式,郵箱3配置為發送方式。都采用標準信息幀格式(11Bit ID)。其中發送信息采用查詢方式,接收信息采用中斷方式,郵箱2用低中斷優先級。信息傳輸波特率設置為500Kbps。

采用CANopen協議對設備進行控制的過程可以理解為用SDO對數據字典的讀寫過程。檢測設備對象的狀態或查詢設備當前信息時,可用SDO讀取數據字典中的對象;要對設備發布控制命令可利用SDO向相應的數據字典對象寫入數據。接收到信息幀時首先要將其命令字節(byte0)讀出,以確定下一步的讀寫命令處理。

信息幀的接收和發送均采用緩沖區的方式。讀操作時,發送信息幀長度為4字節,應答信息幀約定為8字節;寫操作時,發送信息幀長度約定為8字節,應答信息幀為4字節。

采用不同的發送郵箱發送數據長度不同的信息幀。本程序設計中,采用郵箱4發送4字節長度的信息幀,采用郵箱5發送8字節長度的信息幀。這種方式可以提高信息傳輸的效率。軟件設計流程圖如圖3所示。



4 測試結果

為了測試CAN總線DSP系統與PC機CAN卡之間的通訊情況,采用VC++編寫了友好的人機界面(見圖4)。進行通訊測試時,首先要選擇通訊端口,設置通訊波特率,ID屏蔽位,信息幀格式及傳輸數據的格式(十進制或十六進制)。特別需要注意PC端設置的通訊波特率要和DSP端的通訊波特率保持一致。然后打開CAN總線端口,選定發送SDO的功能段及地址段,填寫信息幀長度(以字節為單位)及內容,即可進行通訊測試。



例如,要將1號地址的電機輪速期望值設為0x3E8,電機輪速期望值在OD中的索引為0x606B,使用啟動域下載協議,加速傳輸。則設置地址段為1,信息幀長度為8,信息幀內容為2B 6B 60 00 E8 03 00 00。發送成功后返回應答信息幀內容為:ID=581,LENTH=4,DATA=60 6B 60 0 0 0 0 0,說明寫入操作正確(見圖4)。

要將1號地址的電機輪速期望值讀出,即讀出OD中的對象0x606B,使用啟動域上傳協議,服務器使用加速傳輸方式應答。則設置地址段為1,信息幀長度為4,信息幀內容為40 6B 60 00 00 00 00 00,發送成功后返回應答信息幀內容為:ID=581,LENTH=8,DATA=4B 6B 60 0 E8 03 0 0,說明讀取操作正確(見圖4)。

5 結束語

本文用CANoen協議實現了CAN總線DSP系統與上位機CAN的通訊,實現了控制系統的數字化、模塊化,并保持了系統的可擴展性,為提高伺服驅動系統的智能化水平奠定了堅實的基礎。(作者:馬艷歌 賈凱 徐方微計算機信息)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品国产成人国产三级| 亚洲福利在线观看| 免费亚洲电影| 久久精品麻豆| 欧美一区深夜视频| 香蕉成人啪国产精品视频综合网| 亚洲视频日本| 亚洲性图久久| 亚洲一级免费视频| 一区二区三区四区国产| 亚洲毛片在线观看.| 日韩视频一区| 一区二区三区精品国产| 这里是久久伊人| 亚洲一区二区三区精品在线观看| 亚洲婷婷在线| 亚洲主播在线播放| 亚洲欧美国产一区二区三区| 亚洲你懂的在线视频| 亚洲欧美在线网| 久久成人亚洲| 久久久久久自在自线| 久久美女性网| 免费在线看一区| 欧美激情黄色片| 欧美日韩国产综合新一区| 欧美日韩精品高清| 欧美午夜视频在线观看| 国产精品香蕉在线观看| 国产自产2019最新不卡| 在线成人中文字幕| 亚洲欧洲日产国产综合网| 夜夜嗨av一区二区三区| 亚洲视频 欧洲视频| 亚洲欧美日韩精品久久奇米色影视| 午夜精品免费| 91久久国产精品91久久性色| 妖精成人www高清在线观看| 亚洲无亚洲人成网站77777| 性伦欧美刺激片在线观看| 久久久久久久久久久成人| 欧美sm视频| 欧美午夜理伦三级在线观看| 国产日产高清欧美一区二区三区| 亚洲国产欧洲综合997久久| 亚洲视频在线看| 午夜久久tv| 久久一区二区三区av| 欧美精品日韩综合在线| 国产精品私拍pans大尺度在线| 国内精品国产成人| 亚洲黄色一区| 亚洲综合第一页| 亚洲人成在线观看| 亚洲综合二区| 男女激情久久| 国产精品久久久久久久久久久久久久| 国内精品久久久久影院薰衣草| 亚洲精品免费网站| 欧美一区二区三区喷汁尤物| 日韩视频一区二区三区在线播放| 欧美一乱一性一交一视频| 欧美成人a∨高清免费观看| 国产精品久久7| 亚洲成人直播| 亚洲一级黄色av| 亚洲国产一区在线观看| 亚洲欧美国产视频| 欧美激情性爽国产精品17p| 国产喷白浆一区二区三区| 亚洲国产精品久久久久秋霞蜜臀| 亚洲欧美日韩天堂一区二区| 99伊人成综合| 久久综合一区二区三区| 国产精品蜜臀在线观看| 亚洲激情视频在线| 午夜影视日本亚洲欧洲精品| 一本到12不卡视频在线dvd| 久久久精品国产免大香伊 | 欧美片第1页综合| 国产日韩视频一区二区三区| 亚洲三级免费| 亚洲国产日日夜夜| 欧美一区二区三区在线观看视频 | 欧美日韩mp4| 狠狠色丁香婷综合久久| 亚洲天堂激情| 一区二区三区精品视频| 久久综合电影一区| 国产日韩三区| 亚洲一区一卡| 宅男噜噜噜66国产日韩在线观看| 欧美成人一区二区三区| 国内成+人亚洲| 亚洲欧美综合另类中字| 亚洲欧美日韩国产成人精品影院| 欧美激情一区二区三区在线| 亚洲精品日韩在线观看| 欧美经典一区二区三区| 欧美午夜一区二区三区免费大片 | 亚洲福利视频专区| 久久激情五月婷婷| 久久国产精品色婷婷| 国产精品高精视频免费| 99热精品在线观看| 一区二区成人精品| 欧美日韩1区2区3区| 在线观看欧美亚洲| 亚洲高清色综合| 久久手机精品视频| 国内外成人免费激情在线视频网站| 亚洲欧美制服中文字幕| 欧美在线地址| 国产色婷婷国产综合在线理论片a| 亚洲女人天堂av| 午夜亚洲福利| 国产精品腿扒开做爽爽爽挤奶网站 | 亚洲日韩欧美一区二区在线| 亚洲精品一区二区三区99| 欧美成人官网二区| 亚洲国产精品久久| 亚洲理论电影网| 欧美日韩国产在线播放| 夜夜狂射影院欧美极品| 亚洲夜间福利| 国产精品女主播一区二区三区| 亚洲一二区在线| 欧美中文字幕在线视频| 好吊一区二区三区| 亚洲人成网在线播放| 欧美精品一区二区精品网| 亚洲精品美女在线观看| 亚洲天堂成人在线观看| 国产精品在线看| 欧美一区三区二区在线观看| 狼人社综合社区| 亚洲精品日韩在线观看| 亚洲一区二区三区国产| 国产精品视频一区二区高潮| 午夜视频一区| 狂野欧美一区| 日韩午夜在线观看视频| 亚洲欧美日韩精品久久奇米色影视| 国产精品亚发布| 久久激情综合| 欧美精品国产精品| 制服丝袜激情欧洲亚洲| 久久国产精品网站| 亚洲国产成人tv| 亚洲午夜一区| 国产一区高清视频| 亚洲免费观看视频| 国产精品久久久久久久一区探花| 欧美日韩一区精品| 亚洲人成毛片在线播放| 欧美综合第一页| 亚洲高清一二三区| 亚洲香蕉伊综合在人在线视看| 国产亚洲欧美一区二区三区| 91久久国产综合久久蜜月精品| 欧美视频1区| 久久成人免费| 欧美日韩色一区| 欧美在线一区二区三区| 欧美女同在线视频| 亚洲女性裸体视频| 欧美 亚欧 日韩视频在线| 亚洲桃花岛网站| 另类av导航| 中文成人激情娱乐网| 久久成人精品电影| 亚洲日本va午夜在线电影| 午夜免费日韩视频| 亚洲风情亚aⅴ在线发布| 亚洲自拍偷拍网址| 影音先锋亚洲视频| 午夜免费电影一区在线观看| 亚洲成人资源| 欧美一区二区三区在| 亚洲国产视频a| 久久精品最新地址| 一区二区欧美日韩| 欧美v日韩v国产v| 亚洲综合不卡| 欧美激情精品久久久久久免费印度 | 欧美人与禽猛交乱配视频| 午夜亚洲精品| 欧美色图麻豆| 亚洲黄页一区| 国产手机视频一区二区| 一本久久知道综合久久| 黄色在线成人| 欧美在线1区| 亚洲午夜在线观看| 欧美日韩不卡一区| 亚洲国产毛片完整版| 国产精品影视天天线| 亚洲无吗在线| 亚洲精品乱码久久久久久按摩观 | 亚洲激情在线|