999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

新能源汽車CAN總線實訓教學平臺設計

2021-08-04 11:07:22李繼武
汽車電器 2021年7期
關鍵詞:實訓汽車

李繼武

(南京城市職業學院智能工程學院,江蘇 南京 211200)

CAN總線技術課程是新能源汽車專業核心課程,承擔著培養學生適應崗位需求,提高應用能力的重任,而以培養應用能力為核心改革實訓教學,是高職院校人才培養工作內涵式發展的主要努力方向。高職院校新能源汽車專業目前在講授新能源汽車CAN總線技術課程時主要依賴于CAN網絡硬件實訓臺架,這種臺架通常只是將汽車上的相關CAN網絡設備拆解下來,再組裝到一個工作臺上,通上電后可以測量CAN網絡電壓和波形。停留在這個層次上的實訓臺架,只能滿足低層次認知實訓,無法勝任高職教育創新創業的高層次需求[1]。汽車CAN總線技術課程是汽車技術、通信技術和計算機軟硬件技術結合的課程,從崗位人才需求角度考慮,學生不僅需要掌握汽車技術和CAN總線技術,還需要從軟件開發的角度入手,掌握CAN數據報文幀的截獲破解方法、報文幀的收發過程以及控制設備的原理。

本文設計了一款CAN總線教學平臺軟件,它利用USBCAN接口卡接入某純電動汽車的CAN網絡,通過配置濾波器和波特率等參數,可以截獲破解舒適網、動力網等CAN數據。根據破解的CAN數據,平臺實現了自動空調、組合開關、雨刮開關、背光調節等設備的CAN命令控制模塊。實踐表明,利用本平臺軟件開展CAN總線技術課程實訓教學,有效提高了學生的應用能力。作為創新教育和專業教育相結合的產品,以平臺軟件為核心搭建的工作坊為本專業學生開展創新創業實踐提供了重要的機會和可能[2]。

1 硬件結構

1.1 測試用車

平臺測試用車為2019年上市的某款純電動汽車,該車工信部純電續航里程為400km,電池能量52kWh,前置永磁同步單電機,單速變速器,4.3英寸液晶儀表,自動空調。

1.2 檢測點選擇

平臺測試用新能源汽車CAN總線網絡包含3個通信子網,分別為舒適網125kb/s,動力網250kb/s,ESC網500kb/s。

新能源汽車CAN網絡各子網之間由于通信速率不同,互相之間信息交換需要由網關控制器進行轉發[3]。網關是汽車內部通信的核心,通過它可以實現各條總線上信息的共享、網絡管理和故障診斷功能[4]。各子網同網關控制器的連接關系如圖1所示。

圖1 某款純電動汽車網關控制器電氣連接圖

本平臺軟件因為要對測試用汽車CAN網絡數據進行采樣,所以選取圖1中的①~⑥作為檢測點,并引出采樣接口。

1.3 USBCAN接口卡

USB接口是一種方便、靈活、簡單且即插即用的通用串行總線,CAN總線可以通過USBCAN接口卡與USB接口連接從而與主機進行高速通信。USBCAN接口卡用于在USB總線和CAN總線之間完成數據的雙向收發功能。

平臺選用的USBCAN接口卡是廣成科技公司生產的USBCAN-IIV502型,該接口卡使用鳳凰端子接線方式,具有兩路CAN總線接口,支持CAN2.0A/CAN2.0B幀格式,通信波特率在5kb/s至1Mb/s之間可自由設置,電源供電采用USB總線方式,CAN總線接口每秒最多接收14000幀數據,支持Windows操作系統。

1.4 硬件連線圖

上位機PC、USBCAN接口卡和網關控制器三者連接關系如圖2所示。從USBCAN接口卡引出的L、H兩根CAN引線可以接到網關控制器的7和8引腳(舒適網)或14和13引腳(ESC網)或9和10引腳(動力網),從而接入汽車CAN網絡。

圖2 硬件連線圖

2 軟件平臺設計

2.1 打開CAN設備

程序啟動后,首先要調用ECAN鏈接庫中的OpenDevice函數打開USBCAN接口卡。該函數需要指定2個輸入參數:設備類型和設備索引。設備類型設置為4表示USBCANⅡ類型;設備索引設置為0表示只有1個設備。如果有2個設備,可以指定為0或1。

2.2 初始化CAN設備

打開USB-CAN接口卡后需要通過INIT_CONFIG結構體初始化濾波器和波特率等參數。平臺采用恩智浦半導體生產的CAN總線控制器,型號為SJA1000,它有兩種工作模式:BasicCAN和PeliCAN。在BasicCAN模式下,SJA1000只支持接收發送標準幀格式報文;在PeliCAN模式下,SJA1000可以接收發送標準幀格式和擴展幀格式兩種報文。通過軟件編程使用SJA1000的驗收濾波器可以濾掉無關報文。SJA1000驗收濾波器包含4個驗收碼寄存器:ACR0、ACR1、ACR2和ACR3;同時它還擁有4個屏蔽碼寄存器:AMR0、AMR1、AMR2和AMR3。驗收碼與屏蔽碼按位對應,如果屏蔽碼某位為1,則報文幀ID對應位不參與屏蔽接收數據;如果屏蔽碼某位為0,則該報文幀ID對應位和驗收碼對應位相同時,表示該位允許接收數據;只有報文幀ID所有位都允許接收數據,SJA1000控制器才會接收該報文,并將其放入接收數據緩沖區[5]。

