基于嵌入式操作系統的磁場測量系統的設計
電壓的檢測也采用了在一秒的時間內取樣N次去掉最大和最小值然后取平均值的方法減少測量誤差。測量電壓V為:
在系統設計時,也充分考慮了抗干擾的要求。在硬件的設計中,采取了同軸電纜作為傳輸媒質、模擬地與數字地分開、光電隔離、系統加屏蔽罩等措施。軟件設計中加入數字濾波、定時自檢等措施抗干擾。
4 嵌入式Liinux系統的設計
嵌入式Linux系統不是針對某個硬件平臺而開發的,所以進行Linux移植時必須針對相應的硬件對Linux內核加以裁減、修改和補充。磁場測量系統采用的是基于ARM9內核的硬件平臺,下面介紹該硬件平臺下的Linux系統移植過程和方法。
4.1 建立交叉編譯環境
在進行移植前,首先要建立開發平臺的ARM—Linux交叉編譯環境。linux下的交叉編譯環境主要包括針對目標系統幾部分:編譯器gcc;二進制工具binutils:標準c庫glibc;linux內核頭文件。
4.2 啟動代碼的移植
啟動代碼主要完成硬件檢測和系統引導,建立內存空間映射圖,為正確調用操作系統內核做好準備。系統加電后,由引導代碼進行基本的硬件初始化,然后把內核經映像裝入內存運行。啟動代碼必須針對不同的硬件而設計,本測量系統選擇了當前流行的U-BOOT引導系統進行了修改移植。
U-BOOT的啟動具體可分為兩個階段,分別為硬件的初始化和內核調用的準備。U—BOOT為開源軟件,可找到很多接近目標開發板的參考程序。本系統在參考韓國某公司開發的VIVI啟動代碼的基礎上進行修改和移植,減少了開發時間且代碼健壯性好。
4.3 Linux內核的移植
Linux內核的移植是整個嵌入式系統設計的關鍵部分。Linux內核移植需要完成內核與啟動代碼的銜接部分的移植以及硬件相關部分的移植,如CPU、中斷控制器、定時器、內存控制器等的移植。根據磁場測量系統的硬件結構,Linux內核的移植分為以下四個步驟:
(1)首先是選擇內核版本、建立交叉編譯環境。本系統選擇的Linux內核版本為2.4.18,交叉編譯工具選擇arm-1inux-gcc 3.3.2;
(2)然后是配置和編譯內核,針對硬件對源碼作必要的修改。①先修改根目錄下的Makefile文件,分別指定目標平臺為ARM和指定交叉編譯器是arm-1inux-gcc 3.3.2;②接著對linux內核進行配置,此過程必須根據系統硬件和功能進行裁剪。進入linux內核目錄輸入命令make menuconfig,其配置方式為通過圖形方式進行配置,對驅動程序進行裁剪;③配置完成后保存退出,輸入Make命令,編譯成功后會在arch/arm/boot目錄中生成內核的鏡像;
(3)接著制作根文件系統并掛載。要實現程序固化,還必須將程序和模塊添加到根文件系統中。在程序的設計中,本系統主要是使用軟件QT進行觸摸屏界面的開發和相關功能的設計;
(4)最后是下載、調試內核并運行。
5 結語
電磁測量已廣泛應用于各個行業,隨著技術的發展和進步,對磁場測量系統的精度和擴展功能要求越來越高。本文的創新之處是將當前流行的嵌入式Linux系統和磁場測量技術結合起來,構建了一個系統功能豐富、易用性好且擴展功能強的智能化磁場測量系統。在實際應用中可提高測量系統的實時性和多任務處理的能力,符合當前測量發展的需要。
參考文獻:
[1].RS232datasheethttp://www.dzsc.com/datasheet/RS232_585128.html.
[2].ARM920Tdatasheethttp://www.dzsc.com/datasheet/ARM920T_139814.html.
[3].RISCdatasheethttp://www.dzsc.com/datasheet/RISC_1189725.html.
[4].PGA202datasheethttp://www.dzsc.com/datasheet/PGA202_546804.html.
[5].PGA203datasheethttp://www.dzsc.com/datasheet/PGA203_546810.html.
評論