• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    移動(dòng)機(jī)器人路徑規(guī)劃算法仿真及實(shí)現(xiàn)

    2022-04-02 08:53:20郭昭烽劉紅英邱池健
    軟件工程 2022年4期
    關(guān)鍵詞:規(guī)劃環(huán)境

    郭昭烽,謝 玲,劉紅英,邱池健

    (1.光大環(huán)境科技(中國(guó))有限公司,江蘇 南京 211102;2.南京理工大學(xué)紫金學(xué)院,江蘇 南京 210046)

    louisguo1983@163.com;12011833@qq.com;328392801@qq.com;865457907@qq.com

    1 引言(Introduction)

    路徑規(guī)劃技術(shù)是機(jī)器人領(lǐng)域研究的核心之一。路徑規(guī)劃是指按照一定的評(píng)價(jià)標(biāo)準(zhǔn)(如選擇最短的規(guī)劃路徑、最短的規(guī)劃時(shí)間或者最小的工作代價(jià)等),在存有障礙物的環(huán)境地圖中,從起點(diǎn)到目標(biāo)點(diǎn)之間找到可行地避免碰撞的路徑。路徑規(guī)劃大致可分為全局路徑規(guī)劃和局部路徑規(guī)劃兩大類(lèi),又有靜態(tài)、動(dòng)態(tài)兩個(gè)分支。全局靜態(tài)規(guī)劃算法從經(jīng)典的BFS、DFS發(fā)展到后來(lái)的Dijkstra算法和A*算法,當(dāng)外部環(huán)境不斷發(fā)生變化時(shí),又由A*算法演變到D*算法。除去經(jīng)典的路徑規(guī)劃算法之外,如今人工智能相關(guān)算法也為機(jī)器人路徑規(guī)劃開(kāi)拓了另一個(gè)方向,如蟻群算法、模擬退火算法、神經(jīng)網(wǎng)絡(luò)、粒子群算法和遺傳算法等。

    在機(jī)器人運(yùn)動(dòng)的過(guò)程中起到?jīng)Q定性作用的是路徑規(guī)劃技術(shù)。如何提高機(jī)器人路徑規(guī)劃的技術(shù),從實(shí)質(zhì)上看,是如何創(chuàng)造出效率性更高的算法,或是針對(duì)機(jī)器人實(shí)際應(yīng)用場(chǎng)景,將已有的算法進(jìn)行有針對(duì)性的優(yōu)化,極大程度地促進(jìn)機(jī)器人技術(shù)的發(fā)展,這對(duì)整個(gè)機(jī)器人的發(fā)展領(lǐng)域具有極其重要的意義。

    2 路徑規(guī)劃原理(Principles of path planning)

    機(jī)器人路徑規(guī)劃的過(guò)程中,主要分三步進(jìn)行。

    首先是根據(jù)已知的地圖信息來(lái)建模,障礙點(diǎn)、可行點(diǎn)、加權(quán)值等相關(guān)的地圖數(shù)據(jù)參數(shù)被存儲(chǔ)成可被算法識(shí)別的數(shù)據(jù)流。

    其次,選擇合適的算法進(jìn)行研究,根據(jù)機(jī)器人所需要執(zhí)行的任務(wù)進(jìn)行實(shí)際優(yōu)化,這一點(diǎn)可以使機(jī)器人具有應(yīng)對(duì)單一任務(wù)的專(zhuān)一性,根據(jù)實(shí)際情況消除不必要的計(jì)算過(guò)程,提高機(jī)器人的路徑規(guī)劃效率。

    最后,根據(jù)改進(jìn)的路徑規(guī)劃算法為機(jī)器人尋找一條由機(jī)器人當(dāng)前位置到目標(biāo)點(diǎn)位置的無(wú)碰撞最優(yōu)路徑,機(jī)器人根據(jù)路徑信息及配置的物理參數(shù)進(jìn)行尋路。機(jī)器人路徑規(guī)劃原理如圖1所示。

    圖1 路徑規(guī)劃原理Fig.1 Principles of path planning

    3 路徑規(guī)劃環(huán)境建模(Path planning environment modeling)

    研究機(jī)器人路徑規(guī)劃,離不開(kāi)對(duì)機(jī)器人移動(dòng)環(huán)境的數(shù)據(jù)建模,環(huán)境建模是算法執(zhí)行的關(guān)鍵,算法要依據(jù)環(huán)境信息給出結(jié)果。將機(jī)器人移動(dòng)的實(shí)際三維環(huán)境空間進(jìn)行規(guī)劃劃分,提取環(huán)境的信息特征,抽象計(jì)算機(jī)可以存儲(chǔ)和操作的數(shù)字信息。算法能根據(jù)建模的環(huán)境信息進(jìn)行運(yùn)算和反饋。對(duì)于局部路徑規(guī)劃而言,環(huán)境建模需對(duì)環(huán)境出現(xiàn)的新變量進(jìn)行及時(shí)處理,能夠高效地、準(zhǔn)確地將環(huán)境信息進(jìn)行更新。這樣機(jī)器人就可以利用建立起來(lái)的地圖信息進(jìn)行路徑搜索。常見(jiàn)的環(huán)境建模方法有柵格模型、幾何模型、拓?fù)淠P汀⑷荒P偷取?/p>

    本文采用柵格模型作為仿真實(shí)驗(yàn)的建模方法。柵格法環(huán)境建模的具體步驟為:首先將規(guī)劃環(huán)境柵格化,處理成統(tǒng)一的單元模型數(shù)據(jù),根據(jù)障礙物在環(huán)境中的分布信息,將對(duì)應(yīng)的單元柵格處理成障礙柵格,其余為自由柵格。其次鏈接各個(gè)柵格處理成圖,然后在圖中搜尋一條可行路徑,將路徑的坐標(biāo)存儲(chǔ)反饋給機(jī)器人,坐標(biāo)即是單元柵格的單元格編號(hào)。最后機(jī)器人根據(jù)所得編號(hào)對(duì)應(yīng)的實(shí)際坐標(biāo)進(jìn)行移動(dòng)完成路徑搜索。其優(yōu)點(diǎn)在于需要構(gòu)成的二維陣列易于實(shí)現(xiàn),且容易被計(jì)算機(jī)存儲(chǔ)、操作和顯示,同時(shí)易于修改和擴(kuò)大地圖規(guī)模,便于實(shí)驗(yàn)數(shù)據(jù)的獲得。

    4 路徑規(guī)劃算法研究及仿真(Research and simulation of path planning algorithm)

    首先設(shè)置一個(gè)尺寸為15×15柵格的障礙地圖作為每個(gè)算法的統(tǒng)一輸入源,其次設(shè)置不同尺寸的地圖,對(duì)各個(gè)算法進(jìn)行路徑搜索時(shí)間的統(tǒng)計(jì)。本文對(duì)Dijkstra、A*、D*的核心算法進(jìn)行研究,在Windows 10系統(tǒng)中使用Pycharm開(kāi)發(fā)平臺(tái),用Python語(yǔ)言對(duì)各個(gè)算法進(jìn)行編程實(shí)現(xiàn),以及設(shè)計(jì)GUI使算法中的各個(gè)步驟進(jìn)行可視化處理,以此進(jìn)行仿真實(shí)驗(yàn)。

    4.1 環(huán)境建模

    使用柵格法建立一張完全有向圖,每一個(gè)柵格可以連接上下左右四個(gè)點(diǎn)。每個(gè)柵格的基礎(chǔ)屬性為笛卡爾坐標(biāo)系的坐標(biāo)(,)和一個(gè)判斷是否為自由柵格的屬性,以及一個(gè)保存可探索的柵格坐標(biāo)的數(shù)組,其他屬性根據(jù)不同算法重新構(gòu)建。柵格模型建立的地圖如圖2所示。

    圖2 算法仿真的地圖Fig.2 Algorithm simulation map

    白色代表障礙柵格,用數(shù)字表示的代表自由柵格。黑色柵格代表權(quán)值為1,數(shù)字3柵格代表權(quán)值為2,數(shù)字1柵格代表權(quán)值為3,數(shù)字2柵格代表權(quán)值為4。各個(gè)柵格的位置如下:

    式(1)中,、代表該柵格在笛卡爾坐標(biāo)系下的坐標(biāo)位置,、代表柵格的像素寬度和高度,將在繪制GUI的時(shí)候使用。

    4.2 Dijkstra算法

    Dijkstra算法是從一個(gè)頂點(diǎn)到其余各頂點(diǎn)的最短路徑算法,解決的是有權(quán)圖中最短路徑問(wèn)題。其主要特點(diǎn)是從起始點(diǎn)開(kāi)始,采用貪心算法的策略,每次遍歷到始點(diǎn)距離最近且未訪問(wèn)過(guò)的頂點(diǎn)的鄰接節(jié)點(diǎn),直到擴(kuò)展到終點(diǎn)為止。本文采用的是對(duì)BFS算法的改寫(xiě),BFS算法中使用的地圖,默認(rèn)權(quán)值都為1,即從一個(gè)單元柵格到另外的節(jié)點(diǎn)單元柵格默認(rèn)距離都為1。單元柵格的距離默認(rèn)為1,這種情況表示在平地上運(yùn)動(dòng),而現(xiàn)實(shí)的環(huán)境情況下,平地只是環(huán)境因素的一部分,還有山坡、低洼或者沼澤地等其他不同的環(huán)境條件,而在這些有坡度的環(huán)境因素下,機(jī)器人通過(guò)這些地方就要改變其速度,或者以時(shí)間為代價(jià)通過(guò)。也就是說(shuō),BFS得出的路徑在有權(quán)圖中并不是最優(yōu)路徑。因此我們通過(guò)給每個(gè)自由柵格增加一個(gè)權(quán)的屬性,表示當(dāng)前柵格到其他單元柵格的距離值,在有權(quán)圖中采用Dijkstra算法求出最短路徑。

    本文使用一個(gè)優(yōu)先隊(duì)列存儲(chǔ),將這個(gè)要探索的單元格添加到隊(duì)列中,而單元柵格到單元柵格的距離為公式(2)所得:

    作為隊(duì)列的優(yōu)先級(jí)編號(hào),距離越短,優(yōu)先級(jí)越高,即優(yōu)先隊(duì)列會(huì)將當(dāng)前單元柵格到附近最短距離的單元柵格出隊(duì),判斷其當(dāng)前的狀態(tài)和后續(xù)節(jié)點(diǎn)的狀態(tài)。

    在實(shí)現(xiàn)Dijkstra算法時(shí),我們引用Python.queue創(chuàng)建一個(gè)PriorityQueue,該隊(duì)列是一個(gè)優(yōu)先搜索隊(duì)列,不同于普通隊(duì)列,該隊(duì)列的出入隊(duì)是根據(jù)隊(duì)列中對(duì)象的優(yōu)先級(jí)而定的。該優(yōu)先隊(duì)列有兩個(gè)參數(shù),即index和object,index為優(yōu)先隊(duì)列對(duì)象object的優(yōu)先值,優(yōu)先隊(duì)列會(huì)根據(jù)對(duì)象的優(yōu)先值進(jìn)行排序,每次得到的隊(duì)頭的對(duì)象都是優(yōu)先值最高的,對(duì)應(yīng)的index為最低數(shù)值。優(yōu)先隊(duì)列的存儲(chǔ)和讀取函數(shù)為push()和get(),將對(duì)象入隊(duì):PriorityQueue.push([index,object]);獲取隊(duì)頭對(duì)象:PriorityQueue.get()。算法首先根據(jù)傳入的地圖信息初始化distance,將不是終點(diǎn)的節(jié)點(diǎn)對(duì)向的權(quán)值設(shè)置為無(wú)窮大。算法執(zhí)行到最后將返回兩個(gè)字典對(duì)象parent和distance,機(jī)器人將通過(guò)遍歷parent字典尋找最短路徑。而distance記錄點(diǎn)到點(diǎn)的距離,可以通過(guò)訪問(wèn)該字典求得最短路徑的長(zhǎng)度。

    分別設(shè)置起始點(diǎn)(0,0)、終點(diǎn)(9,9)和起始點(diǎn)(0,0)、終點(diǎn)(14,14)進(jìn)行仿真,該算法仿真結(jié)果如圖3所示。

    圖3 Dijkstra算法路徑搜索Fig.3 Dijkstra algorithm path search

    根據(jù)仿真結(jié)果可以看出,第一組參數(shù)得出的最短路徑為13,第二組參數(shù)得出的最短路徑為26。通過(guò)仿真的路徑搜索可視化過(guò)程可以看出,Dijkstra算法與BFS算法類(lèi)似,都是層層逼近終點(diǎn),但是由于有優(yōu)先值的加入,使得相對(duì)較遠(yuǎn)的子節(jié)點(diǎn)成為優(yōu)先選擇的對(duì)象,而不是靠近當(dāng)前的節(jié)點(diǎn)作為下一步搜索的節(jié)點(diǎn)。

    4.3 A*算法

    A*算法引入了啟發(fā)式搜索這個(gè)概念,也就是增加了一個(gè)啟發(fā)函數(shù),該函數(shù)能夠計(jì)算得出一個(gè)值,該值代表當(dāng)前柵格到目的柵格移動(dòng)的優(yōu)先級(jí),數(shù)值越高優(yōu)先級(jí)越低??梢酝ㄟ^(guò)下面的函數(shù)來(lái)表示節(jié)點(diǎn)的優(yōu)先級(jí):

    其中,()是節(jié)點(diǎn)的最終優(yōu)先級(jí),當(dāng)算法在選取下輪遍歷的節(jié)點(diǎn)時(shí),選取當(dāng)前節(jié)點(diǎn)列表中優(yōu)先級(jí)最高的節(jié)點(diǎn)作為下次循環(huán)的起點(diǎn);()是節(jié)點(diǎn)到目標(biāo)點(diǎn)的距離;()為節(jié)點(diǎn)到目標(biāo)點(diǎn)的預(yù)估代價(jià)。()啟發(fā)式函數(shù)如下:

    式(4)是曼哈頓距離的計(jì)算,式(5)是歐拉距離的計(jì)算,對(duì)于不同的地圖模型,將選取不同的啟發(fā)式函數(shù)。

    首先建立兩個(gè)列表OPENSET和CLOSESET,列表存儲(chǔ)的是節(jié)點(diǎn)對(duì)象,OPENSET將存放可以被選擇移動(dòng)的節(jié)點(diǎn),CLOSESET存放被選擇過(guò)或不可選擇的節(jié)點(diǎn)。根據(jù)Point類(lèi)中的屬性進(jìn)行判斷,即Point.obs和Point.close中有一個(gè)為T(mén)rue,則這個(gè)節(jié)點(diǎn)將會(huì)被保存在CLOSESET中。算法從起始點(diǎn)開(kāi)始逐層搜索,將從OPENSET中選取代價(jià)最小的節(jié)點(diǎn)開(kāi)始探索,根據(jù)當(dāng)前節(jié)點(diǎn)中臨近節(jié)點(diǎn)列表中的節(jié)點(diǎn)的代價(jià),選取最小代價(jià)的點(diǎn),添加到OPENSET中,作為下一次探索的起始點(diǎn)。在退出當(dāng)前節(jié)點(diǎn)時(shí),會(huì)將當(dāng)前節(jié)點(diǎn)的now_Point.close設(shè)置為T(mén)rue并添加到CLOSESET中。

    分別設(shè)置起始點(diǎn)(0,0)、終點(diǎn)(9,9)和起始點(diǎn)(0,0)、終點(diǎn)(14,14),以及分別采用曼哈頓距離和歐拉距離作為啟發(fā)式,仿真結(jié)果如圖4所示。

    圖4 A*算法路徑搜索Fig.4 A* algorithm path search

    如圖4所示,兩個(gè)啟發(fā)式得到的路徑結(jié)果都相同,圖4(a)、圖4(c)的距離為22,圖4(b)、圖4(d)的距離為26。但是我們可以很明顯地看出,曼哈頓距離在柵格模型中搜索的范圍相對(duì)于采用歐拉距離作為啟發(fā)式的搜索范圍更少,也就是說(shuō),A*算法在柵格模型中采用曼哈頓距離作為啟發(fā)式方程,將會(huì)縮小時(shí)間復(fù)雜度,提高算法的效率。

    4.4 D*算法

    D*算法及其延伸算法廣泛應(yīng)用于移動(dòng)機(jī)器人和自主車(chē)輛導(dǎo)航中。D*算法的核心與Dijkstra算法和A*算法類(lèi)似,需要維護(hù)一張OPENSET表。該列表記錄每一個(gè)單元柵格的五個(gè)狀態(tài):NEW、OPEN、CLOSED、RAISE、LOWER。NEW代表該節(jié)點(diǎn)從未加入OPENSET中。OPEN代表該節(jié)點(diǎn)當(dāng)前處于OPENSET表中。CLOSED代表該節(jié)點(diǎn)已被OPENSET列表移除。而RAISE和LOWER則記錄移動(dòng)成本的代價(jià),RAISE代表當(dāng)前移動(dòng)成本比未改變地圖信息時(shí)的成本高;LOWER代表當(dāng)前移動(dòng)成本比未改變地圖信息時(shí)的成本低。有了這五個(gè)狀態(tài),算法可以在改變地圖信息后,對(duì)路徑進(jìn)行重新預(yù)估和修正。

    當(dāng)障礙點(diǎn)的增加數(shù)量過(guò)多的時(shí)候,還會(huì)引發(fā)另一個(gè)問(wèn)題:死鎖的出現(xiàn),即障礙點(diǎn)的出現(xiàn),導(dǎo)致自由柵格不能通過(guò)臨近節(jié)點(diǎn)找到一條新的路線(xiàn)。而解決這個(gè)問(wèn)題的方法,則是保存當(dāng)前路徑數(shù)據(jù),然后使算法重新規(guī)劃路徑。

    首先建立一張維護(hù)列表OPENLIST記錄節(jié)點(diǎn)的狀態(tài),D*算法是反向搜索,所以將終點(diǎn)先添加到列表中。每一個(gè)單元節(jié)點(diǎn)有三個(gè)狀態(tài):NEW、OPEN和CLOSED,NEW代表當(dāng)前節(jié)點(diǎn)未被加入OPENLIST中;OPEN代表當(dāng)前節(jié)點(diǎn)在OPENLIST中;CLOSED代表當(dāng)前節(jié)點(diǎn)不在OPENLIST中。此時(shí)的CLOSED不再是被移除的意思,即該節(jié)點(diǎn)曾被列入列表中。算法的搜索是擴(kuò)張過(guò)程,即每次從維護(hù)列表中選取一個(gè)節(jié)點(diǎn),對(duì)其節(jié)點(diǎn)的移動(dòng)代價(jià)進(jìn)行預(yù)估,將移動(dòng)代價(jià)最小的節(jié)點(diǎn)保存到OPENLIST中,并修改其狀態(tài)屬性,同時(shí)將當(dāng)前節(jié)點(diǎn)和選取節(jié)點(diǎn)的變化狀態(tài)傳播到臨近節(jié)點(diǎn),更新其對(duì)應(yīng)的各個(gè)臨近節(jié)點(diǎn)的權(quán)值。D*算法從目標(biāo)點(diǎn)開(kāi)始搜索,即每個(gè)節(jié)點(diǎn)都有一個(gè)反向指針,該指針由下一步移動(dòng)的節(jié)點(diǎn)指向當(dāng)前節(jié)點(diǎn),最終的路徑只要按照反向指針指向的節(jié)點(diǎn)搜索,就能得到路徑。

    當(dāng)在指定路徑上有障礙物產(chǎn)生時(shí),將檢測(cè)到障礙物的附近節(jié)點(diǎn)放入OPENLIST中,此次將這些節(jié)點(diǎn)的預(yù)估值進(jìn)行重新計(jì)算,只保留預(yù)估值最小的節(jié)點(diǎn),并修改其狀態(tài),同時(shí)將節(jié)點(diǎn)的狀態(tài)變化傳播到臨近節(jié)點(diǎn)。如果遇到堵塞,則按照Dijkstra算法從節(jié)點(diǎn)列表中選取最優(yōu)的點(diǎn)進(jìn)行回溯,并更新列表中的節(jié)點(diǎn)信息。

    設(shè)置起點(diǎn)為(0,0)、終點(diǎn)為(14,14),設(shè)置兩組不同后續(xù)生成的障礙點(diǎn)分別為:第一組:(0,5),(3,5),(13,10),(14,10);第二組:(5,10),(5,0),(5,2),(12,12)。新生成的障礙點(diǎn)將渲染成數(shù)字2柵格,與原有障礙白色柵格形成對(duì)比,仿真結(jié)果如圖5所示。

    圖5 D*算法路徑搜索Fig.5 D* algorithm path search

    通過(guò)仿真結(jié)果可以看出,機(jī)器人在地圖信息改變之后,在排除鎖死情況發(fā)生的狀況下,大致會(huì)沿著原來(lái)的路徑前進(jìn),當(dāng)遇到障礙物時(shí),會(huì)選擇繞開(kāi)障礙物,走臨近的可移動(dòng)節(jié)點(diǎn),直至終點(diǎn)。圖5(b)和圖5(d)中的數(shù)字1柵格表示上一次路徑的選擇,也就是說(shuō)障礙生成之后,數(shù)字1柵格不是當(dāng)前路徑規(guī)劃中的最優(yōu)點(diǎn)。這就是D*算法不同于靜態(tài)環(huán)境下的路徑搜索算法的優(yōu)點(diǎn),即能在動(dòng)態(tài)環(huán)境中實(shí)時(shí)修改前進(jìn)路線(xiàn),保證自身的安全。

    4.5 算法仿真數(shù)據(jù)分析

    首先建立尺寸不同的地圖,因?yàn)榭梢暬惴ㄟ^(guò)程中有大量的圖形輸出,會(huì)影響算法的時(shí)間復(fù)雜度,所以對(duì)于算法運(yùn)行時(shí)間的數(shù)據(jù)搜集,采取封閉式測(cè)試,只保留算法的核心計(jì)算代碼,僅保留路徑輸出作為終點(diǎn),采用python.time.process_time()函數(shù),分別在算法起始點(diǎn)和終點(diǎn)設(shè)立start_time、end_time,最后將end_time與start_time相減得出的結(jié)果作為算法運(yùn)行的時(shí)間,取各個(gè)算法仿真20 次所得的time,去掉最大值、最小值,取平均數(shù)作為最后的數(shù)據(jù)來(lái)源。在每輪實(shí)驗(yàn)中引入一組隨機(jī)的障礙點(diǎn)添加到地圖中,確保封閉測(cè)試得到數(shù)據(jù)的隨機(jī)性和準(zhǔn)確性。測(cè)試20 輪得到數(shù)據(jù)如表1、表2和表3所示。

    表1 路徑規(guī)劃算法的運(yùn)行時(shí)間Tab.1 Running time of the path planning algorithm

    表2 A*算法和D*算法歐拉公式啟發(fā)式運(yùn)行時(shí)間Tab.2 Heuristic running time of A* algorithm and D*algorithm Euler formula

    表3 A*算法和D*算法曼哈頓公式啟發(fā)式運(yùn)行時(shí)間Tab.3 Heuristic running time of A* algorithm and D*algorithm Manhattan formula

    A*算法在將歐拉距離和曼哈頓距離分別作為不同的啟發(fā)式的時(shí)候,采用曼哈頓距離的時(shí)間消耗少于歐拉距離,因此在現(xiàn)實(shí)環(huán)境中,機(jī)器人使用A*算法路徑規(guī)劃時(shí),要根據(jù)現(xiàn)實(shí)環(huán)境來(lái)選擇采用這兩者中的哪一個(gè)作為啟發(fā)式函數(shù)。在A*算法仿真實(shí)驗(yàn)中,我們提出了兩個(gè)不同的啟發(fā)式。由于采用柵格模型建模,柵格模型類(lèi)似于城市網(wǎng)格,可以類(lèi)比,在設(shè)計(jì)公交路線(xiàn)系統(tǒng)、搜索城市中點(diǎn)對(duì)點(diǎn)的最小路徑時(shí),便可以采用啟發(fā)式為曼哈頓距離的A*算法。而本文所實(shí)現(xiàn)的A*算法,其中OPENLIST和CLOSELIST都是采用List的方式存儲(chǔ)數(shù)據(jù),Python中的列表是基于數(shù)組的類(lèi)型,所以可以改用二叉堆這種數(shù)據(jù)結(jié)構(gòu),使其節(jié)點(diǎn)的添加和刪除的操作速度更快,降低耗時(shí)。

    D*算法彌補(bǔ)了A*算法不適合在動(dòng)態(tài)環(huán)境中規(guī)劃路徑的缺陷。D*算法在未出現(xiàn)新的障礙源時(shí),路徑規(guī)劃算法基本與A*算法一致。在出現(xiàn)障礙源時(shí),D*算法會(huì)重新對(duì)存儲(chǔ)的地圖信息進(jìn)行刪除和插入操作,需要更多的計(jì)算,所以消耗的時(shí)間較多。

    5 移動(dòng)機(jī)器人路徑規(guī)劃實(shí)現(xiàn)(Implementation of mobile robot path planning)

    路徑規(guī)劃實(shí)現(xiàn)如圖6所示。

    圖6 路徑規(guī)劃實(shí)現(xiàn)Fig.6 Path planning realization

    5.1 開(kāi)發(fā)環(huán)境

    使用的機(jī)器人小車(chē)采用JetbotNano作為開(kāi)發(fā)主板,如圖6(a)所示,CPU為ARM的A57,操作系統(tǒng)為Unbuntu 18.10,開(kāi)發(fā)平臺(tái)為JupyterLab,開(kāi)發(fā)語(yǔ)言為Python 3.0。

    通過(guò)WiFi模板進(jìn)行PC和機(jī)器人之間的數(shù)據(jù)傳輸,以及搭載四個(gè)直流電機(jī)控制車(chē)輪的移動(dòng)。通過(guò)對(duì)GPIO口的編程,控制直流電機(jī)的運(yùn)動(dòng)方向和前進(jìn)速度。

    5.2 具體實(shí)現(xiàn)

    通過(guò)分析仿真實(shí)驗(yàn)數(shù)據(jù)報(bào)告可以看到,由于我們?cè)陟o態(tài)環(huán)境下實(shí)現(xiàn)該小車(chē)的路徑規(guī)劃功能,因此選取了有代表性的A*算法來(lái)為機(jī)器人規(guī)劃行動(dòng)路徑。

    首先需要導(dǎo)入地圖數(shù)據(jù),將二維空間地圖抽象成算法可以處理的數(shù)據(jù);再根據(jù)算法得到的結(jié)果,編程控制小車(chē)前進(jìn)。地圖的構(gòu)建方式也是采用柵格模型,將實(shí)際地圖抽象成二維平面,將每個(gè)單元柵格的信息采用一組二維數(shù)組來(lái)保存。此次實(shí)驗(yàn)地圖如圖6(b)所示,數(shù)字1單元格為機(jī)器人起點(diǎn)位置,數(shù)字2單元格為終點(diǎn),黑色單元格為地圖上的障礙。

    在得到A*算法得出的路徑列表之后,通過(guò)調(diào)用集成的開(kāi)發(fā)庫(kù),使用主板上的i2c總線(xiàn)對(duì)四個(gè)直流驅(qū)動(dòng)電機(jī)進(jìn)行控制。調(diào)用Jetbot.Robot庫(kù)創(chuàng)建一個(gè)機(jī)器人控制對(duì)象。Robot庫(kù)的forward()、backward()、left()、right()、stop()分別控制機(jī)器人前進(jìn)、倒退、左轉(zhuǎn)、右轉(zhuǎn)、停止。根據(jù)地圖的參數(shù)以及實(shí)際地面情況,設(shè)置對(duì)應(yīng)的前進(jìn)速度和時(shí)間。

    設(shè)地圖軸坐標(biāo)對(duì)應(yīng)為正東,反方向?yàn)檎?;軸坐標(biāo)對(duì)應(yīng)為正南,反方向?yàn)檎薄C(jī)器人起始點(diǎn)車(chē)頭對(duì)應(yīng)方向?yàn)檎?。根?jù)路徑列表,機(jī)器人首先調(diào)整車(chē)頭方向,調(diào)整的方向?yàn)榧磳⑶斑M(jìn)的下一個(gè)單元格的方向。設(shè)置一個(gè)變量保存當(dāng)前機(jī)器人車(chē)頭正對(duì)的方向信息,隨后機(jī)器人前進(jìn)一個(gè)單元格。方向參數(shù)設(shè)正南為(0,1),正西為(-1,0),正北為(0,-1),正東為(1,0),標(biāo)記數(shù)值按照正南方順時(shí)針?lè)较蛟O(shè)置為1、2、3、4,并保存在一個(gè)判斷列表中。車(chē)頭方向調(diào)整偽代碼如下:

    通過(guò)對(duì)路徑列表的循環(huán)遍歷,初始化小車(chē)車(chē)頭方向,然后前行,直至到達(dá)終點(diǎn)。實(shí)驗(yàn)結(jié)果如圖6(c)所示。數(shù)字3單元格代表機(jī)器人前進(jìn)的路線(xiàn)。實(shí)驗(yàn)結(jié)果是機(jī)器人成功實(shí)現(xiàn)掉頭、轉(zhuǎn)彎、前行等功能,按照A*算法所得的路徑列表移動(dòng),準(zhǔn)確在終點(diǎn)停止。

    本次實(shí)物演示的地圖為一張根據(jù)機(jī)器人車(chē)身定制的2 m×2 m的塑料布材質(zhì)的地圖,內(nèi)部大小為20 cm×20 cm的正方形柵格。地圖在空地上展開(kāi),在保持平整的情況下,完成路徑規(guī)劃的各項(xiàng)參數(shù)為:前進(jìn)電機(jī)速度:0.45(驅(qū)動(dòng)電路參數(shù),需要根據(jù)具體環(huán)境進(jìn)行測(cè)試和調(diào)節(jié));左轉(zhuǎn)電機(jī)參數(shù):0.585;右轉(zhuǎn)電機(jī)參數(shù):5.585;延時(shí):1 s。利用Jetbot小車(chē)自身所帶的攝像頭,使小車(chē)在每次前進(jìn)、掉頭時(shí),攝像頭根據(jù)比對(duì)地圖的數(shù)據(jù),保證機(jī)器人小車(chē)能夠時(shí)刻居中,路線(xiàn)不偏移。

    6 結(jié)論(Conclusion)

    基于機(jī)器人路徑搜索算法的研究,本文對(duì)Dijkstra算法、A*算法、D*算法進(jìn)行研究,仿真實(shí)現(xiàn)了各個(gè)算法在路徑搜索上的演示,通過(guò)對(duì)比各算法的時(shí)間復(fù)雜度和搜索出的最優(yōu)路徑以及對(duì)應(yīng)的數(shù)據(jù),確定在移動(dòng)機(jī)器人實(shí)體上采用A*算法。而通過(guò)實(shí)驗(yàn)可知,在柵格網(wǎng)絡(luò)中,A*算法采用曼哈頓距離啟發(fā)式,仿真可以得到更加優(yōu)異的結(jié)果。同時(shí)也提出了如何優(yōu)化A*算法的思路,即使用二叉樹(shù)堆代替數(shù)組來(lái)降低算法的時(shí)間復(fù)雜度。最后在移動(dòng)機(jī)器人上實(shí)現(xiàn)路徑規(guī)劃算法的演示,證明了該算法的可行性。

    猜你喜歡
    規(guī)劃環(huán)境
    長(zhǎng)期鍛煉創(chuàng)造體內(nèi)抑癌環(huán)境
    一種用于自主學(xué)習(xí)的虛擬仿真環(huán)境
    孕期遠(yuǎn)離容易致畸的環(huán)境
    環(huán)境
    規(guī)劃引領(lǐng)把握未來(lái)
    快遞業(yè)十三五規(guī)劃發(fā)布
    商周刊(2017年5期)2017-08-22 03:35:26
    多管齊下落實(shí)規(guī)劃
    迎接“十三五”規(guī)劃
    国产日韩欧美视频二区| 久久久久久免费高清国产稀缺| av又黄又爽大尺度在线免费看| 中文字幕色久视频| 国产成人啪精品午夜网站| 亚洲第一欧美日韩一区二区三区 | 久久久久国产一级毛片高清牌| 一本—道久久a久久精品蜜桃钙片| 亚洲欧洲精品一区二区精品久久久| 一级毛片精品| 黑人巨大精品欧美一区二区mp4| 国产视频一区二区在线看| 国产精品亚洲一级av第二区| 老熟女久久久| 久久天堂一区二区三区四区| 涩涩av久久男人的天堂| 亚洲中文字幕日韩| 亚洲国产欧美日韩在线播放| 精品亚洲成a人片在线观看| 久久精品熟女亚洲av麻豆精品| 男女床上黄色一级片免费看| 欧美日韩中文字幕国产精品一区二区三区 | 免费观看av网站的网址| 一边摸一边抽搐一进一小说 | 亚洲精品一二三| 日韩熟女老妇一区二区性免费视频| 日本av免费视频播放| 久久午夜综合久久蜜桃| 国产无遮挡羞羞视频在线观看| 久久久欧美国产精品| 天天操日日干夜夜撸| 国产成人免费观看mmmm| 五月天丁香电影| 大型黄色视频在线免费观看| 免费高清在线观看日韩| 国产成人欧美在线观看 | 国产日韩欧美亚洲二区| 18禁美女被吸乳视频| 十分钟在线观看高清视频www| 午夜日韩欧美国产| 一级黄色大片毛片| 高潮久久久久久久久久久不卡| 男女边摸边吃奶| 人成视频在线观看免费观看| 欧美日韩视频精品一区| 十分钟在线观看高清视频www| 国产高清国产精品国产三级| 精品卡一卡二卡四卡免费| 在线观看66精品国产| 久久精品国产a三级三级三级| 色在线成人网| 一进一出好大好爽视频| 视频区欧美日本亚洲| 纵有疾风起免费观看全集完整版| 久久精品亚洲av国产电影网| av福利片在线| 精品久久久久久电影网| 婷婷丁香在线五月| 777米奇影视久久| 亚洲精品久久午夜乱码| 曰老女人黄片| 国产深夜福利视频在线观看| 性高湖久久久久久久久免费观看| 一本—道久久a久久精品蜜桃钙片| 99久久99久久久精品蜜桃| 少妇 在线观看| 成人永久免费在线观看视频 | 亚洲av美国av| 亚洲第一青青草原| 国产亚洲欧美在线一区二区| 亚洲九九香蕉| 视频在线观看一区二区三区| 精品国产一区二区久久| 国产男女内射视频| 一级毛片精品| av电影中文网址| 国产成+人综合+亚洲专区| 国产男女内射视频| 怎么达到女性高潮| 欧美性长视频在线观看| 飞空精品影院首页| 亚洲国产看品久久| 国产午夜精品久久久久久| 精品国产乱码久久久久久小说| 国精品久久久久久国模美| 999久久久国产精品视频| 国产在线免费精品| 大码成人一级视频| 在线观看www视频免费| 午夜福利,免费看| 亚洲色图 男人天堂 中文字幕| 精品国产乱子伦一区二区三区| 亚洲三区欧美一区| 欧美日韩中文字幕国产精品一区二区三区 | 午夜成年电影在线免费观看| 国产精品99久久99久久久不卡| 国产精品国产av在线观看| 满18在线观看网站| 法律面前人人平等表现在哪些方面| 黄色成人免费大全| 亚洲精品国产精品久久久不卡| bbb黄色大片| 久久精品国产综合久久久| av天堂在线播放| 欧美激情高清一区二区三区| 精品午夜福利视频在线观看一区 | 久久中文字幕人妻熟女| 亚洲国产欧美在线一区| 动漫黄色视频在线观看| 人人妻人人爽人人添夜夜欢视频| 性少妇av在线| 在线十欧美十亚洲十日本专区| 精品一品国产午夜福利视频| 久久香蕉激情| 午夜91福利影院| 国产在线观看jvid| 国产精品久久久久久人妻精品电影 | 久久人人97超碰香蕉20202| 免费高清在线观看日韩| 午夜成年电影在线免费观看| 亚洲专区中文字幕在线| 一夜夜www| 国产精品 欧美亚洲| 一边摸一边做爽爽视频免费| 露出奶头的视频| 大码成人一级视频| 国产成人欧美| 精品国产一区二区三区久久久樱花| 亚洲精品乱久久久久久| 麻豆成人av在线观看| 一本一本久久a久久精品综合妖精| 后天国语完整版免费观看| 91精品国产国语对白视频| videos熟女内射| 大型av网站在线播放| 91大片在线观看| 美女视频免费永久观看网站| 老司机影院毛片| 精品国产一区二区久久| 丁香六月欧美| 欧美激情久久久久久爽电影 | 国产不卡av网站在线观看| 男女之事视频高清在线观看| 国产精品成人在线| 91大片在线观看| 亚洲专区中文字幕在线| 亚洲精华国产精华精| 色视频在线一区二区三区| 欧美日韩亚洲高清精品| 黑丝袜美女国产一区| 欧美另类亚洲清纯唯美| 亚洲欧美精品综合一区二区三区| 国产欧美日韩精品亚洲av| 亚洲人成伊人成综合网2020| 女同久久另类99精品国产91| 国产精品九九99| 狂野欧美激情性xxxx| 久热爱精品视频在线9| 亚洲熟妇熟女久久| 亚洲精品乱久久久久久| 欧美 日韩 精品 国产| 欧美激情高清一区二区三区| 色视频在线一区二区三区| 精品人妻1区二区| 久久久久久久精品吃奶| 我的亚洲天堂| 国产淫语在线视频| 狠狠狠狠99中文字幕| 一区二区三区精品91| 国产欧美日韩一区二区三区在线| 丁香欧美五月| 中文字幕人妻丝袜制服| 夜夜夜夜夜久久久久| 一本综合久久免费| 国产一区有黄有色的免费视频| 久久中文字幕人妻熟女| aaaaa片日本免费| 国产成人免费无遮挡视频| 乱人伦中国视频| 国产在线视频一区二区| 欧美人与性动交α欧美精品济南到| 最近最新中文字幕大全电影3 | 久久精品国产亚洲av香蕉五月 | 一级,二级,三级黄色视频| 国产男女内射视频| 五月天丁香电影| av在线播放免费不卡| 久久精品亚洲av国产电影网| 岛国在线观看网站| 女人久久www免费人成看片| 自拍欧美九色日韩亚洲蝌蚪91| 亚洲三区欧美一区| 纵有疾风起免费观看全集完整版| netflix在线观看网站| 日韩 欧美 亚洲 中文字幕| 亚洲天堂av无毛| 国产精品熟女久久久久浪| 免费在线观看完整版高清| 亚洲人成伊人成综合网2020| 久久久久久免费高清国产稀缺| 亚洲九九香蕉| 久久 成人 亚洲| av欧美777| 亚洲人成电影免费在线| 一级黄色大片毛片| 日本a在线网址| 日本av手机在线免费观看| 丝袜喷水一区| 操出白浆在线播放| 国产视频一区二区在线看| 国产精品自产拍在线观看55亚洲 | 黄网站色视频无遮挡免费观看| 亚洲性夜色夜夜综合| 久久久精品94久久精品| 一个人免费看片子| 久久性视频一级片| 九色亚洲精品在线播放| 91av网站免费观看| 一级毛片精品| 亚洲男人天堂网一区| 久久精品国产99精品国产亚洲性色 | a级片在线免费高清观看视频| 日本一区二区免费在线视频| 建设人人有责人人尽责人人享有的| 欧美日韩亚洲综合一区二区三区_| 欧美精品av麻豆av| 色在线成人网| 波多野结衣一区麻豆| 不卡av一区二区三区| 久久久久精品人妻al黑| 久久午夜综合久久蜜桃| 一个人免费看片子| 极品人妻少妇av视频| 国产视频一区二区在线看| 久久中文字幕一级| 黄色毛片三级朝国网站| 亚洲av美国av| 黄色丝袜av网址大全| av天堂在线播放| 中文欧美无线码| 99国产精品一区二区三区| 国产欧美亚洲国产| 久久午夜综合久久蜜桃| 久热这里只有精品99| 99久久精品国产亚洲精品| 亚洲成人免费电影在线观看| 亚洲精华国产精华精| 91九色精品人成在线观看| 午夜福利,免费看| 人妻久久中文字幕网| 天天躁夜夜躁狠狠躁躁| 亚洲天堂av无毛| 国产精品98久久久久久宅男小说| 一夜夜www| 免费一级毛片在线播放高清视频 | 王馨瑶露胸无遮挡在线观看| 美女高潮喷水抽搐中文字幕| 国产人伦9x9x在线观看| 午夜福利乱码中文字幕| av又黄又爽大尺度在线免费看| 午夜精品国产一区二区电影| 欧美成狂野欧美在线观看| 久久久久国产精品人妻aⅴ院| 19禁男女啪啪无遮挡网站| 久久久久精品国产欧美久久久| 日本与韩国留学比较| 精品一区二区三区视频在线 | 国产91精品成人一区二区三区| 免费在线观看亚洲国产| 我的老师免费观看完整版| 男女视频在线观看网站免费| 久久久久免费精品人妻一区二区| 女生性感内裤真人,穿戴方法视频| 高清在线国产一区| 日韩 欧美 亚洲 中文字幕| x7x7x7水蜜桃| ponron亚洲| 又大又爽又粗| 一二三四在线观看免费中文在| 中文字幕熟女人妻在线| 国产1区2区3区精品| 他把我摸到了高潮在线观看| 美女扒开内裤让男人捅视频| 成人三级黄色视频| xxxwww97欧美| 欧美+亚洲+日韩+国产| 免费观看的影片在线观看| 免费无遮挡裸体视频| 国产精品女同一区二区软件 | 精品免费久久久久久久清纯| 国产成+人综合+亚洲专区| 琪琪午夜伦伦电影理论片6080| 亚洲一区高清亚洲精品| 欧美日韩综合久久久久久 | 亚洲欧美激情综合另类| 久久欧美精品欧美久久欧美| 午夜激情欧美在线| 我的老师免费观看完整版| 中国美女看黄片| 免费在线观看视频国产中文字幕亚洲| 听说在线观看完整版免费高清| 国产激情欧美一区二区| 床上黄色一级片| 男女那种视频在线观看| 亚洲激情在线av| 熟女少妇亚洲综合色aaa.| 国产av在哪里看| 精品熟女少妇八av免费久了| 日韩欧美 国产精品| 美女cb高潮喷水在线观看 | 精品熟女少妇八av免费久了| 成人av一区二区三区在线看| 国产淫片久久久久久久久 | 99精品在免费线老司机午夜| 97超视频在线观看视频| 欧美大码av| 久久精品国产亚洲av香蕉五月| 亚洲第一欧美日韩一区二区三区| 搡老岳熟女国产| 色视频www国产| 久久久久久人人人人人| 亚洲成人久久爱视频| 欧美日韩黄片免| 欧美成人一区二区免费高清观看 | 免费观看的影片在线观看| 免费av不卡在线播放| av视频在线观看入口| 欧美乱色亚洲激情| 日本免费a在线| 国产亚洲精品综合一区在线观看| 舔av片在线| 午夜日韩欧美国产| 欧美性猛交╳xxx乱大交人| 看片在线看免费视频| 99精品欧美一区二区三区四区| av黄色大香蕉| 精品乱码久久久久久99久播| 精品一区二区三区av网在线观看| 免费高清视频大片| 国产欧美日韩精品一区二区| 亚洲中文av在线| 精品国产乱子伦一区二区三区| 97超视频在线观看视频| 最新美女视频免费是黄的| 一进一出好大好爽视频| 久久热在线av| 十八禁网站免费在线| 国产成人av激情在线播放| 精品乱码久久久久久99久播| 午夜精品一区二区三区免费看| 一进一出好大好爽视频| 日本一本二区三区精品| 亚洲18禁久久av| 91老司机精品| 日韩三级视频一区二区三区| 国产av麻豆久久久久久久| 天堂√8在线中文| 一级毛片女人18水好多| 久久精品综合一区二区三区| 亚洲成av人片在线播放无| 久久久久久国产a免费观看| 丁香六月欧美| 天天添夜夜摸| 国产成+人综合+亚洲专区| 免费看美女性在线毛片视频| 国产免费男女视频| 欧美zozozo另类| 亚洲av五月六月丁香网| 丝袜人妻中文字幕| 色哟哟哟哟哟哟| 久久久国产成人免费| 亚洲成人久久性| 欧美日韩一级在线毛片| 日韩精品青青久久久久久| 国产精品美女特级片免费视频播放器 | 一个人观看的视频www高清免费观看 | 中文字幕人成人乱码亚洲影| 日本在线视频免费播放| 美女高潮喷水抽搐中文字幕| 可以在线观看毛片的网站| 亚洲中文av在线| 看黄色毛片网站| 九九热线精品视视频播放| 中文字幕高清在线视频| 成在线人永久免费视频| 熟妇人妻久久中文字幕3abv| 欧美zozozo另类| 一个人看的www免费观看视频| 老鸭窝网址在线观看| 成年版毛片免费区| a在线观看视频网站| 午夜福利在线观看免费完整高清在 | 国产三级黄色录像| 中文字幕高清在线视频| 观看美女的网站| 中文资源天堂在线| 国产高清有码在线观看视频| 久久国产精品影院| 好男人在线观看高清免费视频| 色哟哟哟哟哟哟| 日韩有码中文字幕| 日本五十路高清| www国产在线视频色| 国产不卡一卡二| 蜜桃久久精品国产亚洲av| 在线永久观看黄色视频| 真实男女啪啪啪动态图| 国产一区二区在线av高清观看| 精品久久久久久久人妻蜜臀av| 国产精品爽爽va在线观看网站| 欧美乱码精品一区二区三区| 免费观看人在逋| www日本在线高清视频| 欧美激情在线99| 变态另类成人亚洲欧美熟女| 成年人黄色毛片网站| 99久久久亚洲精品蜜臀av| 热99re8久久精品国产| 女人高潮潮喷娇喘18禁视频| 人妻久久中文字幕网| 国产蜜桃级精品一区二区三区| 国产 一区 欧美 日韩| 长腿黑丝高跟| 91在线观看av| 日日干狠狠操夜夜爽| h日本视频在线播放| 亚洲精品久久国产高清桃花| 悠悠久久av| 三级毛片av免费| 日韩成人在线观看一区二区三区| 欧美国产日韩亚洲一区| 亚洲熟妇中文字幕五十中出| netflix在线观看网站| 亚洲精品中文字幕一二三四区| 999精品在线视频| 黄片小视频在线播放| 欧美最黄视频在线播放免费| 久久中文字幕一级| 婷婷精品国产亚洲av| 两性夫妻黄色片| 久久精品人妻少妇| 欧美成人免费av一区二区三区| 久久久成人免费电影| 久久久精品大字幕| 极品教师在线免费播放| 成人国产综合亚洲| 成年人黄色毛片网站| 日韩精品青青久久久久久| 成年女人毛片免费观看观看9| 国产主播在线观看一区二区| 久久热在线av| 中文字幕熟女人妻在线| 亚洲av五月六月丁香网| 夜夜爽天天搞| 999久久久精品免费观看国产| 精品熟女少妇八av免费久了| 国产精品久久久av美女十八| 久久久久精品国产欧美久久久| 亚洲精品美女久久av网站| 在线国产一区二区在线| 亚洲黑人精品在线| 悠悠久久av| 国产97色在线日韩免费| 日本 av在线| 国产成人av激情在线播放| 露出奶头的视频| 欧美激情久久久久久爽电影| 成年人黄色毛片网站| 婷婷精品国产亚洲av在线| 亚洲av电影不卡..在线观看| www.999成人在线观看| 91在线观看av| 麻豆av在线久日| 国产精品综合久久久久久久免费| 老司机午夜福利在线观看视频| 欧美午夜高清在线| 看黄色毛片网站| 69av精品久久久久久| 夜夜看夜夜爽夜夜摸| 中文字幕精品亚洲无线码一区| 国产精品久久久av美女十八| 国产高清三级在线| 国产一区二区三区在线臀色熟女| 国语自产精品视频在线第100页| 99riav亚洲国产免费| 久久久久久九九精品二区国产| 欧美中文日本在线观看视频| 精品乱码久久久久久99久播| 在线观看舔阴道视频| 啪啪无遮挡十八禁网站| 悠悠久久av| www国产在线视频色| 国产精品,欧美在线| 亚洲中文日韩欧美视频| 嫩草影院入口| 国产高潮美女av| 亚洲精品456在线播放app | 香蕉久久夜色| 国产精品久久视频播放| 97碰自拍视频| 99热这里只有精品一区 | 欧美大码av| 噜噜噜噜噜久久久久久91| 白带黄色成豆腐渣| 精品熟女少妇八av免费久了| 亚洲国产看品久久| 国产精品电影一区二区三区| 日本a在线网址| 亚洲中文字幕一区二区三区有码在线看 | 日韩中文字幕欧美一区二区| 亚洲人成伊人成综合网2020| 丰满的人妻完整版| 亚洲av成人一区二区三| 欧美成人一区二区免费高清观看 | 欧洲精品卡2卡3卡4卡5卡区| 亚洲中文av在线| 亚洲av五月六月丁香网| 亚洲成人久久爱视频| 午夜福利欧美成人| 啦啦啦观看免费观看视频高清| 国产伦人伦偷精品视频| 一区二区三区激情视频| 成年免费大片在线观看| 97超视频在线观看视频| 熟妇人妻久久中文字幕3abv| 欧美成狂野欧美在线观看| 少妇人妻一区二区三区视频| 午夜精品一区二区三区免费看| 黄频高清免费视频| 麻豆久久精品国产亚洲av| 久久精品国产99精品国产亚洲性色| 99热只有精品国产| 搞女人的毛片| 一本一本综合久久| 五月伊人婷婷丁香| 高潮久久久久久久久久久不卡| 国产精品女同一区二区软件 | 又爽又黄无遮挡网站| 深夜精品福利| 99国产精品一区二区三区| 一本一本综合久久| 国产又色又爽无遮挡免费看| 欧美最黄视频在线播放免费| 亚洲国产精品成人综合色| 99久久久亚洲精品蜜臀av| 校园春色视频在线观看| 变态另类丝袜制服| 婷婷亚洲欧美| 亚洲色图 男人天堂 中文字幕| 天天躁狠狠躁夜夜躁狠狠躁| 亚洲av成人精品一区久久| 一夜夜www| 一进一出抽搐gif免费好疼| 国产精品久久电影中文字幕| 国产三级黄色录像| 又紧又爽又黄一区二区| 国产69精品久久久久777片 | 中文字幕高清在线视频| 亚洲专区字幕在线| 狠狠狠狠99中文字幕| 一进一出抽搐gif免费好疼| 国产精品久久电影中文字幕| 亚洲av电影在线进入| 亚洲中文字幕日韩| 首页视频小说图片口味搜索| 国产精品一区二区三区四区久久| 欧美日韩瑟瑟在线播放| 无人区码免费观看不卡| 丰满人妻一区二区三区视频av | 亚洲国产高清在线一区二区三| 久久精品国产99精品国产亚洲性色| 长腿黑丝高跟| 国产精品98久久久久久宅男小说| 97超级碰碰碰精品色视频在线观看| 久久久久久久久久黄片| 国内精品一区二区在线观看| 三级毛片av免费| 美女黄网站色视频| 搡老熟女国产l中国老女人| 久久久久久久精品吃奶| 精品一区二区三区视频在线观看免费| 无人区码免费观看不卡| 中文字幕人成人乱码亚洲影| 国产在线精品亚洲第一网站| 女生性感内裤真人,穿戴方法视频| 免费看光身美女| 久久精品影院6| 免费在线观看亚洲国产| www日本黄色视频网| 午夜福利欧美成人| 欧美最黄视频在线播放免费| 成人午夜高清在线视频| 亚洲一区二区三区色噜噜| 欧美丝袜亚洲另类 | 一a级毛片在线观看| 日韩大尺度精品在线看网址| 91av网站免费观看| 在线a可以看的网站| 成人av在线播放网站| 天天躁狠狠躁夜夜躁狠狠躁| 国产v大片淫在线免费观看| 欧美黄色片欧美黄色片| 91九色精品人成在线观看| 国模一区二区三区四区视频 | 99久久国产精品久久久| 中文字幕人成人乱码亚洲影| 久久热在线av| 久久久国产精品麻豆| 在线十欧美十亚洲十日本专区| 午夜免费激情av| 欧美+亚洲+日韩+国产| 99久久综合精品五月天人人| 久久精品国产清高在天天线| 国产1区2区3区精品| 成人午夜高清在线视频|