基于ARM的煤礦瓦斯涌出量預(yù)測系統(tǒng)的設(shè)計(jì)
1 總體設(shè)計(jì)
瓦斯傳感器將被測物理量瓦斯涌出量轉(zhuǎn)換成電信號,經(jīng)過A/D轉(zhuǎn)換采樣,轉(zhuǎn)換成數(shù)字信號,在ARM處理器中處理?;?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/ARM">ARM920T內(nèi)核的S3C2440核心板帶有內(nèi)置STN/CSTN/TFT LCD控制器,支持1 024×768分辨率以下的各種液晶,用于顯示預(yù)測信息、檢測量、檢測時間等。內(nèi)置4線制電阻式觸摸屏控制器,用于用戶與系統(tǒng)的交互,也可以通過鍵盤對系統(tǒng)參數(shù)等進(jìn)行設(shè)置。100 Mbit/s 以太網(wǎng)控制器,用于與上位PC的雙向信息傳遞。系統(tǒng)的軟件開發(fā)是在Fedora Linux環(huán)境下基于QT設(shè)計(jì)的。QT是挪威的Trolltech 公司開發(fā)的一個開源的、跨平臺的C++圖形用戶界面應(yīng)用程序框架。它提供給應(yīng)用程序開發(fā)者建立藝術(shù)級的圖形用戶界面所需的所用功能。QT完全面向?qū)ο螅苋菀讛U(kuò)展,并且允許真正地組件編程。系統(tǒng)依據(jù)分源法[1,2]將礦井各個開采面分為不同的瓦斯涌出源,建立瓦斯分源預(yù)測模型,經(jīng)過換算得到預(yù)測數(shù)據(jù)并顯示。系統(tǒng)結(jié)構(gòu)如圖1所示。本文引用地址:http://m.butianyuan.cn/article/195691.htm
2硬件設(shè)計(jì)
2.1芯片及存儲器設(shè)計(jì)
系統(tǒng)選用了三星公司基于ARM 9 內(nèi)核的S3C2440嵌入式處理器。S3C2440被廣泛應(yīng)用于PDA、移動通信、路由器、工業(yè)控制等領(lǐng)域, 芯片中集成了下列模塊: 16 KB指令Cache、16 KB數(shù)據(jù)Cache、MMU、外部存儲器控制器、LCD控制器、NAND Flash控制器、4通道PWM 定時器和1個內(nèi)部定時器、168腳通用GPIO、實(shí)時時鐘、8通道10 bit的AD和觸摸屏接口、標(biāo)準(zhǔn)20 pin JTAG調(diào)試接口等。存儲器方面采用標(biāo)準(zhǔn)的64 MB Nand-Flash用于數(shù)據(jù)存儲和64 MB SDRAM用于程序的運(yùn)行。
2.2A/D采樣、顯示和接口設(shè)計(jì)
A/D轉(zhuǎn)換單元采用MAX1297AEEG實(shí)現(xiàn)12位并行模數(shù)轉(zhuǎn)換,直接與核心板的I/O線連接,如圖2所示。由于S3C2440自帶有LCD控制器,所以免去了LCD控制器的設(shè)計(jì),顯示屏采用NEC公司的3.5寸的壓電式觸摸LCD,分辨率為240×320。以太網(wǎng)接口采用TC3097F-5芯片。
3 軟件設(shè)計(jì)
3.1 BootLoader的移植
BootLoader是在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行的一段小程序。大多數(shù)BootLoader都分為Stage1 和Stage2 兩大部分。Stage1主要包含依賴于CPU的體系結(jié)構(gòu)硬件初始化的代碼,通常都用匯編語言來實(shí)現(xiàn)。這個階段的任務(wù)有:(1)為基本的硬件設(shè)備初始化;(2)為第二階段準(zhǔn)備RAM空間;(3)設(shè)置堆棧并跳轉(zhuǎn)到第二階段的程序入口點(diǎn)。Stage2通常用C語言完成,以便實(shí)現(xiàn)更復(fù)雜的功能,也使程序有更好的可讀性和可移植性。這個階段的任務(wù)有:(1)初始化本階段要使用到的硬件設(shè)備,檢測系統(tǒng)內(nèi)存映射;(2)將內(nèi)核映像和根文件系統(tǒng)映像從Flash讀到RAM;(3)為內(nèi)核設(shè)置啟動參數(shù),調(diào)用內(nèi)核。系統(tǒng)采用韓國MIZI公司開發(fā)的開源BootLoader, 即vivi,對vivi進(jìn)行必要的裁剪并移植到系統(tǒng)當(dāng)中。
評論