色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于CAN總線接口的健康管理系統設計

麥克泰技術 ? 來源:單片機與嵌入式系統應用 ? 2023-11-28 11:11 ? 次閱讀

傳統工程實現大多采取單一的點對點通信,相互之間少有聯系,導致復雜的布局布線。據統計,某型設備布局布線長度達2 000 m,電氣節點達1 500個。無論從工程成本還是工程實現看,傳統實現方法亟待改進。

CAN(Controller Area Network)也稱控制器局域網,是國際上應用最廣泛的現場總線之一。CAN總線是一種多主串行通信總線,支持分布式實時控制,其為多主工作方式,通信方式靈活,且無需站地址等節點信息。采用無損仲裁技術,當多個節點同時向總線發送信息時,優先級低的節點主動退出發送,最高優先級的節點不受影響繼續傳輸數據,節省了總線沖突的仲裁時間。

本文設計了一種基于CAN總線接口的健康管理方案,有效解決了傳統工程點對點通信的弊端。通過描述本系統總體架構、硬件方案和軟件方案,最后給出了仿真與分析結果,證明了本系統的可行性、經濟性和工程應用性。

1總體架構

本系統由某型CK520內核主控處理器、兩顆單片機GD32VF103、高速光電耦合器、總線接口電路、溫度傳感器、SPI Flash芯片和PC機組成。主控處理器通過異步串口與測試計算機連接,同時主控處理器通過異步串口與主/備兩顆CAN總線協議處理器連接,測試計算機上可查看系統的狀態信息,也可通過其對單片機進行軟件升級等。總體結構如圖1所示。

fd9bdc62-8d9a-11ee-939d-92fbcf53809c.jpg

圖1 總體架構

2硬件方案

本系統采用兩顆芯片實現主/備健康管理方案。由主控芯片控制兩顆單片機的狀態,通過異步串口連接,對外健康管理接口為CAN接口。其中健康管理系統基于兩顆RISC-V芯片GD32VF103,實現主/備功能,確保主CAN接口總線功能異常后,備份CAN接口總線能夠正常工作。主要由主控單元、主健康管理單元、備健康管理單元、芯片間通信單元和軟件升級加載單元組成。硬件設計框圖如圖2所示。

fdb3089c-8d9a-11ee-939d-92fbcf53809c.jpg

圖2 硬件設計框圖

2.1主控單元

主控單元負責主/備CAN總線處理器的信息同步、軟件加載的控制等。該部分實現Ymodem協議、與主CAN總線處理器的交互協議、與備CAN總線處理器的交互協議。Ymodem協議是一個文本傳輸協議,常用于在線軟件升級加載。

2.2主健康管理單元

主健康管理單元是用于本系統與外部進行數據交互的主要通道。本設計選用兆易創新的GD32VF103實現健康管理功能,并且完成對系統的溫度值采樣。溫度傳感器選用國產的CT75MMR,這是一款精度在±0.5 ℃的溫度傳感器,溫度值可直接通過I2C接口讀取。測量的溫度范圍為-40~+125 ℃,靜態電流僅為1.5 μA,最大電流為10 μA。

本文選用低成本的GD32VF103RB芯片,該芯片基于RISC-V處理器的32位通用微控制器。RISC-V處理器包括3條AHB總線,分別稱為I-CODE總線、D-Code總線和系統總線。RISC-V處理器適用于低能耗、小面積的嵌入式應用,具有簡單的動態分支預測、指令預取緩沖區和本地內存等多種高效微架構特點。

該芯片提供了108 MHz的運算主頻,以及高達128 KB的片上閃存和32 KB的SRAM緩存,采用2.6~3.6 V供電,I/O可承受5 V電壓,擁有多達4個16位通用定時器、2個16位基本定時器和2個多通道DMA控制器,包括3個USART、2個UART、3個SPI、2個I2C、2個I2S、2個CAN2.0B和1個USB2.0,以及外部總線擴展控制器,集成了2個采樣率高達2.6 Msps的12位高速ADC,提供了多達16個可復用通道,并支持16位硬件過采樣濾波功能和分辨率可配置功能,還擁有2個12位DAC,多達80%的GPIO具有多種可選功能,還支持端口重映射。

高速光電耦合器采用GaAsAl紅外發光二極管與單片集成高速光探測器相耦合。光電耦合器輸入側電信號使發光源發光,光的強度取決于激勵電流的大小,當光照到受光器后,因光電效應產生光電流,由受光器輸出,這樣就實現了電-光-電的轉換。

總線接口電路是一款低電壓CAN總線收發器,其作為CAN總線的物理層芯片,滿足ISO 11898標準規定。該收發器提供差分發送和接收能力,其傳輸速率達到1 Mbps,3.3 V供電電壓,低功耗設計;高輸入阻抗,最多允許接入120個節點;兼容ISO11898 CAN總線標準;傳輸速率最高可達1 Mb/s;片內集成過溫保護,支持熱插拔。

