<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于CAN總線的老化測試系統(tǒng)的設(shè)計

          基于CAN總線的老化測試系統(tǒng)的設(shè)計

          作者: 時間:2009-10-29 來源:網(wǎng)絡(luò) 收藏

          0 引言
          汽車上用的電子設(shè)備的可靠工作與優(yōu)良性能關(guān)系者駕駛者的生命安全。車用電子設(shè)備出廠前要求對設(shè)備內(nèi)部電路板進行長時間,以檢測電路板在高溫環(huán)境和各種輸入信號條件下,是否仍正常工作。只有經(jīng)過的電路板才能出廠。由于需要的電路板數(shù)量巨大,要求該能同時老化測試許多塊被檢測電路板,因此設(shè)計了本老化測試。整個老化測試由 1個通信模塊、 10個測試模塊、1個溫控模塊及上微機軟件構(gòu)成。本老化檢測的系統(tǒng)結(jié)構(gòu)圖如圖 1所示。

          本文引用地址:http://www.ex-cimer.com/article/195690.htm



          圖 1 系統(tǒng)結(jié)構(gòu)圖在本系統(tǒng)中,每個檢測模塊最多可同時檢測 10塊電路板,共有 10個檢測模塊,因此,整個系統(tǒng)在一次老化檢測過程可以同時檢測100塊電路板。檢測模塊將檢測的數(shù)據(jù)通過 通信送給通信模塊,由通信模塊通過串行通信發(fā)送給上位機,由上位機軟件對檢測數(shù)據(jù)進行解析,判斷被測電路板的工作狀態(tài),顯示每一塊被測電路板的工作狀態(tài),存儲每塊被測電路板的檢測數(shù)據(jù),生成歷史報表。上位機軟件還向操作員提供良好而方便的人機交互界面,操作員通過該界面,可以設(shè)置系統(tǒng)老化的時間、溫度與測試模式。

          1 通信模塊設(shè)計


          通信模塊在老化系統(tǒng)中處于核心地位,它完成兩方面的任務(wù):一方面,通過串行異步通信與上位機通信,接收用戶通過上位機發(fā)來的控制命令,向上位機發(fā)送檢測的數(shù)據(jù)。另一方面,通過 通信方式與 10個檢測模塊及 1個溫控模塊通信,向檢測設(shè)備發(fā)送命令和采集數(shù)據(jù)。通信模塊的硬件系統(tǒng)框圖如圖 2所示。


          1.1 硬件設(shè)計

          通信模塊采用 C8051F040作為核心。C8051F040具有許多優(yōu)點。1.采用高速 8051微控制器內(nèi)核,流水線結(jié)構(gòu),大部分指令的執(zhí)行時間為一或兩個系統(tǒng)時鐘周期。

          2.有 4352字節(jié)的內(nèi)部 RAM和 64K字節(jié)的 FLASH,滿足大多數(shù)應(yīng)用設(shè)計對存儲空間的需要,無需外接存儲器,因而了簡化系統(tǒng)設(shè)計。

          3.配置多種端口,如 SPI、SMBus和 UART。

          4.C8051F040內(nèi)置標準 控制器,只要外接 CAN通信接口芯片就可以進行通信,方便實現(xiàn) CAN通信,提高通信的可靠性。

          由于 C8051F040集成的是 CAN控制器,要使實現(xiàn) CAN通信,還需要外接 CAN收發(fā)器,常用的 CAN總線收發(fā)器有 Philips公司的 PCA82C250收發(fā)器、高速 TJA1050收發(fā)器等。本設(shè)計采用了 TJA1050高速 CAN收發(fā)器,TJA1050具有電磁輻射低、防短路、不上電時對總線無影響等特點。為了進一步提高系統(tǒng)的抗干擾能力,C8051F040的 CAN控制器引腳CANTX、CANRX和收發(fā)器 TJA1050之間并不直接相連,而是通過由高速光耦 6N137構(gòu)成的隔離電路后再與 TJA1050相連,這樣就可以很好的實現(xiàn)了 CAN總線上各節(jié)點的電氣隔離。增加隔離電路雖然增加了節(jié)點的復(fù)雜性,但它卻提高了節(jié)點的穩(wěn)定性和安全性。此外,為避免信號反射,導(dǎo)致通信的可靠性與抗干擾能力下降,甚至無法通信,因此,在 CAN總線的兩端需要加有 2個 120歐姆的總線阻抗匹配電阻。由于 C8051F040的端口電壓為 3.3V,串行通信電路采用的電平轉(zhuǎn)換芯片為 MAX3232。


          1.2 軟件設(shè)計


          1.2.1 串行通信程序設(shè)計

          通信模塊一方面通過串行通信接收上位機的命令,主要命令有啟動、停止和參數(shù)設(shè)置命令。用戶通過參數(shù)設(shè)置命令為系統(tǒng)設(shè)置不同參數(shù),可以保證老化的正確進行。另一方面通過串行通信向上位機發(fā)送檢測到的數(shù)據(jù)。為簡化設(shè)計,通信模塊和上位機的串行通信采用固定長度的信息幀格式,一幀信息包括幀頭、有效數(shù)據(jù)或命令、 CRC16校驗位等。通信模塊接收上位機信息通過中斷方式實現(xiàn)。在中斷服務(wù)程序中,每接收到一個幀頭后,開始接收后面若干字節(jié)的信息,經(jīng) CRC16校驗有效后,就認為是一個有效的信息幀,按照約定的串行通信協(xié)議解析該信息幀,取出其中的有效命令。通信模塊每收到一個有效命令幀,向上位機發(fā)送一幀應(yīng)答信息。為保證通信正確,上位機軟件對通信采用超時機制。如果上位機在發(fā)出一


          由于通信模塊接收命令和處理命令速度的不同步,為保證上位機發(fā)來的每條命令得到執(zhí)行,需要將有效命令放入到命令緩存隊列的隊尾。該命令緩存隊列采用環(huán)形結(jié)構(gòu),接收的有效命令被放到隊尾,而主程序從命令緩存隊列的頭部取出一條命令,進行后期處理。為方便從命令緩存隊列存放或存取一條命令,在實現(xiàn)命令緩存隊列時,采用了二維數(shù)組結(jié)構(gòu),即數(shù)組的每一個元素為一條固定長度的有效命令。通過選取適當?shù)年犃虚L度,可以保證在正常工作中,保證命令緩存隊列不會產(chǎn)生溢出。本設(shè)計中,命令緩存隊列的數(shù)據(jù)結(jié)構(gòu)如下:

          unsigned char s_queue[QUEUE_LEN][CMD_PACK_LEN];
          unsigned char s_front;
          unsigned char s_rear;}


          上一頁 1 2 下一頁

          關(guān)鍵詞: CAN 總線 老化測試 系統(tǒng)

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();