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