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

        ?

        自動(dòng)裝載與視頻監(jiān)控遠(yuǎn)程控制系統(tǒng)*

        2017-01-19 06:30:25李子昌管四海
        關(guān)鍵詞:嵌入式系統(tǒng)設(shè)計(jì)

        李子昌,李 智,管四海

        (西安電子科技大學(xué) 機(jī)電工程學(xué)院,陜西 西安 710071)

        自動(dòng)裝載與視頻監(jiān)控遠(yuǎn)程控制系統(tǒng)*

        李子昌,李 智,管四海

        (西安電子科技大學(xué) 機(jī)電工程學(xué)院,陜西 西安 710071)

        設(shè)計(jì)了一種嵌入式自動(dòng)裝載與視頻監(jiān)控系統(tǒng),并通過網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程控制。該系統(tǒng)采用S3C2410處理器,移植Linux操作系統(tǒng),成功運(yùn)行在S3C2410上。視頻監(jiān)控模塊使用的攝像頭是USB接口形式,移植對(duì)應(yīng)的Linux驅(qū)動(dòng)程序,攝像頭才能正常采集數(shù)據(jù)。移植Libjpeg開源庫,對(duì)經(jīng)硬件壓縮的圖像進(jìn)行解壓,通過顯示終端顯示,進(jìn)而實(shí)時(shí)對(duì)現(xiàn)場進(jìn)行監(jiān)控。自動(dòng)裝載模塊的實(shí)現(xiàn),首先設(shè)定期望的貨物擺放路徑,其次利用Framebuffer幀緩沖寫屏技術(shù)在顯示終端上顯示自動(dòng)裝載過程。通過Socket網(wǎng)絡(luò)接口,上位機(jī)可對(duì)該系統(tǒng)進(jìn)行遠(yuǎn)程控制。

        S3C2410;Linux;視頻監(jiān)控;自動(dòng)裝載;Libjpeg;Framebuffer;Socket

        0 引言

        至今為止,多數(shù)傳統(tǒng)工業(yè)領(lǐng)域的貨物裝卸和擺放還是靠人力完成[1],如搬運(yùn)水泥。惡劣的工作環(huán)境和繁重的體力勞動(dòng)給工作人員帶來巨大的勞動(dòng)負(fù)擔(dān),且對(duì)工人的身體健康有很大的危害。隨著物聯(lián)網(wǎng)技術(shù)的大力發(fā)展,如何利用嵌入式技術(shù),設(shè)計(jì)一套具有實(shí)時(shí)視頻監(jiān)控且能自動(dòng)裝載的系統(tǒng)成為當(dāng)下的關(guān)鍵問題。

        S3C2410處理器體積小巧,可節(jié)省板卡空間;功耗比大多數(shù)芯片要低很多,適合工作在對(duì)電源有特殊要求的環(huán)境中;主頻能夠達(dá)到203 MHz,具有很好的實(shí)時(shí)性能;具有內(nèi)存管理單元,因此可以移植并運(yùn)行操作系統(tǒng),處理更復(fù)雜的任務(wù)[2]?;谝陨咸攸c(diǎn),選擇S3C2410作為本系統(tǒng)主控制器。Linux操作系統(tǒng)支持創(chuàng)建多個(gè)用戶、處理多個(gè)任務(wù)[3],所以基于S3C2410+Linux的嵌入式系統(tǒng)成為第一選擇。Linux系統(tǒng)內(nèi)核中圖像采集設(shè)備的接口是Video4Linux,在此接口的基礎(chǔ)上,結(jié)合自己的設(shè)計(jì),開發(fā)出具有相應(yīng)功能的程序。基于Video4Linux開發(fā)視頻采集程序具有接口簡單、容易實(shí)現(xiàn)、開發(fā)周期短等特點(diǎn)[4],故受到廣泛關(guān)注。Libjpeg是一個(gè)開源庫,用來壓縮或解壓JPEG格式的圖像[5],可以在設(shè)計(jì)的程序中調(diào)用該庫提供的函數(shù),完成解壓過程,減少開發(fā)人員的工作量。Framebuffer[6]是Linux內(nèi)核中可由用戶調(diào)用的函數(shù)接口,通過這個(gè)接口,可以把圖形設(shè)備當(dāng)成緩沖區(qū)來使用, 圖形設(shè)備的操作與真實(shí)緩沖區(qū)的操作完全相同,可使用戶避免接觸底層繁瑣的操作,使開發(fā)變得簡單。利用Socket接口,通過網(wǎng)絡(luò)實(shí)現(xiàn)遠(yuǎn)程控制。

        綜上所述,本文提出一種基于S3C2410+Linux的嵌入式自動(dòng)裝載系統(tǒng),同時(shí)具有對(duì)現(xiàn)場進(jìn)行視頻監(jiān)控的功能。監(jiān)控和裝載系統(tǒng)的軟件是在Linux系統(tǒng)中開發(fā)的,內(nèi)核的版本是2.6.8.1,移植了相應(yīng)的開源庫。另外,根文件系統(tǒng)的類型有很多種,該系統(tǒng)采用的是cramfs[7],該類型只能讀,不能寫,對(duì)數(shù)據(jù)有保護(hù)功能。程序的開發(fā)工作主要由移植驅(qū)動(dòng)和開源庫、實(shí)現(xiàn)具有特定功能的程序等構(gòu)成。視頻監(jiān)控模塊由三部分組成:負(fù)責(zé)采集圖像的zc301p USB接口攝像頭、負(fù)責(zé)圖像處理的主控制器和顯示視頻的顯示終端。自動(dòng)裝載模塊主要由上述的主控制器和LCD顯示設(shè)備組成。自動(dòng)裝載應(yīng)用程序包括擺放路徑規(guī)劃程序和模擬過程的顯示畫面程序,并通過網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程控制。

        1 視頻監(jiān)控模塊設(shè)計(jì)

        視頻監(jiān)控應(yīng)用程序包含圖像數(shù)據(jù)的采集過程設(shè)計(jì)、圖像解壓縮函數(shù)的調(diào)用和LCD圖像顯示等。圖像數(shù)據(jù)采集過程調(diào)用了Video4Linux接口[4],將攝像頭的數(shù)據(jù)讀取到內(nèi)存中。

        初始化設(shè)備后,進(jìn)行視頻圖像的截取。一種視頻截取方式是將read()函數(shù)包含在自己的程序中,這樣程序就可以將緩沖區(qū)數(shù)據(jù)提取出來;第二種方式是采用內(nèi)存映射的方法讀取數(shù)據(jù),設(shè)計(jì)的程序要包含mmap()函數(shù),在程序中實(shí)現(xiàn)映射功能。內(nèi)存映射的方式有一個(gè)很大的優(yōu)點(diǎn),就是內(nèi)存共享,可大大提高訪問速度。這樣對(duì)文件的訪問不必再調(diào)用read()、write()等,各個(gè)進(jìn)程能及時(shí)看到共享內(nèi)存中數(shù)據(jù)的更新,進(jìn)而提高實(shí)時(shí)性。故此系統(tǒng)采用通過mmap()內(nèi)存映射的方法。

        1.1 用Libjpeg解壓jpeg數(shù)據(jù)

        本系統(tǒng)使用的Libjpeg庫是libjpeg-v6b,但libjpeg-v6b只支持文件格式的輸入。由于本系統(tǒng)采用的攝像頭是zc301p,此攝像頭所采集的數(shù)據(jù)是經(jīng)硬件壓縮的jpeg數(shù)據(jù)流,采集的數(shù)據(jù)直接保存在內(nèi)存中。然而Libjpeg庫并不支持這樣的輸入。此問題的解決方法是:修改Libjpeg庫的源碼,使其能夠解壓內(nèi)存中的jpeg數(shù)據(jù)流。

        1.2 視頻顯示模塊

        顯示模塊采用LCD顯示屏,每個(gè)像素用16位顏色表示,格式為RGB565,但通過Libjpeg庫函數(shù)解壓數(shù)據(jù),得到的圖像為GB888格式,即24位數(shù)據(jù),所以需要進(jìn)行格式轉(zhuǎn)化。

        本系統(tǒng)采用的硬件設(shè)備攝像頭采集的單幅圖片最大分辨率為640×480,所以內(nèi)存映射時(shí),映射的兩個(gè)尺寸參數(shù)必須是這兩個(gè)最大值。Libjpeg解壓出來的圖片與輸入圖片分辨率同樣大。由于顯示器的分辨率是480×272,當(dāng)輸入是640×480時(shí),超出了顯示屏的尺寸,圖像顯示不完全,結(jié)果如圖1。

        圖1 直接顯示的結(jié)果

        Libjpeg支持縮放解壓,可供選擇的縮放比例有1/2、1/4、1/8三種。選擇1/2的縮放比例,分辨率為320×240,有花屏和明顯的掃描痕跡,顯示效果如圖2。

        圖2 采用1/2縮放比例顯示的結(jié)果

        以上兩種情況盡管顯示出來的部分比較清楚,但總體效果不好。選擇1/4的縮放比例,分辨率為160×120,畫面比較清晰流暢,沒有花屏,也無掃描痕跡,顯示的效果比較理想,如圖3所示。

        圖3 采用1/4縮放比例顯示的結(jié)果

        選擇1/8的縮放比例,畫面清晰流暢,但畫面太小,不利于實(shí)時(shí)監(jiān)控,顯示效果如圖4。

        圖4 采用1/8縮放比例顯示的結(jié)果

        綜合三種縮放比例的分析和實(shí)驗(yàn)結(jié)果比較可知,1/4縮放比例是最佳選擇。

        2 自動(dòng)裝載的設(shè)計(jì)與實(shí)現(xiàn)

        自動(dòng)裝載的實(shí)現(xiàn)基于Framebuffer技術(shù)。Linux內(nèi)核fb_ops定義了Framebuffer設(shè)備的操作[6]。

        本系統(tǒng)使用的開發(fā)板型號(hào)是FS2410,處理器是S3C2410。

        由于顯示終端顯示的是RGB565格式,因此可通過對(duì)每個(gè)像素點(diǎn)直接賦值使framebuffer顯示顏色。

        下面利用仿真函數(shù)對(duì)framebuffer的控制來模擬實(shí)際水泥的自動(dòng)裝載過程。將顯示終端界面看作水泥擺放區(qū)域,用一塊白色矩形代表單袋水泥。從傳送帶落下的水泥每次都落在同一位置,因此選取顯示屏上一個(gè)固定區(qū)域作為水泥的落地點(diǎn)。在此選LCD左上角,周期性地使這塊區(qū)域變成白色即可。將顯示屏看成一個(gè)二維坐標(biāo)系,落地點(diǎn)為(0,0),按照路徑先沿行移動(dòng)、后沿列移動(dòng)的順序擺放,考慮到現(xiàn)實(shí)中的速度問題,每移動(dòng)一步,延遲1 s。此過程可建模成一個(gè)循環(huán)嵌套的過程,設(shè)定好每個(gè)具體位置應(yīng)該移動(dòng)的步數(shù),實(shí)現(xiàn)有序執(zhí)行。根據(jù)顯示屏的分辨率480×272,設(shè)定每袋水泥占的區(qū)域大小為60×80,行間隔16,列間隔10,即每行為7袋,每列為3袋,一層共21袋。設(shè)置不同的背景顏色代表不同的層,而每層的擺放方法是相同的,以便查看。在本系統(tǒng)中,共設(shè)計(jì)3層。第一層用藍(lán)色背景表示,裝載效果如圖5。

        圖5 第一層裝載效果

        第二層用紅色背景表示,裝載效果如圖6。

        圖6 第二層裝載效果

        第三層用綠色背景表示,裝載效果如圖7。

        圖7 第三層裝載效果

        另外,定義一個(gè)變量記錄裝載的數(shù)量,以供上位機(jī)調(diào)用。

        3 遠(yuǎn)程控制

        利用socket在ARM開發(fā)板和上位機(jī)之間實(shí)現(xiàn)網(wǎng)絡(luò)通信。將上位機(jī)和ARM開發(fā)板用交叉網(wǎng)線連接起來,利用socket編程,建立一個(gè)socket,采用服務(wù)器/客戶機(jī)的訪問模式,開發(fā)板作為服務(wù)器端,上位機(jī)作為客戶機(jī)端。實(shí)現(xiàn)通信后,利用上位機(jī)通過網(wǎng)絡(luò)來直接控制開發(fā)板的工作,實(shí)現(xiàn)遠(yuǎn)程控制。

        在雙方的通信過程中,約定好一套通信協(xié)議。由于本文只實(shí)現(xiàn)了模擬裝載和實(shí)時(shí)監(jiān)控兩個(gè)功能,因此在遠(yuǎn)程控制時(shí),只設(shè)定兩個(gè)命令即可。約定好A命令表示模擬裝載,B命令為觀看監(jiān)控錄像。通過這兩個(gè)命令,可以在上位機(jī)很好地遠(yuǎn)程控制下位機(jī)。

        4 結(jié)論

        本文提出的嵌入式自動(dòng)裝載與視頻監(jiān)控系統(tǒng),以S3C2410處理器作為主控制器,運(yùn)行Linux系統(tǒng),具有實(shí)現(xiàn)簡單、可擴(kuò)展性強(qiáng)等特點(diǎn)。通過嵌入式視頻監(jiān)控系統(tǒng)可以查看裝載現(xiàn)場的狀況,對(duì)于突發(fā)事件,能及時(shí)做出反應(yīng),保障裝載工作安全進(jìn)行。自動(dòng)裝載系統(tǒng)的設(shè)計(jì)為日后實(shí)際系統(tǒng)搭建打下了基礎(chǔ),對(duì)以后的工作具有重大意義。

        [1] 張慶平, 蘇國民. 特大型礦井全自動(dòng)裝卸系統(tǒng)的實(shí)現(xiàn)[J]. 工礦自動(dòng)化, 2002(6):41-42.

        [2] 彭鐵鋼, 劉國繁, 曹少坤,等. 基于ARM的嵌入式視頻監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)工程與設(shè)計(jì), 2010, 31(6):1191-1194.

        [3] 許青林, 解爭龍. 基于ARM的Linux系統(tǒng)移植研究與實(shí)現(xiàn)[J]. 物聯(lián)網(wǎng)技術(shù), 2013(1):37-38.

        [4] 王元偉, 劉國秀. 基于V4L的視頻采集系統(tǒng)的設(shè)計(jì)[J]. 鐵路計(jì)算機(jī)應(yīng)用, 2010, 19(7):30-34.

        [5] HONG J, SODSONG W, CHUNG S, et al. Design, implementation and evaluation of a task-parallel JPEG decoder for the Libjpeg-turbo library[J]. Oral Diseases, 2012, 12(12):117-120.

        [6] 雷鴻, 熊文龍, 楊單. 基于Fram ebuffer的LCD驅(qū)動(dòng)程序的實(shí)現(xiàn)[J]. 武漢理工大學(xué)學(xué)報(bào):交通科學(xué)與工程版, 2006, 30(1):106-109.

        [7] 盧劍翔, 劉成安, 胡和智,等. 基于s3c2410的CramFS根文件系統(tǒng)的移植[J]. 微計(jì)算機(jī)信息, 2006, 22(32):133-135.

        Remote control system for automatic loading and video monitoring

        Li Zichang,Li Zhi,Guan Sihai

        (School of Electro-Mechanical Engineering, Xidian University, Xi’an 710071, China)

        An embedded automatic loading and video monitoring system in remote control is proposed in this paper. The CPU of the system is equipped with S3C2410 processor and embedded Linux operating system. The video monitoring module uses USB interface camera, and the corresponding Linux driver is transplanted. With the Libjpeg open source library, the hardware compression image is extracted and displayed through the display terminal. To realize the automatic loading module, the desired goods placement path should be set first, and then using the Framebuffer frame buffer writing screen technology to display the automatic loading process on the display terminal. Through the Socket network interface, the host computer can realize the remote control for the system.

        S3C2410; Linux; video monitoring; automatic loading; Libjpeg; Framebuffer;Socket

        國家自然科學(xué)基金項(xiàng)目(61673310)

        TP13

        A

        10.19358/j.issn.1674- 7720.2017.01.001

        李子昌,李智,管四海.自動(dòng)裝載與視頻監(jiān)控遠(yuǎn)程控制系統(tǒng)[J].微型機(jī)與應(yīng)用,2017,36(1):1-3.

        2016-09-03)

        李子昌(1990-),男,碩士研究生,主要研究方向:嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)。

        李智(1961-),男,博士,教授,主要研究方向:復(fù)雜網(wǎng)絡(luò)、博弈演化、自適應(yīng)信號(hào)處理。

        管四海(1990-),男,博士研究生,主要研究方向:自適應(yīng)信號(hào)處理。

        猜你喜歡
        嵌入式系統(tǒng)設(shè)計(jì)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        瞞天過?!律O(shè)計(jì)萌到家
        搭建基于Qt的嵌入式開發(fā)平臺(tái)
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        Altera加入嵌入式視覺聯(lián)盟
        久久精品国产亚洲av网| 色欲AV成人无码精品无码| 日日骚一区二区三区中文字幕| 一区二区高清视频免费在线观看| 午夜精品久久久久久久| 婷婷色中文字幕综合在线| 国产在线视频国产永久视频| 一级二级三一片内射视频| 大奶白浆视频在线观看| 国产真人性做爰久久网站| 含羞草亚洲AV无码久久精品| 国产喷白浆精品一区二区豆腐 | 日本二区视频在线观看| 亚洲天堂av中文字幕在线观看| 毛片无码国产| 欧美va免费精品高清在线| 偷拍一区二区三区在线观看| 中文字幕亚洲一区二区不下| 久久久久人妻精品一区蜜桃| 国内精品伊人久久久久av| 亚洲av熟女天堂久久天堂| 精品国产一区二区三区2021| 男人边吃奶边做好爽免费视频| 亚洲综合综合在线| 日本一区二区三区光视频| 屁屁影院ccyy备用地址| 国产一区a| 国产自拍在线视频观看| 日本韩国男男作爱gaywww| 国产精品高潮呻吟av久久4虎| 尤物yw午夜国产精品视频| 在线观看视频免费播放| 男女做爰猛烈啪啪吃奶动 | 国产AV无码专区亚洲AV桃花庵| 女人天堂av免费在线| 夜夜爽日日澡人人添| 国产黑色丝袜在线观看下| 9lporm自拍视频区| 亚洲男人天堂av在线| 亚洲中文字幕第15页| 久久久久久无码av成人影院|