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

        ?

        基于Arduino的電動(dòng)車與摩托車安全報(bào)警裝置

        2018-12-17 09:17:46任環(huán)宇曹虎李道全
        電腦知識(shí)與技術(shù) 2018年25期
        關(guān)鍵詞:串口通信上位機(jī)

        任環(huán)宇 曹虎 李道全

        摘要:電動(dòng)車、摩托車在為了人們出行提供方便的同時(shí),也帶來了安全隱患。本設(shè)計(jì)開發(fā)了一款用于安裝在電動(dòng)車、摩托車后置的危險(xiǎn)探測(cè)裝置。探測(cè)手段主要通過超聲測(cè)距傳感的方式,盡早地探測(cè)出電動(dòng)車、摩托車在行駛過程中遇到的距離過近的“危險(xiǎn)”,考慮到電動(dòng)車、摩托車在形式過程中的“視野盲區(qū)”,該設(shè)計(jì)為超聲測(cè)距探頭搭載了旋轉(zhuǎn)舵機(jī),以方便探頭周期性地對(duì)“視野盲區(qū)”的各個(gè)方向進(jìn)行有效探測(cè)。同時(shí)設(shè)計(jì)開發(fā)了多種預(yù)警模塊,包括語音提示預(yù)警模塊、燈光閃爍預(yù)警模塊,模塊是基于arduino上位機(jī)、語音芯片做下位機(jī)的技術(shù)實(shí)現(xiàn)的。通過聲光交替預(yù)警的方式,提高后方車輛的警惕性,盡可能地避免追尾。

        關(guān)鍵詞: arduino;超聲測(cè)距;上位機(jī);串口通信;語音合成;預(yù)警裝置

        中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)25-0273-04

        隨著經(jīng)濟(jì)的快速發(fā)展,人們生活水平的提高,出行方式的選擇成為與百姓生活息息相關(guān)的問題。在較為發(fā)達(dá)的城市,為了避免出行的擁堵,越來越多的人選擇使用電動(dòng)車、摩托車等便攜式的出行方式。而在農(nóng)村,電動(dòng)車、摩托車也更是成為人們出行的主要交通工具。盡管這些交通工具較為方便,但是安全成為一大隱患,尤其是相對(duì)”鐵包肉”的汽車來說,無疑增大了安全隱患[1]。本項(xiàng)目旨在通過相關(guān)的設(shè)計(jì)開發(fā)來解決這一隱患。

        1 系統(tǒng)總體設(shè)計(jì)

        1.1 總體設(shè)計(jì)概述

        本項(xiàng)目的重點(diǎn)在各個(gè)模塊的獨(dú)立開發(fā)以及各個(gè)模塊的拼接。通過調(diào)研,各個(gè)模塊所使用的外設(shè)都在arduino有統(tǒng)一的協(xié)議,有較為豐富的開發(fā)資源(Arduino ide),非常方便開發(fā)者做各種功能的組合實(shí)現(xiàn)。同時(shí),語音模塊和主控arduino板都是支持統(tǒng)一的串口通信協(xié)議,因此只需要做一個(gè)arduino上位機(jī)的通信邏輯,就可以完成該模塊的設(shè)計(jì)。

        整個(gè)系統(tǒng)的功能可以分為如下的幾個(gè)模塊:超聲測(cè)距傳感器測(cè)距、舵機(jī)旋轉(zhuǎn)、燈條閃爍邏輯、語音報(bào)警模塊、主控板與語音模塊的串口通信。

        系統(tǒng)的流程圖如圖1所示。

        1.2 主要設(shè)備介紹

        1.2.1 Arduinomega2560

        Arduino是一款便捷靈活、方便上手的開源電子原型平臺(tái)[2],如圖2所示。包含硬件(各種型號(hào)的Arduino板)和軟件(Arduino IDE)。Arduino能通過各種各樣的傳感器來感知環(huán)境,通過控制燈光、馬達(dá)和其他的裝置來反饋、影響環(huán)境。板子上的微控制器可以通過Arduino的編程語言來編寫程序,編譯成二進(jìn)制文件,燒錄進(jìn)微控制器。同時(shí)其軟件平臺(tái)的高級(jí)設(shè)計(jì)語言是基于c語言開發(fā)的,非常利于開發(fā)者快速學(xué)習(xí)和開發(fā)。同時(shí)其開源平臺(tái)里有豐富的庫可用,降低了編程的難度,并提高了本項(xiàng)目的可行性。

        1.2.2 超聲波探測(cè)頭

        超聲波模塊是一個(gè)用來測(cè)量距離的電子模塊,如圖3 所示。本項(xiàng)目采用的超聲模塊有如下參數(shù)特性:工作電壓: 5V DC,工作溫度:-25~+80℃,測(cè)量角度:30度范圍內(nèi),測(cè)量范圍:3-400cm(誤差小于1cm),超聲波頻率:42kHz,控制方式:?jiǎn)螖?shù)字口控制。

        根據(jù)其參數(shù)特性我們能夠看到,它的測(cè)量角度難以完成對(duì)“視角盲區(qū)”的全部覆蓋,所以搭載舵機(jī)模塊非常有必要。同時(shí)其的探測(cè)距離是3~400cm,在實(shí)際的使用是非常適合的。

        1.2.3 舵機(jī)

        本設(shè)計(jì)實(shí)用的舵機(jī)型號(hào)是MEDS15,如圖4。相對(duì)于市面上最便宜的9g小舵機(jī),雖然旋轉(zhuǎn)功能二者都可以實(shí)現(xiàn),但是實(shí)踐設(shè)計(jì)過程中發(fā)現(xiàn),9g小舵機(jī)的舵機(jī)臂固定超聲模塊非常不穩(wěn)定,而這一款舵機(jī)的舵機(jī)臂有一個(gè)常見尺寸的螺絲口,非常容易進(jìn)行結(jié)構(gòu)上的拓展,如圖5所示。

        1.2.4 燈條

        針對(duì)燈光閃爍預(yù)警模塊,這里簡(jiǎn)單的LED燈閃爍顯然報(bào)警效果太差,所以這里我們采用的是多個(gè)RGB燈串聯(lián)而組成的燈條,如圖6所示。

        1.2.5 語音模塊

        語音模塊采用的是外包公司基于固定語料庫開發(fā)的獨(dú)立智能語音模塊,如圖7所示。該模塊本身是為語音處理所進(jìn)行量身剪裁的處理芯片,因此從概念上,語音模塊(語音處理芯片和喇叭)雖然也是作為“外設(shè)”,但是與上面給出的外設(shè)是有一些區(qū)別的。

        1.2.6 串口通信、上位機(jī)、下位機(jī)簡(jiǎn)介

        上文提到,語音模塊是一個(gè)獨(dú)立的處理芯片,為其獨(dú)立供電時(shí),它可以進(jìn)行固定詞條的識(shí)別和反饋發(fā)聲。加上控制燈條、舵機(jī)、超聲模塊的主控arduino處理芯片,因此在本設(shè)計(jì)中,有兩個(gè)處理器,這就存在處理芯片之間的通信邏輯的實(shí)現(xiàn)以及二者“地位”的關(guān)系,作為要控制燈條、舵機(jī)、超聲模塊、語音模塊的主控板arduino,它是上位機(jī),而語音模塊僅僅是用于接收通信信號(hào)之后,完成特定的預(yù)警輸出,因此它是一個(gè)下位機(jī)。而兩個(gè)處理器都支持統(tǒng)一的串口通信標(biāo)準(zhǔn),因此他們之間的信號(hào)傳輸通過串口通信協(xié)議實(shí)現(xiàn)即可[3]。上下位機(jī)組合圖如圖8所示。

        2 系統(tǒng)實(shí)現(xiàn)

        對(duì)照上文給出的模塊功能的分類,下面依次進(jìn)行模塊化的邏輯過程設(shè)計(jì)。

        2.1 超聲模塊

        上文提到,arduino開發(fā)資源豐富,針對(duì)超聲模塊,本設(shè)計(jì)的arguinomega2560開發(fā)板自帶了常用的模塊函數(shù)庫,針對(duì)超聲模塊,直接調(diào)用函數(shù)即可返回測(cè)距結(jié)果。獨(dú)立模塊的測(cè)試參考如下[4]:

        #include"MeMegaPi.h"

        #include

        #include

        MeUltrasonicSensorultraSensor(PORT_8);

        void setup(){

        Serial.begin(9600);

        }

        void loop(){

        Serial.print("Distance:");

        Serial.print(ultraSensor.distanceCm());

        Serial.println("cm");

        delay(100);

        }

        2.2 舵機(jī)旋轉(zhuǎn):

        舵機(jī)模塊的功能設(shè)計(jì)很簡(jiǎn)單,為了能夠讓其搭載的超聲模塊掃描身后180°的視野盲區(qū),設(shè)計(jì)舵機(jī)有如下的邏輯:

        While(1){

        舵機(jī)臂轉(zhuǎn)動(dòng)到0°處;

        延時(shí)1秒;

        舵機(jī)臂轉(zhuǎn)動(dòng)到90°處;

        延時(shí)1秒;

        舵機(jī)臂轉(zhuǎn)動(dòng)到180°處;

        延時(shí)1秒

        }

        通過這樣一個(gè)簡(jiǎn)單的算法設(shè)計(jì),我們就能夠保證超聲模塊一直在做周期性的等時(shí)間間距的掃描動(dòng)作。關(guān)于舵機(jī)的驅(qū)動(dòng)程序的設(shè)計(jì)此處略去,主函數(shù)程序如下:

        voidloop(){

        servo_6_1.write(0);

        _delay(1);

        servo_6_1.write(90);

        _delay(1);

        servo_6_1.write(180);

        delay(1);

        _loop();

        }

        2.3 燈條閃爍邏輯

        考慮到預(yù)警效果,這里燈條的閃爍邏輯為紅燈并且間隔延時(shí)較短。定義Dis是當(dāng)前時(shí)間超聲探頭模塊返回的障礙物距離,單位是厘米。

        Void LightWarning()

        If(Dis < 250){//后方障礙物距離小于2.5m,有追尾危險(xiǎn),開始燈光報(bào)警

        燈條各燈的RGB參數(shù)設(shè)置成(255, 0 ,0);

        延時(shí)0.2s;

        燈條各燈的RGB參數(shù)設(shè)置成(0,0,0);//達(dá)到閃爍效果

        延時(shí)0.2s;

        }

        燈條驅(qū)動(dòng)程序細(xì)節(jié)略去,主程序如下:

        void LightWarning(){

        rgbled_6_2.setColor(0,255,0,0);

        rgbled_6_2.show();

        _delay(0.2);

        gbled_6_2.setColor(0,0,0,0);

        rgbled_6_2.show();

        _delay(0.2);

        _loop();

        }

        2.4 語音報(bào)警模塊

        上文提及,該模塊是基于語料庫的外包處理器,使能夠單獨(dú)工作的。其能夠完成固定詞條的識(shí)別、對(duì)應(yīng)反饋文本的語音輸出,在這個(gè)設(shè)計(jì)中,我們只需要它的文本轉(zhuǎn)語音功能,以提示使用本設(shè)計(jì)的自電動(dòng)車、摩托車車主尾部存在追尾危險(xiǎn)。

        語音模塊內(nèi)部實(shí)現(xiàn)了一個(gè)語音相關(guān)功能的指令協(xié)議,針對(duì)本設(shè)計(jì)所需要的功能,如下指令有關(guān):

        @TextToSpeech#文本$

        對(duì)該指令進(jìn)行簡(jiǎn)要的說明”@”、“#”、“$”均為指令的控制符,用于指令編譯使用。TextToSpeech是關(guān)鍵字,表示這一條指令的功能是將文本轉(zhuǎn)化成語音。而想要轉(zhuǎn)換的具體的文字就在“文本”中體現(xiàn)。其工作模式是,語音模塊在通電之后自動(dòng)從串口中讀取字符串指令,當(dāng)遇到“$”控制符,完成一條指令的讀取,然后語音模塊中集成的編譯器對(duì)指令進(jìn)行解讀,將其轉(zhuǎn)化成可執(zhí)行代碼,然后執(zhí)行。

        將語音模塊與PC進(jìn)行連接,打開串口。

        2.5 主控板與語音模塊的串口通信

        對(duì)照上文給出的數(shù)據(jù)流圖,arduino作為探測(cè)傳感并發(fā)出控制指令的上位機(jī),在探測(cè)到障礙物距離過近的時(shí)候,將發(fā)送控制指令給串口,語音模塊下位機(jī)將自動(dòng)讀取串口中的數(shù)據(jù)并執(zhí)行指令[5]。算法偽代碼如下:

        上位機(jī):

        Void SpeechWarning()

        Begin:

        超聲探測(cè)模塊探測(cè),返回給整型變量Dis;

        If(Dis < 250)//超聲模塊返回值單位是cm

        Serial.print(“@TexttoSpeech#正前方/左后方/右后方存在障礙!$”);

        End;

        2.6 模塊綜合

        分別完成各個(gè)模塊的獨(dú)立調(diào)試后,需要完成對(duì)各個(gè)模塊的連接工作,參照上文給出的數(shù)據(jù)流圖,本設(shè)計(jì)總的邏輯設(shè)計(jì)如下:

        Void Solve(){

        If(Dis > 250) retrun;

        Else {

        SpeechWarning();

        LightWarning();

        }

        }

        While(通電){

        舵機(jī)旋轉(zhuǎn)到0°;

        Dis = getDistance();

        Solve();

        Delay(1500);

        舵機(jī)旋轉(zhuǎn)到90°;

        Dis = getDistance();

        Solve();

        Delay(1500);

        舵機(jī)旋轉(zhuǎn)到180°;

        Dis = getDistance();

        Solve();

        Delay(1500);

        }

        3 結(jié)束語

        通過上述設(shè)計(jì)與實(shí)現(xiàn),完成電動(dòng)車與摩托車后置安全的報(bào)警功能。本設(shè)計(jì)的優(yōu)點(diǎn)與創(chuàng)新主要有以下兩點(diǎn):

        1) 采用聲音和語音報(bào)警模塊相結(jié)合的方式,對(duì)使用者后車體尾部的車進(jìn)行的雙向報(bào)警,這樣的模式能夠大大鏟除潛在危機(jī)。

        2) 本設(shè)計(jì)將超聲模塊搭載在舵機(jī)上的創(chuàng)意思維,將超聲測(cè)距模塊的掃描范圍覆蓋了尾部的180°視野盲區(qū),這樣做能夠再次降低危險(xiǎn)發(fā)成的概率。

        該系統(tǒng)當(dāng)前階段的缺陷在于,系統(tǒng)的穩(wěn)定性有待于進(jìn)一步測(cè)試和改善,在以后的升級(jí)過程中,將考慮主控模塊、芯片的進(jìn)一步裁剪工作。

        參考文獻(xiàn):

        [1] 熊和金.一種電動(dòng)車安全行駛的智能聲光報(bào)警裝置[P].實(shí)用新型專利:CN201521074280.7,2016.07.06.

        [2] Makeblock硬件官方參數(shù)參考表目.http://learn.makeblock.com/cn/megapi/,2017,2.

        [3] 趙司琦,俞繼偉,王廣田,謝怡寧.基于Arduino的Tennsy BadUSB改良型共享云盾的設(shè)計(jì)與研究[J].電腦知識(shí)與技術(shù),2017(36):36-38+45.

        [4] Wolfram Donat .Chaim Krause. Learn Raspberry PiProgramming with Python[M].韓德強(qiáng)譯.北京:機(jī)械工業(yè)出版社,2017.

        [5] 章杰瑞,周屹.基于Arduino和PIC單片機(jī)智能小車平臺(tái)的研究與設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2017(29):187-190.

        【通聯(lián)編輯:梁書】

        猜你喜歡
        串口通信上位機(jī)
        基于Qt和Flash的嵌入式Linux軟件架構(gòu)設(shè)計(jì)
        論網(wǎng)絡(luò)通信技術(shù)
        串口通信在智能家居監(jiān)控系統(tǒng)中的應(yīng)用
        基于云的短波發(fā)射機(jī)機(jī)房中央空調(diào)自動(dòng)控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
        景點(diǎn)智能導(dǎo)航系統(tǒng)
        全自動(dòng)包裝及碼垛系統(tǒng)的發(fā)展與應(yīng)用
        基于OpenCV的室內(nèi)照明智能控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
        科技視界(2016年13期)2016-06-13 22:01:19
        蜜桃在线观看免费高清| 人妻少妇偷人精品一区二区| 中文无字幕一本码专区| 在线视频国产91自拍| 国产又黄又硬又粗| 国产精品免费_区二区三区观看| 国产又黄又大又粗视频| 26uuu欧美日本在线播放| 一本色道88久久加勒比精品| 无码无套少妇毛多18p| 欧美日韩亚洲国产精品| 欧美第五页| 玩弄极品少妇被弄到高潮| av黄色大片久久免费| 少妇伦子伦情品无吗| 国产嫖妓一区二区三区无码| 亚洲AV秘 无码二区在线| 中文字幕丰满人妻有码专区| 亚州无吗一区二区三区| 成人影片麻豆国产影片免费观看| 人妻无码一区二区三区免费| 人妻去按摩店被黑人按中出 | 欧美亚洲国产人妖系列视| 日韩精品一区二区三区av| 久久天堂av综合合色| 久久亚洲精品无码va大香大香| 国产呦系列视频网站在线观看| 被灌醉的日本人妻中文字幕| 国产精品免费观看调教网| 少妇饥渴xxhd麻豆xxhd骆驼| 久久人妻AV无码一区二区| 蜜桃视频一区二区三区| 刺激一区仑乱| 国产看黄网站又黄又爽又色| 精品久久久无码不卡| 日产分东风日产还有什么日产| 国产精品天天看天天狠| 高清不卡一区二区三区| 亚洲日韩精品欧美一区二区三区不卡 | 免费现黄频在线观看国产| 国产三级在线观看性色av|