0 引言
數(shù)據(jù)采集系統(tǒng)是將采集傳感器輸出的溫度、壓力、流量、位移等模擬信號(hào)轉(zhuǎn)換成計(jì)算機(jī)能識(shí)別的數(shù)字信號(hào),進(jìn)行相應(yīng)的計(jì)算存儲(chǔ)和處理;同時(shí),可將計(jì)算所得的數(shù)據(jù)進(jìn)行顯示或打印,以便實(shí)現(xiàn)對(duì)某些物理量的監(jiān)測(cè)和控制。
嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)為基礎(chǔ),軟硬件可剪裁,適用于對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)的核心是各種類(lèi)型的嵌入式處理器。目前,采用ARM技術(shù)的微處理器占據(jù)了主流,其應(yīng)用遍及工業(yè)控制、消費(fèi)類(lèi)電子產(chǎn)品、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、無(wú)線系統(tǒng)等各類(lèi)產(chǎn)品市場(chǎng)。而 ARM微處理器的Cortex系列專(zhuān)為安全要求較高的應(yīng)用而設(shè)計(jì)。其中,Cortex-M3適于高性能、低成本需求的嵌入式應(yīng)用。
1 多路數(shù)據(jù)采集系統(tǒng)總體設(shè)計(jì)
1.1 系統(tǒng)設(shè)計(jì)要求
本數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)要求實(shí)現(xiàn)150路直流電壓的實(shí)時(shí)采集和順序轉(zhuǎn)換。經(jīng)過(guò)部分采集處理后,由串行數(shù)據(jù)總線將轉(zhuǎn)換數(shù)據(jù)發(fā)送至上位機(jī)界面,經(jīng)過(guò)換算,以檢測(cè)采集的電源正常與否;同時(shí)在輸出端產(chǎn)生5路PWM方波信號(hào),以用作輸出測(cè)試與控制。
1.2 系統(tǒng)設(shè)計(jì)方案
根據(jù)上述設(shè)計(jì)要求和數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)規(guī)范,將系統(tǒng)劃分為兩個(gè)部分:最小系統(tǒng)和采集系統(tǒng)。
最小系統(tǒng)采用基于ARM Cortex-M3架構(gòu)的微控制器STM32F103RBT6為主控CPU,利用其內(nèi)置16通道ADC對(duì)輸入的多路直流電壓信號(hào)進(jìn)行實(shí)時(shí)采集和轉(zhuǎn)換,內(nèi)置外設(shè)USART將轉(zhuǎn)換結(jié)果經(jīng)過(guò)串口發(fā)送在PC端由串口調(diào)試助手顯示。
采集系統(tǒng)采用5塊采集板,每塊板實(shí)現(xiàn)30路電壓信號(hào)采集。各塊板上,采用比例分壓的方法,利用排阻進(jìn)行采集電壓的比例轉(zhuǎn)換,以達(dá)到ADC轉(zhuǎn)換的參考基準(zhǔn)電壓要求。電壓信號(hào)的輸入采用4.16線模擬開(kāi)關(guān)CD4067,通過(guò)CPIJ輸出四位控制信號(hào),依次選擇各路輸入信號(hào),進(jìn)行采集轉(zhuǎn)換。
電壓信號(hào)經(jīng)過(guò)采集板,級(jí)聯(lián)輸入到最小系統(tǒng)板中,利用CPU內(nèi)置ADCl中的10個(gè)轉(zhuǎn)換輸入通道,依次進(jìn)行轉(zhuǎn)換。設(shè)置CPU_內(nèi)部DMA模塊實(shí)現(xiàn)轉(zhuǎn)換結(jié)果的存儲(chǔ),利用串口轉(zhuǎn)發(fā)數(shù)據(jù),在上位機(jī)顯示轉(zhuǎn)換結(jié)果。
根據(jù)上述設(shè)計(jì)方案,本數(shù)據(jù)采集系統(tǒng)的系統(tǒng)組成和工作原理如圖1所示。
2 數(shù)據(jù)采集系統(tǒng)的硬件設(shè)計(jì)
根據(jù)系統(tǒng)構(gòu)成原理,硬件設(shè)計(jì)上,最小系統(tǒng)和采集系統(tǒng)兩部分通過(guò)并行接口實(shí)現(xiàn)多塊板級(jí)聯(lián),通過(guò)選擇相應(yīng)的輸入通道和轉(zhuǎn)換通道,實(shí)現(xiàn)信號(hào)采集和轉(zhuǎn)換結(jié)果的顯示。
最小系統(tǒng)中,采用STM32F103RBT6微控制器,工作頻率可達(dá)72MHz,內(nèi)置2個(gè)12位ADC,16個(gè)外部模擬信號(hào)輸入通道,可達(dá)1 u s轉(zhuǎn)換時(shí)間,轉(zhuǎn)換范圍是O~3.6V;支持7個(gè)DMA通道,可操作多種通用外設(shè),如定時(shí)器、ADC、USART等;內(nèi)置3個(gè)同步16位定時(shí)器,每個(gè)可有4個(gè)通道用于PWM波形輸出。
2.1 最小系統(tǒng)的設(shè)計(jì)
按照STM32最小系統(tǒng)的設(shè)計(jì)規(guī)范和本系統(tǒng)的功能要求,最小系統(tǒng)構(gòu)成如圖2所示:
電源模塊:CPU為3.3V供電,最小系統(tǒng)外部輸入電源為5V,經(jīng)過(guò)電壓轉(zhuǎn)換芯片LM1117-3.3獲得3.3V輸出電壓,以提供系統(tǒng)電源。電源的輸入輸出端并接濾波電容,分別濾除電源的高頻和低頻噪聲。
除此之外還有外部時(shí)鐘,復(fù)位系統(tǒng),ADC參考電壓,USART串行通信,JTAG調(diào)試接口,總線驅(qū)動(dòng)接口的設(shè)計(jì)。
STM32F103RBT6處理器具有51個(gè)多功能雙向5V兼容的I/O口,使用時(shí)可以作為通用GPIO口,也可作為復(fù)用AFIO口。復(fù)用I/O中,本系統(tǒng)外設(shè)所使用的有:定時(shí)器4通道四TIM4-CH4復(fù)用PB9口;USART1引腳USART1-TX、USART1-RX復(fù)用PA9、PA10:ADC 轉(zhuǎn)換通道CH0~CH9分別復(fù)用PA0~PA7及PB0、PB1。
對(duì)于復(fù)用功能的端口可以配置成以下模式:輸入模式(浮空、上拉或下拉)或復(fù)用功能輸出模式,此時(shí)輸入驅(qū)動(dòng)器被配置成浮空輸入模式。ADC通道端口用作ADC輸入時(shí)將對(duì)應(yīng)端口配置為模擬信號(hào)輸入模式;USART數(shù)據(jù)傳輸時(shí),TX、RX復(fù)用端口分別配置為備用功能推拉模式和
輸入浮動(dòng)模式。
2.2 電壓采集系統(tǒng)的設(shè)計(jì)
電壓采集系統(tǒng)作為本系統(tǒng)的第二部分,主要實(shí)現(xiàn)多路電壓信號(hào)順序選擇輸入,獲得ADC采集端的輸入電壓信號(hào),同時(shí),輸出最小系統(tǒng)中產(chǎn)生的PWM方波信號(hào),并能選擇不同的ADC通道,以實(shí)現(xiàn)5塊采集板與最小系統(tǒng)板級(jí)聯(lián)。本部分主要包括電壓采集模塊、數(shù)據(jù)選擇模塊、PWM輸出模塊以及輸入輸出接口等。
電壓采集模塊:電路中采用電阻比例分壓的方法,獲取輸入電壓信號(hào),以達(dá)到CPU采集轉(zhuǎn)換的基準(zhǔn)電壓的要求。在實(shí)際硬件設(shè)計(jì)中,采用比例阻值的排阻代替分離電阻以便于電路板的繪制和整體布局。
數(shù)據(jù)選擇模塊:采用16選1輸出的模擬開(kāi)關(guān)CD4067作為數(shù)據(jù)選擇器,輸出控制由CPU四個(gè)端口輸入高低電平作為二進(jìn)制組合以確定輸出的數(shù)據(jù)通道。
PWM輸出模塊:最小系統(tǒng)中選擇定時(shí)器四,軟件配置為PWM輸出,由三極管放大后獲得PWM方波。
輸入輸出接口:本系統(tǒng)數(shù)據(jù)采集和最小系統(tǒng)兩部分采用40針排線連接,各個(gè)采集板上可以同時(shí)選擇兩個(gè)不同的通道,級(jí)聯(lián)后各板將數(shù)據(jù)選擇器的輸出信號(hào)送至相應(yīng)的ADC轉(zhuǎn)換通道,同時(shí)輸出PWM方波信號(hào)。
3 系統(tǒng)調(diào)試及軟件設(shè)計(jì)
設(shè)計(jì)并加工好印刷電路板后,開(kāi)始硬件和軟件的調(diào)試。調(diào)試過(guò)程中采用逐個(gè)功能單元調(diào)試,一個(gè)功能單元調(diào)試正常后再調(diào)試下一功能模塊,確保電路板出問(wèn)題時(shí)可以很快發(fā)現(xiàn)問(wèn)題點(diǎn),再將各功能單元組合設(shè)置,逐步完成軟件設(shè)計(jì)和系統(tǒng)調(diào)試,實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)要求。
系統(tǒng)調(diào)試所使用的開(kāi)發(fā)環(huán)境為IAR EWARM,仿真工具為ST-LINKII,使用USB接口。
3.1 最小系統(tǒng)板調(diào)試
將電源模塊、復(fù)位、JTAG、外部晶振焊到電路板上,組成最小系統(tǒng),分模塊,分步驟,調(diào)試系統(tǒng)各部分。加電調(diào)試前檢測(cè)是否有電源短路,確保電路安全。
電源模塊:電路外部輸入電壓為5V,經(jīng)電壓轉(zhuǎn)換后在LMlll7-3.3V輸出端得到3.3V的輸出。加電后,首先通過(guò)萬(wàn)用表測(cè)量電壓輸出是否正確,然后通過(guò)示波器觀察輸出電平的波形是否滿足系統(tǒng)對(duì)電源精度的要求,如不滿足,可以通過(guò)加大濾波電容的方法解決。
最小系統(tǒng)供電正常后,連接仿真器,通過(guò)軟件平臺(tái)可以檢測(cè)到最小系統(tǒng)CPU,表明CPU焊接正常。調(diào)試過(guò)程中會(huì)用到外部晶振,需要檢測(cè)晶振電路,將系統(tǒng)上電,使用示波器檢測(cè)晶振管腳,觀察波形,看晶振是否起振。然后編寫(xiě)一個(gè)簡(jiǎn)單的LED測(cè)試程序來(lái)觀察CPU是否能正常工作,通過(guò)軟件設(shè)置電路中LED連接的 I/O端口(PB6)輸出模式,觀察是否有閃爍。
DMA調(diào)試:DMA用來(lái)提供在外設(shè)和存儲(chǔ)器之間或者存儲(chǔ)器之間的高速數(shù)據(jù)傳輸。DMA通道配置包括:設(shè)置外設(shè)寄存器、數(shù)據(jù)存儲(chǔ)器的基地址,確定數(shù)據(jù)量和通道優(yōu)先級(jí),以及數(shù)據(jù)傳輸?shù)姆较?、循環(huán)模式、外設(shè)和存儲(chǔ)器的增量模式等。ADC1對(duì)應(yīng)DMA通道1請(qǐng)求,ADC通道配置中使能DMA請(qǐng)求。
除此之外還有USART調(diào)試、ADC調(diào)試、PWM調(diào)試等。
3.2 系統(tǒng)整體調(diào)試
最小系統(tǒng)板各功能單元調(diào)試通過(guò)后,將最小系統(tǒng)板與數(shù)據(jù)采集板級(jí)聯(lián)進(jìn)行系統(tǒng)整體調(diào)試。
系統(tǒng)調(diào)試主要包括:外設(shè)和系統(tǒng)時(shí)鐘初始化,GPIO初始化,USART初始化和ADC、定時(shí)器初始化及ADC通道設(shè)置和串口收發(fā)配置等。系統(tǒng)調(diào)試流程如圖3所示:
按照上述流程完成程序設(shè)計(jì),編譯、鏈接、運(yùn)行,觀察輸入輸出情況。系統(tǒng)調(diào)試效果如圖4所示。
程序運(yùn)行后,系統(tǒng)板上的LED在閃爍,用示波器測(cè)量定時(shí)器輸出引腳PB9,顯示頻率為4kHz,幅值為3.3V,占空比50%的PWM的方波,經(jīng)過(guò)三極管放大,幅值為4.5V;在采集板輸入端加入直流電壓信號(hào),跳線選擇ADC通道;USART進(jìn)行數(shù)據(jù)傳輸中,先發(fā)出轉(zhuǎn)換結(jié)果低六位,后發(fā)出高六位。打開(kāi)串口調(diào)試助手,在數(shù)據(jù)接收區(qū)內(nèi)以十六進(jìn)制依次顯示經(jīng)過(guò)ADC所獲得的輸入信號(hào)的轉(zhuǎn)換結(jié)果,圖4中顯示了通道IN105、IN206輸入信號(hào)的測(cè)試效果,每次預(yù)先發(fā)送0x7E,且每15次循環(huán)輸出,表示依次獲取了模擬輸入電壓信號(hào),經(jīng)測(cè)算轉(zhuǎn)換精度在誤差允許范圍內(nèi),說(shuō)明系統(tǒng)運(yùn)行正常,初步實(shí)現(xiàn)設(shè)計(jì)目的。
4 結(jié)論
本數(shù)據(jù)采集系統(tǒng)充分利用微處理器STM32F103RBT6內(nèi)置的16路ADC通道、DMA控制器、USART通信接口、定時(shí)器等豐富的外設(shè)資源,在系統(tǒng)實(shí)現(xiàn)上簡(jiǎn)化了相關(guān)模塊的設(shè)計(jì),提高了系統(tǒng)運(yùn)行的可靠性。經(jīng)過(guò)系統(tǒng)硬件設(shè)計(jì)和軟件配置實(shí)現(xiàn)順序采集轉(zhuǎn)換輸入的多路電壓信號(hào),并利用上位機(jī)界面顯示采集的信號(hào),實(shí)現(xiàn)了輸入信號(hào)的實(shí)時(shí)監(jiān)測(cè)和管理,達(dá)到了系統(tǒng)設(shè)計(jì)的基本要求。
評(píng)論
查看更多