• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于安卓手機端實現的可視倒車系統(tǒng)設計

      2022-05-24 11:43:56許龍銘徐宗銳
      電子設計工程 2022年10期
      關鍵詞:安卓攝像頭語音

      許龍銘,徐宗銳

      (廣州城市理工學院通信工程學院,廣東 廣州 510800)

      近年來,汽車技術不斷發(fā)展,人們越來越重視汽車安全問題[1]。車周圍相對較近的區(qū)域是駕駛者的視野盲區(qū)[2-4],汽車在倒車時極易引發(fā)碰撞,同時倒車的失誤會引發(fā)較多交通事故的發(fā)生[5-6]。汽車倒車系統(tǒng)一般分為倒車影像和倒車雷達兩種,汽車廠商為了不同配置車型的營銷往往在中高配車型上才會選擇一種或者兩種倒車系統(tǒng)安裝,導致了部分車主只能自行加裝。加裝的倒車系統(tǒng)需要在中控上安裝一個或兩個顯示器件,甚至需要改變原車線路,造成了安全隱患。文中設計的汽車倒車系統(tǒng)同時整合了倒車影像和倒車雷達,使用安卓手機端APP 進行監(jiān)控視頻和倒車距離的顯示,解決了汽車加裝倒車系統(tǒng)的局限性。

      1 方案設計

      倒車系統(tǒng)的結構如圖1 所示,主控制器使用聯發(fā)科公司的MT7688 平臺,搭建基于OpenWrt Linux發(fā)行版的開放式開發(fā)平臺。然后驅動USB 連接的UVC 攝像頭采集實時倒車影像數據、雷達檢測倒車距離數據,兩路數據分別由主控制器通過WIFI 發(fā)送給駕駛員的安卓手機端APP 進行顯示和距離預警等處理。系統(tǒng)設計了離線模式,當未使用APP 連接時,也可作為正常的倒車雷達使用,可在倒車過程中進行距離播報和報警提示。

      圖1 倒車系統(tǒng)結構圖

      整個可視倒車系統(tǒng)主要由5 個部分組成:

      1)MT7688 主控,作為整個系統(tǒng)的核心,主要進行攝像頭圖像數據處理、雷達傳感器數據采集、TTS語音處理以及局域網數據傳輸。

      2)雷達電路,檢測汽車實時的倒車距離。

      3)UVC 攝像頭,采集實時的倒車圖像數據。

      4)TTS電路,播報實時倒車距離并進行報警提示。

      5)安卓手機端APP,整個系統(tǒng)的用戶交互接口。

      2 硬件設計

      2.1 MT7688

      可視倒車系統(tǒng)使用LinkIt Smart 7688 核心板作為主控。LinkIt Smart 7688 搭載的是聯發(fā)科公司的MT7688AN 芯片,MT7688AN 作為一顆系統(tǒng)級別的芯片,能夠提供高性能的802.11n 1T1R WiFi 和各種周邊連接能力。

      LinkIt Smart 7688 核心板IO 圖如圖2 所示,對外提供了常用的PWM、I2C、SPI、I2S 和UART 等數字通信接口,安裝了OpenWrt 操作系統(tǒng)可支持Python、Node.js 和C 語音等編程語言,能夠驅動外圍硬件進行物聯網產品的快速開發(fā)。

      圖2 LinkIt Smart 7688 IO圖

      2.2 UVC攝像頭電路

      UVC 攝像頭的選用基于標準的USB 視頻設備協議。由于各大主流操作系統(tǒng)均提供了設備驅動支持[7],文中選用的是一款30 W 像素的UVC 攝像頭,支持YUV/MJPG 動態(tài)格式的輸出,最大支持640×480的分辨率,性能滿足倒車影像的圖像數據采集需求。

      2.3 雷達電路

      雷達電路中選用收發(fā)一體式超聲波傳感器,搭載超聲波驅動專用集成電路芯片—LM1812。LM1812芯片內部的主要器件由以下幾部分組成:脈沖調制C 類振蕩器、高增益接收器、脈沖調制檢測器和噪音抑制器。

      雷達電路如圖3 所示,將LM1812 芯片的第1 腳外接L1、C1,并由此決定電路發(fā)送的工作頻率,其工作頻率f0=1/2π[8]。

      圖3 雷達電路圖

      LM1812 的8 號引腳用于切換發(fā)射/接收模式,當8 號引腳為低電平時,LM1812 工作于接收模式;當8號引腳為高電平時,LM1812 工作于發(fā)射模式。由于LM1812 芯片需要12 V 電壓驅動,因此MT7688 主控與LM1812 連接時需要進行電壓轉換,即MT7688 通過IN 引腳,經過電平轉換電路放大IO 的電壓信號后輸入到LM1812 中。LM1812 的14 號引腳(OUT)為輸出端,接MT7688 的外部中斷IO。

      2.4 TTS電路

      為了保證用戶未使用手機連接可視倒車系統(tǒng)也能夠提供基本的倒車雷達功能,文中設計了基于SYN6288 語音合成芯片的TTS 電路,用于在離線模式下進行倒車距離的播報和報警提示。

      TTS 電路如圖4 所示,SYN6288 是一款采用異步串口(UART)通信的語音合成芯片,因此將SYN6288的TxD 和RxD 連接到MT7688 的串口后,向SYN6288發(fā)送文本數據,便可輸出對應的語音信號,實現文本到語音的轉換。

      圖4 TTS電路

      3 軟件設計

      3.1 MT7688下位機軟件設計

      3.1.1 移植OpenWrt

      OpenWrt 是一個高度模塊化、高度自動化的嵌入式Linux 系統(tǒng)[9],作為主流路由器的固件使用。OpenWrt 區(qū)別于其他單一的、靜態(tài)的系統(tǒng),最重要的是其提供了一個完全可寫的文件系統(tǒng)。

      在MT7688 平臺上移植OpenWrt 的步驟如圖5所示,整個移植過程包括以下4 個步驟。

      圖5 OpenWrt移植步驟

      1)安裝依賴

      由于該文是在Ubuntu 系統(tǒng)下進行的OpenWrt 系統(tǒng)編譯,因此首先需要在Ubuntu 下搭建編譯環(huán)境,安裝U-Boot 和OpenWrt 源碼編譯所需要的依賴庫。

      2)編譯U-Boot

      從GitHub 上下載U-Boot 源碼,使用交叉編譯工具編譯源碼,編譯完成后得到U-Boot 鏡像文件。

      3)編譯OpenWrt 源碼

      下載了OpenWrt 源碼后,根據需求修改配置文件,編譯完成后得到目標平臺的OpenWrt 固件。

      4)燒寫固件

      通過TFTP 燒寫U-Boot 和OpenWrt 固件。

      3.1.2 mjpeg-streamer視頻服務器搭建

      mjpeg-streamer 是一款免費的視頻流服務器軟件[10],倒車影像的實現主要由mjpeg-streamer 視頻服務器實現,因此需要在OpenWrt 系統(tǒng)上搭建服務器。

      首先下載UVC攝像頭對應的驅動,在OpenWrt上進行安裝,安裝完成后測試系統(tǒng)能夠成功識別設備。

      然后對mjpeg-streamer 進行配置,設置攝像頭設備名、分辨率和幀率等,再將服務器設置為開機自啟動。

      MT7688主控重啟后,首先驅動UVC攝像頭采集圖片,用服務器中的JPEG圖庫存儲圖片數據流。用戶再使用瀏覽器通過html進行解析,用mjpeg-streamer持續(xù)進行流程控制,最終實現mjpeg-streamer視頻服務器。

      3.1.3 Python主程序設計

      Python 是現在最流行、最常用的編程語言[11],文中的MT7688 下位機軟件使用Python 進行編寫。

      由于視頻傳輸由mjpeg-streamer 服務器完成,因此MT7688 下位機軟件的主要工作包括:

      1)搭建TCP 服務器

      為了與安卓手機端APP 進行通信,采用基于TCP協議的上、下位機通訊模式[12],因此需要在OpenWrt上搭建TCP 服務器,用于傳輸倒車距離數據。

      2)倒車距離檢測

      采用LM1812 驅動超聲波探頭檢測實時倒車距離,由MT7688 對數據進行處理,再通過TCP 服務器向APP 轉發(fā)。

      3)TTS

      TTS 是Text-to-Speech 的縮寫[13],TTS 技術是指通過預錄制的語音元素,運用目前語音合成中的拼接方法進行發(fā)聲[14]。MT7688 下位機軟件通過心跳包檢測安卓手機端APP 是否在線,當其離線后通過串口驅動TTS 電路,進行倒車距離播報。同時判斷倒車距離是否低于APP 設置的報警距離,如果是,則進行對應的語音報警。

      3.2 安卓手機端APP上位機軟件設計

      3.2.1 APP總體軟件流程概述

      APP 軟件流程如圖6 所示,軟件運行后進行Activity 初始化操作,在onCreate()方法中初始化各個界面控件,為控件設置監(jiān)聽器,設置事件處理方法。初始化完成后通過Socket 向TCP 服務器請求倒車距離數據,接收成功后將數據顯示在TextView 上,同時進行報警距離判斷處理。最后在子線程上通過Http獲取倒車影像數據,更新到SurfaceView 控件中。

      圖6 APP軟件流程

      3.2.2 倒車影像處理軟件設計

      安卓手機端APP 倒車影像功能主要通過Http 連接mjpeg-streamer 服務器,獲取服務器上存儲的圖像數據。由于安卓的View適合主動更新,而SurfaceView更適合頻繁的被動更新。因此,APP 獲取到的每一幀倒車影像數據均在子線程中通過SurfaceView 進行實時的更新顯示,不會影響UI 的主線程[15]。

      3.2.3 倒車距離處理軟件設計

      MT7688 上檢測到的實時倒車距離通過TCP 服務器往外傳輸,因此在APP 上需要由TCP 客戶端子程序來獲取。TCP 套接口是字節(jié)流套接口(stream socket)的一種[16],APP 通過Socket 來完成倒車距離的獲取,與TCP 服務器建立連接后,主動請求數據,得到倒車距離數據,并進行判斷處理。

      4 實驗結果與分析

      可視倒車系統(tǒng)最關鍵的兩個參數是倒車影像的流暢度(幀率)和倒車距離的精度。因此,實驗環(huán)節(jié)分別對兩個參數進行實驗測試。

      首先,進行倒車影像幀率測試實驗,由于通信距離是固定的,實驗時主要測量車輛在靜止和倒車時的幀率。每種狀態(tài)進行100 次測量,然后取平均值,得到倒車影像幀率測試數據如表1 所示。

      表1 倒車影像幀率數據

      其次,進行倒車距離精度測試實驗,分別將雷達探頭正對墻壁,放置在不同距離時,記錄系統(tǒng)測試到的倒車距離。取100 個樣本數據的平均值,再與實際距離進行對比,得到倒車距離數據如表2 所示。

      表2 倒車距離測試數據

      由實驗數據分析可知,可視倒車系統(tǒng)的倒車影像幀率無論在靜止或倒車狀態(tài)下,均能達到27 Hz 以上,倒車距離精度為±6 cm 以內,總體能滿足汽車倒車情景的應用要求。

      5 結論

      基于安卓手機端實現的可視倒車系統(tǒng)可以解決傳統(tǒng)車機可視倒車系統(tǒng)安裝過程繁瑣以及費用昂貴的弊端,能夠應用在低配小汽車、貨車以及大巴車上等出廠沒安裝倒車系統(tǒng)的車輛上。

      猜你喜歡
      安卓攝像頭語音
      浙江首試公路非現場執(zhí)法新型攝像頭
      攝像頭連接器可提供360°視角圖像
      文物表情包
      魔力語音
      基于MATLAB的語音信號處理
      電子制作(2019年14期)2019-08-20 05:43:38
      基于MQ3與MP3的價廉物美的酒駕語音提醒器
      電子制作(2019年9期)2019-05-30 09:42:10
      對方正在輸入……
      小說界(2018年5期)2018-11-26 12:43:42
      一種基于安卓系統(tǒng)的手機側抓包分析方法
      奔馳360°攝像頭系統(tǒng)介紹
      安卓L未至安卓M來了!安卓首泄漏M系統(tǒng)
      营口市| 措勤县| 财经| 上思县| 加查县| 灵川县| 商丘市| 常熟市| 秀山| 厦门市| 孝义市| 安国市| 平昌县| 克东县| 佛教| 吉林省| 永胜县| 澄迈县| 文成县| 理塘县| 元氏县| 阿鲁科尔沁旗| 赞皇县| 运城市| 淮阳县| 普兰县| 米脂县| 丹东市| 彰武县| 天峨县| 泸州市| 绥中县| 虎林市| 东乌| 新邵县| 邢台市| 龙口市| 张家川| 台山市| 图木舒克市| 琼结县|