一、引言
隨著無線通信技術(shù)的發(fā)展,GPRS無線網(wǎng)絡(luò)因其覆蓋范圍廣、數(shù)據(jù)傳送速率高、網(wǎng)絡(luò)穩(wěn)定性好、價(jià)格合理和與Internet無縫連接等優(yōu)點(diǎn),成為數(shù)據(jù)采集和監(jiān)控系統(tǒng)傳輸通道的首選技術(shù)。同時(shí),U盤海量數(shù)據(jù)存儲(chǔ)與便攜技術(shù),是目前數(shù)據(jù)采集研究領(lǐng)域一個(gè)比較關(guān)注的熱點(diǎn),這些技術(shù)的實(shí)現(xiàn)和應(yīng)用,可以很好的解決傳統(tǒng)數(shù)據(jù)采集中精度低、數(shù)據(jù)不易保存等一些問題。如何能將GPRS無線傳輸和U盤存儲(chǔ)相結(jié)合應(yīng)用于便攜裝置的設(shè)計(jì)成為未來數(shù)據(jù)采集系統(tǒng)發(fā)展的一個(gè)重要方向。
本文在研究和分析無線數(shù)據(jù)傳輸及存儲(chǔ)原理和實(shí)現(xiàn)方法基礎(chǔ)上,設(shè)計(jì)了一種基于單片機(jī)的嵌入式無線數(shù)據(jù)采集控制系統(tǒng)。該系統(tǒng)具有了數(shù)據(jù)準(zhǔn)確快速采集、存儲(chǔ)信息量大、GPRS數(shù)據(jù)無線傳輸?shù)裙δ?。系統(tǒng)采用模塊化設(shè)計(jì),主要由U盤讀寫模塊、數(shù)據(jù)采集模塊、GPRS無線數(shù)據(jù)通訊傳輸模塊、LCD液晶顯示等模塊組成。同時(shí)本設(shè)計(jì)完成了上位機(jī)和下位機(jī)的軟件設(shè)計(jì),采用結(jié)構(gòu)化設(shè)計(jì)思路、程序可移植性好、代碼優(yōu)化合理運(yùn)行效率高。
二、系統(tǒng)硬件電路設(shè)計(jì)
系統(tǒng)的硬件電路設(shè)計(jì)框圖如圖1所示,包括:5V電源電路、以ADC0809為核心A/D轉(zhuǎn)換電路、GPRS無線射頻通訊電路、DS1302時(shí)鐘電路、PC機(jī)與單片機(jī)串口通信電路、LCD液晶顯示電路、U盤讀寫電路、鍵盤與單片機(jī)接口電路AT24C02存儲(chǔ)電路。
在硬件系統(tǒng)的設(shè)計(jì)中,關(guān)鍵是如何將GPRS無線通信與U盤存儲(chǔ)技術(shù)的結(jié)合并用于以單片機(jī)為控制核心的數(shù)據(jù)采集系統(tǒng),下面將詳細(xì)介紹這兩部分電路的設(shè)計(jì)。
本系統(tǒng)GPRS無線調(diào)制解調(diào)器選用中興通訊公司推出的ZXGM18,它是一個(gè)雙頻接口模塊,主要發(fā)送短消息和數(shù)據(jù)。
ZXGM18既可以作為終端發(fā)送和接收數(shù)據(jù),又可以作為嵌入式二次開發(fā)設(shè)備,因?yàn)樗哂猩漕l收發(fā)電路和基礎(chǔ)頻帶處理器。ZXGM18提供了標(biāo)準(zhǔn)的接口,和控制系統(tǒng)的連接很方便,用戶不必在這方面花費(fèi)太多的精力,所以就可以把精力放在其他上面。
為了實(shí)現(xiàn)GPRS無線遠(yuǎn)傳的功能,需將進(jìn)行無線數(shù)據(jù)接收與發(fā)射的單片機(jī)與計(jì)算機(jī)采用串口連接,其連接原理圖如2所示。
計(jì)算機(jī)自帶串口,俗稱COM口,它支持標(biāo)準(zhǔn)的RS-232協(xié)議,可以外圍器件進(jìn)行串行通信。計(jì)算機(jī)常用8250或16550作為數(shù)據(jù)發(fā)送的轉(zhuǎn)換器,它們都是可編程的,外面使用9插口將串行信號(hào)送出。
單片機(jī)自帶一個(gè)全雙工的串行接口,所以單片機(jī)與外電路的串行通信是很方便的。為了節(jié)省硬件端口,本系統(tǒng)硬件數(shù)據(jù)傳遞部分與計(jì)算機(jī)相連采用最少的三線(TXD、RXD和GND)式形式,單片機(jī)工作的電平為TTL電平,+5V表示1,0V表示邏輯0,RS-232電平用-9V~-12V電壓電平代表邏輯1,以+9V~+12V電壓代表邏輯0,電壓標(biāo)準(zhǔn)不一樣,中間要有電平轉(zhuǎn)換電路,本系統(tǒng)采用最常用的MAX232芯片完成電平轉(zhuǎn)換。
完成采集數(shù)據(jù)及時(shí)可靠的存儲(chǔ)是本裝置的一項(xiàng)重要功能,因此如何選擇裝置的數(shù)據(jù)存儲(chǔ)方案就成為本設(shè)計(jì)要解決的重點(diǎn)問題。本裝置的數(shù)據(jù)存儲(chǔ)方案如圖3所示,就是采用STC12C5A60S2單片機(jī)控制CH375芯片的U盤存儲(chǔ)方案。
本文研究的系統(tǒng)單片機(jī)端口空閑較多,所以采用并口方式與CH375通信。如圖4所示,工作在并行模式下,TXD端接地,C12和C13是100μF的瓷片電容,用來濾除開關(guān)電源的紋波,在ACT#引腳和電源之間串聯(lián)1K的限流電阻和發(fā)光二級(jí)管LED,指示當(dāng)前的工作狀態(tài),DO~D7和單片機(jī)的P口相連,X0和X1之間接一個(gè)12MHz的晶振,給CH375提供振蕩電路,CH375對(duì)時(shí)鐘的要求比較高,RSTI是復(fù)位輸入端,為了有效復(fù)位,在RSTI與VCC之間串一個(gè)大小為0.47μF的電容,INT是復(fù)位完成后的中斷請(qǐng)求輸出端,D+和D-是U盤的數(shù)據(jù)端。
下位軟件主要實(shí)現(xiàn)對(duì)單片機(jī)的控制功能,我們采用專門應(yīng)用于單片機(jī)的C語言,簡(jiǎn)稱為C51語言。單片機(jī)讀寫U盤關(guān)鍵主要時(shí)序和中斷的應(yīng)用,否則會(huì)出現(xiàn)數(shù)據(jù)沖突,具體的單片機(jī)讀寫U盤程序流程如圖5所示。
單片機(jī)采用模塊化設(shè)計(jì),通過上位機(jī)軟件利用GPRS實(shí)現(xiàn)無線數(shù)據(jù)傳輸和控制,合理開發(fā)上位機(jī)軟件也是本設(shè)計(jì)順利完成的關(guān)鍵。
由于Visual Basic語言可以很容易的開發(fā)Windows系統(tǒng)下的各類應(yīng)用軟件,并且開發(fā)的軟件方便直觀、功能性強(qiáng),因此本系統(tǒng)的上位機(jī)采用Visual Basic語言進(jìn)行設(shè)計(jì)。圖6是上位機(jī)數(shù)據(jù)采集界面。
圖7為GPRS通訊模塊和上位機(jī)的通訊端口設(shè)定VB界面。
四、系統(tǒng)調(diào)試及實(shí)驗(yàn)結(jié)果
在完成電路原理圖的設(shè)計(jì)后,把電路的每部分在電路板上進(jìn)行布局、安裝和焊接。在焊接電路時(shí)要注意電解電容、二極管的極性,然后把各元器件一一焊牢。在完成焊接之后,不要急于接通電源。還必須要根據(jù)硬件原理圖用萬用表仔細(xì)檢查電路板線路的正確性,并核對(duì)元器件的型號(hào)、規(guī)格和安裝是否符合要求。還要檢查各器件引腳是否有虛焊點(diǎn),電源之間是否有短路點(diǎn),并重點(diǎn)檢查系統(tǒng)總線是否存在相互間的短路或與其他信號(hào)線的短路想象。在確認(rèn)焊接無誤后,就可接通電源進(jìn)行調(diào)試,連接好的實(shí)物圖如圖8所示。
當(dāng)上述檢查無誤后,給將8路通道中不用的通道接地,要用的通道接在相應(yīng)的傳感器上。該裝置在使用時(shí)有以下注意事項(xiàng):
(1)開機(jī)前,請(qǐng)檢查主U盤是否插好;
(2)在查看數(shù)據(jù)時(shí)候,如果沒有反應(yīng),通過取消鍵退出,然后重新進(jìn)入,即可查詢數(shù)據(jù),在查詢數(shù)據(jù)時(shí)候,綠色的LED小燈應(yīng)該一直亮著,直到查詢完畢,如果沒有亮,則表示有問題;
(3)在復(fù)制數(shù)據(jù)前請(qǐng)檢查副U盤是否插好;
(4)在復(fù)制數(shù)據(jù)時(shí),必須先測(cè)試連接,連接成功后然后測(cè)試通信,通信成功后復(fù)制數(shù)據(jù),必須按照這個(gè)順序,復(fù)制不會(huì)復(fù)制數(shù)據(jù)。并且在復(fù)制數(shù)據(jù)時(shí),如果按照這個(gè)順序操作,綠色的LED小燈應(yīng)該一直亮著,直到復(fù)制完畢,如果沒有亮,則表示有問題。
該裝置的實(shí)際運(yùn)行情況如圖9所示。
實(shí)驗(yàn)證明該數(shù)據(jù)采集系統(tǒng)與傳統(tǒng)數(shù)據(jù)采集系統(tǒng)相比具有如表1所示特點(diǎn):
五、總結(jié)
本設(shè)計(jì)以單片機(jī)技術(shù)與無線通信技術(shù)、U盤海量存儲(chǔ)技術(shù)相結(jié)合,開發(fā)了一套GPRS無線數(shù)據(jù)傳輸及U盤海量存儲(chǔ)系統(tǒng)。設(shè)計(jì)中主要完成了:
(1)通過對(duì)數(shù)據(jù)采集電路的設(shè)計(jì),實(shí)現(xiàn)了對(duì)所需數(shù)據(jù)的采集,高精度模數(shù)轉(zhuǎn)換及處理,并精確顯示的功能。
(2)通過基于GPRS技術(shù)的無線通訊部分設(shè)計(jì)和U盤存儲(chǔ)電路的設(shè)計(jì),實(shí)現(xiàn)了對(duì)數(shù)據(jù)的無線遠(yuǎn)傳及實(shí)時(shí)海量存儲(chǔ)的功能。
(3)通過對(duì)上位機(jī)Visual Basic 6.0操作軟件設(shè)計(jì)及單片機(jī)C語言程序的設(shè)計(jì),實(shí)現(xiàn)了整個(gè)系統(tǒng)的各項(xiàng)功能。
經(jīng)實(shí)驗(yàn)證明,本系統(tǒng)能夠存儲(chǔ)大量數(shù)據(jù),并能夠?qū)?nèi)置U盤中的數(shù)據(jù)轉(zhuǎn)移出來;硬件設(shè)計(jì)上采用了新型的,高性能的芯片與集成電路;可廣泛應(yīng)用于需要數(shù)據(jù)監(jiān)控、保護(hù)等多種場(chǎng)合;使用了STC12C5A60S2單片機(jī)作為核心控制元件,與其它模塊配合實(shí)現(xiàn)各種功能,確保了系統(tǒng)運(yùn)行的穩(wěn)定性,可進(jìn)行多種數(shù)據(jù)處理和控制工作,大大提高了系統(tǒng)的精度;上位機(jī)界面友好,使用方便。使PC機(jī)能夠?qū)?shù)據(jù)實(shí)時(shí)監(jiān)控,不僅大大提高了運(yùn)行時(shí)的穩(wěn)定性,而且實(shí)現(xiàn)了保護(hù)功能。