智能測(cè)量小車(chē)設(shè)計(jì)
智能測(cè)量小車(chē)設(shè)計(jì),智能,測(cè)量,丈量,小車(chē),設(shè)計(jì)
摘 要
智能化技術(shù)在如今社會(huì)表現(xiàn)的越來(lái)越出色,智能機(jī)器人在大型工業(yè)的應(yīng)用也在國(guó)家經(jīng)濟(jì)中占據(jù)重要作用,在未知探索領(lǐng)域也是非常重要。隨著社會(huì)的不斷進(jìn)步發(fā)展, 智能小車(chē)的技術(shù)更是日新月異,讓本來(lái)不可能的事通過(guò)非凡的智慧讓其進(jìn)入我們的眼簾,我相信很多人對(duì)其如何實(shí)現(xiàn)預(yù)期的功能也是充滿(mǎn)好奇心,本次的設(shè)計(jì)的目的就是為了實(shí)現(xiàn)一些簡(jiǎn)單的智能化操作,從而讓人們更多的了解智能化的程序編程是多么的不可思議!
本文設(shè)計(jì)的是一款基于 Arduino 的智能小車(chē),選擇 Arduino 單片機(jī)作為主要控制系統(tǒng),進(jìn)行程序編程燒錄,采用 wifi 模塊進(jìn)行無(wú)線(xiàn)數(shù)據(jù)傳輸,可以使用手機(jī)或者電腦實(shí)現(xiàn)無(wú)線(xiàn)控制。同時(shí)采用超聲波測(cè)距模塊來(lái)實(shí)現(xiàn)測(cè)距功能,除此之外,超聲波傳感器將數(shù)據(jù)傳送給控制系統(tǒng).經(jīng)過(guò)系統(tǒng)處理給出的反饋指令,控制電機(jī)轉(zhuǎn)動(dòng),從而實(shí)現(xiàn)自動(dòng)避障的功能。在避障過(guò)程中,小車(chē)前端攝像頭可以手動(dòng)控制拍照為后續(xù)的工作提供素材。
關(guān)鍵詞: Arduino 智能小車(chē) 自動(dòng)避障 超聲波測(cè)距 無(wú)線(xiàn)控制模塊
II
Abstract
Intelligent technology in today's social performance is more and more outstanding, intelligent robot in large-scale industrial applications also play an important role in the national economy, in the unknown exploration field is also very important。Along with the advance of social development, the technology of intelligent cars more with each passing day, which makes the impossible through extraordinary wisdom let it into our eyes, I believe that a lot of people on how to realize the expected function also is full of curiosity, the purpose of this design is to realize some simple intelligent operation, so as to let people know more about intelligent programming how incredible it is!
Designed in this paper based on the Arduino is a smart car, choose the Arduino microcontroller as the main control system, carries on the programming burn, wifi wireless data transmission module, can use a mobile phone or computer to realize the wireless control. Using ultrasonic ranging module to achieve the function range at the same time, in addition, ultrasonic sensor data transmitted to the control system. Through system processing instructions given feedback, control motor rotation, so as to realize the function of automatic obstacle avoidance. In the process of avoiding obstacles, the front camera of the car can manually control the camera to provide material for subsequent work.
Keywords: Arduino intrlligent car The automatic obstacle avoidance
Ultrasonic ranging The wireless control module
目 錄
摘 要 I
Abstract II
1 緒 論 1
1.1 課題背景以及意義 1
1.2 國(guó)外研究概況及其發(fā)展趨勢(shì) 1
1.3 國(guó)內(nèi)研究概況及其發(fā)展趨勢(shì) 2
2 系統(tǒng)總體方案設(shè)計(jì) 3
2.1 小車(chē)車(chē)體結(jié)構(gòu)設(shè)計(jì) 3
2.2 小車(chē)控制器的選擇 3
2.3 小車(chē)電源的選擇 4
2.4 避障模塊的選擇 4
2.5 無(wú)線(xiàn)控制模塊 4
2.6 電機(jī)及其電機(jī)驅(qū)動(dòng)的選擇 5
2.7 系統(tǒng)總體方案的確定 5
3 小車(chē)硬件設(shè)計(jì) 6
3.1 無(wú)線(xiàn)通信模塊的設(shè)計(jì) 6
3.2 測(cè)距模塊的設(shè)計(jì) 7
3.3 電機(jī)模塊設(shè)計(jì) 10
3.4 電源部分設(shè)計(jì) 12
4 小車(chē)的軟件設(shè)計(jì) 13
4.1 主循環(huán)程序設(shè)計(jì) 13
4.3 自動(dòng)避障子程序設(shè)計(jì) 14
4.4 超聲波測(cè)距程序設(shè)計(jì) 15
4.5 wifi 手機(jī)模塊程序設(shè)計(jì) 15
5 小車(chē)的制作安裝調(diào)試 16
5.1 小車(chē)制作安裝 16
5.2 小車(chē)調(diào)試 17
結(jié) 論 19
參考文獻(xiàn) 20
附錄 1 外文翻譯 21
附錄 2 外文原文 23
附錄 3 程序代碼 26
致 謝 46
1 緒 論
1.1 課題背景以及意義
隨著社會(huì)的快速發(fā)展,中國(guó)的企業(yè)也在快速進(jìn)步,他們的生產(chǎn)技術(shù)也在提高, 因此,更加需要自動(dòng)化生產(chǎn)技術(shù)。智能車(chē)輛和它的衍生產(chǎn)品是在生產(chǎn)線(xiàn)上、物流運(yùn)輸線(xiàn)上的重要設(shè)備。全世界很多國(guó)家都高度重視智能車(chē)的開(kāi)發(fā)設(shè)計(jì)以及研究。在 20 世紀(jì) 04 年代,斯坦福研究院的學(xué)士 Rosen 等人花了近 6 年時(shí)間研制出名為 shakey 的自主可移動(dòng)機(jī)器人,實(shí)現(xiàn)了在復(fù)雜情況,通過(guò)應(yīng)用人工智能,完成機(jī)器人的操控。在此之后,機(jī)器人發(fā)展更加先進(jìn),數(shù)量也在不斷變多,同時(shí)受到越來(lái)越多的世界學(xué)士們的關(guān)注。而且,智能車(chē)輛是移動(dòng)機(jī)器人的一個(gè)重要部分,擁有高新的綜合系統(tǒng),集中運(yùn)用傳感器、計(jì)算機(jī)、自控等先進(jìn)技術(shù),可以實(shí)現(xiàn)自動(dòng)控制、自動(dòng)辨別路障、控制合適的車(chē)速等功能,智能設(shè)備在一般車(chē)輛上有了廣泛的應(yīng)用,從而變?yōu)橹悄苘?chē)輛。
Arduino 的應(yīng)用,對(duì)操作者降低了很大的技術(shù)層面上的要求,可以在很短的時(shí)間內(nèi)接觸學(xué)習(xí)它,所以說(shuō) Arduino 是一款非常好用的開(kāi)源硬件產(chǎn)品,具有較多的接口, 運(yùn)用不同的傳感器來(lái)感受外界環(huán)境,通過(guò)對(duì)控制電機(jī)、舵機(jī)和其他裝置來(lái)反饋環(huán)境。做出正確的操作。它不像復(fù)雜單片機(jī)有難懂的程序編程,復(fù)雜的代碼,只是一些簡(jiǎn)單而且實(shí)用的函數(shù)。因此,Arduino 簡(jiǎn)單的編程環(huán)境,很大程度上可以拓展我們的想象能力和實(shí)現(xiàn)我們預(yù)期的想法。
1.2 國(guó)外研究概況及其發(fā)展趨勢(shì)
國(guó)外智能車(chē)輛的研究歷史較長(zhǎng),始于上世紀(jì) 50 年代。它的發(fā)展歷程大體可以分成三個(gè)階段:
第一階段:20 世紀(jì) 50 年代是智能車(chē)輛研究的初始階段。1954 年美國(guó) Barrrtt Electronics 公司研究開(kāi)發(fā)了世界第一臺(tái)自主引導(dǎo)車(chē)系統(tǒng) AGVS(Automated Guied Vehicle System)。
第二階段:從 80 年代中后期開(kāi)始,世界主要發(fā)達(dá)國(guó)家對(duì)智能車(chē)輛開(kāi)展了卓有成效的研究。在歐洲,普羅米修斯項(xiàng)目開(kāi)始在這個(gè)領(lǐng)域的探索。在美洲,美國(guó)成立了國(guó)家自動(dòng)高速公路系統(tǒng)聯(lián)盟(NAHSC)。在亞洲,日本成立了高速公路先進(jìn)巡航/輔助駕駛研究會(huì)。
第三階段:從 90 年代開(kāi)始,智能車(chē)輛進(jìn)入了深入、系統(tǒng)、大規(guī)模研究階段。最為突出的是,美國(guó)卡內(nèi)基.梅隆大學(xué)(Carnegie Mellon University)機(jī)器人研究所一共
9
完成了 Navlab 系列的 10 臺(tái)自主車(chē)(Navlab1—Navlab10)的研究,取得了顯著的成就。
1.3 國(guó)內(nèi)研究概況及其發(fā)展趨勢(shì)
相比于國(guó)外,我國(guó)開(kāi)展智能車(chē)輛技術(shù)方面的研究起步較晚,開(kāi)始于 20 世紀(jì) 80 年代。而且大多數(shù)研究處在于針對(duì)某個(gè)單項(xiàng)技術(shù)研究的階段。雖然我國(guó)在智能車(chē)輛技術(shù)方面的研究總體上落后于發(fā)達(dá)國(guó)家,并且存在一定得技術(shù)差距,但是我們也取得了一系列的成果,主要有:
(1) 中國(guó)第一汽車(chē)集團(tuán)公司和國(guó)防科技大學(xué)機(jī)電工程與自動(dòng)化學(xué)院與 2003 年研制成功我國(guó)第一輛自主駕駛轎車(chē)。該自主駕駛轎車(chē)在正常交通情況下的高速公路上, 行駛的最高穩(wěn)定速度為 13km/h,最高峰值速度達(dá) 170km/h,并且具有超車(chē)功能,其總體技術(shù)性能和指標(biāo)已經(jīng)達(dá)到世界先進(jìn)水平。
(2) 南京理工大學(xué)、北京理工大學(xué)、浙江大學(xué)、國(guó)防科技大學(xué)、清華大學(xué)等多所院校聯(lián)合研制了 7B.8 軍用室外自主車(chē),該車(chē)裝有彩色攝像機(jī)、激光雷達(dá)、陀螺慣導(dǎo)定位等傳感器。計(jì)算機(jī)系統(tǒng)采用兩臺(tái) Sun10 完成信息融合、路徑規(guī)劃,兩臺(tái) PC486 完成路邊抽取識(shí)別和激光信息處理,8098 單片機(jī)完成定位計(jì)算和車(chē)輛自動(dòng)駕駛。其體系結(jié)構(gòu)以水平式結(jié)構(gòu)為主,采用傳統(tǒng)的“感知-建模-規(guī)劃-執(zhí)行”算法,其直線(xiàn)跟蹤速度達(dá)到 20km/h,避障速度達(dá)到 5-10km/h。
隨著汽車(chē)工業(yè)的迅速發(fā)展,關(guān)于汽車(chē)的研究也就越來(lái)越受人關(guān)注。全國(guó)電子大賽和省內(nèi)電子大賽幾乎每次都有智能小車(chē)這方面的題目,全國(guó)各高校也都很重視該題目的研究。可見(jiàn)其研究意義很大。本設(shè)計(jì)就是在這樣的背景下提出的,指導(dǎo)教師已經(jīng)有充分的準(zhǔn)備。本題目是結(jié)合科研項(xiàng)目而確定的設(shè)計(jì)類(lèi)課題。設(shè)計(jì)的智能電動(dòng)小車(chē)應(yīng)該能夠?qū)崿F(xiàn)適應(yīng)能力,能自動(dòng)避障,可以智能規(guī)劃路徑。
智能化作為現(xiàn)代社會(huì)的新產(chǎn)物,是以后的發(fā)展方向,他可以按照預(yù)先設(shè)定的模式在一個(gè)特定的環(huán)境里自動(dòng)的運(yùn)作,無(wú)需人為管理,便可以完成預(yù)期所要達(dá)到的或是更高的目標(biāo)。同遙控小車(chē)不同,遙控小車(chē)需要人為控制轉(zhuǎn)向、啟停和進(jìn)退,比較先進(jìn)的遙控車(chē)還能控制器速度。常見(jiàn)的模型小車(chē),都屬于這類(lèi)遙控車(chē);智能小車(chē),則可以通過(guò)計(jì)算機(jī)編程來(lái)實(shí)現(xiàn)其對(duì)行駛方向、啟停以及速度的控制,無(wú)需人工干預(yù)。操作員可以通過(guò)修改智能小車(chē)的計(jì)算機(jī)程序來(lái)改變它的行駛方向。因此,智能小車(chē)具有再編程的特性。智能化全面的發(fā)展是實(shí)現(xiàn)其對(duì)資源的合理充分利用,以盡可能少的投入得到最大的收益,大大提高工業(yè)生產(chǎn)的效率,實(shí)現(xiàn)現(xiàn)有工業(yè)生產(chǎn)水平從自動(dòng)化向智能化升級(jí),從先前的模擬電路設(shè)計(jì),到數(shù)字電路設(shè)計(jì),再到現(xiàn)在的集成芯片的應(yīng)用,各種能實(shí)現(xiàn)同樣功能的元件越來(lái)越小為智能化產(chǎn)物的生成奠定了良好的物質(zhì)基礎(chǔ)。
2 系統(tǒng)總體方案設(shè)計(jì)
本設(shè)計(jì)的智能小車(chē)需要將傳感器、處理器、驅(qū)動(dòng)和執(zhí)行機(jī)構(gòu)進(jìn)行合理的組合,共同協(xié)同工作,實(shí)現(xiàn)預(yù)期的目標(biāo),也就是依靠藍(lán)牙通過(guò)手機(jī)或者電腦進(jìn)行無(wú)線(xiàn)控制,紅外線(xiàn)感應(yīng)測(cè)距實(shí)現(xiàn)自動(dòng)避障等功能。所以確定小車(chē)的硬件分為六大部分:車(chē)體、控制器、電源、避障程序模塊、無(wú)線(xiàn)控制模塊和執(zhí)行部分。簡(jiǎn)單介紹下各部分的功能:
(1) 車(chē)體:就是整個(gè)小車(chē)的外部框架,需要承載小車(chē)其他部件同時(shí)可以在空間上進(jìn)行合理的擺放。
(2) 控制器:負(fù)責(zé)控制和協(xié)調(diào),是小車(chē)的核心,控制器能否及時(shí)準(zhǔn)確處理傳感器的信息并將處理后的數(shù)據(jù)結(jié)果傳送給執(zhí)行部分。
(3) 電源部分:為傳感器以及驅(qū)動(dòng)部分提供足夠的電能,確保系統(tǒng)正常穩(wěn)定工作。
(4) 避障程序模塊:編寫(xiě)避障程序讓小車(chē)可以自動(dòng)避開(kāi)障礙物。
(5) 無(wú)線(xiàn)控制模塊部分:負(fù)責(zé)接收無(wú)線(xiàn)控制指令信號(hào),傳送給控制器,進(jìn)而實(shí)現(xiàn)無(wú)線(xiàn)控制。
(6) 執(zhí)行部分:負(fù)責(zé)執(zhí)行微控制器的處理結(jié)果,能實(shí)現(xiàn)小車(chē)的轉(zhuǎn)向功能。
2.1 小車(chē)車(chē)體結(jié)構(gòu)設(shè)計(jì)
方案一:自己設(shè)計(jì)并手動(dòng)制造車(chē)體。需要花費(fèi)很多的時(shí)間去完成車(chē)體的尺寸、材料等一系列問(wèn)題,優(yōu)點(diǎn)是發(fā)揮我們的創(chuàng)新能力,但缺點(diǎn)是花費(fèi)大量時(shí)間而且做出來(lái)的車(chē)體很粗糙,所以不想采用這個(gè)方案。
方案二:選擇本次設(shè)計(jì)所用到的傳感器,即超聲波傳感器,為了實(shí)現(xiàn)無(wú)線(xiàn)控制而選擇的 wifi 控制器,還有本次最為關(guān)鍵的 Arduino 控制器的編程使用,以及為了實(shí)現(xiàn)視頻拍照選用攝像頭,同時(shí)還可以為后續(xù)工作提供素材,選擇車(chē)體、電機(jī)、車(chē)輪等部件自己進(jìn)行合理的組裝來(lái)實(shí)現(xiàn)我們預(yù)期的功能。
綜合一下,同時(shí)考慮本次設(shè)計(jì)重要的不是車(chē)體部分,而是我們對(duì) Arduino 的了解和學(xué)習(xí)以及使用,所以我最終決定使用方案二。
2.2 小車(chē)控制器的選擇
Arduino 的版本還是比較多的,不同的情況下要選擇不同的 Arduino 版本,下面我們來(lái)比較一下常見(jiàn)的一些 Arduino。
首先是最常見(jiàn)的 Arduino UNO R3,性能十分穩(wěn)定而且滿(mǎn)足絕大多數(shù)用戶(hù)的需求, 同時(shí)也能滿(mǎn)足小車(chē)實(shí)現(xiàn)功能的需要。
其次 Arduino MEGA 是增強(qiáng)型 Arduino 控制器,相對(duì)于 UNO 提供了更多的輸入輸出接口一控制更多的設(shè)備,擁有更大的程序空間和內(nèi)存。顯然這個(gè)不適用于本次設(shè)計(jì)的智能車(chē)。
Arduino Leonardo 使用集成 SUB 功能的 AVR 單片機(jī)作為芯片,可以模擬鼠標(biāo)、鍵盤(pán)等 USB 設(shè)備。
Arduino Due 使用的是 32 位 ARM Cortex-M3 作為主控芯片,集成多種外設(shè),是目前最強(qiáng)大的 Arduino 控制器。
Arduino Zero 提供 EDBG 調(diào)試端口,可以聯(lián)機(jī)進(jìn)行單步調(diào)試。小型化的 Arduino 在設(shè)計(jì)上進(jìn)行了很大的精簡(jiǎn)。
綜上所述,我選擇 Arduino UNO R3 作為小車(chē)的控制器。
2.3 小車(chē)電源的選擇
方案一:采用兩個(gè)電源供電,將電動(dòng)機(jī)驅(qū)動(dòng)電源與控制器電源分別單獨(dú)供電,但是缺點(diǎn)是增加了小車(chē)的重量,電機(jī)控制性能降低,小車(chē)的靈敏度也會(huì)降低。
方案二:采用一個(gè)電源供電,電源給電機(jī)供電,之后電機(jī)驅(qū)動(dòng)供電給控制器,這
樣就減少了電源的重量。
綜上方案,我采用第二種選用充電電池作為供電電源。
2.4 避障模塊的選擇
常見(jiàn)的避障方法有超聲波測(cè)距和紅外線(xiàn)測(cè)距方案一:紅外線(xiàn)測(cè)距避障
優(yōu)點(diǎn):不受可見(jiàn)光影響、角度靈敏度高、結(jié)構(gòu)簡(jiǎn)單,價(jià)格便宜易于安裝并且可以快速感知物體的存在。
缺點(diǎn):精度較低,距離較近,對(duì)色彩光照敏感。方案二:超聲波測(cè)距避障
優(yōu)點(diǎn):對(duì)色彩光照和電磁場(chǎng)不敏感、結(jié)構(gòu)簡(jiǎn)單并且可用于黑暗、有煙霧灰塵等惡劣環(huán)境中。
缺點(diǎn):超聲波傳感器的數(shù)量較少,可能會(huì)出現(xiàn)檢測(cè)盲區(qū),從而避障失誤。
方案三:為了提高避障性能,在測(cè)距模塊中添加攝像機(jī),配合舵機(jī)轉(zhuǎn)動(dòng),測(cè)距范圍加大,同時(shí)有效的減少了盲區(qū)。
綜合本次設(shè)計(jì),為了更好的展示其功能,所以我采用方案三:超聲波避障+舵機(jī)。
2.5 無(wú)線(xiàn)控制模塊
目前使用較多的無(wú)線(xiàn)通信方式有藍(lán)牙通信、紅外線(xiàn)通信、wifi 通信以及無(wú)線(xiàn)射頻通信,下面我們比較一下各個(gè)通信方式從而選取最適合本次設(shè)計(jì)的方式。
(1)藍(lán)牙:藍(lán)牙在很多設(shè)備上都有安裝,例如電話(huà)、筆記本電腦、汽車(chē)等,只要有藍(lán)牙適配器,就可以輕松連接上藍(lán)牙,從而進(jìn)行數(shù)據(jù)傳輸,而且兼容性好。
(2)紅外線(xiàn)通信模塊:首先成本比較低,便于安裝但是傳輸范圍較短。
(3)wifi 模塊:數(shù)據(jù)安全性較藍(lán)牙較好,實(shí)現(xiàn) wifi 通信方式便捷,與藍(lán)牙同屬短距離無(wú)線(xiàn)通信技術(shù)。
因?yàn)樾≤?chē)是通過(guò)單個(gè)字符進(jìn)行無(wú)線(xiàn)控制,所以無(wú)線(xiàn)通信要求并不是很高,只要滿(mǎn)足迅速可靠就行。最后我選擇 wifi 通信模塊,方便快捷有效。
2.6 電機(jī)及其電機(jī)驅(qū)動(dòng)的選擇
采用直流減速電機(jī),專(zhuān)用芯片驅(qū)動(dòng)中的 L298N 電機(jī)驅(qū)動(dòng)。直流減速電機(jī)轉(zhuǎn)矩較大, 價(jià)格比較便宜,而 L298N 電機(jī)驅(qū)動(dòng),此芯片有兩個(gè) H 橋式電路,電路結(jié)構(gòu)也比較簡(jiǎn)單, 使用方便,接線(xiàn)十分方便。
2.7 系統(tǒng)總體方案的確定
綜上分析,下面為本次設(shè)計(jì)總體方案的框圖:
圖 2-1 系統(tǒng)總體流程框圖
3 小車(chē)硬件設(shè)計(jì)
3.1 無(wú)線(xiàn)通信模塊的設(shè)計(jì)
上一章通過(guò)方案確定選擇 wifi 通信作為無(wú)線(xiàn)通信方式,選擇 ESP8266。ESP8266 引腳圖如圖 3-1 所示:
圖 3-1 ESP8266 引腳圖
ESP8266 一共有五個(gè)引腳,分別是 UTXD 接單片機(jī) RX,與 Arduino UNO 上相連接的引腳為 10(軟串口 RX);URXD 接單片機(jī) TX 與 Arduino UNO 上相連接的引腳為 11
(軟串口TX);CH_PD 接 3.3V 和VCC 接電源與Arduino UNO 上相連接的引腳同為 3.3V; GND 接地線(xiàn)與 Arduino UNO 上相連接的引腳為 GND。
3.1.1 wifi 模塊與手機(jī)連接原理分析
眾所周知,我們的智能手機(jī)都有連接 Wifi 的功能,那么 Wifi 可以為我們做些什么呢?它通過(guò)發(fā)射高頻的信號(hào)來(lái)進(jìn)行數(shù)據(jù)的傳送,因此,我們可以無(wú)線(xiàn)上網(wǎng),是當(dāng)今最廣泛的無(wú)線(xiàn)網(wǎng)絡(luò)傳輸技術(shù)。而且,它的傳送速度很快,消耗的功率很低,對(duì)人體的健康不會(huì)造成太大的危害。
本次設(shè)計(jì)制作的智能小車(chē),經(jīng)過(guò)我的考慮選擇了 Wifi 模塊通過(guò)與手機(jī)的連接來(lái)實(shí)現(xiàn)小車(chē)的前進(jìn)等基本運(yùn)動(dòng)方式以及測(cè)距、避障的復(fù)雜運(yùn)動(dòng)。Wifi 模塊的工作方式為主動(dòng)型串口設(shè)備聯(lián)網(wǎng):在每次數(shù)據(jù)交換之前,都是由串口 wifi 模塊設(shè)備主動(dòng)發(fā)起連接, 然后在進(jìn)行數(shù)據(jù)交換。典型例子(無(wú)線(xiàn) pos 機(jī))在每次刷卡完成之后,無(wú)線(xiàn) pos 機(jī)即開(kāi)始連接后臺(tái)的服務(wù)器進(jìn)行數(shù)據(jù)交換。
首先,手機(jī)端作為上位機(jī)控制端,Wifi 模塊接收指令作為下位機(jī)執(zhí)行端;然后, 我們通過(guò)手機(jī)端 APP 對(duì)其發(fā)出操作指令,即發(fā)送 Wifi 信號(hào),Wifi 模塊接收手機(jī)發(fā)送的信號(hào)并且進(jìn)行分析轉(zhuǎn)換為高電平信號(hào)(TTL),接下來(lái)將電平信號(hào)發(fā)送給單片機(jī), 經(jīng)過(guò)相關(guān)的分析、處理轉(zhuǎn)為控制指令發(fā)送給電機(jī)驅(qū)動(dòng)模塊,小車(chē)就可以動(dòng)起來(lái)了。
簡(jiǎn)單的說(shuō)下手機(jī) APP,現(xiàn)在大家的手機(jī)大多都是安卓系統(tǒng),安卓系統(tǒng)的軟件是由JAVA 軟件進(jìn)行編譯,很是復(fù)雜,與本次設(shè)計(jì)相關(guān)不大而且學(xué)習(xí)起來(lái)很是困難。于是通過(guò)在網(wǎng)上的一些愛(ài)好者論壇,進(jìn)行溝通探討,了解到 JAVA 的編譯需要特殊的軟件,
自己也看了下教程,真心的復(fù)雜,對(duì)那些軟件編程大師很是佩服。本次用到的手機(jī)APP 名字為小 R 科技 Wifi 手機(jī)控制端,此軟件里面功能齊全,有巡線(xiàn)功能、重力感應(yīng)、雷達(dá)測(cè)距顯示等功能,但是本次只用到超聲波避障、測(cè)距以及自動(dòng)避障。當(dāng)然這些功能的實(shí)現(xiàn)包括手機(jī) APP 里面的高級(jí)的功能都是需要我們用程序編程,調(diào)試才可以實(shí)現(xiàn)。
3.2 測(cè)距模塊的設(shè)計(jì)
3.2.1 超聲測(cè)距模塊
圖 3-2 HC-SR04 超聲波測(cè)距模塊
超聲波傳感器里的發(fā)射器裝置向我們指定方向發(fā)出一組高頻率聲波,即為超聲 波,在發(fā)出的同時(shí)開(kāi)始計(jì)時(shí),超聲波在傳播途中碰到我們需要測(cè)距的物體就立即返回來(lái),超聲波傳感器里面的接收器收到反射波就立即停止計(jì)時(shí)。聲波在空氣中的傳播速度為 340m/s,根據(jù)計(jì)時(shí)器記錄的時(shí)間t,就可以計(jì)算出發(fā)射點(diǎn)距測(cè)距物體的距離s,即: s=340m/s*t/2.利用時(shí)間差測(cè)距法就可以測(cè)得距離。最后,超聲波測(cè)得的距離從串口中顯示。超聲波測(cè)距范圍經(jīng)試驗(yàn)大約為 5.00m,測(cè)量精度為 1cm.
使用方法及時(shí)序圖:
圖 3-3 超聲波測(cè)距時(shí)序圖
(1) 首先使用 Arduino 的數(shù)字引腳,發(fā)送給 SR04 的 Trig 引腳,信號(hào)為高電平
最好至少 10 ms,觸發(fā)裝置的測(cè)距功能;
(2) 然后,裝置會(huì)自動(dòng)發(fā)送 8 個(gè)超聲波脈沖,頻率為 40Khz,之后自動(dòng)檢測(cè)是否有信號(hào)返回。模塊內(nèi)部自動(dòng)完成。
(3) 接收到返回信號(hào)后,Echo 引腳會(huì)輸出高電平,高電平持續(xù)時(shí)間等于超聲波從發(fā)射到返回的時(shí)間。此時(shí),我們能使用 pulseln()函數(shù),通過(guò)內(nèi)部程序運(yùn)算獲取到測(cè)距的數(shù)值,然后距被測(cè)物體的實(shí)際距離就會(huì)輸出出來(lái)。
圖 3-4 SR04 與 Arduino 接線(xiàn)示意圖
3.2.2 舵機(jī)
PWM 信號(hào)由接收通道進(jìn)入信號(hào)解調(diào)電路 BA66881。的 12 腳進(jìn)行解調(diào),獲得一個(gè)直流偏置電壓。原理是直流偏置電壓與電位器的電壓進(jìn)行比較,獲得電壓差由 BA6688 的 3 腳輸出。該輸出電機(jī)驅(qū)動(dòng)集成電路 BA6686,以驅(qū)動(dòng)電機(jī)正反轉(zhuǎn)。當(dāng)電機(jī)轉(zhuǎn)速一定時(shí),通過(guò)級(jí)聯(lián)減速齒輪帶動(dòng)旋轉(zhuǎn),直到電壓差為 O,電機(jī)停止轉(zhuǎn)動(dòng)。舵機(jī)的控制信號(hào)是 PWM 信號(hào),利用占空比的變化改變舵機(jī)的位置。
此次小車(chē)上安裝的舵機(jī)只需要帶動(dòng)攝像頭左右、上下移動(dòng),它的轉(zhuǎn)角范圍 0-120
o之間就可以,所以選擇了 SG90 9G 舵機(jī)。
圖 3-5 SG90 9G 舵機(jī)
表 3-1 SG90 9G 舵機(jī)參數(shù)
產(chǎn)品型號(hào)
SG90
產(chǎn)品尺寸
23*12.2*29(mm)
工作扭矩
1.6KG/cm
反應(yīng)速度
0.12-0.13s/60o
通用反轉(zhuǎn)角度
最大 180 度
舵機(jī)使用電壓
3.5V-6V
結(jié)構(gòu)素材
塑料齒
圖 3-6 是舵機(jī)引腳接線(xiàn)圖,芯片 PWM 引腳與舵機(jī) pulse 引腳相連,舵機(jī)“+”引腳接電源,“-”引腳接地。
圖 3-6 引腳連接圖
3.3 電機(jī)模塊設(shè)計(jì)
3.3.1 DC3V-6V130 直流減速電機(jī)和 69MM 橡膠輪
圖 3-7 為電機(jī)與橡膠輪組裝圖如下:
圖 3-7 車(chē)輪
直流電機(jī)的減速比為 1:48,下表是其的相關(guān)參數(shù)。
表 3-2 直流減速電機(jī)參數(shù)
額定電壓
3V
6V
空載電流
≤120MA
≤180MA
減速比
1:48
負(fù)載電流
≤170MA
≤230MA
負(fù)載轉(zhuǎn)速
約 115 轉(zhuǎn)/分
約 255 轉(zhuǎn)/分
扭矩
約 0.7kgf.cm
約 1.2kgf.cm
3.3.2 電機(jī)驅(qū)動(dòng)部分
本次設(shè)計(jì)小車(chē)選取的電機(jī)驅(qū)動(dòng)板為 L298N 電機(jī)驅(qū)動(dòng)板模塊,下面是電機(jī)驅(qū)動(dòng)板圖以及相關(guān)的參數(shù)。
圖 3-8 L298N 電機(jī)驅(qū)動(dòng)板模塊
19
表 3-3 電機(jī)驅(qū)動(dòng)板參數(shù)
驅(qū)動(dòng)芯片
L298N 雙 H 橋直流電機(jī)驅(qū)動(dòng)芯片
驅(qū)動(dòng)端供電范圍 Vs
+5V~+35V
驅(qū)動(dòng)部分峰值電流
2A
邏輯部分供電范圍 Vss
+5V~+7V
邏輯部分工作電流范圍
0~36mA
控制信號(hào)輸入電壓范圍
低電平:-0.3~1.5V 高電平:2.3~Vss
使能信號(hào)輸入電壓范圍
低電平:-0.3~1.5V 高電平:2.3~Vss
最大功耗
20W(溫度 T=75℃時(shí))
驅(qū)動(dòng)板尺寸
53mm*43mm
驅(qū)動(dòng)板重量
35g
本模塊采用 H 橋驅(qū)動(dòng),可以同時(shí)驅(qū)動(dòng)兩個(gè)電機(jī),使能 ENA 、ENB 之后,可以分別從 IN1、IN2 輸入 PWM 信號(hào)驅(qū)動(dòng)電機(jī) 1 的轉(zhuǎn)速和方向;可以分別從 IN3、IN4 輸入 PWM 信號(hào)驅(qū)動(dòng)電機(jī) 2 的轉(zhuǎn)速和方向。信號(hào)如下表:
表 3-4 電機(jī)驅(qū)動(dòng)方式表
直流電機(jī)
旋轉(zhuǎn)方式
IN1
IN2
IN3
IN4
調(diào)速 PWM 信號(hào)
調(diào)速端
A
調(diào)速端
B
M1
正轉(zhuǎn)
高
低
/
/
高
/
反轉(zhuǎn)
低
高
/
/
高
/
停止
低
低
/
/
高
/
M2
正轉(zhuǎn)
/
/
高
低
/
高
反轉(zhuǎn)
/
/
低
高
/
高
停止
/
/
低
低
/
高
電機(jī)驅(qū)動(dòng)模塊電路連接如下圖所示:
圖 3-9 電機(jī)驅(qū)動(dòng)電路連接圖
3.4 電源部分設(shè)計(jì)
根據(jù)上述方案選擇,提供一定電量和低成本原則,選擇 DC5V10000MAH/12V 4800MAH 聚合物鋰電池。
圖 3-10 DC5V10000MAH/12V 4800MAH 聚合物鋰電池
輸入(INPUT):DC12.6V
DC5V 10000MAH(USB 接口)
輸出(QUTPUT):DC10.8-12.6V
4800MAH
尺寸:90*51*20mm
重量:200g
電池外觀:藍(lán)色
4 小車(chē)的軟件設(shè)計(jì)
在完成上一部的設(shè)計(jì)后,接下來(lái)就是對(duì)小車(chē)的軟件進(jìn)行設(shè)計(jì)編程。我們的控制器選用的是 Arduino,所用編程語(yǔ)言是建立在 C/C++基礎(chǔ)上的,Arduino 語(yǔ)言把一些AVR 單片機(jī)即微控制器相關(guān)的一些參數(shù)設(shè)置都函數(shù)化,大大降低了編程難度。
4.1 主循環(huán)程序設(shè)計(jì)
軟件設(shè)計(jì)相當(dāng)于設(shè)計(jì)小車(chē)的思想,用來(lái)指導(dǎo)硬件軀殼運(yùn)動(dòng),本次設(shè)計(jì)采用模塊化結(jié)構(gòu),下面是主循環(huán)程序框圖:
根據(jù)主程序流程圖,處理器需要從很多相應(yīng)的子程序中找出正確的相對(duì)應(yīng)的子程序,可以使用 switch 語(yǔ)句實(shí)現(xiàn)這個(gè)功能。
4.2 方向運(yùn)動(dòng)子程序
方向控制子程序一共有 9 個(gè),加上自動(dòng)避障子程序共有 10 個(gè)。他們都是通過(guò)主程序的 switch 指令查找中被調(diào)用的,以下是指令調(diào)用表
表 4-1 指令調(diào)用表
指令字符
程序
S/w
Stop();小車(chē)停止
W
Auto();小車(chē)自動(dòng)避障
F
Forward();小車(chē)前進(jìn)
B
Back();小車(chē)后退
L
Left();小車(chē)逆時(shí)針旋轉(zhuǎn)
R
Right();小車(chē)順時(shí)針旋轉(zhuǎn)
G
ForwardLeft();小車(chē)左前方行進(jìn)
I
ForwardRight();小車(chē)右前方行進(jìn)
H
BackLeft();小車(chē)左后方行進(jìn)
J
BackRight();小車(chē)右后方行進(jìn)
4.3 自動(dòng)避障子程序設(shè)計(jì)
4.4 超聲波測(cè)距程序設(shè)計(jì)
4.5 wifi 手機(jī)模塊程序設(shè)計(jì)
5 小車(chē)的制作安裝調(diào)試
5.1 小車(chē)制作安裝
首先通過(guò)螺絲螺釘固定四個(gè)電機(jī)在 PC 板上,將同一側(cè)的兩個(gè)電機(jī)分別用電線(xiàn)并聯(lián)起來(lái)后,從 PC 板中間穿過(guò)后連接在驅(qū)動(dòng)電機(jī)板上,接下來(lái)安裝 Arduino 控制器以及wifi 控制模塊,最后在車(chē)的前端安裝云臺(tái)攝像頭以及超聲波避障傳感器。如圖 5-1 所示,最后,安裝好四個(gè)橡膠輪,帥氣的智能小車(chē)就完成了,如圖 5-2 所示。
圖 5-1 小車(chē)組裝圖
圖 5-2 帥氣的小車(chē)
5.2 小車(chē)調(diào)試
安裝好小車(chē)后,用數(shù)字萬(wàn)用表對(duì)芯片的各個(gè)引腳進(jìn)行測(cè)量,防止出現(xiàn)接線(xiàn)錯(cuò)誤等問(wèn)題情況。待檢測(cè)完畢后,編譯程序,并用數(shù)據(jù)線(xiàn)將程序燒錄進(jìn) Arduino.
程序燒錄完畢后,給小車(chē)通電,連上 wifi,打開(kāi)手機(jī)控制端的 APP,如圖 5-9 所示, 對(duì)小車(chē)進(jìn)行控制,在進(jìn)行其他的功能測(cè)試之前,先將小車(chē)的基本運(yùn)動(dòng)方向,即前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)進(jìn)行檢查,發(fā)現(xiàn)小車(chē)運(yùn)動(dòng)方向和控制方向相反,自己通過(guò)改變代碼即可糾正如圖 5-10,仔細(xì)觀察小車(chē)的行走姿態(tài)和各種意外情況并記錄,盡可能找到解決的辦法。
圖 5-9 手機(jī)控制 APP
圖 5-10 小車(chē)基本方向運(yùn)動(dòng)控制設(shè)置
當(dāng)測(cè)試好所有的模塊,完成整個(gè)程序的測(cè)試,小車(chē)可以正常運(yùn)行 10 分鐘并且沒(méi)有意外情況,且可以實(shí)現(xiàn)所期待的功能時(shí),小車(chē)成功完成運(yùn)動(dòng)測(cè)試工作。
接下來(lái)測(cè)試超聲波傳感器測(cè)距,將超聲波傳感器(下位機(jī))、Arduino 控制器(將高頻率信號(hào)轉(zhuǎn)化為電信號(hào))、數(shù)據(jù)轉(zhuǎn)換器(將電信號(hào)轉(zhuǎn)化為數(shù)字信號(hào))、超聲波測(cè)距上位機(jī)連接好后,通過(guò)改變超聲波傳感器距電腦屏幕的距離,從下圖可以看出距離的變化顯示:
圖 5-11 測(cè)距圖
圖 5-12 測(cè)距圖
最后將連接好的超聲波傳感器固定在小車(chē)的正前方,通過(guò) wifi 手機(jī)控制端控制小車(chē),就可以測(cè)出障礙物距小車(chē)的距離。至此,完成了小車(chē)的全部測(cè)試。
結(jié)論
本次設(shè)計(jì)實(shí)現(xiàn)了期望的功能,小車(chē)通過(guò) wifi 與手機(jī)進(jìn)行連接,通過(guò)手機(jī) wifi 控制 APP 對(duì)小車(chē)進(jìn)行控制,小車(chē)可以測(cè)量與障礙物的距離,同時(shí)傳送實(shí)時(shí)圖像,感覺(jué)自己身在車(chē)中,也可以進(jìn)行拍照,在手機(jī) wifi 控制 APP 中選擇超聲波避障,小車(chē)可以在距障礙物 15cm 處做出避障動(dòng)作。本次設(shè)計(jì)難點(diǎn)在于程序調(diào)試以及對(duì) Arduino UNO 控制板的學(xué)習(xí),由于 Arduino 程序編程大多都是函數(shù)語(yǔ)言,對(duì)我這種入門(mén)的人也可以進(jìn)行簡(jiǎn)單的程序編輯,這讓我體會(huì)到程序編譯的神奇,感受人類(lèi)的智慧。最后,雖然遇到很多困難但是看到自己努力的成果,心里還是感受到超大的欣慰。
參考文獻(xiàn)
[1] 潘元驍. 基于 Arduino 的智能小車(chē)自動(dòng)避障系統(tǒng)設(shè)計(jì)與研究[D]. 長(zhǎng)安大學(xué) 2015
[2] 丁小妮. 基于 Arduino&Android 小車(chē)的倉(cāng)儲(chǔ)搬運(yùn)研究[D]. 長(zhǎng)安大學(xué) 2015
[3] 侯亮,王浩倫,賈鴻翅. 支持產(chǎn)品平臺(tái)創(chuàng)新的知識(shí)分類(lèi)及其本體建模研究[J]. 機(jī)電工程. 2010(11)
[4] 陳永亮,焦明生. 基于產(chǎn)品平臺(tái)和機(jī)械總線(xiàn)的爬行機(jī)器人可適應(yīng)設(shè)計(jì)[J]. 工程設(shè)計(jì)學(xué)報(bào). 2005(05)
[5] 紀(jì)欣然. 基于Arduino 開(kāi)發(fā)環(huán)境的智能尋光小車(chē)設(shè)計(jì)[J]. 現(xiàn)代電子技術(shù). 2012(15)
[6] 蔡睿妍. Arduino 的原理及應(yīng)用[J]. 電子設(shè)計(jì)工程. 2012(16)
[7] 凱姆·卡爾文,泰勒·卡爾文,龐明珠. Arduino 與電子制作[J]. 電子制作. 2012(08)
[8] 崔才豪,張玉華,楊樹(shù)財(cái). 利用 Arduino 控制板的光引導(dǎo)運(yùn)動(dòng)小車(chē)設(shè)計(jì)[J]. 自動(dòng)化儀表. 2011(09)
[9] 鄒建梅,王亞格. 利用 Arduino 增強(qiáng) Flash 互動(dòng)性的研究[J]. 中國(guó)教育技術(shù)裝備. 2010(36)
[10] 胡小江, 董飛垚, 雷虎民,等. 基于虛擬儀器的舵機(jī)半實(shí)物仿真系統(tǒng)研究[J].測(cè)控技術(shù), 2011, 30(1):75-78
[11] 楊繼志, 楊宇環(huán). 基于 Arduino 的網(wǎng)絡(luò)互動(dòng)產(chǎn)品創(chuàng)新設(shè)計(jì)[J]. 機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2012,25(1):99-100.
[12] 蔡睿妍. 基于 Arduino 的舵機(jī)控制系統(tǒng)設(shè)計(jì)[J]電腦知識(shí)與技術(shù),2012
[13]J[1]董旭明,李志斌. 計(jì)算機(jī)視覺(jué)在并聯(lián)機(jī)器人運(yùn)動(dòng)學(xué)標(biāo)定中的應(yīng)用[J]. 自動(dòng)化儀表,2016,05:16-19.
[14]曾令遠(yuǎn),吳東. 基于移動(dòng)機(jī)器人的智能攝影軟件設(shè)計(jì)及實(shí)現(xiàn)[J]. 現(xiàn)代計(jì)算機(jī)(專(zhuān)業(yè)版),2016,28:53-57.
[15]M. Fatehnia,S. Paran,S. Kish,K. Tawfiq. Automating double ring infiltrometer with an Arduino microcontroller[J]. Geoderma,2016,262:.
[16]Gianluca Barbon,Michael Margolis,Filippo Palumbo,Franco Raimondi,Nick Weldin. T aking Arduino to the Internet of Things: The ASIP programming model[J]. Computer Com munications,2016,:.
[17]M. Rahaman Laskar,R. Bhattacharjee,M. Sau Giri,P. Bhattacharya. Weather Forecastin g Using Arduino Based Cube-Sat[J]. Procedia Computer Science,2016,89:.
[18] Elson Avallone,Diogo Garcia Cunha,Alcides Padilha,Vicente Luiz Scalon. Electronic multiplex system using the Arduino platform to control and record the data of the temperat ures profiles in heat storage tank for solar collector[J]. International Journal of Energy and Environmental Engineering,2016,74:.
[19] Kun Zheng,Dunbing Tang,Wenbin Gu,Min Dai. Distributed control of multi-AGV system based on regional control model[J]. Production Engineering . 2013 (4)
29
附錄 1
外文翻譯
使用多個(gè)相機(jī)系統(tǒng)跟蹤單位球面上運(yùn)動(dòng)目標(biāo)的移動(dòng)機(jī)器人
摘要:移動(dòng)機(jī)器人上攝像機(jī)系統(tǒng)的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤是一個(gè)難題,由于機(jī)器人自身運(yùn)動(dòng)和運(yùn)動(dòng)目標(biāo)共同構(gòu)成了一個(gè)具有挑戰(zhàn)性的問(wèn)題:圖像中的可分辨運(yùn)動(dòng)。在本文中, 我們關(guān)注的是多攝像機(jī)系統(tǒng),即瓢蟲(chóng)?2 相機(jī),它的圖像被用來(lái)檢測(cè)運(yùn)動(dòng)和隨后的性能以及球體上多個(gè)對(duì)象的跟蹤。這使我們能夠解釋其運(yùn)動(dòng)的連續(xù)性,這是通過(guò)傳感器在圖像拼接過(guò)程中的球體上的場(chǎng)景的連續(xù)性。被跟蹤的球體上的對(duì)象在貝葉斯濾波器的基礎(chǔ)上,通過(guò)馮米塞斯-費(fèi)舍爾分布和數(shù)據(jù)關(guān)聯(lián)是最近鄰全局的方法,其中距離矩陣是通過(guò)推導(dǎo) RéNyiα-馮米塞斯 Fisher 分布差異–構(gòu)造。該方法是在進(jìn)行測(cè)試的合成和真實(shí)世界的數(shù)據(jù)實(shí)驗(yàn)為基礎(chǔ)的。
1 引言
運(yùn)動(dòng)目標(biāo)的檢測(cè)與跟蹤(DATMO)在一個(gè)移動(dòng)平臺(tái)或車(chē)輛周?chē)窃谠S多不同的應(yīng)用程序的基本步驟。該信息是否已被用于在一個(gè)環(huán)境中的移動(dòng)目標(biāo)導(dǎo)航,被指定為屬于運(yùn)動(dòng)目標(biāo)區(qū)域,該 DATMO 始于 D 檢測(cè)部分,包括對(duì)原始數(shù)據(jù)的信息處理和之后的跟蹤方案假設(shè)的過(guò)程。在這個(gè)意義上的檢測(cè)方法強(qiáng)烈地依賴(lài)于傳感器的性質(zhì)和它感測(cè)的現(xiàn)象,而跟蹤部分可以依賴(lài)于測(cè)量的空間中采取。在本文中,我們利用一個(gè)多攝像機(jī)系統(tǒng),形成一個(gè)全方位的圖像拼接的一系列透視圖像在一個(gè)單位的球體,這是我們的測(cè)量駐留空間。
當(dāng)相機(jī)被放置在一個(gè)移動(dòng)機(jī)器人,運(yùn)動(dòng)目標(biāo)檢測(cè)變得越來(lái)越復(fù)雜,因?yàn)樵趫D像的總運(yùn)動(dòng)匯合性是機(jī)器人運(yùn)動(dòng)任務(wù),獨(dú)立的對(duì)象 ECT 運(yùn)動(dòng),以及場(chǎng)景的三維結(jié)構(gòu)[ 1 ]。[ 2 ]在運(yùn)動(dòng)目標(biāo)檢測(cè)與一個(gè)單一的透視相機(jī)是通過(guò)計(jì)算光流場(chǎng)的優(yōu)化實(shí)現(xiàn)雙線(xiàn)性變換 在將圖像相鄰幀之間,在這之后的圖像差異進(jìn)行運(yùn)動(dòng)檢測(cè)。然后,粒子過(guò)濾器被用來(lái)跟蹤在圖像中的移動(dòng)對(duì)象,激光測(cè)距儀用于推斷三維中的位置。[ 3 ]檢測(cè)是基于單眼場(chǎng)景重建和仿射變換的三角形網(wǎng)格。利用擴(kuò)展卡爾曼濾波進(jìn)行運(yùn)動(dòng)目標(biāo)跟蹤和場(chǎng)景重建。演示與經(jīng)典結(jié)構(gòu)的運(yùn)動(dòng)檢測(cè),從運(yùn)動(dòng)(SFM)與多個(gè)硬性移動(dòng)的物體的動(dòng)態(tài)場(chǎng)景,稱(chēng)為多體 SFM,[ 4,5 ][ 6 ]人檢測(cè)到使用直方圖的方向梯度的一針 ED 打開(kāi)全景圖像利用在移動(dòng)機(jī)器人瓢蟲(chóng)?2 多相機(jī)系統(tǒng)。
在跟蹤多個(gè)運(yùn)動(dòng)目標(biāo)時(shí),數(shù)據(jù)關(guān)聯(lián)問(wèn)題起著至關(guān)重要的作用。為了解決這個(gè)問(wèn)題, 可以使用的方法是全球近鄰(GNN),ATT 試圖在每一個(gè)掃描后[ 7 ]找到最有可能的數(shù)據(jù)關(guān)聯(lián)假設(shè),聯(lián)合概率數(shù)據(jù)關(guān)聯(lián)(JPDA)濾波器在多個(gè)假設(shè)中首先形成,然后結(jié)合前在繼續(xù)下一個(gè)掃描[ 8 ],多假設(shè)濾波器(MHT)在多個(gè)數(shù)據(jù)關(guān)聯(lián)假設(shè)的形成和傳播。此外,跟蹤多個(gè)目標(biāo)的另一種方法:對(duì)象是概率假設(shè)密度(PHD)濾波器[ 9,10 ], 本身并沒(méi)有解決數(shù)據(jù)關(guān)聯(lián)問(wèn)題。上述具體實(shí)施與跟蹤方法,如果使用卡爾曼濾波,高斯混合或序貫蒙特卡羅方法。然而,據(jù)筆者所知,這些方法以前沒(méi)有被應(yīng)用在多個(gè)目標(biāo)在單位球面上分布的跟蹤場(chǎng)景即米塞斯-費(fèi)舍爾分布。
本文提出了一種基于 GNN 的框架,這是基于與米塞斯–Fisher 分布的貝葉斯跟蹤球跟蹤多個(gè)運(yùn)動(dòng)目標(biāo)的新方法。解決 E 的任務(wù),首先我們得到驗(yàn)證門(mén)控基于測(cè)量
的可能性和預(yù)測(cè)的狀態(tài)為球體丟棄不可能測(cè)量的關(guān)聯(lián)程序的手段。重新計(jì)算最可能的數(shù)據(jù)關(guān)聯(lián)的假設(shè)提出了 RéNyiα-散度作為距離測(cè)度之間的馮米塞斯–Fisher 分布和表達(dá)方法推導(dǎo)出 T 。RéNyiα-發(fā)散是一類(lèi)廣義的距離,包括一些知名的距離等計(jì)算
–Leiber 和 Bhattacharyya 距離。實(shí)驗(yàn)結(jié)果 是第一次提出在合成數(shù)據(jù)的例子和隨后的瓢蟲(chóng)?2 多攝像機(jī)系統(tǒng)獲得的實(shí)驗(yàn)。目前的系統(tǒng)是全方位的,但是,由于它形成的全方位圖像,通過(guò)拼接圖像的五透視相機(jī)(頂部沒(méi)有被視為)的運(yùn)動(dòng)物體的檢測(cè)是由透視凸輪的方法進(jìn)行 時(shí)代[ 2 ]。隨后的移動(dòng)對(duì)象的聚類(lèi)和測(cè)量生成的跟蹤過(guò)程,然后在球體上執(zhí)行。
本文的結(jié)構(gòu)如下。第 2 節(jié)介紹利用運(yùn)動(dòng)檢測(cè)算法。第 3 節(jié)介紹了提出的多目標(biāo)跟
蹤方法,第 4 節(jié)顯示實(shí)驗(yàn)結(jié)果,而第 5 節(jié)總結(jié)論文。
2 運(yùn)動(dòng)目標(biāo)檢測(cè)
為檢測(cè)任務(wù),我們用一個(gè)球面數(shù)字?jǐn)z像系統(tǒng)組成的 6 個(gè)單眼相機(jī)(即瓢蟲(chóng)?2)放在一個(gè)移動(dòng)平臺(tái)。由于系統(tǒng)包括六個(gè)方面 VE 相機(jī),他們可以縫合在一起,從而形成一個(gè)球形圖像。許多傳感器,包括單眼相機(jī),原則上只軸承傳感系統(tǒng),而深度只能估計(jì) 達(dá)到一個(gè)規(guī)模。這里出現(xiàn)的需要跟蹤在球體上的移動(dòng)對(duì)象。在先前提出的問(wèn)題的靜脈,在六個(gè)圖像的相機(jī)系統(tǒng)中檢測(cè)到的對(duì)象的位置 莖被投射到球體上,作為跟蹤任務(wù)的輸入。運(yùn)動(dòng)目標(biāo)檢測(cè)是一個(gè)比較困難的問(wèn)題的機(jī)器人開(kāi)始移動(dòng),因?yàn)樽晕疫\(yùn)動(dòng)產(chǎn)業(yè) 固有光流。為了確保算法的效率和平臺(tái)移動(dòng),它是必要的自我運(yùn)動(dòng)補(bǔ)償[ 2,3 ]。
自我運(yùn)動(dòng)補(bǔ)償算法提供了一個(gè)連續(xù)幀之間的轉(zhuǎn)換,轉(zhuǎn)換可估計(jì)的直接或間接。前者依靠各種定位 離子系統(tǒng)(例如,IMU,GPS,里程計(jì)),后者估計(jì)使用圖像處理方法的轉(zhuǎn)變,避免額外的傳感器。這種間接的方法是基于顯著的特征集 我們通過(guò)連續(xù)的圖像。為了這個(gè)目的,我們使用 Lucas Kanade 算法的稀疏光流在[ 11–13 ]。一旦建立光流,就必須確定 補(bǔ)償?shù)淖儞Q參數(shù)。在這里,我們使用了一個(gè)非線(xiàn)性模型, 它可以處理平移和旋轉(zhuǎn)的變化,特別是雙線(xiàn)性模型給出如下:
這種方法假定的背景運(yùn)動(dòng)是占主導(dǎo)地位的,它可以很好地近似由一個(gè)平面,相對(duì)于相機(jī)的距離的深度的變化是小的(我們的視差)。一旦估計(jì)的轉(zhuǎn)變,以前的圖像可以被扭曲成了當(dāng)前時(shí)刻;它?1→T =重量?1→T(它?1)。扭曲的形象?1→T 大約相當(dāng)于圖像 它?1,從相同的位置,它的重量?;1→T(它?1)≈它。然后,在時(shí)間 t 的圖像動(dòng)態(tài)部分檢測(cè)后,應(yīng)用圖像差分圖像之間的這?1→T 和它。這樣的圖像 差異又分大小 16×16 像素區(qū)域,而差異的平均水平是每個(gè)區(qū)域的確定。這個(gè)平均值可以被認(rèn)為是 E 區(qū)。應(yīng)用閾值后,每個(gè)區(qū)域被聲明為靜態(tài)或動(dòng)態(tài)。根據(jù)圖像內(nèi)的歐氏距離然后聚集。
由于每?jī)蓚€(gè)相鄰的攝像機(jī)有重疊的視場(chǎng),一些對(duì)象可能會(huì)被識(shí)別在兩個(gè)圖像。因此,在每一個(gè)時(shí)間步,每個(gè)檢測(cè)投影在單位球面,一些檢測(cè)集中在一起,所以是以前的論證檢測(cè)過(guò)程中的一個(gè)例子。
3 單位球面上的跟蹤
馮米塞斯費(fèi)舍爾分布作為一個(gè)通用的概率模型在空間方向和定向測(cè)量誤差[ 14 ]。當(dāng)考慮方向 P 維度,即單位 V 在 p 維歐氏空間 R P 載體,一個(gè)可以代表他們的點(diǎn) P?1,即 P?1 維球面半徑和中心在原點(diǎn)的單位。換句話(huà)說(shuō),一個(gè) p-sphere 是DEF 定義為一組點(diǎn)(P + 1)維歐氏空間,因此 1-sphere 是圓的,2 是在三維空間中的球的表面。
附錄 2
外文原文
附錄 3 程序代碼
39
46
致 謝
本次的畢業(yè)設(shè)計(jì)首先要感謝我的老師,智能測(cè)量小車(chē)設(shè)計(jì)這個(gè)課題高端大氣上檔次,當(dāng)今社會(huì),小到玩具電動(dòng),大到電器家具、汽車(chē)等,越來(lái)越多的智能化設(shè)備正在應(yīng)運(yùn)而生,在這個(gè)越來(lái)越接近智能化的社會(huì),我們?cè)趺茨芨视诼浜?,如何深入了解智能化編程這個(gè)大家庭,理解它的運(yùn)作原理。首先我們要從小的方面去探索,去實(shí)驗(yàn), 例如簡(jiǎn)單的光控聲音,光控?zé)簦荞R燈等的程序編譯,由淺及深,會(huì)更好的了解智能化編程的神奇之處。
在本次設(shè)計(jì)過(guò)程中,李老師給了我很大的幫助,李老師不僅學(xué)識(shí)淵博,待人更是體貼入微,在我遇到難題時(shí),總是細(xì)心為我講解。當(dāng)然也要感謝大學(xué)期間所有的老師, 正是因?yàn)樗麄兊木瞎M瘁,傳道授業(yè),我們才能擁有豐富的知識(shí)。
我還要感謝學(xué)校能提供畢業(yè)設(shè)計(jì)這個(gè)優(yōu)秀的品臺(tái),在我們即將步入社會(huì)之際,給了我們更多的知識(shí)儲(chǔ)備,相信在以后的道路上,定會(huì)為我們指引正確的逐夢(mèng)之路!
最后,再次感謝老師們,祝你們身體健康,萬(wàn)事如意,心想事成!
收藏