INIT_CONFIG結構體同濾波器相關的成員有3個:Acc-Code、AccMask和Filter。其中AccCode表示驗收碼,AccMask表示屏蔽碼,Filter表示濾波使能,0表示不使能,1表示使能,只有在使能情況下,才能啟用SJA1000濾波功能。濾波器設計界面如圖3所示。

圖3 濾波器設置

設置通信波特率需要使用SJA1000控制器的2個寄存器:BTR0(總線定時寄存器0)和BTR1(總線定時寄存器1)。BTR0定義了波特率預設值(BRP)和同步跳轉寬度(SJW)的值,如表1所示。

表1 總線定時寄存器0

CAN總線時鐘周期tSCL計算公式如下:

式中:tCLK——SJA1000的晶振周期。考慮到平臺采用的晶振頻率f為16MHz,因此tCLK=1/f=1/16μs。計算樣例數據如下:

BTR1定義了每個位周期的長度、采樣點的位置和在每個采樣點的采樣數目,如表2所示。

表2 總線定時寄存器1

SAM表示采樣數目,0表示單倍采樣;TSEG1和TSEG2決定了每一位的時鐘數目和采樣點位置,關于SYNCSEG、TSEG1和TSEG2,計算公式如下:

根據上述公式計算表2樣例,結果如下:

通過上面計算得到tSYNCSEG、tTSEG1和tTSEG2結果值后,可以計算出SJA1000控制器的位周期和通信波特率,公式如下:

計算SJA1000控制器的位周期和通信波特率,結果如下:

綜上,如果BTR0(總線定時寄存器0)設置為0x03,BTR1(總線定時寄存器1)設置為0x1C,計算出的SJA1000控制器通信波特率為125kb/s,其它常用波特率設置情況如表3所示。

表3 SJA1000控制器常用CAN通信波特率設置

2.3 打開CAN通道

初始化USB-CAN接口卡參數后,需要調用StartCAN函數打開該接口卡的某個CAN通道。如果有多個CAN通道,每次調用都要指定要使用的CAN通道號。

2.4 接收CAN數據

USB-CAN接口卡某個CAN通道打開后,即可開始接收CAN數據。由于接收CAN數據過程是一個耗時操作,可能導致用戶界面停止響應,為了提高程序響應性,使用戶界面及時刷新CAN數據,本平臺設計了一個“后臺耗時+通信更新”方案,即開啟一個后臺獨立線程完成接收CAN數據的耗時操作,然后通過線程間事件通信,完成用戶界面更新操作。

2.4.1 程序核心設計方案

使用BackgroundWorker對象開啟單獨線程完成耗時操作并及時響應更新用戶界面,需要按照下面步驟進行設計。

1)創建一個BackgroundWorker對象。BackgroundWorker對象屬于System.ComponentModel命名空間,它是完成本方案的核心對象。

2)訂閱BackgroundWorker對象的3個事件:DoWork事件、ProgressChanged事件和RunWorkerCompleted事件。

DoWork事件用于執行耗時操作,耗時期間需要不斷輪詢CancellationPending屬性,其值一旦為true,則中止耗時操作。

ProgressChanged事件用于接收耗時操作的計算結果并實時更新用戶界面,事件處理程序的第2個參數,其類型為ProgressChangedEventArgs,它有一個UserState屬性,是后臺線程向本事件傳遞進度數據的媒介。

RunWorkerCompleted事件在后臺耗時操作已完成、被取消或引發異常時觸發。判斷哪個原因觸發了該事件需要根據第2個參數,其類型是RunWorkerCompletedEventArgs,它有Cancelled、Error和Result三個屬性,如果耗時操作中途取消,則Cancelled屬性為true;如果發生異常,則Error屬性指明發生了哪種錯誤;如果既沒中途取消,又沒發生異常,則可通過Result屬性獲得耗時操作結果。

3)啟動后臺線程。調用BackgroundWorker對象的RunWorkerAsync方法將觸發DoWork事件,啟動后臺線程開始執行耗時工作。

2.4.2 程序核心代碼

整個程序最核心部分是后臺線程接收CAN數據的耗時操作,其代碼如下(部分):

上述代碼中,CAN_OBJ作為結構體類型代表幀的數據結構。Transmit發送函數和Receive接收函數使用CAN_OBJ結構體來傳送CAN信息幀。Receive函數從指定的設備CAN通道的緩沖區里讀取數據,函數原型如下:

上述參數中,pReceive參數是一個指針變量,表示用來接收的數據幀數組。根據本方案設計的程序,接收CAN數據界面如圖4所示。

圖4 接收CAN數據界面

2.5 發送CAN數據

發送CAN數據需要調用ECAN鏈接庫中的Transmit函數,其原型如下:

