日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]一種基于物聯(lián)網(wǎng)的遠程監(jiān)控系統(tǒng)設計

摘要:為了實現(xiàn)工廠、交通等遠程監(jiān)控管理,系統(tǒng)設計采用DM900芯片和CC24300為主實現(xiàn)通信,核心部分主要包括ARM中央控制平臺及嵌入式Linux操作系統(tǒng)移植,創(chuàng)新之處在于融入了物聯(lián)網(wǎng)技術并巧妙地移植移植U-Boot和嵌入式Linux操作系統(tǒng)的編譯內(nèi)核配置。按照系統(tǒng)的整個工作軟件流程圖進行了試驗和聯(lián)調(diào),符合原設計目標,系統(tǒng)具有擴展性,通用性和能與其他監(jiān)控設備無縫連接等性能,以滿足不同工作環(huán)境的需要,可為其他基于物聯(lián)網(wǎng)的遠程監(jiān)控系統(tǒng)所借鑒和參考。
關鍵詞:ARM;物聯(lián)網(wǎng);嵌入式Linux操作系統(tǒng);遠程監(jiān)控

    遠程監(jiān)控系統(tǒng)現(xiàn)已成為現(xiàn)代化生產(chǎn)、生活中不可缺少的重要組成部分。目前,監(jiān)控系列產(chǎn)品種類繁多,大部分廣泛應用于交通、醫(yī)院、銀行、家居、學校等安防領域。伴隨著對物聯(lián)網(wǎng)(Internet of Things)應用研究的不斷深入,使得遠程監(jiān)控系統(tǒng)的應用領域更為廣泛。本
文創(chuàng)新點在于是基于物聯(lián)網(wǎng)、以ARM內(nèi)核芯片的嵌入式系統(tǒng)為核心技術的遠程監(jiān)控系統(tǒng)設計,其中巧妙地移植移植U-Boot和嵌入式Linux操作系統(tǒng)的編譯內(nèi)核配置。雖然主要是關于某市幾個重要路口的交通遠程監(jiān)控管理系統(tǒng)的核心設計內(nèi)容,但亦可為其他基于物聯(lián)網(wǎng)的遠程監(jiān)控系統(tǒng)所借鑒。

1 系統(tǒng)體系結構及功能
    本設計系統(tǒng)主要由控制模塊、ARM中央控制平臺、ZigBee無線傳輸、以太網(wǎng)通信和多個擴展接口等部分組成,實際中可根據(jù)需求和使用環(huán)境靈活地選用適合的接口進行操作,其體系結構如圖1所示。


    該系統(tǒng)主要是利用RS 232接口實現(xiàn)ARM嵌入式系統(tǒng)與Zigbee無線系統(tǒng)的連接進而實現(xiàn)網(wǎng)關設備的功能。通過ARM中央控制平臺和Zigbee芯片的RS 232線路驅動器/接收器MAX3221芯片來實現(xiàn)串行數(shù)據(jù)的通信。由于采用了常見的串口作為通信媒介,簡化了硬件設計。作為接收命令端的Zigbee芯片由于采用的是8051為內(nèi)核的CPU,時刻處于等待命令狀態(tài)。ARM中央控制平臺植入了Linux操作系統(tǒng),當運行了串口實現(xiàn)程序后,就可向Zigbee芯片發(fā)出采集信息的命令。因此系統(tǒng)主要的軟件實現(xiàn)就是Linux系統(tǒng)下的串口實現(xiàn)程序的設計。
    其中檢測控制模塊可以是溫度控制模塊、壓力了控制模塊、流量控制模塊等等實際監(jiān)控需檢測的參量模塊。各檢測控制模塊通過ZigBee模塊與ARM中央控制平臺實現(xiàn)無線連接,組成了一個星型無線智能控制網(wǎng)絡。同時ARM中央控制平臺通過以太網(wǎng)實現(xiàn)與外部遠程連接。從而實現(xiàn)遠程監(jiān)控。
