基于ARM的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:針對(duì)傳統(tǒng)數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)復(fù)雜,體積大,成本高的問題,設(shè)計(jì)了一種基于ARM的新型、低成本、高精度數(shù)據(jù)采集系統(tǒng),并提出了該系統(tǒng)的設(shè)計(jì)方案。詳細(xì)論述了數(shù)據(jù)采集系統(tǒng)的硬件實(shí)現(xiàn)方案、抗干擾措施及控制時(shí)序,重點(diǎn)分析了高精度并行A/D的工作時(shí)序。實(shí)際應(yīng)用結(jié)果表明,該數(shù)據(jù)采集系統(tǒng)精度高,體積小,成本低,工作性能強(qiáng),具有較高的實(shí)用價(jià)值和借鑒意義。
關(guān)鍵詞:ARM;高精度;數(shù)據(jù)采集系統(tǒng);抗干擾
目前,高精度數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)普遍采用DSP+FPGA的構(gòu)架,系統(tǒng)結(jié)構(gòu)復(fù)雜,體積大,成本高,不適用于某些領(lǐng)域的小型化、低成本的特殊要求。綜上,設(shè)計(jì)了一種結(jié)構(gòu)簡(jiǎn)單,體積小,成本低,采集精度高的數(shù)據(jù)采集系統(tǒng),具有非常重要的現(xiàn)實(shí)意義及應(yīng)用前景,能夠?yàn)閲?guó)內(nèi)數(shù)據(jù)采集系統(tǒng)開發(fā)提供一定的經(jīng)驗(yàn)和參考。
1 數(shù)據(jù)采集處理系統(tǒng)的工作原理和結(jié)構(gòu)
嵌入式微處理器ARM具有外圍配置電路簡(jiǎn)單、體積小、成本低、性能高、可靠性高和外圍硬件資源豐富等優(yōu)點(diǎn),能夠保證數(shù)據(jù)采集的實(shí)時(shí)性,而且還有較強(qiáng)的數(shù)據(jù)處理功能,在諸多領(lǐng)域的應(yīng)用日趨廣泛。本方案中模/數(shù)轉(zhuǎn)換芯片選用16位ADS8364,系統(tǒng)主芯片選用意法半導(dǎo)體公司推出的基于ARM Cortex-M3系列32位芯片STM32F103ZET6,主頻為72 MHz,工作電壓為2.0~3.6V,I/O電壓為3.3V。112個(gè)通用I/O端口,3個(gè)SPI通信接口,2個(gè)I2C通信接口,5個(gè)USART通信接口,1個(gè)USB接口,1個(gè)CAN通信接口,4個(gè)通用16位定時(shí)器和2個(gè)PWM定時(shí)器,內(nèi)置512 KB FLASH ROM和64 KB RAM。
數(shù)據(jù)采集系統(tǒng)的工作原理:當(dāng)ARM芯片發(fā)出采集指令的時(shí),將模擬信號(hào)采集到主芯片中,并進(jìn)行后續(xù)解算,同時(shí)將采集到的信息存貯到外置超大SRAM中,以備后期分析處理。系統(tǒng)結(jié)構(gòu)圖如圖1所示。
2 硬件電路設(shè)計(jì)
2.1 時(shí)鐘電路設(shè)計(jì)
主芯片有2個(gè)外部時(shí)鐘源,電路如圖2所示,32.758 kHz的晶體是一個(gè)低速外部晶體,它能為實(shí)時(shí)時(shí)鐘部件(RTC)提供一個(gè)低速但高度精確的時(shí)鐘源。8 MHz外部晶振作為系統(tǒng)的時(shí)鐘源,經(jīng)過倍頻后變成72 MHz為ARM提供時(shí)鐘。
2.2 復(fù)位電路
系統(tǒng)復(fù)位有多種方式:NRST引腳上出現(xiàn)低電平(外部復(fù)位);窗口看門狗計(jì)數(shù)終止條件(WWDG復(fù)位);獨(dú)立看門狗計(jì)數(shù)中止條件(IWDG復(fù)位);軟件重圍(SW復(fù)位);低電源管理復(fù)位。本方案中采用第一種復(fù)位方式,只需在外部加復(fù)位開關(guān),方式簡(jiǎn)單,便于操作。
2.3 JETG接口
仿真接口為JTAG形式,實(shí)現(xiàn)對(duì)STM32F103ZET6的仿真與調(diào)試。電路圖如圖3所示。
2.4 ADC單元
ADC單元主要功能是完成對(duì)A/D芯片時(shí)序控制及數(shù)據(jù)讀取,并將數(shù)據(jù)緩存在寄存器中,供處理功能單元進(jìn)行運(yùn)算處理。因?yàn)檩斎腚妷悍秶?~+5 V,且要求分辨率不大于2 mV,所以要求ADC的有效位數(shù)至少為12位,考慮到ADC的轉(zhuǎn)換誤差,將ADC的輸出數(shù)據(jù)位數(shù)定為16位。由于ADC單元用于采集4路接近直流的信號(hào),所以對(duì)ADC的采樣率要求較低,這里將采樣率定為50kHz。
ADC單元主芯片選用TI公司的ADS8364,該芯片有16位數(shù)據(jù)線,6路輸入通道,最高轉(zhuǎn)換速率250 kHz,輸入信號(hào)0~5 V,外接電壓基準(zhǔn)源2.5V,具有3.3 V兼容的數(shù)字接口,其引腳可以直接和ARM芯片STM32F103ZET6的I/O接口相接。ADC芯片掛載在STM32F103ZET6的I/O接口上,通過I/O接口進(jìn)行時(shí)序控制和數(shù)據(jù)讀取。電路圖如圖4所示。
2.5 RS 422串口通信單元
串口芯片采用MAX3160完成電氣性能轉(zhuǎn)換,連接在ARM芯片的USART通信接口上。該單元為RS 422通信接口,串行接口速率定為115.2 Kb/s,完成參數(shù)的串行加載功能。
2.6 電源電路
電源部分采用1片PTH05000W模塊將輸入的數(shù)字5 V電源轉(zhuǎn)換為3.3 V,見圖5。輸入的模擬5 V電源用于給ADC電路供電。用一片AD780將模擬5 V轉(zhuǎn)換為2.5 V,用于給ADC電路提供精密電壓基準(zhǔn)源,見圖6。
3 抗干擾設(shè)計(jì)
A/D轉(zhuǎn)換過程中,會(huì)遇到被采集信號(hào)小而干擾噪聲強(qiáng)的情況,干擾有來自器件溫度變化、接觸電阻、引線電感、接地和電源等。因此,在整個(gè)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)中,要特別注意抗干擾的設(shè)計(jì),根據(jù)具體的采集系統(tǒng),本方案中主要考慮了以下幾方面:
(1)合理設(shè)計(jì)印制板:根據(jù)硬件功能進(jìn)行模塊化布局,數(shù)字部分和模擬部分要分開,使用多層板,電源層和地層相互獨(dú)立,電源線和地線要相對(duì)加粗;合理走線,避免信號(hào)線與高頻線近距離平行走線。
(2)電源設(shè)計(jì)方面:在設(shè)計(jì)每個(gè)芯片的供電電路時(shí),在每個(gè)芯片的電源附近并聯(lián)去耦電容和旁路電容。
去耦電容為芯片提供局域化的直流,旁路電容可以消除高頻輻射噪聲和抑制高頻干擾。
(3)接地方面:模擬地和數(shù)字地應(yīng)嚴(yán)格分開,最后單點(diǎn)共地。共地點(diǎn)選擇在ADC芯片管腳所需電流最大的位置,這樣可以使大電流對(duì)地回流最近,以避免對(duì)模擬電路的干擾,提高系統(tǒng)的采集精度。模擬地和數(shù)字地可以通過磁珠連接,由于磁珠的高頻阻抗大,而直流電阻為零,能夠?yàn)V除高頻電流減少地線上的高頻噪聲。
(4)防止空間電磁輻射對(duì)系統(tǒng)的干擾:由金屬材料做成屏蔽罩,將器件屏蔽起來,并將屏蔽罩妥善接地。
4 數(shù)據(jù)采集的時(shí)序控制
對(duì)該A/D芯片CLK的要求為小于5 MHz即可,本方案結(jié)合ARM的處理能力,選用1 MHz的時(shí)鐘,A/D芯片每20個(gè)時(shí)鐘周期完成一次轉(zhuǎn)換,采集率為50kHz。時(shí)鐘信號(hào)CLK可以一直輸出。CLK為上升沿觸發(fā)。芯片上電后,首先進(jìn)行復(fù)位操作,將置為低電平并保持寬度50ns以上,之后一直將RST置為高電平。,平時(shí)一直為高電平,當(dāng)需要采集的時(shí)候,將同時(shí)置為低電平,并將保持時(shí)間為50 ns到半個(gè)時(shí)鐘周期的寬度,之后信號(hào)恢復(fù)到高電平。此時(shí)完成輸入端信號(hào)的鎖存。經(jīng)過20個(gè)時(shí)鐘周期后,4個(gè)通道都已完成模/數(shù)轉(zhuǎn)換,并把轉(zhuǎn)換結(jié)果放在輸出端對(duì)應(yīng)的寄存器內(nèi)。下一步要做的就是把寄存器內(nèi)的數(shù)依次取出,讀進(jìn)單片機(jī)里。將置為低電平,將置為低電平,并將AO,A1,A2同時(shí)置為0,0,0,之后經(jīng)過40 ns后,通道1的數(shù)據(jù)便放到了16位數(shù)據(jù)總線上。單片機(jī)可以進(jìn)行讀取。的寬度可以和時(shí)鐘一樣,當(dāng)變?yōu)楦唠娖綍r(shí),單片機(jī)讀取16位數(shù)據(jù)總線上1通道的轉(zhuǎn)換結(jié)果。隨后變?yōu)榈碗娖剑0,A1,A2同時(shí)置為0、0、1,之后經(jīng)過40 ns后,通道2的數(shù)據(jù)便放到了16位數(shù)據(jù)總線上,隨后在為高電平時(shí)將數(shù)據(jù)總線上的2通道的數(shù)據(jù)讀走。然后依次時(shí)序繼續(xù)讀取通道3和通道4的數(shù)據(jù)。4個(gè)通道的時(shí)序都讀取結(jié)束后,將置為高電平,將置為高電平。工作時(shí)序圖如圖7所示。
5 結(jié)語(yǔ)
本系統(tǒng)設(shè)計(jì)以低功耗、小尺寸、低成本和高精度為目標(biāo)。介紹系統(tǒng)時(shí)鐘電路設(shè)計(jì)、ADC單元設(shè)計(jì)、電源設(shè)計(jì)、抗干擾設(shè)計(jì)及數(shù)據(jù)采集的控制時(shí)序設(shè)計(jì)。設(shè)計(jì)的難點(diǎn)在于高精度并行A/D采集模塊與ARM芯片的通信及時(shí)序控制問題。調(diào)試結(jié)果表明該方案工作性能強(qiáng),體積小,成本低,非常適用于小型化、低成本的數(shù)據(jù)采集領(lǐng)域。