上述參數中,pSend參數是一個指針類型,表示要發送的數據幀數組,Len參數是一個整數類型,表示要發送的數據幀數組的長度。函數成功調用后,返回實際發送的幀數。發送CAN數據的界面如圖5所示。

圖5 發送CAN數據界面

3 系統測試

以2019款某純電動汽車的“雨刮洗滌”部件為研究對象,運行本實訓平臺軟件,檢測出CAN命令如表4所示。

表4 某純電動汽車“雨刮洗滌”部件CAN命令測試結果

根據檢測結果,進一步開發“雨刮洗滌”功能模塊,程序運行界面如圖6所示。

圖6 某純電動汽車“雨刮洗滌”部件CAN命令控制模塊

任選一種“雨刮”工作模式,雙擊即可發送CAN命令控制雨刮工作。實際測試表明,CAN命令發出后,汽車雨刮即可按照指定模式工作。

4 結束語

1)本文搭建了“上位機PC+USBCAN設備+汽車網關控制器”硬件環境,設計開發了一款新能源汽車CAN總線實訓教學軟件平臺,通過該平臺可以接收、分析新能源汽車CAN總線數據,并向新能源汽車發送CAN命令,同時以某款純電動汽車為例,開發了自動空調、組合開關和雨刮開關等部件的CAN命令控制模塊。

2)本文設計的實訓平臺彌補了各高校在用的CAN網絡實訓平臺的不足,演示直觀,控制邏輯清晰,提高學生崗位應用能力效果明顯。

3)通過本文設計的實訓平臺可建立專業工作坊,為大學生創新創業教育提供一個切實可行的途徑。

4)本文設計的實訓平臺后續可持續拓展不同車型,以豐富平臺功能,增加實訓教學應用場景,模擬企業真實環境,提高人才培養質量和就業競爭力。

猜你喜歡
實訓汽車
基于CDIO理念的數控實訓教學改革與實踐
2019年8月汽車產銷環比增長 同比仍呈下降
汽車與安全(2019年9期)2019-11-22 09:48:03
8S管理模式在數控實訓教學中的實踐與研究
汽車的“出賣”
虛擬情景實訓環境三維模擬
電工電子實訓教學改革與創新
電子制作(2017年8期)2017-06-05 09:36:15
汽車們的喜怒哀樂
基于Excel的財務管理模擬實訓研究
3D 打印汽車等
決策探索(2014年21期)2014-11-25 12:29:50
虛實結合實訓平臺的開發與應用探索
主站蜘蛛池模板: 久久久黄色片| 88国产经典欧美一区二区三区| 青草精品视频| 一级看片免费视频| 99热这里只有精品免费| 狠狠亚洲婷婷综合色香| 亚洲欧美日本国产综合在线| 国产真实乱人视频| 免费毛片网站在线观看| 婷婷六月在线| 亚洲第一色视频| 亚洲性网站| 国产欧美日韩在线在线不卡视频| 99中文字幕亚洲一区二区| 五月婷婷精品| 四虎永久在线视频| 国产精品一区在线麻豆| 亚洲综合18p| 丁香六月激情婷婷| 最新亚洲人成网站在线观看| 丰满的少妇人妻无码区| 免费女人18毛片a级毛片视频| 亚洲AⅤ无码日韩AV无码网站| 亚洲精品视频在线观看视频| 伊人久久婷婷五月综合97色| 91偷拍一区| 成色7777精品在线| 国产精品久久久久无码网站| 美女亚洲一区| 国产乱码精品一区二区三区中文 | 久久久久久久久18禁秘| 欧洲精品视频在线观看| 国产69精品久久久久妇女| 国产亚洲一区二区三区在线| 日韩亚洲高清一区二区| 四虎AV麻豆| 国产精品美女自慰喷水| 国产成人亚洲日韩欧美电影| 伊人久久久久久久| 亚洲一级毛片在线播放| AV无码无在线观看免费| 国产欧美日韩18| 国产欧美精品专区一区二区| 福利在线不卡| 欧美激情第一欧美在线| 婷婷久久综合九色综合88| 亚洲无码高清免费视频亚洲| 性视频一区| 99尹人香蕉国产免费天天拍| 精品自拍视频在线观看| 热热久久狠狠偷偷色男同| 国产永久无码观看在线| 国产欧美日韩专区发布| 狠狠干欧美| 日本免费福利视频| 国产亚洲精品无码专| 亚洲精品欧美日韩在线| 婷婷色婷婷| 三上悠亚一区二区| 国产成人高清在线精品| 青青草一区| 欧美午夜视频在线| 国产一区二区丝袜高跟鞋| 国产高清免费午夜在线视频| 欧美性精品| 伊人久久精品无码麻豆精品 | 亚洲人成网站在线观看播放不卡| 亚洲一级毛片免费看| jizz国产视频| 啪啪永久免费av| 中文字幕亚洲精品2页| 凹凸国产分类在线观看| 国产Av无码精品色午夜| 日韩视频免费| 亚洲国产亚洲综合在线尤物| 在线播放国产一区| 欧美精品一区二区三区中文字幕| 欧美不卡在线视频| 欧美a在线看| 国产网站免费| 久久这里只有精品2| 亚洲乱码在线播放|