新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于WiFi的可實時視頻同傳的探測小車

        基于WiFi的可實時視頻同傳的探測小車

        作者: 時間:2016-10-15 來源:網絡 收藏

        摘要:為了在高溫、有毒等特定環境下進行視頻圖像數據、氣體參數等環境狀態的檢測,本文設計一種基于單片機的可視頻同傳的。Windows監控端通過DB120無線與單片機STC89C52控制中心通信,發送控制信號給電機驅動模塊L298N、LED模塊,實現小車轉向、進退及燈光的控制;攝像頭模塊、溫度傳感器模塊進行視頻數據、溫度數據的采集,并回傳給Windows監控端。

        本文引用地址:http://www.104case.com/article/201610/307278.htm

        引言

        隨著自動化技術的發展,智能控制廣泛應用在軍事、科研、民用領域。無線集成了電子、機械、通信、傳感器、計算機軟硬件、人工智能及自動控制等多方面的技術。此外,其成本低、體積小、操作簡單,能較好地應用在勘探、環境監測等應用。本文旨在設計一種能在高溫、有毒等特定環境下,進行遠距離無線遙控以及攝像、測溫探測的單片機小車控制系統。

        1 系統總體方案設計

        本項目設計的是集單片機控制模塊、攝像模塊、溫度傳感器模塊、照明模塊及路由模塊為一體,可視頻傳輸及環境探測的,其系統硬件結構框圖如圖1 所示。探測小車以單片機芯片STC89C52為控制中心,電機驅動模塊L298N進行小車直流電機的驅動控制,溫度傳感器進行外部環境的檢測,攝像頭模塊進行視頻圖像的采集,LED模塊進行照明,并通過無線WiFi路由模塊實現Windows控制端與小車的無線通信。

        a.jpg

        2 硬件設計及選型

        硬件部分主要采用市場上比較流行、穩定性高且性價比高的模塊,此外,大部分模塊都組裝簡單、升級方便、可移植性強,便于項目的開發及后續升級維護。例如,攝像頭可通過USB接口直接連到上,無需單片機轉發,簡化了視頻流的傳輸。

        2.1 電機驅動模塊

        電機驅動模塊選用L298N,可接收標準的TTL邏輯電平信號,可驅動46 V/2A以下的電機。其驅動模塊原理圖如圖2所示,L298N輸入電壓是12V,L298N的OUT1、OUT2和OUT3、OUT4之間分別接2個電機,本項目可直接使用單片機的I/O輸入口Port1~Port4,APWM、B PWM改變L298N的IN1、IN2、IN3、IN4引腳及ENA、ENB使能端,從而分別實現控制電機的正反轉及停止功能。

        b.jpg

        2.2 無線WiFi路由模塊

        無線WiFi路由模塊采用的是DB120,此路由器是OpenWRT系統,刷機升級十分簡單。本項目可以通過網絡下載,在同一網段內通過瀏覽器登錄192.168.1.1,選擇“0829-openwrt-rc6-RG100A_DB120-squashfs-cfe.bin”版本的固件進行燒錄。固化后,該路由模塊可作為轉發站,實現USB攝像頭的加載及與單片機的串行通信。

        2. 3 攝像頭模塊

        本項目選用中星微301主控芯片的USB攝像頭模塊,通過簡單的路由設置就能快速實現攝像頭的掛載。掛載成功后,可通過路由器的WiFi轉發攝像頭的動態視頻至Windows控制端。

        2.4 溫度傳感器模塊

        本項目選用DALLAS公司生產DS18B20的一線式溫度傳感器,進行外部環境數據的監測,其線路簡單,僅有GND、DQ、VDD三個引腳。其中,DQ為數字信號輸入/輸出端,GND為電源地,VDD為外接供電電源輸入端。

        3 軟件設計

        本項目中,用戶監控端與探測小車通過WiFi路由進行數據傳輸,因此,開發人員在軟件設計與實現過程中需要對小車進行控制編程、監控視頻動態顯示、控制界面GUI設計及網絡編程(Socket編程)。

        項目開發過程中,選用Keil C51開發環境,對探測小車進行軟件編程,實現對外部環境的測溫及小車電機的控制;選用編程簡單靈活、可移植性強的QT開發環境,進行Wind ows控制端的GUI設計、Socket編程及視頻動態顯示。此外,還選用了單片機多功能調試助手軟件、TCPUDP—Debug軟件進行單片機的通信測試。

        3.1 小車電機控制編程

        進行電機驅動模塊L298N的電路連線,Port1~Port4分別為P2^0~P2^3,查閱L298N的數據手冊,對照其邏輯功能表在Keil C51下進行電機前進、后退、左轉、右轉和停止的編程。編程樣例如下所示:

        c.jpg

        3.2 Socket編程

        探測小車與路由器通信中,主要用到了QTcpSocket客戶端和QTcpServer服務器,其中本項目進行監控端Socket編程。按照通信的交互時序,先創建TcpSocket類,然后建立連接。其關鍵代碼如下:

        d.jpg

        f.jpg

        3.3 監控端GUI設計及視頻動態顯示

        進行監控端界面設計時,需考慮到整個界面的布局及易操作性。本項目選用WebView控件進行視頻的顯示;ButtonBox控件作為前后左右等按鈕開關;Label控件顯示溫度值、時間和標題;LineEdit控件作為IP和端口號輸入端。

        由于WebView控件只能加載路由轉發的靜態圖像,因此,為了實現監控端實時視頻動態顯示,除了進行IP地址及端口號綁定設置外,還需要多加一個定時器來動態刷新。以下為關鍵代碼:

        e.jpg

        3.4 實驗結果

        通過軟硬件設計、編程調試及后期功能測試,探測小車系統能較好地實現小車控制、外部環境監測、視頻實時動態顯示、LED照明等功能,整個控制過程中,可操作性較強系統啟動后,用戶只需進行IP及端口的綁定設置,然后單擊“連接”按鈕;連接成功后,該按鈕將變成“已連接”狀態且右邊的紅色標識變成綠色,此時,通過監控端上的按鈕,用戶可對小車進行前后左右的控制、開關LED燈、獲取實時視頻圖像及外部環境溫度。Windows監控端如圖3所示。

        g.jpg

        結語

        基于WiFi的實時視頻同傳的探測小車是一個集單片機、路由器、攝像頭、QT等各種軟硬件于一體的智能化探測小車系統。本系統只是一個基礎平臺,包括小車行走控制、燈光控制、測溫、實時視頻傳輸、數據回傳功能,其軟硬件設計簡潔,開發成本低。在今后的研究中,針對不同的應用及環境特性,項目研發人員可以在此基礎上增加相關模塊功能,如云臺舵機、機械手臂、氣體檢測傳感器模塊,可對外部環境實現全方位的視頻監控、危險物品拾取、有毒氣體的預警等。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 蓬溪县| 西乡县| 庆城县| 察哈| 雅江县| 铜梁县| 探索| 广南县| 琼中| 灌云县| 浦县| 凤翔县| 沈阳市| 鸡泽县| 唐海县| 库尔勒市| 吉林省| 康保县| 旬邑县| 资阳市| 内乡县| 宝清县| 尖扎县| 栾川县| 临西县| 罗定市| 淮安市| 双流县| 鄂伦春自治旗| 张家口市| 庄浪县| 界首市| 大姚县| 大化| 德兴市| 防城港市| 酒泉市| 清苑县| 新昌县| 蒙城县| 安徽省|