1.1 ARM中央控制平臺
    在本設計中,ARM中央控制平臺是系統(tǒng)的核心,主要負責數(shù)據(jù)采集判斷處理。為了提高系統(tǒng)工作效率,設計中采用了ATMEL公司生產(chǎn)的ARM9芯片AT91RM9200。由于AT91RM9200處理器具有豐富的系統(tǒng)與應用外設及標準的接口,因此根據(jù)應用的需要很容易就可實現(xiàn)功能模塊的擴展。該芯片融合了ARM920T ARM Thumb處理器特性:工作于180 MHz時性能高達200 MIPS,存儲器管理單元,16 KB的數(shù)據(jù)緩存,16 KB的指令緩存,寫緩沖器,含有調(diào)試信道的內(nèi)部仿真器,中等規(guī)模的嵌入式宏單元結構(僅針對256 BGA封裝);低功耗:VDDCORE電流為30.4 mA,待機模式電流為3.1 mA;附加的嵌入式存儲器:SRAM為16 KB;ROM為128 KB;外部總線接口(EBI):支持SDRAM,靜態(tài)存儲器,Burst FLASH,無縫連接的CompactFlash Smart Media及NAND FLASH;提高性能而使用的系統(tǒng)外設:2個有雙PLL的片上振蕩器,低速的時鐘操作模式與軟件功耗優(yōu)化能力,4個可編程的外部時鐘信號,調(diào)試單元、兩線UART并支持調(diào)試信道,有8個優(yōu)先級的高級中斷控制器,獨立的可屏蔽中斷源,偽中斷保護,7個外部中斷源及1個快速中斷源,有122個可編程I/O口線的4個32位PIO控制器,各線均有輸入變化中斷及開漏能,20通道的外設數(shù)據(jù)控制器(DMA);10/100 Base-T型以太網(wǎng)卡接口:獨立的媒體接口(MII)或簡化的獨立媒體接口(RMII),對于接收與發(fā)送有集成的28 B FIFO及專用的DMA通道;USB 2.0全速(12 Mb/s)主機雙端口:雙片上收發(fā)器(208引腳PQFP封裝中僅為一個):集成的FIFO及專用的DMA通道;USB 2.0全速(12 Mb/s)器件端口:片上收發(fā)器,2 KB可配置的集成FIFO;多媒體卡接口(MCI):自動協(xié)議控制及快速自動數(shù)據(jù)傳輸,與MMC及SD存儲器卡兼容,支持2個SD存儲器;主機/從機串行外設接口(SPI):8~16位可編程數(shù)據(jù)長度,可連接4個外設;兩線接口(TWI):主機模式支持,所有兩線Atmel EEPRoM支持;所有數(shù)字引腳的IEEE 1149.1JTAG邊界掃描。
    正是由于AT91RM9200芯片具有以上特性,所以它完全滿足了本設計系統(tǒng)必須具備的3個條件:高速處理能力、高速數(shù)據(jù)通道、網(wǎng)絡接口。
1.2 ZigBee芯片
    本設計中ZigBee芯片選用Chipcon公司的無線收發(fā)芯片CC2430。CC2430是一個真正片上系統(tǒng)芯片,內(nèi)部集成一個高性能2.4 GHz直接序列擴頻(DSSS)射頻收發(fā)器核心和一個工業(yè)級加強型8051內(nèi)核,無需再選另外的處理器,使設計簡化。
1.3 以太網(wǎng)控制器
    本設計中以太網(wǎng)控制器采用是DAVICOM公司的DM9000,這是具有10/100 M自適應以太網(wǎng)芯片。其特點是:支持8位、16位、32位數(shù)據(jù)總線寬度;寄存器操作簡單有效,有成熟的Linux驅動程序支持;3.3 V接口電平;成本相當?shù)土?;還可以使用MII接口和PHY芯片連接。DM9000還提供了介質無關的接口,以連接所有提供支持介質無關接口功能的家用電話線網(wǎng)絡設10 Mb/s下3類、4類、5類非屏蔽雙絞線和100Mb/s下5類非屏蔽雙絞線。這是完全符合IEEE 802.3u規(guī)格。它的自動協(xié)調(diào)功能將自動完成配置以最大限度地適合其線路帶寬,還支持IEEE 802.3x全雙工流量控制。