2.3備健康管理單元

備健康管理單元用于本系統與外部進行數據交互的備份通道,同時完成對系統的電壓值采樣,通過單片機自帶的ADC接口功能完成。

3軟件方案

本系統軟件設計采用典型嵌入式軟件設計層次,先實現各芯片內、外設驅動,再實現上述協議規范,最后業務邏輯調度相關API實現完整功能。軟件設計遵循以下原則:層與層之間不能跨層調用;模塊與模塊之間各自獨立,無依賴關系;模塊提供統一的接口供上層調用,模塊的內、外接口分明。軟件架構如圖3所示。

fdc643b2-8d9a-11ee-939d-92fbcf53809c.jpg

圖3 軟件架構

3.1模塊分層

本系統軟件設計采用模塊化設計,盡量降低各個軟件模塊的專用性及模塊之間的耦合性,提高軟件模塊的獨立性和可繼承性。

3.1.1硬件驅動層

硬件驅動層主要與底層接口建立傳輸通道,在本系統中,包含CAN總線接口、UART接口、I2C接口和ADC接口。驅動層函數功能如表1所列。溫度傳感器接口函數功能如表2所列。電壓值接口函數功能如表3所列。

表1 驅動層函數簡介

fdda5ef6-8d9a-11ee-939d-92fbcf53809c.jpg

表2 溫度傳感器接口函數簡介

fdee8e30-8d9a-11ee-939d-92fbcf53809c.jpg

表3 電壓值接口函數簡介

fdf970b6-8d9a-11ee-939d-92fbcf53809c.jpg

3.1.2功能模塊層

功能模塊層主要完成各個接口數據幀的拆幀解析與組幀發送。函數簡介如表4所列。

表4 模塊層函數簡介

fe0f00c0-8d9a-11ee-939d-92fbcf53809c.jpg

3.1.3業務邏輯層

業務邏輯層是本文系統的核心,完成各個功能任務。函數簡簡介如表5所列。

表5 邏輯層函數簡介

fe280c6e-8d9a-11ee-939d-92fbcf53809c.jpg

3.2軟件設計

本系統通過Keil5軟件和CDS軟件對系統功能軟件進行編譯調試,設計主要分為Ymodem功能軟件、CAN功能軟件和芯片管理功能軟件。

Ymodem功能軟件主要完成對本系統的軟件文件升級加載,包含傳輸數據收發、處理和傳輸協議解析;CAN功能軟件主要完成對外提供健康管理信息,包含CAN數據收發、處理和CAN協議解析,為軟件設計的關鍵和核心;芯片管理功能軟件主要完成各個芯片間狀態信息同步及軟件文件的傳輸控制,包含管理數據收發、解析和處理。

3.2.1Ymodem功能軟件設計

Ymodem功能軟件主要實現待升級HEX文件的傳輸,主控處理器根據文件名稱將文件傳輸至對應的單片機,完成對其軟件文件的加載升級。其數據幀格式如表6所列。

表6 Ymodem數據幀格式

fe41c97e-8d9a-11ee-939d-92fbcf53809c.jpg

升級流程如下:

①先搜索起始幀,校驗正確后進行文件名判斷,若文件名為0001,則表示本地升級文件處理;若文件名為0002,則表示單片機1升級文件處理;若文件名為0003,則表示單片機2升級文件處理。

②繼續搜索數據幀,校驗正確后,根據上一步流程中的處理分支將數據送到對應芯片進行存儲處理。

③搜索到結束幀后即表示升級流程結束。

通過該軟件功能,可方便地對各個功能芯片進行軟件升級,便于后期項目維護。

3.2.2CAN功能軟件設計

CAN功能軟件為本系統軟件設計的關鍵和核心。本設計參照CAN2.0B規范(即ISO 11898),該規范規定了CAN總線網絡設計特殊需求,CAN總線接口劃分為應用層、數據鏈路層和物理層[4]。物理層主要實現bit流編解碼、bit位定時和同步,以及物理連接接口。數據鏈路層主要實現用戶數據分幀和組幀,數據幀編碼、總線仲裁和訪問控制、錯誤檢測和通告、應答等。應用層主要處理用戶業務相關數據。應用層數據幀格式如表7所列。

表7 CAN接口數據幀格式

fe4ce7be-8d9a-11ee-939d-92fbcf53809c.jpg

(1)發送流程

應用層軟件有數據需要發送時,調用數據鏈層發送接口函數,將數據寫入發送緩沖區。鏈路層根據數據個數判斷是否需要分幀,若大于8,則按8字節進行分幀,最后一幀為結束幀,其余幀為中間幀,然后按照幀格式組成鏈路層報文,驅動總線控制器將數據發送到總線上。

