DesignOfCANBusIntelligentNodeBasedOnINFINEON
LiSongHuYu-lan
(ShenyangLigongUniversity,Shenyang110168,China)
(沈陽理工大學信息科學與工程學院,遼寧沈陽110168)
摘要:提出了一種基于英飛凌微控制器XC164CS的CAN總線分布式智能測控節(jié)點的設計,給出了系統(tǒng)硬件框圖、軟件流程圖、電路原理圖,所設計節(jié)點實現(xiàn)方法簡單,外擴器件少,結(jié)構(gòu)合理,可靠性高,且節(jié)點擴展方便,已用于某工業(yè)現(xiàn)場,波特率為10Kbps。
關鍵詞:CAN總線;XC164CS;英飛凌微控制器;網(wǎng)絡節(jié)點;CAN通信
中圖分類號:TP文獻標識碼:A
Abstract:ControllerAreaNetwork(CAN)isakindofserialcommunicationnetworkthatsupportsthedistributedcontrol,andhascharacteristicsofhighcapabilityandhighreliability.PutforwarddesignofCANbusintelligentdatacollectnodewhichbasedonINFINEONsingle-chipXC164CS.Giventhesystemhardwareframediagram、programdesign、circuitprincipledrawing,Thedesignwassuitableforsomeindustryscene,BandRateequation10kbps.
Keywords:CANBus;INFINEON;XC164-8F20Micro-Controller;NetworkNode;CANCommunication
在工業(yè)現(xiàn)場,如何將采集到的數(shù)據(jù)及時安全地傳送給數(shù)據(jù)監(jiān)控與處理系統(tǒng)是工業(yè)控制系統(tǒng)首要解決的一個實際問題.對于這一實際問題通常采用現(xiàn)場總線技術,控制器局域網(wǎng)(CAN)屬于總線的范疇,它是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡.CAN總線與一般的通信總線相比,它的數(shù)據(jù)通信具有突出的可靠性、實時性和靈活性.由于CAN本身的特點,其應用范圍目前已不再局限于汽車行業(yè),而擴展到了機械工業(yè)、紡織機械、農(nóng)用機械、機器人、數(shù)控機床、醫(yī)療器械、家用電器及傳感器等領域發(fā)展,CAN總線已成為工業(yè)采集領域中首選的現(xiàn)場總線之一。
1CAN總線系統(tǒng)的組成模式
1.1CAN總線特點
(1)CAN采用多主方式工作,不分主從。
(2)CAN采用非破壞總線仲裁技術,大大節(jié)省了總線沖突仲裁時間。尤其是在網(wǎng)絡負載很重的情況下,也不會出現(xiàn)網(wǎng)絡癱瘓情況。
(3)在速率5kpbs以下時,CAN的直接通信距離最遠可達10km;在通信距離為40m以下時,CAN的通信速率最高可達1mbps;CAN上的節(jié)點數(shù)主要取決于總線驅(qū)動電路,目前可達110個。
(4)CAN總線數(shù)據(jù)段長度最多為8個字節(jié),因此可保證很短的傳輸時間,而且實時性強,受干擾的概率低,CAN的每幀信息都有CRC校驗,具有極好的檢錯效果,能夠滿足工業(yè)領域中對一個工作點的控制命令或數(shù)據(jù)采集的要求。
(5)CAN總線節(jié)點在嚴重錯誤的情況下,可自動切斷與總線的聯(lián)系,以使總線上的其他操作不受影響。
1.2CAN總線系統(tǒng)的組成模式
CAN總線技術的控制系統(tǒng)一般采用總線式網(wǎng)絡拓撲結(jié)構(gòu),其組成模式如圖1所示.主要由監(jiān)控站和若干智能測控節(jié)點構(gòu)成,上位監(jiān)控站選用PC機,它是整個系統(tǒng)的中心,可實現(xiàn)強大的監(jiān)控、管理功能。CAN通信卡通過串口與PC機通訊,承擔上位機和CAN節(jié)點之間的數(shù)據(jù)轉(zhuǎn)發(fā)任務。
圖1CAN總線系統(tǒng)結(jié)構(gòu)框圖
2基于英飛凌的CAN總線智能測控節(jié)點硬件設計
2.1英飛凌XC164CS的特點
性價比高是CAN總線智能測控節(jié)點設計力求的設計目標,所以在選用作為核心器件的控制器時選用片內(nèi)資源豐富的英飛凌XC164CS,XC164CS具有令人印象深刻的DSP性能和先進的中斷處理,加上一種集成高效的外設集成高性能在片F(xiàn)LASH或ROM存儲器,這些使得XC164CS成為工業(yè)和汽車應用設備的理想選擇。其靈活的智能PWM單元簡化了AC,DC或阻抗馬達的控制。高速、高分辨ADC處理復雜的模擬環(huán)境的快速和精確轉(zhuǎn)換。網(wǎng)絡化的方案完全可以采用高效的通信接口來解決,如具有自動網(wǎng)關功能的高速TwinCAN模塊。
2.2基于英飛凌的CAN總線智能測控節(jié)點的硬件結(jié)構(gòu)
CAN總線測控節(jié)點主要任務為數(shù)據(jù)采集、處理與CAN通信,其硬件結(jié)構(gòu)框圖如2所示.設計中,上位機通過CAN總線適配卡可與多個CAN總線智能數(shù)據(jù)測控節(jié)點進行信息交換.CAN總線智能測控節(jié)點把采集到的現(xiàn)場信號,經(jīng)過預處理后,進入MCU處理,由CAN收發(fā)器經(jīng)由總線與上位機進行CAN協(xié)議的數(shù)據(jù)交換,上位機對檢測到的現(xiàn)場信號進一步分析、處理或存儲,完成系統(tǒng)的在線檢測、計算機分析,處理完畢后,將數(shù)字量結(jié)果重新轉(zhuǎn)換為相應的模擬量,用于驅(qū)動顯示儀表、記錄設備和反饋控制系統(tǒng),去執(zhí)行相應的操作。
圖2CAN總線測控節(jié)點的硬件結(jié)構(gòu)框圖
3基于英飛凌的CAN總線智能測控節(jié)點軟件設計
軟件所實現(xiàn)的功能主要包括:采集數(shù)據(jù)的誤差校正、標度換算、系統(tǒng)自身的調(diào)零、校準,系統(tǒng)的故障檢測、CAN協(xié)議轉(zhuǎn)換、CAN通訊等,軟件流程如圖3所示。
①上電初始化:包括A/D初始化,CAN控制器初始化,定時器初始化,中斷優(yōu)先級設置等。
②標度換算:每一個數(shù)字量都和不同的物理量相對應,標度換算就是把數(shù)字量變成物理量的過程,經(jīng)過換算的物理量是符合上、下位機通信協(xié)議的數(shù)字量。
③數(shù)字調(diào)零;數(shù)字調(diào)零手段主要是為了消除模擬開關、放大電路以及A/D轉(zhuǎn)換器本身的偏差,削弱各種隨時間和溫度變化的漂移的影響。
④非線性補償:輸入的數(shù)字量與對應的物理量呈非線性關系,對輸入的數(shù)字量進行線性化處理,本設計采用的線性差值法。
⑤數(shù)字濾波:數(shù)字濾波是通過簡單的計算或者判斷程序,對采樣信號進行平滑處理,分離出有用的信號,消除或減少各種干擾和噪聲。本案將使用程序判斷濾波法、中值濾波法、算術平均濾波法、加權平均濾波法等。
⑥溫度補償:測試點的環(huán)境溫度將直接影響測量,需要對測量結(jié)果進行溫度補償,首先要測出測量點的溫度,該溫度信號作為多路采樣開關采集信號的一路送入單片機。測溫元件的輸出經(jīng)放大及A/D轉(zhuǎn)換送到單片機,單片機通過并行接口接收溫度數(shù)據(jù),并暫存溫度數(shù)據(jù)。信號采樣結(jié)束,單片機運行溫度誤差補償程序,對輸入信號進行溫度補償
⑦系統(tǒng)自檢:上電初始化后即進行系統(tǒng)自檢,包括CPU自檢,外部存儲單元的自檢等。
⑧故障診斷:故障診斷將采用以下四種方法進行力所能及的故障診斷,有以下四種方法:a.值域判定法b.時域判定法c.功能判定法d.邏輯判定法。
圖3軟件流程圖
4設計實例
4.1設計實例
在本設計中,測控節(jié)點可以采集14路模擬量、8路開關量、2路SPI、2路SCI、5路脈沖量。14路模擬量先經(jīng)信號調(diào)理,轉(zhuǎn)換為0~2.5V的直流電壓,再由1∶1的隔離放大器送XC164的10位ADC.10位ADC的工作模式選擇與數(shù)據(jù)轉(zhuǎn)換操作由XC164的內(nèi)部寄存器ADDC和ADDR的編程控制完成。8路開關量由XC164的8個GPIO進行輸入。5路脈沖量通過鑒相器處理后由CPU計數(shù)。SPI和SCI信號直接連接到MCU的SPI和SCI控制器。硬件電路只需要在XC164CS的TD1(CAN1的發(fā)送器輸出腳)與RD1(CAN1的接收器輸入腳)外接CAN總線驅(qū)動器即可.圖4中CAN總線驅(qū)動器使用的是PCA82C250T,它是連接CAN控制器和物理總線之間的接口。為了進一步提高CAN總線節(jié)點的抗干擾能力,XC164CS的TD1和RD1分別通過高速光耦6N137與PCA82C250T的TXD和RXD相連.光耦部分電路所采用的兩個電源必須完全隔離。為了提高網(wǎng)絡節(jié)點的拓撲能力,CAN總線兩端需要接有120Ω的抑制反射的終端電阻。為了減小現(xiàn)場對節(jié)點的干擾,采用屏蔽雙絞線。本設計中,XC164既作為主控制器,還作為CAN網(wǎng)絡的節(jié)點控制器,與網(wǎng)絡中的其他節(jié)點實現(xiàn)數(shù)據(jù)傳輸,設計原理圖如圖4所示。
A/D轉(zhuǎn)換部分采用的自動掃描連續(xù)轉(zhuǎn)換模式,對選中的通道組進行重復轉(zhuǎn)換。每次轉(zhuǎn)換結(jié)束后進入中斷進行數(shù)據(jù)讀取。
CAN通信開啟接收和中斷,當接收到主機命令的時候,進入接收中斷,發(fā)送被選擇的報文對象。當發(fā)送錯誤時進入發(fā)送中斷,進行重發(fā)相關的報文對象。
通用定時器模塊啟用鑒相器模式。通過JTAG接口在線程序下載、調(diào)試。
圖4設計原理圖
4.2試驗結(jié)果
在實際應用中,設有8個CAN總線智能測控節(jié)點,波特率為10K,通信距離約為2km,每個CAN總線智能測控節(jié)點根據(jù)制定的協(xié)議以大約200ms的時間間隔發(fā)送采集的數(shù)據(jù),采集了溫度、濕度、位置等多個信號,通過軟硬件數(shù)據(jù)處理方法,大大提高了采集數(shù)據(jù)的精度,總線的負載遠低于可允許的范圍。根據(jù)對上傳上位機的數(shù)據(jù)驗證,數(shù)據(jù)可靠及時。可實現(xiàn)主機的遠程控制,對節(jié)點系統(tǒng)進行實時檢測及故障診斷,進一步提高了在關鍵環(huán)境中使用的可靠性。
5結(jié)論
基于英飛凌的CAN總線智能測控節(jié)點外圍電路少,成本低,接口豐富,可實現(xiàn)輸入多種信號,一般無需加額外擴展接口即可滿足工業(yè)需求。可實現(xiàn)遠距離數(shù)據(jù)通信,抗干擾能力強,在復雜工業(yè)環(huán)境下,仍然可以保持正常工作。網(wǎng)絡節(jié)點數(shù)目最多可達到128,可以擴大上位機的監(jiān)控范圍。也可實現(xiàn)對電機的實時控制,做到檢測和控制一體?;谟w凌的CAN總線智能測控節(jié)點的體積小,可在很多對體積有特殊要求的環(huán)境中應用。
參考文獻:
[1]鄔寬明.CAN總線原理和應用系統(tǒng)設計.北京:北京航空航天大學出版社.1996
[2]饒云濤等.現(xiàn)場總線CAN原理與應用技術.北京:北京航空航天大學出版社.2003.6
[3]胡偉,季曉衡.單片機C程序設計及應用實例.北京:人民郵電出版社.2003.7
[4]楊小平,牛秦洲,周德儉.智能測量系統(tǒng)中的數(shù)據(jù)處理新方法[J].桂林工學院學報,2003,23(4):394-396.
[5]陸利忠.測控系統(tǒng)中采樣數(shù)據(jù)的預處理[J].測控技術,2000,19(8):15-16.
遼寧省沈陽市渾南新區(qū)沈陽理工大學
電子郵箱:yimianduwu@163.com電話:13840480140
郵編:110168