[!--empirenews.page--]
2 軟件設計
2.1 移植U-Boot
    通用Bootloader(UniversaI Boot Loader,U-Boot)遵循GPL條款的開放源代碼項目。U-Boot支持大多CPU。U-Boot可以燒寫EXT2,JFFS2文件系統(tǒng)映象,支持串口下載、網(wǎng)絡下載,并提供了大量的命令。系統(tǒng)引導支持NFS掛載、RAMDISK(壓縮或非壓縮)形式的根文件系統(tǒng);支持NFS掛載,從FLASH中引導壓縮或非壓縮系統(tǒng)內(nèi)核。
2.1.1 U-Boot的下載
    可以從http://sourceforge.net/projects/U-Boot獲得U-Boot的最新版本,如果使用過程中碰到問題或是發(fā)現(xiàn)Bug,可以通過郵件列表網(wǎng)站http://lists.sourcef orge.net/lists/listinfo/U-Bootusers/獲得幫助。選擇1.1.2,文件名稱u-boot-1.1.2.tar.bz2。
2.1.2 修改U-Boot配置文件
   進入存放u-boot-1.1.2.tar.bz的目錄,運行tar-jxvfu-boot-1.1.2.tar.bz進行解壓,進入解壓后生成的文件夾u-boot-1.1.  2,它是按Atmel推薦的標準系統(tǒng)的配置SDRAM:32Mbytes NCS1;FLASH:8 MB NCS0來配置的,若系統(tǒng)的配置和推薦的不同,則需要修改。需要修改文件主要是下面幾個:./board/at91rm9200dk/config.mk,include/configs/+ at91rm9200dk.h,./board/at91rm9200dk /flash.c,flash.h在修改好U-Boot配置后,編譯運行即可。
2.2 嵌入式Linux操作系統(tǒng)移植
    AT91R1M9200芯片支持多種嵌入式操作系統(tǒng),但考慮到AT91RM9200支持從內(nèi)部的BOOTROM啟動或從外部的DATAFLASH、二線EEPROM或8位并行存儲器引導啟動,因此,本設計中,主要將Linux在AT91RM9200上進行移植。
2.2.1 嵌入式Linux操作系統(tǒng)
    嵌入式Linux操作系統(tǒng)由一個Kernel(內(nèi)核)及一些根據(jù)需要進行定制的系統(tǒng)模塊組成。其Kernel很小,一般只有幾百KB左右,即使加上其他必要的模塊和應用程序,所需的存儲空間也很小。它具有多任務、多進程的系統(tǒng)特征,有些還有具有實時性。一個小型的嵌入式Linux系統(tǒng)只需要引導程序、Linux微內(nèi)核(由內(nèi)存管理、進程管理和事務處理構成)、初始化進程3個基本元素組成。當然,實際應用中還需要讓它有更多的功能且繼續(xù)保持小型化,如加上文件系統(tǒng)(可以在ROM,RAM,F(xiàn)LASH或Disk Onchip中)、TCP/IP網(wǎng)絡支持、存儲更多數(shù)據(jù)用的磁盤、提供設計精簡的應用程序等。
2.2.2 內(nèi)核下載及編譯工具獲取
[!--empirenews.page--]

2.2.3 編譯內(nèi)核的配置
    編譯內(nèi)核最好使用root權限,參考linux-2.6.20/Documentation下相關說明即可。
   
    由于2.6.15-at91.patch.gz是標準的文本文件,所以這里直接用cat,這個命令后會出現(xiàn)一些patch文件信息,若出錯,則需要考慮patch版本是否匹配和linux源碼是否完整。然后修改Makefile將以下2行:

    于是會出現(xiàn)一些配置信息,由于是AT91RM9200系統(tǒng),所以用make at91rm9200dk-defconfig,用makehelp可以查看其他的make選項。
    make menuconfig
    在選擇System type->Atmel AT91 System-On-Chip后,檢查配置是否成功。
    如果確認上述配置成功,就可在menuconfig里面修改CONFIG_CMDLINE中的啟動參數(shù),把RAM盤大小從缺省值3 145 728 B(3 MB)修改成4 194 304 B(4 MB),注意這些參數(shù)是在啟動加載時用的,尤其是整合成的內(nèi)核時啟動要用到,不可以隨便修改,本統(tǒng)最后的參數(shù)為:

    經(jīng)過編譯,可在linux-2.6.20/arch/arm/boot下面獲得zlmage。