(2)接收流程

在接收端,總線數據進入總線控制器輸出鏈路層數據報文,鏈路層對數據幀進行解析,完成以下操作:若收到的字節數小于待解析報文長度,表示還有后續數據幀待接收,則根據DLC字段值提取相應個數的應用數據依次存入接收數據緩存區,等待接收下一幀;若收到的字節數等于待解析報文長度,表示數據報文接收完畢,則根據DLC字段值提取相應個數的應用數據,存入接收數據緩存區,推送給應用層處理。

3.2.3芯片管理功能軟件設計

芯片與芯片間通信采用slip幀格式,數據幀格式如表8所示。

表8 SLIP數據幀格式

fe619ea2-8d9a-11ee-939d-92fbcf53809c.jpg

在組織slip幀時,在每一個基本數據幀的首尾各加上一個端字符(0xC0),封裝成slip幀。在發送的slip數據幀中,與端字符(0xC0)相同的數據用轉義字符加替代字符(0xDBDC)代替,與轉義字符(0xDB)相同的數據用轉義字符加轉義替代字符(0xDBDD)代替。在接收方,對slip數據幀中的數據作相反的替代處理,即將“0xDBDC”替換為“0xC0”,將“0xDBDD”替換為“0xDB”。

4系統仿真與分析

完成健康管理系統軟硬件設計后,需要對本系統進行測試。系統測試前,首先對各部分硬件進行檢查調試,確保硬件正確后,將編譯完成的軟件執行碼通過Keil5軟件和CDS軟件下載到系統。最后通過上位機軟件或者分析儀對相關接口數據進行仿真和分析。

4.1Ymodem功能仿真

為了測試該功能,將測試計算機與主控處理器的異步串口連接,打開計算機上安裝的SecureCRT軟件,然后操作該軟件使用Ymodem功能發送待升級文件,如圖4所示。

fe6f74d2-8d9a-11ee-939d-92fbcf53809c.jpg

圖4 Ymodem發送界面

待軟件文件升級完成后,重啟設備可查看軟件文件升級成功。

4.2CAN功能仿真

為測試該功能,通過CAN總線分析儀測試其收發數據,將測試計算機與CAN總線分析儀連接,打開計算機上安裝的分析儀CANTest軟件,然后將分析儀上的CAN總線接口與本系統對外CAN接口連接進行測試。結合CAN接口數據幀格式分析,單片機CAN接口能夠正確收發協議幀數據。

4.3芯片管理功能仿真

為測試該功能,將測試計算機與主控處理器的異步串口連接,打開計算機上安裝的SecureCRT軟件,每次本系統上電后查看打印信息,如圖5所示。

fe89cd96-8d9a-11ee-939d-92fbcf53809c.jpg

圖5 軟件信息界面

從圖5中可知,主控處理器可正確獲取各個芯片上的狀態信息,因而芯片管理功能正常。

5結 語

本文提出了一種低成本的基于CAN總線接口的健康管理系統設計,給出了總體架構設計,并且對該設計的軟硬件方案進行了詳細描述,最后對整個系統進行了仿真和分析。另外,主備CAN接口的設計有效地提升了系統的可靠性,從經濟性和實用性方面考慮,均有明顯優勢。

(本文由《單片機與嵌入式系統應用》雜志授權發表,原文刊發在2023年第11期)

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19259

    瀏覽量

    229652
  • 單片機
    +關注

    關注

    6035

    文章

    44554

    瀏覽量

    634651
  • CAN總線
    +關注

    關注

    145

    文章

    1946

    瀏覽量

    130727
  • 總線接口
    +關注

    關注

    0

    文章

    82

    瀏覽量

    30730
  • 健康管理系統

    關注

    0

    文章

    6

    瀏覽量

    1193

原文標題:國產化 RISC-V芯片的健康管理工程設計及實踐

