国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于嵌入式Linux的養(yǎng)殖水質(zhì)監(jiān)控智能儀表的平臺(tái)設(shè)計(jì)*

2015-10-19 10:02:54郭顯久閻笑彤大連海洋大學(xué)信息工程學(xué)院遼寧大連6023遼寧省海洋信息技術(shù)重點(diǎn)實(shí)驗(yàn)室遼寧大連6023
關(guān)鍵詞:智能儀表開(kāi)發(fā)板內(nèi)核

王 超,郭顯久,2,閻笑彤(.大連海洋大學(xué) 信息工程學(xué)院,遼寧 大連 6023;2.遼寧省海洋信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,遼寧 大連 6023)

基于嵌入式Linux的養(yǎng)殖水質(zhì)監(jiān)控智能儀表的平臺(tái)設(shè)計(jì)*

王 超1,郭顯久1,2,閻笑彤1
(1.大連海洋大學(xué) 信息工程學(xué)院,遼寧 大連 116023;2.遼寧省海洋信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,遼寧 大連 116023)

介紹了一種基于嵌入式Linux的養(yǎng)殖水質(zhì)監(jiān)控智能儀表的平臺(tái)設(shè)計(jì)。該儀表通過(guò)ARM核心處理器連接其他外設(shè)功能模塊,實(shí)現(xiàn)硬件平臺(tái)搭建;通過(guò)裁剪和移植Linux內(nèi)核,完善操作系統(tǒng)和驅(qū)動(dòng)程序等開(kāi)發(fā),實(shí)現(xiàn)硬件平臺(tái)上成功安裝操作系統(tǒng)。該智能儀表主要用于水產(chǎn)養(yǎng)殖領(lǐng)域的各項(xiàng)水質(zhì)參數(shù)的監(jiān)測(cè),能夠滿(mǎn)足未來(lái)養(yǎng)殖的高效率和高質(zhì)量的需要。

智能儀表;平臺(tái)設(shè)計(jì);移植

0 引言

水產(chǎn)養(yǎng)殖是我國(guó)農(nóng)業(yè)的支柱產(chǎn)業(yè)之一,近年來(lái),水產(chǎn)養(yǎng)殖的品種和產(chǎn)量不斷增加,且養(yǎng)殖的規(guī)模越來(lái)越大,這為物聯(lián)網(wǎng)技術(shù)在水產(chǎn)養(yǎng)殖中的應(yīng)用提供了良好的條件和廣闊的發(fā)展空間。未來(lái)的水產(chǎn)養(yǎng)殖將以高成活率和高質(zhì)量為目的,實(shí)現(xiàn)這些目的的前提條件之一是要保持養(yǎng)殖水質(zhì)的穩(wěn)定性,如水溫、溶解氧、PH值和濁度等水質(zhì)參數(shù),都需要及時(shí)獲?。?]。

傳統(tǒng)的定時(shí)取樣和化學(xué)分析法獲取養(yǎng)殖水質(zhì)數(shù)據(jù),獲取不及時(shí)、可靠性低、實(shí)時(shí)操作性差且成本高,遠(yuǎn)遠(yuǎn)不能實(shí)現(xiàn)上述的需求。后來(lái),人們引入了水質(zhì)實(shí)時(shí)監(jiān)測(cè)系統(tǒng),該系統(tǒng)以ZigBee、GPRS、智能水質(zhì)監(jiān)測(cè)傳感器等物聯(lián)網(wǎng)技術(shù)為手段,能實(shí)時(shí)采集養(yǎng)殖水的水位、溶解氧、PH值、溫度和濁度等參數(shù),實(shí)現(xiàn)水產(chǎn)養(yǎng)殖水質(zhì)的實(shí)時(shí)監(jiān)測(cè)[2]。但是,該系統(tǒng)主要是與上位機(jī)通信,需要一個(gè)固定的PC終端來(lái)進(jìn)行遠(yuǎn)程、實(shí)時(shí)的監(jiān)控和操作。因此,設(shè)計(jì)一種可靠的養(yǎng)殖水質(zhì)監(jiān)控系統(tǒng)的智能儀表,對(duì)養(yǎng)殖業(yè)的發(fā)展具有重大意義。

1 硬件平臺(tái)架構(gòu)設(shè)計(jì)

