亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ARM9 的嵌入式監(jiān)控系統(tǒng)設(shè)計(jì)*

        2021-02-04 05:12:34李來(lái)文陳希明劉澤源裴永旭黃楚俊
        科技創(chuàng)新與應(yīng)用 2021年7期
        關(guān)鍵詞:開(kāi)發(fā)板文件夾插件

        李來(lái)文,陳希明,劉澤源,周 昕,裴永旭,黃楚俊

        (哈爾濱理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,黑龍江 哈爾濱 150080)

        1 概述

        本系統(tǒng)采用iTop4412 開(kāi)發(fā)板作為開(kāi)發(fā)平臺(tái),借助Linux 操作系統(tǒng)來(lái)實(shí)現(xiàn)軟件上的需求,通過(guò)網(wǎng)線連接路由器,然后在嵌入式系統(tǒng)上搭建Boa Web(Boa Webserver)服務(wù)器,通過(guò)移植MJPG-streamer 軟件采集攝像頭數(shù)據(jù)。用戶只需要通過(guò)電腦端瀏覽器或者手機(jī)端App 即可查看實(shí)時(shí)監(jiān)控畫(huà)面。

        在iTop4412 上運(yùn)行定制的Linux 系統(tǒng),開(kāi)發(fā)板搭載UVC 攝像頭的基礎(chǔ)上,將 Mjpeg-streamer、Boa Web 移植到開(kāi)發(fā)板,根據(jù)開(kāi)發(fā)板IP 地址,編寫(xiě)html 文件、App,最終實(shí)現(xiàn)在電腦端和手機(jī)App 上隨時(shí)查看監(jiān)控畫(huà)面的功能。

        系統(tǒng)整體方案設(shè)計(jì)如圖1 所示。

        圖1 系統(tǒng)整體方案

        2 系統(tǒng)設(shè)計(jì)主要任務(wù)

        本系統(tǒng)主要利用iTop4412 開(kāi)發(fā)板搭建遠(yuǎn)程監(jiān)控系統(tǒng)。設(shè)計(jì)任務(wù)分為適配硬件、移植軟件、網(wǎng)頁(yè)設(shè)計(jì)、制作App 四個(gè)部分。

        2.1 適配硬件

        本系統(tǒng)應(yīng)用USB2.0 的UVC 攝像頭,通過(guò)定制內(nèi)核,確保攝像頭在開(kāi)發(fā)板上正常運(yùn)行。

        2.2 軟件移植

        本系統(tǒng)的軟件部分主要包括Linux 操作系統(tǒng)內(nèi)核的定制,根據(jù)需求來(lái)添加或者移除相應(yīng)的驅(qū)動(dòng)。還包括移植Boa Web 服務(wù)器及移植MJPG-streamer 視頻流服務(wù)器。

        2.3 網(wǎng)頁(yè)設(shè)計(jì)

        搭建輕量級(jí)的Web 服務(wù)器Boa Web,通過(guò)IP 地址訪問(wèn)服務(wù)器時(shí),需要登陸首頁(yè)。本監(jiān)控系統(tǒng),首頁(yè)直接顯示監(jiān)控畫(huà)面、報(bào)警器操控按鈕即可。

        2.4 移動(dòng)端 App 設(shè)計(jì)

        本遠(yuǎn)程監(jiān)控系統(tǒng)除了提供電腦端瀏覽器訪問(wèn)之外,還支持手機(jī)端瀏覽器及App 訪問(wèn)方式。手機(jī)端瀏覽器訪問(wèn)與電腦端相同,只需要設(shè)計(jì)App 即可。打開(kāi)App 后,點(diǎn)擊開(kāi)始按鈕,即可在App 中看到監(jiān)控畫(huà)面;點(diǎn)擊返回按鈕,即可停止監(jiān)控,回到輸入IP 地址和端口的界面。更改IP 地址或端口后,可繼續(xù)查看其他攝像頭的監(jiān)控畫(huà)面。

        通過(guò)Android Studio 進(jìn)行Android 開(kāi)發(fā),最終在Android 10 真機(jī)上測(cè)試,確保App 能夠正常使用。

        3 系統(tǒng)可行性分析

        3.1 開(kāi)發(fā)平臺(tái)選擇

        為確保USB 攝像頭能獲取清晰度較高的視頻采集結(jié)果,同時(shí)保證嵌入式視頻監(jiān)控系統(tǒng)的性能更加穩(wěn)定,必須采用性能較高的處理器作為開(kāi)發(fā)平臺(tái)。

        本系統(tǒng)主芯片采用Exynos-4412,該CPU 功能強(qiáng)大,性能卓越,適用于要求系統(tǒng)具有高穩(wěn)定性、高可靠性,以及高效處理和響應(yīng)的場(chǎng)合。對(duì)于嵌入式視頻監(jiān)控系統(tǒng)而言,為用戶提供滿意效果,保證系統(tǒng)的穩(wěn)定性和可靠性是前提。對(duì)該課題而言,基于Exynos-4412 的芯片是合理選擇,既滿足了設(shè)計(jì)上的要求,同時(shí)兼顧價(jià)格的考慮。

        3.2 USB 攝像頭

        USB 攝像頭即插即用,無(wú)需獨(dú)立電源,絕大多數(shù)平臺(tái)都支持。與傳統(tǒng)監(jiān)控?cái)z像頭相比,成本更低,而且品牌、性能眾多,使用者可根據(jù)實(shí)際需求與資金情況,購(gòu)買合適的USB 攝像頭產(chǎn)品使用。同時(shí)Linux 內(nèi)核中有V4L2 攝像設(shè)備的驅(qū)動(dòng)支持,兼容USB 攝像頭。即只要將V4L2 驅(qū)動(dòng)加入到內(nèi)核,在開(kāi)發(fā)板上插入U(xiǎn)SB 攝像頭后,開(kāi)發(fā)板即能正常識(shí)別設(shè)備,USB 攝像頭正常運(yùn)行。

        鑒于上述特點(diǎn),本系統(tǒng)選用USB 攝像頭作為視頻采集設(shè)備。

        3.3 軟件方案

        本設(shè)計(jì)的重點(diǎn),主要是軟件部分的編寫(xiě)。軟件主要從以下幾個(gè)方面進(jìn)行設(shè)計(jì)。首先是選用什么樣的操作系統(tǒng)作為開(kāi)發(fā)環(huán)境,由于Linux 開(kāi)源、功能豐富、強(qiáng)大的網(wǎng)絡(luò)功能等特點(diǎn),因此選擇Linux 作為本課題的系統(tǒng)。然后在Linux 操作系統(tǒng)上搭建 Boa Web 服務(wù)器、MJPG-streamer,通過(guò)服務(wù)器將數(shù)據(jù)傳輸出去,在手機(jī)或者電腦上訪問(wèn)相應(yīng)網(wǎng)頁(yè)或手機(jī)APP,就可以實(shí)時(shí)查看攝像頭捕捉到的視頻畫(huà)面。

        對(duì)于服務(wù)器傳輸?shù)囊曨l流數(shù)據(jù),在電腦端可以利用瀏覽器直接訪問(wèn)IP 地址和端口,所以電腦端不需要編寫(xiě)代碼。

        對(duì)于手機(jī)端提供兩種方法查看監(jiān)控。第一種方式是直接通過(guò)瀏覽器訪問(wèn)IP 地址和端口號(hào);第二種就是通過(guò)App 直接查看監(jiān)控畫(huà)面。

        4 系統(tǒng)具體實(shí)現(xiàn)

        4.1 移植MJPG-streamer

        MJPG-streamer 是一款免費(fèi)的基于IP 地址的視頻流服務(wù)器,它的輸入插件從攝像頭讀取視頻數(shù)據(jù),并將視頻數(shù)據(jù)復(fù)制到內(nèi)存中,有多個(gè)輸出插件可將這些視頻數(shù)據(jù)進(jìn)行處理,其中最重要的輸出插件是網(wǎng)站服務(wù)器插件,它將視頻數(shù)據(jù)傳送到用戶瀏覽器中,MJPG-streamer 的工作就是將其中的一個(gè)輸入插件和多個(gè)輸出插件綁定在一起,所有的工作都是通過(guò)它的各個(gè)插件完成的。

        Mjpeg-Streamer 的移植需要jpeg 庫(kù),所以必須首先移植jpeg 庫(kù),在網(wǎng)上下載jpeg 源碼jpegsrc.v8b.tar.gz,拷貝到Ubuntu 目錄下。終端進(jìn)入剛解壓出來(lái)的目錄執(zhí)行:

        ./configure --host=arm-none-linux-gnueabi --prefix=/home/user/out_jpeg 命令配置編譯器與安裝目錄。執(zhí)行make 命令編譯,執(zhí)行make install 命令將其安裝至指定目錄。

        下載mjpg-streamer-r63.tar.gz,并解壓到Ubuntu 的一個(gè)目錄下。修改源碼頂層目錄下的Makefile 文件,指定gcc 編譯器,指定動(dòng)態(tài)庫(kù)。

        修改plugins/input_uvc/makefile 文件,進(jìn)行如圖2 所示的修改。

        修改plugins/output_http/Makefile,進(jìn)行如圖3 所示的修改。

        圖 2 input_uvc 修改

        圖 3 output_http 修改

        圖4 修改start 文件

        圖5 App 程序流程圖

        配置完成后make,之后將運(yùn)行程序需要的依賴庫(kù)和可執(zhí)行程序拷貝到開(kāi)發(fā)板目錄下。

        在開(kāi)發(fā)板的根目錄下創(chuàng)建camera 目錄,將input_uvc.so、libjpeg.so.8、mjpg_streamer、output_http.so、start.sh 以及文件夾www,拷貝到開(kāi)發(fā)板的camera 目錄下。其中,input_uvc.so、libjpeg.so.8、output_http.so 是程序運(yùn)行所需要的依賴庫(kù),start.sh 是執(zhí)行程序的 shell 腳本,mipg_streamer 是可執(zhí)行程序。

        將USB 攝像頭插入開(kāi)發(fā)板,超級(jí)終端查看設(shè)備號(hào),之后對(duì)start.sh 文件修改,指定攝像頭設(shè)備號(hào),如圖4 所示。

        4.2 移植 Boa Web 服務(wù)器

        Boa Web 服務(wù)器是專門(mén)為嵌入式平臺(tái)開(kāi)發(fā)的輕量級(jí)Web 服務(wù)器。本設(shè)計(jì)使用Boa Web 服務(wù)器的原因是當(dāng)用戶通過(guò)電腦或手機(jī)訪問(wèn)服務(wù)器時(shí),可以直接通過(guò)IP 地址查看實(shí)時(shí)監(jiān)控。

        官網(wǎng)下載BOA 源碼“boa-0.94.13.tar.gz”解壓到Ubuntu 指定目錄下。

        解壓后會(huì)有名字為boa-0.94.13 的文件夾。進(jìn)入這個(gè)文件夾下的src 文件夾里,運(yùn)行./configure 生成Makefile編譯文件。

        打開(kāi)剛生成的Makefile 文件,修改其中兩個(gè)參數(shù),指定 gcc 編譯器為:arm-none-linux-gnueabi-gcc。

        打開(kāi)compat.h 文件,在第123 行代碼左右找到#define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff 一行,改為 #define TIMEZONE_OFFSET(foo) foo->tm_gmtoff。

        保存后退出,接著make 編譯,對(duì)生成的boa 文件使用命令arm-none-linux-gnueabi-strip boa,進(jìn)行瘦身。

        接下來(lái)將boa 文件拷貝到開(kāi)發(fā)板的bin 目錄下;在開(kāi)發(fā)板的etc 目錄下新建boa 文件夾,在根目錄下新建www 文件夾,在www文件夾內(nèi)新建cgi-bin 文件夾;將boa.conf 拷貝到開(kāi)發(fā)板的etc/boa目錄下;接著將Ubuntu 的etc 目錄下的mime.types 拷貝到開(kāi)發(fā)板的etc 目錄下。進(jìn)入到開(kāi)發(fā)板/etc/boa/,打開(kāi) boa.conf,進(jìn)行如下修改。

        (1)首先將該文件第49 行左右的 Group nogroup 修改為Group root。

        (2)其次將該文件第96 行左右的#ServerName www.your.org.here 修改為 ServerName www.your.org.here。

        (3)第三將該文件第115 行左右的 DocumentRoot /var/www 修改為 DocumentRoot /www 這里的“/www”就是前面步驟使用mkdir 創(chuàng)建的www 目錄。

        (4)最后將該文件第194 行左右的 ScriptA1ias /cgi-bin//usr/1ib/cgi-bin/修改為 ScriptAlias /cgi-bin/ /www/cgi-bin/。

        保存后退出。接著運(yùn)行boa 程序,再運(yùn)行剛才的start.sh 文件,在電腦瀏覽器直接輸入開(kāi)發(fā)板IP 地址即可查看監(jiān)控畫(huà)面。

        4.3 安卓 App 設(shè)計(jì)

        安卓App 使用Android Studio 開(kāi)發(fā),依據(jù)系統(tǒng)需要,編寫(xiě)程序,在真機(jī)上進(jìn)行功能測(cè)試,最終完成整個(gè)App的開(kāi)發(fā)。整個(gè)程序流程如圖5 所示。

        5 結(jié)束語(yǔ)

        本文結(jié)合嵌入式技術(shù)以及監(jiān)控系統(tǒng)技術(shù),從實(shí)際應(yīng)用出發(fā),提出了一種基于 ARM9 的嵌入式 Web 視頻監(jiān)控系統(tǒng)的設(shè)計(jì)方案,完成了系統(tǒng)的具體實(shí)現(xiàn),有一定的實(shí)用價(jià)值。

        猜你喜歡
        開(kāi)發(fā)板文件夾插件
        磁力文件夾
        自編插件完善App Inventor與樂(lè)高機(jī)器人通信
        電子制作(2019年22期)2020-01-14 03:16:34
        調(diào)動(dòng)右鍵 解決文件夾管理三大難題
        Microchip最新推出兩款PIC32 Curiosity開(kāi)發(fā)板
        淺析單片機(jī)開(kāi)發(fā)板的設(shè)計(jì)與制作
        電子制作(2017年22期)2017-02-02 07:10:14
        MapWindowGIS插件機(jī)制及應(yīng)用
        TC一鍵直達(dá)常用文件夾
        電腦迷(2015年1期)2015-04-29 21:24:13
        基于Revit MEP的插件制作探討
        Mouser為您呈上開(kāi)發(fā)關(guān)鍵之STMicroelectronics Nucleo開(kāi)發(fā)板
        Arduino和Atmel發(fā)布Arduino Zero開(kāi)發(fā)板
        日本av一区二区三区视频| 亚洲中文久久久久无码| 亚洲一区二区三区av色婷婷| 日韩一级黄色片一区二区三区 | 人妻少妇精品视中文字幕国语| 亚洲天天综合色制服丝袜在线| 亚洲免费福利视频网站| 欧洲美熟女乱av亚洲一区| 中文字幕人妻熟女人妻洋洋| 日韩一区二区超清视频| 国产盗摄一区二区三区av| 亚洲成熟女人毛毛耸耸多| 国产乱人视频在线播放| 亚洲日韩精品久久久久久| 日本特殊按摩在线观看| 成人区人妻精品一区二区三区| 熟妇人妻无乱码中文字幕| 亚洲av日韩av一卡二卡| 91久久精品一区二区三区大全| 少妇被爽到高潮喷水久久欧美精品| 永久免费av无码网站性色av | 影视先锋av资源噜噜| 亚洲成人av一区二区三区| 伊人婷婷综合缴情亚洲五月| 亚洲乳大丰满中文字幕| 色狠狠色狠狠综合一区| 日本黄色一区二区三区视频 | 亚洲va久久久噜噜噜久久天堂| 国产人妻久久精品二区三区| 国产欧美日本亚洲精品一4区| 中文字幕中文字幕777| 免费视频成人片在线观看 | 国产精品福利久久香蕉中文| 亚洲精品国产综合久久| 影音先锋色小姐| 人妻无码一区二区| 成人av在线免费播放| 18禁止看的免费污网站| 九九99无码精品视频在线观看| 日韩美女av二区三区四区| 国产一区国产二区亚洲精品|