數(shù)據(jù)采集技術(shù)是信息科學(xué)的一個重要分支。隨著計算機科學(xué)技術(shù)的飛速發(fā)展和普及,數(shù)據(jù)采集技術(shù)己經(jīng)滲透到雷達、通信、水聲、遙感、地質(zhì)勘探、振動工程、語音處理、智能儀器、工業(yè)自動控制以及生物醫(yī)學(xué)工程等眾多領(lǐng)域。數(shù)據(jù)采集裝置是在工業(yè)控制系統(tǒng)中應(yīng)用最廣泛的一種設(shè)備,可實現(xiàn)對生產(chǎn)現(xiàn)場的各種參數(shù)進行采集、監(jiān)視和記錄。
數(shù)據(jù)采集裝置的發(fā)展方向為:實時性好、適用性廣和可靠性高。因此采用嵌入式技術(shù),開發(fā)一種基于嵌入式實時操作系統(tǒng)和ARM處理器的高精度、強實時性和廣適用性的新型數(shù)據(jù)采集裝置非常必要。
順應(yīng)市場需求設(shè)計的數(shù)據(jù)采集裝置設(shè)計,采用了基于ARM7處理器為內(nèi)核的飛利浦公司32位單片機LPC2144,其數(shù)據(jù)處理能力和豐富的片內(nèi)資源滿足了數(shù)據(jù)采集裝置的功能和性能需要。同時可以使系統(tǒng)小型化,便于提高性能以及與各種外設(shè)連接擴展,降低了成本。μC/OS-Ⅱ作為一個源代碼公開的操作系統(tǒng),在具體應(yīng)用中穩(wěn)定可靠。ARM7+μC/OS-Ⅱ開發(fā)設(shè)計,利用嵌入式實時操作系統(tǒng)的可裁剪性、可移植性和多任務(wù)等特點,不僅使其采集性能大幅度提高,而且使抗干擾能力和實時性顯著增強?梢栽诟鞣N工業(yè)場合中廣泛應(yīng)用,達到了設(shè)計的初衷。
1 總體方案
設(shè)計在研究嵌入式實時操作系統(tǒng)、ARM處理器和數(shù)據(jù)采集技術(shù)基本原理的基礎(chǔ)上,完成基于ARM處理器和嵌入式實時操作系統(tǒng)的數(shù)據(jù)采集裝置的設(shè)計。裝置具有USB接口、RS485接口,可以滿足遠程和近程數(shù)據(jù)采集的需要,同時還可以與各種傳感器配合可實現(xiàn)對溫度、壓力、流量、液位等常用數(shù)據(jù)的采集。
2 數(shù)據(jù)采集裝置的硬件設(shè)計
數(shù)據(jù)采集裝置功能模塊框圖如圖1所示。
2.1 系統(tǒng)器件的選擇
2.1.1 微處理器的選型
作為數(shù)據(jù)采集系統(tǒng)的核心部件,微處理器的選擇對整個系統(tǒng)功能的優(yōu)化起著至關(guān)重要的作用。當(dāng)今市場上流行的微處理器眾多,在不同的應(yīng)用領(lǐng)域,它們都發(fā)揮著各自的優(yōu)勢。一般的選型原則是:滿足應(yīng)用要求,簡單易用,價格便宜,設(shè)計周期短。
LPC2144單片機是飛利浦公司生產(chǎn)的以ARM處理器為內(nèi)核的微處理器,其處理速度快、應(yīng)用廣泛、價格低廉、并且ARM處理器的功耗是同檔次其他嵌入式處理器中較低的。低成本、微電流供電的ARM處理器使電路設(shè)計更加便捷、可靠、節(jié)能。
2.1.2 嵌入式實時操作系統(tǒng)的選型
嵌入式實時操作系統(tǒng)種類很多,大體可以分為商用型和免費型。商用型實時操作系統(tǒng)功能穩(wěn)定、可靠,有完善的技術(shù)支持,但往往價格昂貴;免費型實時操作系統(tǒng)在價格方面具有優(yōu)勢,常用的主要有Linux和μC/OS-Ⅱ兩種。
Linux可以移植到多個不同結(jié)構(gòu)的CPU和硬件平臺,具有很好的穩(wěn)定性及升級能力,而且開發(fā)容易,對商用嵌入式操作系統(tǒng)帶來了很大的沖擊。
μC/OS-Ⅱ僅是一個實時內(nèi)核,它不像其他實時操作系統(tǒng)那樣提供給用戶的一些API函數(shù)接口,很多工作需要自己去完成。把μC/OS-Ⅱ移植到目標(biāo)硬件平臺上只是系統(tǒng)設(shè)計工作的開始,還需要針對實際的應(yīng)用需求對μC/OS-Ⅱ進行功能擴展,包括底層的硬件驅(qū)動、文件系統(tǒng)、用戶圖像接口(GUI)等,從而建立一個實用的RTOS.
綜合考慮嵌入式操作系統(tǒng)的硬件支持;可移植性;開發(fā)工具的支持程度;能否滿足應(yīng)用需求;中文內(nèi)核支持;標(biāo)準(zhǔn)兼容性;技術(shù)支持等等,決定選用嵌入式實時操作系統(tǒng)μC/OS-Ⅱ。
2.2 硬件設(shè)計方案
數(shù)據(jù)采集裝置的硬件部分以飛利浦公司LPC2144為核心,其數(shù)據(jù)處理能力和豐富的片內(nèi)資源滿足了數(shù)據(jù)采集裝置的功能和性能需要。配以模擬量采集電路、開關(guān)量采集電路、USB接口電路、RS485接口電路、液晶顯示電路、鍵盤電路等組成。
LPC2144管腳配置圖如圖2所示。
2.2.1 數(shù)據(jù)采集單元設(shè)計
數(shù)據(jù)采集電路部分選用不同的傳感器和信號調(diào)理電路,可實現(xiàn)對多種電量與非電量的采集與處理,運行穩(wěn)定可靠,采樣精度高,能滿足系統(tǒng)的設(shè)計要求。
作為通用數(shù)據(jù)采集裝置輸入信號范圍是很大的,而LPC2144-單片機內(nèi)嵌ADC轉(zhuǎn)換器的供電電壓是+3V,ADC電路的被測信號輸入端的輸入電壓必須小于電源電壓,否則測量值將不準(zhǔn)確。必須將輸入的被測信號的電壓范圍調(diào)理到ADC轉(zhuǎn)換的測量范圍內(nèi),才能得到正確的ADC轉(zhuǎn)換值。
工作原理:調(diào)理電路根據(jù)各種傳感器輸出電壓或電流的不同,由DIP開關(guān)控制MSP430輸出端的繼電器,通過不同開關(guān)的閉合來改變放大電路的放大倍數(shù),同時MSP430芯片還控制一個DAC來為不同的放大電路提供不同的偏置電壓,從而實現(xiàn)量程的轉(zhuǎn)換。最終將0~3 V范圍的電壓信號輸入ADC中。
2.2.2 USB接口電路
USB(Universal Serial Bus)即通用串行總線。一個USB系統(tǒng)通常包括三個部分:USB互連、USB設(shè)備和USB主機。USB特有的優(yōu)點:即插即用、低功耗、完整的總線拓撲結(jié)構(gòu)、硬件結(jié)構(gòu)標(biāo)準(zhǔn)化等。
LPC2144單片機內(nèi)部有集成的USB控制器,完全兼容USB 2.0全速規(guī)范;支持32個物理(16個邏輯)端點;支持控制、批量、中斷和同步端點;運行時可通過軟件來選擇端點最大包長度(取決于USB最大規(guī)格);RAM大小取決于使用的端點和最大包的長度;支持SoftConnectTM特性和GoodLinkTM LED指示器;支持總線供電功能,具有較低的掛起電流?晒ぷ饔谠O(shè)備方式。
2.2.3 RS-485接口電路
RS-485接口的優(yōu)點在于它使用一對雙絞線就能實現(xiàn)單片機與上位機的通訊。具有高噪聲抑制、寬共模范圍、長傳輸距離、沖突保護以及價格低廉等優(yōu)點,這些優(yōu)點使其在工業(yè)控制、工業(yè)設(shè)備中得到了廣泛的應(yīng)用。
由于大多數(shù)PC機只具有RS-232串行通信口,而不具備RS-485接口,因此,為了實現(xiàn)RS-485接口串行通信,必須在PC機側(cè)配置RS-232/RS-485接口轉(zhuǎn)換電路,具體通過設(shè)計一塊RS-232/RS-485轉(zhuǎn)接板來實現(xiàn)。
3 數(shù)據(jù)采集裝置的軟件設(shè)計
軟件設(shè)計上,采用基于μC/OS-Ⅱ多任務(wù)編程思想。
μC/OS-Ⅱ是由Jean J.Labrosse編寫的、很流行的一種免費公開源代碼的實時操作系統(tǒng)。μC/OS-Ⅱ不僅具有結(jié)構(gòu)小巧、可固化、可裁剪、多任務(wù)和可剝奪型的實時內(nèi)核等特點,而且其實時性、穩(wěn)定性、可靠性也得到了廣泛的認可。
μC/OS-Ⅱ使用前,必須先移植到微處理器上。LPC2144具有強大的處理能力,RISC結(jié)構(gòu),128位寬度的存儲器接口和獨特的加速結(jié)構(gòu)使32位代碼能夠在最大時鐘速率下運行,同時具有豐富的片內(nèi)外設(shè),如硬件乘法器、ADC、定時器、PWM通道、高速GPIO線、看門狗等。內(nèi)部還具有16 kB的RAM和128 kB的FLASH.足以滿足移植所需要的條件。
3.1 LPC2144單片機的啟動代碼編寫
FLASH中的程序執(zhí)行前,需要對系統(tǒng)硬件和軟件運行環(huán)境進行初始化。這些工作是用匯編語言和C語言編寫的啟動(BootloadetO)代碼完成的。
在啟動代碼的編寫中,將啟動代碼劃分為5個文件:Startup.s、IRQ.s、stack.s、heap.s和target.c.Startup.s包含向量表和系統(tǒng)初始化代碼。IRQ.s包含中斷服務(wù)程序與C程序的接口代碼。stack.s和heap.s保存C語言使用的堆和棧的開始位置。target.c包含目標(biāo)板特殊的代碼,包括異常處理程序和目標(biāo)板初始化程序。
MOV R0,LR;因芯片模式切換,故將程序返回地址保存至R0,同時在初始化堆棧完成后使用R0返回。
其余的步驟都在TargetResetInit函數(shù)中加以實現(xiàn)。
3.2 外設(shè)驅(qū)動程序
在μC/OS-Ⅱ一類的微內(nèi)核操作系統(tǒng)中,設(shè)備驅(qū)動一般都是由應(yīng)用程序在內(nèi)核外部實現(xiàn)的。不過由于不分系統(tǒng)空間和用戶空間,這些設(shè)備驅(qū)動程序仍在系統(tǒng)中執(zhí)行。從實現(xiàn)方式上看,設(shè)備驅(qū)動程序的實現(xiàn)可以分為兩種:一種是輪詢(Polling)方式,另一種是中斷方式。
設(shè)計采用中斷式設(shè)備驅(qū)動的實現(xiàn)方式。
4 結(jié)束語
數(shù)據(jù)采集裝置的低成本、低功耗、實時性設(shè)計是數(shù)據(jù)采集領(lǐng)域的一個主要研究方向。
數(shù)據(jù)采集裝置充分利用了LPC2144豐富的片上資源,大大簡化了硬件電路的設(shè)計;采用RS-485接口和USB接口通信技術(shù),既可以實現(xiàn)系統(tǒng)的遠程數(shù)據(jù)采集,又可以與PC機相連實現(xiàn)實驗室數(shù)據(jù)采集;同時該裝置是基于實時嵌入式操作系統(tǒng)的,在實時性方面具有很大的優(yōu)越性。
通過實驗驗證了其設(shè)計的合理性和可行性。該數(shù)據(jù)采集裝置具有低成本、低功耗、微型化、精度高、運行穩(wěn)定、實時性好、抗干擾能力強、性價比高等特點,可以采集多種傳感器輸出的標(biāo)準(zhǔn)信號。但在系統(tǒng)功能的擴展和通信方面還有待于進一步改進與提高。
作者:鄭晉平 來源:《山西電子技術(shù)》
我推薦大家讀
輕松參與
VS
表達立場
這是垃圾文章