本文中的智能儀表的硬件平臺(tái)選用了天嵌公司出品的 tq2440開(kāi)發(fā)板實(shí)驗(yàn)平臺(tái)。該開(kāi)發(fā)板的 CPU是基于ARM920T的 S3C2440芯片、512 MB的 Nand Flash和64 MB的 DDRAM、117個(gè) I/O通用 Pin腳和 24位外部中斷源、12位的逐次逼近型A/D轉(zhuǎn)換器等,處理器資源豐富,基本滿(mǎn)足數(shù)據(jù)的采集和信號(hào)的轉(zhuǎn)化[3]。

1.1 智能儀表監(jiān)控平臺(tái)的架構(gòu)

平臺(tái)硬件架構(gòu)設(shè)計(jì)采用了模塊化設(shè)計(jì)模式,即各模塊之間相互獨(dú)立地掛載到控制板上,以ARM處理器為核心,協(xié)調(diào)其他各個(gè)功能模塊工作。其結(jié)構(gòu)框圖如圖1所示。

圖1 智能儀表的監(jiān)控平臺(tái)框圖

其中,ARM處理器上運(yùn)行 Linux操作系統(tǒng),負(fù)責(zé)數(shù)據(jù)的采集、運(yùn)算和通信等功能;圖像采集模塊是常用的USB攝像頭;水質(zhì)檢測(cè)模塊主要由采集各類(lèi)參數(shù)的傳感器構(gòu)成,通過(guò)串口連接平臺(tái),即插即用;標(biāo)準(zhǔn)輸出模塊主要是輸出處理后的數(shù)據(jù)[4]。4G無(wú)線(xiàn)通信模塊使用USB 4G無(wú)線(xiàn)網(wǎng)卡;LCD模塊作為智能儀表的輸入和輸出模塊;存儲(chǔ)器模塊,因板子 Flash容量不足,大存儲(chǔ)主要靠SD卡。

1.2 平臺(tái)系統(tǒng)的工作模式

為實(shí)現(xiàn)儀表低功耗、高效率的工作,設(shè)置了兩種工作模式:常態(tài)模式和用戶(hù)態(tài)模式。常態(tài)模式即系統(tǒng)在一般狀態(tài)下的工作模式,該模式下,儀表處于低功耗狀態(tài),多數(shù)模塊處于休眠狀態(tài),不占CPU資源。用戶(hù)模式即用戶(hù)控制儀表工作的模式,該模式下,各模塊受用戶(hù)控制搶占CPU資源工作。

攝像頭、LCD模塊應(yīng)設(shè)置為常態(tài)模式,一般處在休眠狀態(tài),當(dāng)用戶(hù)向內(nèi)核進(jìn)程發(fā)送喚醒消息后,模塊被內(nèi)核喚醒,才會(huì)向CPU申請(qǐng)資源,運(yùn)行起來(lái)。4G無(wú)線(xiàn)網(wǎng)絡(luò)傳輸速度快,考慮通信流量的費(fèi)用高,設(shè)置網(wǎng)絡(luò)模塊定時(shí)聯(lián)網(wǎng),間歇式打包發(fā)送數(shù)據(jù)。水質(zhì)監(jiān)測(cè)模塊的各個(gè)傳感器是實(shí)時(shí)采集數(shù)據(jù)的,但實(shí)際中,養(yǎng)殖水質(zhì)參數(shù)如溫度、溶解氧等是不會(huì)實(shí)時(shí)快速變化的,所以,該模塊常態(tài)模式下,設(shè)置為定時(shí)采樣,用戶(hù)可自定義采集時(shí)間,這樣既降低了功耗,同時(shí)避免采集太多冗余數(shù)據(jù)。

1.3 平臺(tái)系統(tǒng)的智能處理機(jī)制

