基于TMS320F2812的智能變送器的設計
在工業(yè)應用中常使用傳感器測量參數(shù),但傳感器信號一般較弱,并不適合遠距離傳輸,而且非線性效果不理想,達不到較高的精度需求。本文將DSP和eCAN(增強型控制器局域網(wǎng))總線技術(shù)應用于智能變送器中,以TMS320F2812為核心控制器,將數(shù)據(jù)通過CAN總線進行可靠通信,設計一種高精度智能變送器。
1 系統(tǒng)組成
基于eCAN現(xiàn)場總線技術(shù)的智能變送器由上位機和智能測控節(jié)點構(gòu)成。位于監(jiān)控現(xiàn)場的上位機采用通用計算機(PC)或工控機(ICP),在ISA擴展槽使用1塊總線通信適配卡,使上位機具有總線通信功能;而位于工業(yè)現(xiàn)場的多個智能測控節(jié)點采集現(xiàn)場數(shù)據(jù)。直接面向生產(chǎn)過程。圖l為系統(tǒng)組成框圖。
2 eCAN智能變送節(jié)點的硬件設計
智能變送器節(jié)點具有現(xiàn)場數(shù)據(jù)采集、控制以及與CAN總線通信功能。節(jié)點是以TMS320F2812型DSP為核心,利用其內(nèi)部集成的eCAN模塊進行通信。其硬件電路由4部分組成:單片機微控制器電路、數(shù)據(jù)采集電路、通信接口電路以及現(xiàn)場監(jiān)控電路。其主要應用電路如圖2所示。
TMS320F2812通過SPI串行接口與MAXl400連接,數(shù)據(jù)經(jīng)過處理后,通過光電隔離和電源隔離實現(xiàn)CPU單元的隔離保護,提高通信過程的抗干擾能力。
2.1 單片機微控器
本裝置的核心器件為TMS320F2812。TMS320F2812 DSP內(nèi)部集成有eCAN模塊,完全兼容CAN2.0B協(xié)議,是TI公司新一代32位內(nèi)部結(jié)構(gòu)的高級CAN控制器。該器件還集成有多種先進的外設,為控制領(lǐng)域的應用提供了良好的平臺。TMS320F2812型DSP提高了運算精度(32位)和系統(tǒng)的處理能力(最高達到150 MI/s)。該系列器件還集成有128 KB的Flash存儲器,4KB的引導ROM,數(shù)學運算表及2 KB的0TPROM,從而大大改善應用的靈活性。
2.2 數(shù)據(jù)采集
傳感器模塊是實現(xiàn)eCAN通信的通信終端設備之一。上位機的控制命令信息由微處理器處理后,利用傳感器進行數(shù)據(jù)采集或?qū)ζ溥M行參數(shù)設置。通常輸入傳感器的信號幅值很小,而且混雜干擾信號以及噪聲。為了方便后續(xù)處理,首先要將信號整形成具有最佳特性的波形,有時還需要將信號線性化。本裝置可以直接與現(xiàn)場各種傳感器連接,然后通過屏蔽雙絞線與上位機雙向數(shù)據(jù)傳輸。
在調(diào)試中采用半導體壓阻傳感器。為提高滿量程輸出,減少零點漂移和提高線性度,通常把感壓電阻連成惠斯登電橋,每個橋臂電阻都比較大,一般為2 kΩ。采用恒流源供電,這種方式的優(yōu)點是電橋的輸出與橋臂電阻無關(guān),同時采用雙電源供電,所以可進一步減小對傳感器的非線性和溫度傳感器輸出靈敏度的影響。
在模數(shù)轉(zhuǎn)換方面,不采用TMS320F2812內(nèi)部A/D轉(zhuǎn)換器,需要一個增益可調(diào)的儀表放大器和一個分辨率至少在14位A/D轉(zhuǎn)換器實現(xiàn)對傳感器信號的放大和模數(shù)轉(zhuǎn)換,這樣才能達到智能變送器的高精度、自動調(diào)節(jié)量程、大量程的設計要求。對于任何智能變送器,還需要對各種傳感器進行采樣,從而對各種傳感器對現(xiàn)場數(shù)據(jù)測量值進行補償,提高全范圍的測量精度。這樣,還需要一個多路轉(zhuǎn)換器實現(xiàn)通道間的切換。如果選用分立元件,必然會引入相當大的功耗。這里用MAXl400器件。該器件為低功耗、多通道、帶SPI同步串行口的∑/△、分辨率達18位的A/D轉(zhuǎn)換器。
2.3 通信接口
TMS320F2812內(nèi)部集成有eCAN,可以方便的接入到CAN總線系統(tǒng)中。因此,在設計中不必外加CAN控制器實現(xiàn)CAN總線底層協(xié)議,外部只需連接CAN總線驅(qū)動器即可實現(xiàn)CAN接口。
這里選用SN65HVD230收發(fā)器,可提高系統(tǒng)的瞬間抗干擾能力,增大通信距離,保護總線,降低射頻干擾,實現(xiàn)熱防護等。6N137系列器件是高速光耦,實現(xiàn)TMS320F2812和物理總線間的光電隔離,降低由于不同節(jié)點的高共模電壓引起的串擾,甚至對器件的損壞,進而提高系統(tǒng)的可靠性,其通信速率可高達10 Mbit/s,完全能滿足CAN總線通信需要。
因為DSP是+3.3 V供電,而SN65HVD230內(nèi)部的比較器需要5 V供電,所以在接收端連接有R2和R3實現(xiàn)電平轉(zhuǎn)換。
2.4 現(xiàn)場監(jiān)控電路
該電路主要顯示節(jié)點的工作狀態(tài)和被控對象的測量值,并根據(jù)設置對被控對象進行控制,該電路是由液晶顯示器、輸出驅(qū)動器件等組成。
3 系統(tǒng)軟件設計
系統(tǒng)軟件設計是整套裝置的重要組成部分。本裝置的軟件設計是在CCS集成開發(fā)環(huán)境中使用C語言開發(fā)的。CCS是TI公司提高的功能強大的集成開發(fā)環(huán)境,可提供環(huán)境配置、源文件編輯、程序調(diào)試、跟蹤和分析等工具,在軟件環(huán)境下完成編輯、編譯鏈接、調(diào)試和數(shù)據(jù)分析等工作。
3.1 主程序
智能變送器的main函數(shù)軟件代碼如下:
3.2 A/D轉(zhuǎn)換模塊軟件設計
在對MAXl400進行操作時,首先應對其初始化。若不初始化,而直接讀取A/D轉(zhuǎn)換的數(shù)據(jù),MAXl400將按其內(nèi)部各寄存器上電復位時的缺省值進行轉(zhuǎn)換。InitMAXl400()的程序流程如圖3所示。
分別用軟件控制MAXl400的DRDY,CS,SCLK,DIN和DOUT5個引腳的狀態(tài),從而實現(xiàn)對它的操作,MAXl400的讀寫按照嚴格的時序進行。
主程序中SPIRXINTA_ISR、SPIRXINTA_ISR分別為SPI輸入、輸出子程序。
Measure()子程序是TMS320F2812對A/D轉(zhuǎn)換器采集后的數(shù)據(jù)進行處理的過程。當SPISTS.SPINTFLAG=1時,CPU將SPIRXBUF中的值存儲到Sci_VarRx[i]數(shù)組中,MAXl400是18位,而TMS320F2812為16位處理器。所以每一個采樣值要占2個存儲空間。測量結(jié)果濾波采用中位值平均濾波法,即每個測量值采樣10次,去除最大值和最小值,其余8個值取算術(shù)平均值。
3.3 eCAN通信模塊軟件設計
在使用eCAN模塊之前首先必須對其內(nèi)部寄存器進行初始化設置。InitECan()包括:1)為正確配置2個引腳CANTX和CANRX,因為這兩個I/O口均為復用口。2)初始化位定時器,位定時器CANBTC包括CAN控制器的通訊波特率預分頻器BRP、同步跳轉(zhuǎn)寬度SJW、采樣次數(shù)SAM和TSEGl、TSEG2。3)初始化郵箱,郵箱初始化主要設置郵箱的標識符、控制域以及對相應的郵箱賦初值。
4 結(jié)束語
以TMS320F2812和MAXl400為核心、基于eCAN技術(shù)的智能變送器,集轉(zhuǎn)換、計算、通信等功能于一體,具有高精度、體積小、功耗低的特點。將數(shù)據(jù)經(jīng)eCAN總線傳輸至上位機,提高了工業(yè)儀器的可靠性及靈活性,為工業(yè)現(xiàn)場的集中控制提供了較好的硬件平臺。
評論