2.3 BusyBox的交叉編譯
    BusyBox最初是由Bruce Perens在1996年為Debian GNU/Linux安裝盤編寫的。其目標是在一張軟盤上創(chuàng)建一個可引導的GNU/Linux系統(tǒng),這可以用作安裝盤和急救盤,是很多標準Linux?工具的一個單個可執(zhí)行實現(xiàn)。BusyBox包含了一些簡單的工具,例如cat和echo等。由于很多標準Linux工具都可以共享很多共同的元素,當這些工具被合并到一個可執(zhí)行程序中時,它們就可以共享這些相同的元素,這樣可以產(chǎn)生更小的可執(zhí)行程序,這就為可引導的磁盤和使用Linux的嵌入式設備提供了更多功能。
2.3.1 下載BusyBox
    BusyBox是按照GNU General Public License(GPL)許可證發(fā)行的。目前可使用的、穩(wěn)定的版本BusyBox-1.3.0.bz2可以從網(wǎng)站http://www.husybox.net/下載。[!--empirenews.page--]
2.3.2 配置編譯BusyBox
      
    如果這里不選擇成靜態(tài)的二進制文件,那么在以后面做ramdisk時就需要把arm-linux下的一些動態(tài)庫復制到ramdisk的/lib里面去;不選擇Don’t use/usr,make install時busybox就不會安裝到本目錄的_install下,會覆蓋原來的usr/bin中內(nèi)容。由于Linux是開放源代碼(Open Source)的,不存在黑箱技術,遍布全球的眾多Linux愛好者又是Linux開發(fā)者的強大技術支持,所以其他需要程序的讀者按照自己的需要選擇下載后編譯整合Linux內(nèi)核和initrd成bootplmage,再下載bootpImage啟動Linux就可以了。
2.4 串口設計
    因為Zigbee CC2430為本設計的下位機,因此軟件設計主要集中在對ARM中央控制平臺的實現(xiàn)和Linux操作系統(tǒng)串口程序的實現(xiàn)上。因為目前Linux2.6x系列內(nèi)核對串口有很好的支持性,所以在Linux對串口驅動上的實現(xiàn)就很簡單,也可極大的簡化后期的維護,有利于推廣。Li nux串口實現(xiàn)程序主要是對串口包括波特率和停止位設置。串口的設置主要是設置struct termios結構體的各成員值。在Linux下串口文件位于/dev下,一般在內(nèi)核中串口1為/dev/ttySO,串口二為/dev/ttyS1,打開串口是通過標準的文件打開函數(shù)來實現(xiàn)的。當設置好后即可發(fā)送初始化的命令和等待接收命令。串口流程如圖2所示。


    在應用層面的設計中還包括WEB的設計實現(xiàn),遠程監(jiān)控系統(tǒng)的實現(xiàn),這里就不一一贅述。

3 結語
    本文論述的遠程監(jiān)控系統(tǒng)設計與以往的監(jiān)控系統(tǒng)不同,不僅采用了高性能的處理器芯片大大提高了系統(tǒng)的性能、還融入了物聯(lián)網(wǎng)技術。使這種遠程監(jiān)控能夠領域更加廣泛。并且在設計上充分考慮到了系統(tǒng)的可擴展性和兼容性問題,實現(xiàn)了本系統(tǒng)與其他系統(tǒng)的無縫連接,以滿足不同工作環(huán)境的需要。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據(jù)LED驅動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