因?yàn)樵撝悄軆x表是監(jiān)控養(yǎng)殖水質(zhì)的,所以該儀表的智能性主要體現(xiàn)在系統(tǒng)對(duì)水質(zhì)參數(shù)數(shù)據(jù)的運(yùn)算處理上,即實(shí)現(xiàn)大數(shù)據(jù)處理。系統(tǒng)中先加載各個(gè)參數(shù)的標(biāo)準(zhǔn)數(shù)據(jù)庫(kù),當(dāng)模塊采集的參數(shù)數(shù)據(jù)定時(shí)被CPU采樣時(shí),CPU會(huì)對(duì)比采樣參數(shù)和標(biāo)準(zhǔn)參數(shù):若結(jié)果沒(méi)有發(fā)生異常,CPU將數(shù)據(jù)自動(dòng)保存到存儲(chǔ)器模塊,打包聯(lián)網(wǎng)傳送給數(shù)據(jù)庫(kù);若比較結(jié)果發(fā)生異常,CPU立即進(jìn)入異常處理模式,網(wǎng)絡(luò)模塊搶占資源聯(lián)網(wǎng),CPU向用戶(hù)發(fā)送異常警報(bào),同時(shí)將已經(jīng)采集的數(shù)據(jù)打包發(fā)送給用戶(hù)。平臺(tái)系統(tǒng)的智能處理機(jī)制能幫助養(yǎng)殖戶(hù)及時(shí)、準(zhǔn)確地發(fā)現(xiàn)問(wèn)題所在,還可以結(jié)合用戶(hù)的專(zhuān)家系統(tǒng)給出一些解決問(wèn)題的方法,有效降低了養(yǎng)殖風(fēng)險(xiǎn)。

2 軟件平臺(tái)架構(gòu)設(shè)計(jì)

由于智能儀表的整個(gè)系統(tǒng)比較復(fù)雜,為了管理和協(xié)調(diào)好各項(xiàng)復(fù)雜的任務(wù),決定選用嵌入式Linux操作系統(tǒng)[5]。

結(jié)合嵌入式Linux軟件開(kāi)發(fā)步驟,確定開(kāi)發(fā)流程如圖2所示。

圖2 系統(tǒng)軟件開(kāi)發(fā)流程圖

2.1建立Linux交叉編譯環(huán)境

首先在 PC上安裝上 Linux操作系統(tǒng)并建立適用于ARM的交叉編譯器 arm-linux-gcc。交叉編譯工具安裝包可以從網(wǎng)上獲取。建立好Linux交叉開(kāi)發(fā)環(huán)境后,即可開(kāi)始軟件系統(tǒng)平臺(tái)的移植了。

2.2移植Bootloader和Linux內(nèi)核

Bootloader是在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行的一段小程序。通過(guò)這段小程序,可以初始化硬件設(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。

Bootloader的制作過(guò)程這里不做詳細(xì)介紹。不同于以往的移植方法,在tq2440平臺(tái)上,本文提出一種基于USB的移植方法,該方法操作簡(jiǎn)單,效率高。下面以Bootloader的移植為例,給予詳細(xì)介紹。將開(kāi)發(fā)板從nor_flash啟動(dòng),進(jìn)入命令輸入模式,如圖3所示。

圖3 終端命令行模式圖

(1)輸入命令usbslave 130008000,開(kāi)發(fā)板處于下載等待狀態(tài);

(2)進(jìn)入Linux下,輸入命令dnw u-boot.bin 30008000,使用dnw將u-boot.bin文件下載到內(nèi)存地址30008000處;

(3)輸入命令nand erase 040000,擦除從0地址開(kāi)始長(zhǎng)度為40000的內(nèi)存空間;

(4)輸入命令nand write 30008000040000,從30008000地址處讀取數(shù)據(jù),寫(xiě)入到0地址處,長(zhǎng)度為40000。

說(shuō)明:(1)中的subslave是啟動(dòng) USB下載的命令,上述的內(nèi)存起始地址和長(zhǎng)度,在內(nèi)核文件中已經(jīng)固定設(shè)置,不可更改;(2)中 dnw是USB下載軟件,可以由其他USB下載軟件替換;(3)格式化內(nèi)存空間;(4)向內(nèi)存中燒寫(xiě)B(tài)ootloader。

完成了Bootloader的移植以后,下面進(jìn)行移植Linux內(nèi)核。

Linux內(nèi)核文件提供了大量的功能驅(qū)動(dòng)文件,因此需要選擇適當(dāng)?shù)哪K來(lái)裁剪內(nèi)核,配置步驟如下:

(1)make distclean,清除原有的配置文件和中間文件;

(2)make menuconfig ARCM=arm,進(jìn)入內(nèi)核配置界面,按需要裁剪內(nèi)核模塊,如圖4所示。

圖4 內(nèi)核配置模式圖

