基于C8051F350的多路高精度數(shù)據(jù)采集系統(tǒng)及應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:為針對(duì)一般的數(shù)據(jù)采集系統(tǒng)精度較低、價(jià)格較高的問(wèn)題,設(shè)計(jì)了一種低成本、高精度的多路數(shù)據(jù)采集系統(tǒng)系統(tǒng)由上、下位機(jī)兩部分組成,上、下位機(jī)通過(guò)RS-485總線進(jìn)行通信。下位機(jī)選用C8051F350作為主控制器,A/D轉(zhuǎn)換采用C8051F350內(nèi)部24位∑-△型ADC,并設(shè)計(jì)了RS-485總線接口,便于接入RS-485總線網(wǎng)絡(luò)、上位機(jī)軟件使用LabVIEW編寫(xiě),具有較好的人機(jī)交互界面實(shí)際使用表明,該系統(tǒng)能夠滿足高精度數(shù)據(jù)采集的要求。
數(shù)據(jù)采集是將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)并進(jìn)行存儲(chǔ)、數(shù)據(jù)處理及顯示的過(guò)程,相應(yīng)的系統(tǒng)稱(chēng)為數(shù)據(jù)采集系統(tǒng)。其主要任務(wù)是將傳感器輸出的信號(hào)經(jīng)過(guò)調(diào)理后送往A/D模塊完成轉(zhuǎn)換,然后輸入計(jì)算機(jī)進(jìn)行數(shù)據(jù)處理及顯示或傳輸。在工業(yè)領(lǐng)域中,下位機(jī)和上位機(jī)結(jié)合組成的數(shù)據(jù)采集與控制系統(tǒng)日漸成為主流模式。下位機(jī)通過(guò)單片機(jī)和A/D轉(zhuǎn)換器完成傳感器輸出信號(hào)的數(shù)據(jù)采集和簡(jiǎn)單數(shù)據(jù)處理,然后利用通訊總線將數(shù)據(jù)發(fā)送到計(jì)算機(jī)進(jìn)行數(shù)據(jù)分析處理,從而實(shí)現(xiàn)上、下位機(jī)的優(yōu)勢(shì)互補(bǔ)。
為了滿足低成本、高精度的要求,文中提出了一種基于C8051F350的高精度多路數(shù)據(jù)采集系統(tǒng),充分利用C8051F350的片上24位具有低噪聲和高線性度的∑-△型ADC,減少硬件電路的設(shè)計(jì),提高了系統(tǒng)的可靠性和穩(wěn)定性,并設(shè)計(jì)了RS-485通訊接口,可應(yīng)用于RS-485網(wǎng)絡(luò)及較遠(yuǎn)距離的多路數(shù)據(jù)采集與傳輸。
1 概述
多路高精度數(shù)據(jù)采集系統(tǒng)是基于C8051F350片上24位∑-△型ADC和RS-485總線的弱電信號(hào)采集系統(tǒng),可應(yīng)用于傳感器輸出信號(hào)的采集、處理與傳輸,采用上、下位機(jī)的方式構(gòu)建數(shù)據(jù)采集系統(tǒng),上、下位機(jī)通過(guò)RS-485總線按照制定的通訊協(xié)議進(jìn)行通信。在上位機(jī)上可以直接發(fā)出控制命令,顯示和保存各種信號(hào)數(shù)值,對(duì)數(shù)據(jù)進(jìn)行分析處理。下位機(jī)接收上位機(jī)的控制命令,完成數(shù)據(jù)采集并將數(shù)據(jù)傳輸至上位機(jī)。
數(shù)據(jù)采集系統(tǒng)總體框圖如圖1所示。
2 數(shù)據(jù)采集系統(tǒng)硬件設(shè)計(jì)
數(shù)據(jù)采集系統(tǒng)硬件由信號(hào)放大電路、A/D轉(zhuǎn)換及主控制器、電壓基準(zhǔn)電路、RS-485通訊接口和電源電路組成。信號(hào)放大模塊對(duì)輸入信號(hào)進(jìn)行放大,使信號(hào)處于參考電壓范圍內(nèi);主控制器片內(nèi)的ADC實(shí)現(xiàn)模擬信號(hào)的A/D轉(zhuǎn)換;電壓基準(zhǔn)為A/D轉(zhuǎn)換提供精準(zhǔn)的參考電壓;主控制器負(fù)責(zé)整個(gè)系統(tǒng)的正常運(yùn)行;RS-485通訊接口與上位機(jī)進(jìn)行通訊;電源模塊為各個(gè)模塊提供工作電壓。
2.1 信號(hào)放大電路
由于傳感器輸出的模擬信號(hào)一般都比較微弱,需要將信號(hào)放大至A/D轉(zhuǎn)換范圍內(nèi),以進(jìn)行傳感器數(shù)據(jù)的采集。
本文設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)采用放大器AD623實(shí)現(xiàn)模擬信號(hào)的放大,通道0的信號(hào)放大電路如圖2所示。
2.2 A/D轉(zhuǎn)換及主控制器
8051F350是Silicon Laboratories公司推出的混合信號(hào)系統(tǒng)級(jí)芯片(SOC),具有CIP-51微控制器內(nèi)核,與MCS-51指令集完全兼容;機(jī)器周期由標(biāo)準(zhǔn)的12個(gè)系統(tǒng)時(shí)鐘降為1個(gè)系統(tǒng)時(shí)鐘周期,處理速度大大提高,峰值速度可達(dá)50 MIPS。
C8051F350單片機(jī)片上資源有24位∑-△型ADC、電壓基準(zhǔn)、UART0、SPI、SMBus等。本系統(tǒng)利用C8051F350片上24位∑-△型ADC來(lái)實(shí)現(xiàn)模擬信號(hào)的A/D轉(zhuǎn)換,使用外部高精度電壓基準(zhǔn)源作為參考電壓,A/D轉(zhuǎn)換及主控制器電路如圖3所示。為了獲得較高的轉(zhuǎn)換精度和穩(wěn)定性,PGA =1,并使用SINC3濾波器,ADC0調(diào)制時(shí)鐘MDCLK為2.21184 MHz,抽取比為1728,轉(zhuǎn)換速率為10 Hz。
2.3 電壓基準(zhǔn)電路
電壓基準(zhǔn)為A/D轉(zhuǎn)換器提供參考電壓,基準(zhǔn)電壓的精度直接影響A/D轉(zhuǎn)換的精度。為保證數(shù)據(jù)采集的精度,本系統(tǒng)選用MAX6325作為電壓基準(zhǔn)源。
MAX6325是低噪聲、高精度電壓基準(zhǔn),溫度系數(shù)1.0 ppm/℃,初始精度±0.02%。電壓基準(zhǔn)電路如圖4所示。
2.4 通訊接口
RS-485總線采用平衡驅(qū)動(dòng)器和差分接收器的方式進(jìn)行數(shù)據(jù)傳輸,具有抗共模干擾能力強(qiáng),抗噪聲干擾性好的特點(diǎn)。本系統(tǒng)采用RS-485總線進(jìn)行上、下位機(jī)的通信和數(shù)據(jù)傳輸,下位機(jī)通過(guò)通訊接口接受命令,完成相應(yīng)的數(shù)據(jù)采集,通過(guò)通訊接口將采集數(shù)據(jù)傳輸至上位機(jī)。RS-485通訊接口模塊如圖5所示。
2.5 電源電路
數(shù)據(jù)采集裝置采用可充電鋰電池或直流電源供電,電源電路給裝置內(nèi)各個(gè)模塊的元件器提供工作電壓。本系統(tǒng)所選用低工作電壓的芯片,整個(gè)裝置需要+5 V和+3.3 V電壓,降低了數(shù)據(jù)采集裝置的功耗,提高了可靠性和抗干擾能力,電源芯片采用LM1117DTX-5.0和LM1117 DTX-3.3。
3 數(shù)據(jù)采集系統(tǒng)軟件設(shè)計(jì)
3.1 單片機(jī)程序設(shè)計(jì)
采用Silicon Laboratories公司的集成開(kāi)發(fā)環(huán)境為開(kāi)發(fā)平臺(tái),使用圖形化配置軟件對(duì)各個(gè)模塊進(jìn)行配置。程序流程圖如圖6所示,程序包括主程序、數(shù)據(jù)采集及處理、數(shù)據(jù)傳輸、串口中斷等部分。串口中斷中對(duì)接收到的數(shù)據(jù)進(jìn)行分析,如果是有效命令,則置位數(shù)據(jù)采集標(biāo)志位并傳遞至主程序中,在主程序中完成數(shù)據(jù)采集與處理以及數(shù)據(jù)傳輸,完成之后清除數(shù)據(jù)采集標(biāo)志位。
3.2 上位機(jī)軟件設(shè)計(jì)
LabVIEW是由美國(guó)國(guó)家儀器公司(National Instruments)推出的、主要面向計(jì)算機(jī)測(cè)控領(lǐng)域的虛擬儀器軟件開(kāi)發(fā)平臺(tái),是一種基于圖形開(kāi)發(fā)、調(diào)試和運(yùn)行的集成化環(huán)境。
LabVIEW的函數(shù)庫(kù)中提供了串口通訊函數(shù),可用來(lái)設(shè)計(jì)下位機(jī)與PC機(jī)的串口通訊。定義通訊協(xié)議如下:密碼字+接收方地址+發(fā)送方地址+命令字+數(shù)據(jù)幀長(zhǎng)+數(shù)據(jù)域+結(jié)束字,波特率:9 600,數(shù)據(jù)位:8,停止位:1,無(wú)奇偶校驗(yàn)。上位機(jī)與下位機(jī)串口通訊的程序框圖如圖7所示,首先上位機(jī)向下位機(jī)發(fā)送數(shù)據(jù)采集命令,然后等待下位機(jī)采集并上傳數(shù)據(jù),接著上位機(jī)從串口中讀取下位機(jī)上傳的數(shù)據(jù),并返回主程序繼續(xù)執(zhí)行。
4 在彈箭質(zhì)量質(zhì)心測(cè)量中的應(yīng)用
彈箭質(zhì)量質(zhì)心是一項(xiàng)重要的靜態(tài)參數(shù),在彈箭的研制過(guò)程中需要實(shí)現(xiàn)準(zhǔn)確的測(cè)量。一般采用稱(chēng)重傳感器測(cè)量出各個(gè)支點(diǎn)所承受的力,通過(guò)計(jì)算得出質(zhì)量和質(zhì)心。表1為三組不同質(zhì)量樣柱的實(shí)測(cè)數(shù)據(jù),由表1可知,系統(tǒng)測(cè)量精度優(yōu)于0.1‰,滿足彈箭質(zhì)量質(zhì)心高精度測(cè)量要求。
5 結(jié)論
該多路高精度數(shù)據(jù)采集系統(tǒng),充分利用C8051F350片內(nèi)24位∑-△型ADC,降低了成本,減少了芯片數(shù)量,使得電路板小巧、輕便,可應(yīng)用于成本低、體積小的場(chǎng)合。經(jīng)過(guò)調(diào)試與試驗(yàn),其采集精度和數(shù)據(jù)傳輸均達(dá)到設(shè)計(jì)要求,可滿足多路高精度數(shù)據(jù)采集的需要,并成功應(yīng)用于彈箭質(zhì)量質(zhì)心測(cè)試系統(tǒng)。