文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    CAN總線通信系統的研究與設計

    控制器。與SJA1000配套使用的CAN總線驅動器是PCA82C250,它是PHILIPS推出的CAN控制器和物理總線接口芯片,可提供對
    的頭像 發表于 01-09 08:23 ?6232次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>通信<b class='flag-5'>系統</b>的研究與設計

    CANoe總線接口硬件VN1640A實物展示與功能介紹#汽車CAN總線?

    總線接口CAN總線接口
    北匯信息POLELINK
    發布于 :2024年04月11日 10:50:36

    汽車CAN總線系統原理、設計與應用

    介紹了汽車CAN總線系統的設計方法。全書共10章,首先介紹了汽車網絡通信系統的特點,全面闡述了當今汽車網絡系統的結構、類型、應用及其發展趨勢
    發表于 04-09 22:27

    基于CAN總線的網絡監控系統

    本文介紹了一種基于CAN總線的網絡監控系統方案。該方案使用CAN卡和DSP中的CAN模塊作為上下位機通信
    發表于 06-01 15:32 ?27次下載

    基于DSP的CAN總線接口設計

    基于DSP的CAN總線接口設計 1. CAN總線簡介   控制器局部網絡(CAN Cont
    發表于 10-04 09:41 ?4715次閱讀
    基于DSP的<b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>接口</b>設計

    基于CAN總線的鎳氫電池管理系統設計

    基于CAN總線的鎳氫電池管理系統設計 1 前言   蓄電池剩余容量的準確測量在電動汽車的發展中一直是一個非常關鍵的問題。有效的電池管理
    發表于 12-31 09:20 ?687次閱讀

    CAN總線與RS-485總線的通信接口設計

    CAN總線與RS-485總線的通信接口設計 1  CAN總線及RS-485
    發表于 01-27 10:46 ?4515次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>與RS-485<b class='flag-5'>總線</b>的通信<b class='flag-5'>接口</b>設計

    CAN總線接口電路設計

    本文介紹了CAN 總線的主要性能及特點,CAN 總線在實際工業應用中的總體結構,同時給出了CAN 總線
    發表于 10-31 15:01 ?463次下載
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>接口</b>電路設計

    CAN總線接口電路的硬件設計

    一篇關于CAN總線接口電路硬件設計的文檔,很詳細,可以參考下
    發表于 07-01 16:45 ?104次下載

    基于CAN總線接口卡的軟件設計

    硬件部分主要包括主控制器、CAN總線控制器、CAN總線收發器以及與計算機的RS 232通信接口芯片等。
    發表于 03-26 13:56 ?1627次閱讀

    如何使用FPGA和CAN控制器MCP2515實現慣導系統CAN總線接口的設計

    接口控制新型的CAN 控制器MCP2515,使慣導系統不僅具備了接入CAN 總線的能力,而且在系統
    發表于 01-27 15:52 ?17次下載
    如何使用FPGA和<b class='flag-5'>CAN</b>控制器MCP2515實現慣導<b class='flag-5'>系統</b>的<b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>接口</b>的設計

    使用CAN總線需要擴展CAN總線接口

    您是否遇到需要使用CAN總線,但MCU沒有集成CAN總線控制器的情況?您又是否遇到MCU的CAN口資源不夠的情況?一顆CSM330A芯片能解
    的頭像 發表于 09-04 16:41 ?1271次閱讀
    使用<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>需要擴展<b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>接口</b>嗎

    CAN總線接口保護電路

    CAN總線的應用范圍廣,應用環境相當復雜,一些靜電、浪涌等干擾很容易耦合到總線上,并直接作用于CAN總線
    的頭像 發表于 09-23 08:29 ?1385次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>接口</b>保護電路

    CAN總線接口保護方案

    CAN總線的應用范圍廣,應用環境相當復雜,一些靜電、浪涌等干擾很容易耦合到總線上,并直接作用于CAN總線
    的頭像 發表于 01-13 08:27 ?695次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>接口</b>保護方案

    CAN總線接口類型

    CAN總線(Controller Area Network)是一種基于廣播的串行通信協議,廣泛用于連接分布式系統中的各個設備,實現它們之間的數據交換和控制。CAN
    的頭像 發表于 09-03 14:13 ?1744次閱讀
    主站蜘蛛池模板: 无限资源在线完整高清观看1| 色综合a在线| 被窝伦理电影午夜| 色哟哟tv| 久久这里只精品热在线99| tobu中国日本高清| 亚洲你我色| 前后灌满白浆护士| 精品人妻一区二区三区视频53 | 欧美黑人巨大videos免费| 国产成人免费a在线资源| 小荡娃奶真大| 暖暖 免费 高清 日本在线 | 野花日本手机观看大全免费3 | 国产高潮国产高潮久久久久久| 印度12 13free| 手机在线观看无码日韩视频| 久久电影午夜| 国产精品一区第二页| jizz国产丝袜18老师美女| 一品道门在线视频| 午夜性色一区二区三区不卡视频| 麻豆免费观看高清完整视频在线| 国产精品99AV在线观看| 97蜜桃网123.com| 杨幂被视频在线观看| 无码乱人伦一区二区亚洲| 人妻免费久久久久久久了| 久cao在线香蕉| 果冻传媒 在线播放观看| 国产国产乱老熟视频网站| 成人在线观看国产| WWWXXXX兽交| 99日精品欧美国产| 97久久国产露脸精品国产| 在线亚洲精品国产一区麻豆 | 99热在线精品免费全部my| 999久久久国产精品蜜臀AV| 在线电台收听| 在野外被男人躁了一夜动图| 乳色吐息未增删樱花ED在线观看|