(3)make uImage ARCH=arm CROSS_COMPILE= arm-linux-,編譯內(nèi)核,產(chǎn)生 uImage鏡像文件。注意,這個(gè)內(nèi)核鏡像是不帶根文件系統(tǒng)的,因調(diào)試需要,內(nèi)核中文件系統(tǒng)配置為NFS文件系統(tǒng)。

移植內(nèi)核,步驟基本重復(fù)移植U-Boot的步驟。

2.3 移植根文件系統(tǒng)

文件系統(tǒng)是操作系統(tǒng)的重要組成部分。在嵌入式Linux系統(tǒng)啟動(dòng)時(shí),首先是啟動(dòng) U-Boot引導(dǎo)程序,然后便會(huì)進(jìn)入制作的文件系統(tǒng)中,如果沒(méi)有設(shè)置或掛載文件系統(tǒng),那么 Linux就會(huì)進(jìn)行系統(tǒng)報(bào)錯(cuò),并重新啟動(dòng)。在啟動(dòng)的同時(shí)可以手動(dòng)掛載新的文件系統(tǒng)。所以,可以制作多個(gè)不同的文件系統(tǒng),放在 Linux下[6]。

本文中制作的是yaffs2文件系統(tǒng)。制作好yaffs2文件鏡像后,移植到 ARM平臺(tái)上,移植步驟基本重復(fù) Bootloader移植步驟。

這3步成功燒寫(xiě)到開(kāi)發(fā)板上,儀表的系統(tǒng)平臺(tái)就構(gòu)建完成了,從Nand Flash啟動(dòng)儀表的系統(tǒng),如圖5所示。

圖5 系統(tǒng)平臺(tái)啟動(dòng)狀態(tài)圖

2.4 開(kāi)發(fā)調(diào)試應(yīng)用程序

軟件應(yīng)用程序?qū)⑹褂脤?zhuān)門(mén)為嵌入式Linux操作系統(tǒng)的消費(fèi)電子設(shè)備而開(kāi)發(fā)的應(yīng)用平臺(tái)——Qtopia構(gòu)建。Qtopia是構(gòu)建在Qt/Embeded上,專(zhuān)為嵌入式設(shè)備的圖形用戶(hù)接口和應(yīng)用開(kāi)發(fā)而設(shè)計(jì)的C++工具包[7]。其包含有完整的應(yīng)用層、用戶(hù)界面、窗口操作系統(tǒng)、應(yīng)用程序的啟動(dòng)程序和開(kāi)發(fā)框架。Qt/E開(kāi)發(fā)的應(yīng)用程序最終要成功在開(kāi)發(fā)板上運(yùn)行,開(kāi)發(fā)過(guò)程一般是先在Linux系統(tǒng)上使用Qt/E進(jìn)行應(yīng)用程序的編寫(xiě)和調(diào)試,進(jìn)行交叉編譯后下載到開(kāi)發(fā)板。

3 結(jié)論

本文提出了一種基于嵌入式Linux的養(yǎng)殖水質(zhì)監(jiān)控智能儀表的平臺(tái)設(shè)計(jì)。所介紹的儀表的模塊化架構(gòu)和系統(tǒng)的兩態(tài)工作模式能實(shí)現(xiàn)該智能儀表的高效率和低功耗工作。儀表的智能處理機(jī)制能有效降低養(yǎng)殖風(fēng)險(xiǎn)。文中還給出了該平臺(tái)系統(tǒng)的一種新的基于USB的詳細(xì)移植過(guò)程,實(shí)現(xiàn)了平臺(tái)系統(tǒng)從零到操作系統(tǒng)移植的實(shí)現(xiàn)過(guò)程,讓讀者更容易理解和實(shí)現(xiàn)。同時(shí),文中的模塊化的設(shè)計(jì)思想也可以有效地移植到其他實(shí)驗(yàn)平臺(tái)上。

總體而言,該智能儀表能滿(mǎn)足水產(chǎn)養(yǎng)殖領(lǐng)域的各項(xiàng)水質(zhì)參數(shù)監(jiān)測(cè)的要求,對(duì)實(shí)現(xiàn)未來(lái)養(yǎng)殖業(yè)的高效率和高質(zhì)量具有重要意義。

[1]蔡蘇華.基于ARM的養(yǎng)殖水質(zhì)監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與研究[D].南京:南京師范大學(xué),2012.

[2]吳宇.小型移動(dòng)水質(zhì)監(jiān)測(cè)系統(tǒng)的研究[D].杭州:浙江大學(xué),2013.

[3]羅志灶,周贏武,羅志仕.基于嵌入式 LINUX的智能儀表設(shè)計(jì)方案[J].微計(jì)算機(jī)信息,2010,26(10-2):73-75.

[4]曾寶國(guó),劉美岑.基于物聯(lián)網(wǎng)的水產(chǎn)養(yǎng)殖水質(zhì)實(shí)時(shí)監(jiān)測(cè)系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013,22(6):53-56.

[5]周桂成.嵌入式 Linux無(wú)線(xiàn)傳輸車(chē)載信息平臺(tái)關(guān)鍵技術(shù)研究與開(kāi)發(fā)[D].長(zhǎng)春:吉林大學(xué),2013.

[6]甄海濤,聶洪淼,陳慶文.基于嵌入式 Linux的根文件系統(tǒng)制作與移植[J].自動(dòng)化技術(shù)與應(yīng)用,2014,33(12):21-24.

[7]郝超,潘思陽(yáng),張文圳.基于 ARM的短信收發(fā)系統(tǒng)的設(shè)計(jì)[J].信息技術(shù),2013(5):111-114.

A platform design of intelligent instrument about aquaculture water quality monitoring w hich based on embedded Linux

Wang Chao1,Guo Xianjiu1,2,Yan Xiaotong2
(1.Information Engineering College,Dalian Ocean University,Dalian 116023,China;2.Liaoning Key Laboratory of Marine IT,Dalian 116023,China)

This paper introduces a kind of intelligent instrument design about aquaculture water quality monitoring based on embedded Linux.This instrument is made by ARM core processor to connect to other peripherals function modules,realizing hardware platform.By cutting and transplanting Linux kernel,it improves operating system,drivers and so on,and realizes the hardware platform of system successful installation.The substance in the field of intelligent instrument is mainly used for aquaculture each parameter monitoring,and is able to meet the needs of the future breeding of high efficiency and high quality.

intelligent instrument;platform design;transplant

TP302.1

A

1674-7720(2015)22-0086-03

王超,郭顯久,閻笑彤.基于嵌入式 Linux的養(yǎng)殖水質(zhì)監(jiān)控智能儀表的平臺(tái)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2015,34(22):86-88.

2015-06-26)

國(guó)家海洋公益淺海生物項(xiàng)目(201205023);遼寧省科技計(jì)劃項(xiàng)目(2012216012)

郭顯久(1963-),通信作者,男,博士,教授,主要研究方向:物聯(lián)網(wǎng)應(yīng)用技術(shù)。E-mial:gxj@dlou.edu.cn。

王超(1990-),男,碩士研究生,主要研究方向:物聯(lián)網(wǎng)應(yīng)用技術(shù)。

猜你喜歡
智能儀表開(kāi)發(fā)板內(nèi)核
萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
智能儀表的抗干擾和故障診斷研究
基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
Linux內(nèi)核mmap保護(hù)機(jī)制研究
智能儀表技術(shù)及工業(yè)自動(dòng)化應(yīng)用發(fā)展分析
智能儀表在動(dòng)態(tài)稱(chēng)重系統(tǒng)中的應(yīng)用
智能儀表在工業(yè)自動(dòng)化控制中的運(yùn)用研究
電子制作(2017年14期)2017-12-18 07:08:00
Microchip最新推出兩款PIC32 Curiosity開(kāi)發(fā)板
淺析單片機(jī)開(kāi)發(fā)板的設(shè)計(jì)與制作
電子制作(2017年22期)2017-02-02 07:10:14
武定县| 东乌| 红安县| 石渠县| 鸡泽县| 东安县| 兴城市| 辉县市| 同仁县| 彰武县| 水富县| 海宁市| 黄石市| 曲靖市| 乐至县| 元阳县| 尼玛县| 皮山县| 徐汇区| 孝感市| 沅江市| 普兰店市| 新昌县| 绥棱县| 景宁| 得荣县| 漳平市| 新巴尔虎左旗| 岳阳县| 怀仁县| 揭东县| 贡嘎县| 嘉定区| 石屏县| 和龙市| 冕宁县| 呼和浩特市| 额敏县| 井陉县| 岚皋县| 临夏县|