99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

基于STM32與OpenMV的自動泊車系統(tǒng):從視覺識別到運動控制全解析

基于STM32與OpenMV的自動泊車系統(tǒng):從視覺識別到運動控制全解析 簡介本資源是一套面向嵌入式開發(fā)學(xué)習(xí)者與電子設(shè)計競賽參賽者的完整自動泊車系統(tǒng)實現(xiàn)方案聚焦STM32與OpenMV協(xié)同控制這一典型智能感知運動控制場景解決小型智能車在結(jié)構(gòu)化停車場中識別車位并自主泊入的核心問題。壓縮包共110個文件含49個C語言頭文件.h與44個源文件.c構(gòu)成STM32F10x系列底層驅(qū)動、MPU姿態(tài)解算、定時器/PWM電機(jī)控制及串口通信等關(guān)鍵模塊另有1個Python腳本.py用于OpenMV端圖像識別3個JSON配置文件支持參數(shù)調(diào)優(yōu)以及Keil工程.uvprojx、Hex固件、批處理腳本.bat等實用工具整體僅823KB輕量易部署。已有348人學(xué)習(xí)下載資源提供從圖像采集、車位線檢測邊緣霍夫變換、路徑規(guī)劃到電機(jī)閉環(huán)控制含PID邏輯的全鏈路代碼與結(jié)構(gòu)化組織特別適合課程設(shè)計、電賽備賽及嵌入式視覺項目實戰(zhàn)參考。1. 項目概述從零搭建一個微型自動泊車系統(tǒng)最近在整理過去的項目資料翻出了一個基于STM32和OpenMV的自動泊車系統(tǒng)。這算是一個典型的嵌入式視覺與控制結(jié)合的“玩具級”項目麻雀雖小五臟俱全。它不涉及復(fù)雜的SLAM或高精度定位而是聚焦于如何用最基礎(chǔ)的硬件一塊STM32F103C8T6核心板和一塊OpenMV Cam H7和清晰的邏輯實現(xiàn)一個能識別車位、規(guī)劃路徑并完成泊入動作的微型系統(tǒng)。如果你正在學(xué)習(xí)嵌入式、計算機(jī)視覺或者機(jī)器人控制想找一個能串聯(lián)起多個知識點的綜合實踐項目這個案例會非常合適。它涵蓋了圖像處理、串口通信、PID控制、電機(jī)驅(qū)動和狀態(tài)機(jī)設(shè)計等核心環(huán)節(jié)整個過程踩過的坑和獲得的經(jīng)驗遠(yuǎn)比最終那幾行能動的代碼更有價值。這個系統(tǒng)的核心思想是“感知-決策-控制”的經(jīng)典三層架構(gòu)。OpenMV作為“眼睛”負(fù)責(zé)通過攝像頭尋找并識別預(yù)設(shè)的車位標(biāo)識比如地面上貼的色塊或特定形狀的標(biāo)簽STM32作為“大腦”和“小腦”一方面通過串口接收OpenMV發(fā)送的車位坐標(biāo)信息另一方面根據(jù)這些信息計算出一條泊車軌跡并生成相應(yīng)的控制指令最后STM32的PWM輸出直接驅(qū)動兩個直流減速電機(jī)構(gòu)成的差速底盤執(zhí)行前進(jìn)、后退、轉(zhuǎn)向等動作從而完成泊入。整個項目源碼和說明文檔已經(jīng)打包但在這篇分享里我想重點拆解的是每個模塊背后的設(shè)計思路、關(guān)鍵參數(shù)的考量以及那些在文檔里不會寫的、只有在實際調(diào)試中才會遇到的“坑”。2. 硬件選型與系統(tǒng)架構(gòu)設(shè)計解析為什么是STM32F103和OpenMV H7這個組合這背后是成本、性能和學(xué)習(xí)曲線之間的平衡。對于自動泊車這個任務(wù)我們需要一個能跑簡單控制算法、有足夠定時器和PWM通道驅(qū)動電機(jī)的MCU同時還需要一個能實時處理圖像、識別圖案的視覺模塊。STM32F103C8T6俗稱“藍(lán)橋杯”或“最小系統(tǒng)板”價格低廉社區(qū)資源極其豐富其ARM Cortex-M3內(nèi)核完全能勝任多路PWM輸出、串口通信和狀態(tài)機(jī)運行的任務(wù)。而OpenMV Cam H7則是一個開源的、基于STM32H7系列芯片的機(jī)器視覺模塊它內(nèi)置了MicroPython解釋器和豐富的圖像處理庫讓你可以用Python腳本快速實現(xiàn)顏色追蹤、形狀檢測、AprilTag識別等功能無需從零開始折騰攝像頭驅(qū)動和圖像算法極大地降低了視覺部分的入門門檻。整個系統(tǒng)的物理連接非常簡單但每個連接點都值得深思電源部分這是第一個坑。電機(jī)在啟動和堵轉(zhuǎn)時會產(chǎn)生很大的瞬時電流如果和MCU、攝像頭共用一套電源且沒有做好隔離與濾波電機(jī)一動作MCU就可能復(fù)位OpenMV的圖像也會出現(xiàn)橫紋干擾。我的方案是使用兩路獨立的LM2596降壓模塊一路將輸入電壓如12V鋰電池穩(wěn)定到5V單獨給OpenMV供電另一路穩(wěn)定到5V后再經(jīng)過一個AMS1117-3.3V LDO給STM32核心板供電。電機(jī)的驅(qū)動電源則直接來自電池通過電機(jī)驅(qū)動模塊如L298N或TB6612進(jìn)行控制與邏輯電源在物理上隔離。通信鏈路OpenMV的串口UART通過TX、RX、GND三根線與STM32的串口相連。這里的關(guān)鍵是電平匹配和波特率設(shè)置。OpenMV的IO口是3.3V電平STM32F103也是3.3V所以直接連接即可。波特率通常設(shè)置為115200這個速率在傳輸簡單的坐標(biāo)數(shù)據(jù)時綽綽有余且穩(wěn)定性好。我曾嘗試過921600以求更快但在電機(jī)工作時電磁干擾加劇誤碼率明顯上升得不償失??刂戚敵鯯TM32需要生成四路PWM信號來控制電機(jī)驅(qū)動模塊。以TB6612為例它需要每臺電機(jī)兩個輸入信號AIN1/AIN2和PWMA 控制電機(jī)A BIN1/BIN2和PWMB控制電機(jī)B。STM32F103C8T6的定時器如TIM1, TIM2, TIM3, TIM4可以很方便地配置為PWM輸出模式。這里的一個細(xì)節(jié)是PWM頻率的選擇。對于常用的直流減速電機(jī)PWM頻率通常在1kHz到20kHz之間。頻率太低如幾百Hz電機(jī)會聽到明顯的嘯叫聲頻率太高則可能超出電機(jī)驅(qū)動芯片的響應(yīng)能力且開關(guān)損耗增大。我最終選定為10kHz這是一個在安靜度、控制響應(yīng)和硬件兼容性上比較折中的值。系統(tǒng)的軟件架構(gòu)則是一個典型的前后臺系統(tǒng)。OpenMV上運行一個循環(huán)腳本不斷捕捉圖像進(jìn)行圖像處理一旦識別到目標(biāo)就將目標(biāo)的中心坐標(biāo)x, y或者是否存在的標(biāo)志位通過串口發(fā)送給STM32。STM32端在主循環(huán)中通過中斷或輪詢方式接收這些數(shù)據(jù)并將其輸入到一個有限狀態(tài)機(jī)中。這個狀態(tài)機(jī)是控制邏輯的核心它定義了諸如“尋找車位”、“調(diào)整姿態(tài)”、“倒車入庫”、“微調(diào)擺正”、“完成泊車”等狀態(tài)。每個狀態(tài)下系統(tǒng)會根據(jù)當(dāng)前的車位坐標(biāo)、車輛自身的估計位置通過輪子編碼器或簡單的時間積分估算以及目標(biāo)位置計算出一組左右輪的目標(biāo)速度再通過PID控制器調(diào)整PWM占空比驅(qū)動電機(jī)達(dá)到目標(biāo)速度從而引導(dǎo)小車沿著期望的軌跡運動。3. OpenMV視覺模塊車位識別策略與參數(shù)調(diào)優(yōu)OpenMV的任務(wù)是可靠地“看到”車位。在真實車輛中這可能通過超聲波雷達(dá)或多線激光雷達(dá)完成但在我們這個模型中用視覺方案更直觀且成本低。我嘗試過幾種識別方案方案一顏色塊識別。這是OpenMV最基礎(chǔ)的功能。在地面上粘貼一個鮮明的色塊比如綠色膠帶圍成的矩形作為車位標(biāo)識。import sensor, image, time from pyb import UART uart UART(3, 115200) # 初始化串口3波特率115200 sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QVGA) # 320x240分辨率處理速度快 sensor.skip_frames(time 2000) sensor.set_auto_gain(False) # 必須關(guān)閉自動增益否則顏色閾值會變 sensor.set_auto_whitebal(False) # 關(guān)閉白平衡 # 定義綠色閾值的上下限這個值需要根據(jù)實際環(huán)境光照反復(fù)調(diào)整 green_threshold (30, 100, -64, -8, -32, 32) while(True): img sensor.snapshot() # 尋找色塊 blobs img.find_blobs([green_threshold], area_threshold150, mergeTrue) if blobs: # 找到最大的色塊 largest_blob max(blobs, keylambda b: b.area()) # 繪制矩形和十字 img.draw_rectangle(largest_blob.rect()) img.draw_cross(largest_blob.cx(), largest_blob.cy()) # 通過串口發(fā)送中心坐標(biāo)格式如 x,y\n uart.write(%d,%d\n % (largest_blob.cx(), largest_blob.cy())) else: uart.write(none\n) # 未找到發(fā)送特定標(biāo)識 time.sleep_ms(50) # 控制發(fā)送頻率避免串口堵塞這個方案的優(yōu)點是簡單、處理速度快。但缺點極其明顯光照影響巨大。早上、中午、晚上或者開個燈顏色閾值就可能完全失效。你需要為不同光照環(huán)境準(zhǔn)備多組閾值或者引入動態(tài)閾值算法這增加了復(fù)雜性。方案二AprilTag視覺標(biāo)簽識別。這是更魯棒、更專業(yè)的方案。AprilTag是一種類似于二維碼的視覺基準(zhǔn)標(biāo)記系統(tǒng)但專為機(jī)器視覺優(yōu)化即使部分遮擋、旋轉(zhuǎn)、光照變化甚至距離較遠(yuǎn)時也能被穩(wěn)定檢測到并能提供完整的6自由度位姿位置和姿態(tài)估計。import sensor, image, time, math from pyb import UART uart UART(3, 115200) sensor.reset() sensor.set_pixformat(sensor.GRAYSCALE) # AprilTag檢測通常用灰度圖 sensor.set_framesize(sensor.QVGA) sensor.skip_frames(time 2000) # 定義要識別的AprilTag家族例如TAG36H11 family image.TAG36H11 while(True): img sensor.snapshot() tags img.find_apriltags(familiesfamily) if tags: for tag in tags: img.draw_rectangle(tag.rect(), color 127) img.draw_cross(tag.cx(), tag.cy(), color 127) # AprilTag提供了ID、旋轉(zhuǎn)、平移等信息比色塊豐富得多 # 我們可以發(fā)送ID和中心坐標(biāo) uart.write(tag:%d,%d,%d\n % (tag.id(), tag.cx(), tag.cy())) else: uart.write(notag\n) time.sleep_ms(50)使用AprilTag后系統(tǒng)的穩(wěn)定性上了不止一個臺階。你只需要打印一個Tag貼在車位處OpenMV就能穩(wěn)定識別并且還能知道車位的朝向通過tag的旋轉(zhuǎn)角這對于需要對準(zhǔn)角度的泊車場景非常有用。調(diào)優(yōu)的關(guān)鍵點在于1.打光即使AprilTag抗光照能力強均勻的正面照明也能大幅提高檢測距離和穩(wěn)定性??梢钥紤]在OpenMV模塊上加一個小的LED補光燈。2.對焦手動調(diào)整OpenMV鏡頭上的對焦環(huán)確保Tag在預(yù)期距離上成像清晰。3.分辨率與幀率權(quán)衡更高的分辨率如VGA能讓你在更遠(yuǎn)距離檢測到Tag但處理速度會下降。對于低速移動的小車QVGA分辨率和幾十毫秒的檢測延遲是完全可接受的。串口通信協(xié)議設(shè)計這是一個容易忽略但至關(guān)重要的環(huán)節(jié)。OpenMV和STM32之間需要約定一種簡單、抗干擾的數(shù)據(jù)格式。我使用的是“關(guān)鍵字?jǐn)?shù)據(jù)”的文本格式例如“tag:1,160,120\n”表示識別到ID為1的Tag中心坐標(biāo)(160,120)。STM32端會以\n為結(jié)束符解析一行數(shù)據(jù)。務(wù)必在發(fā)送的數(shù)據(jù)末尾加上換行符這是很多串口調(diào)試問題的根源。另外要處理接收不完整的情況STM32端的代碼需要有緩沖區(qū)并做超時判斷。4. STM32控制核心狀態(tài)機(jī)與運動控制算法實現(xiàn)STM32端的代碼是整個項目的大腦其核心是一個精心設(shè)計的有限狀態(tài)機(jī)和一個差速運動模型。4.1 差速運動模型解析我們的小車是兩輪差速驅(qū)動即通過控制左右輪的速度差來實現(xiàn)前進(jìn)、后退和轉(zhuǎn)彎。這是機(jī)器人學(xué)中最基礎(chǔ)的運動模型之一。 假設(shè)V_left左輪線速度V_right右輪線速度V小車質(zhì)心線速度ω小車旋轉(zhuǎn)角速度L兩輪之間的輪距軸距它們之間的關(guān)系為V (V_right V_left) / 2 ω (V_right - V_left) / L這意味著如果我們想讓小車直線前進(jìn)只需設(shè)置V_left V_right想原地旋轉(zhuǎn)則設(shè)置V_left -V_right。在代碼中我們通常直接設(shè)定目標(biāo)線速度V和角速度ω然后反解出左右輪的目標(biāo)速度V_left V - ω * L / 2 V_right V ω * L / 2這個模型是后續(xù)所有軌跡規(guī)劃和PID控制的基礎(chǔ)。輪距L需要實際測量并且這個值會顯著影響轉(zhuǎn)彎半徑的計算精度。我用尺子量了輪子中心之間的距離并記錄為宏定義。4.2 有限狀態(tài)機(jī)設(shè)計自動泊車不是一個一蹴而就的動作而是一系列步驟有序組合的過程。用狀態(tài)機(jī)來管理再合適不過。我定義了以下幾個狀態(tài)STATE_SEARCH搜索狀態(tài)。小車緩慢前進(jìn)同時STM32不斷解析OpenMV發(fā)來的數(shù)據(jù)等待識別到車位Tag。STATE_ALIGN對齊狀態(tài)。一旦識別到Tag小車需要調(diào)整自身姿態(tài)使車體中心線與Tag中心線對齊并且到達(dá)一個合適的起始泊車點。這個狀態(tài)需要根據(jù)Tag的坐標(biāo)(x, y)和圖像寬度計算出小車需要橫向移動和旋轉(zhuǎn)的角度。STATE_BACKUP倒車入庫狀態(tài)。這是核心動作。小車以設(shè)定的曲率倒車同時持續(xù)監(jiān)測Tag的位置。當(dāng)Tag移動到圖像中某個特定區(qū)域表示車輛已基本入庫時轉(zhuǎn)入下一個狀態(tài)。STATE_ADJUST微調(diào)狀態(tài)。由于模型誤差和滑動第一次倒車可能不完美。這個狀態(tài)進(jìn)行小范圍的前后移動和轉(zhuǎn)動使車輛最終位置居中且擺正。STATE_FINISH完成狀態(tài)。停止所有電機(jī)點亮LED提示泊車完成。每個狀態(tài)都是一個獨立的函數(shù)它們根據(jù)當(dāng)前傳感器輸入主要是視覺坐標(biāo)和內(nèi)部計時器決定是維持本狀態(tài)、跳轉(zhuǎn)到下一狀態(tài)還是報錯返回搜索狀態(tài)。狀態(tài)之間的轉(zhuǎn)換條件需要仔細(xì)設(shè)計和實地調(diào)試。例如從STATE_ALIGN轉(zhuǎn)換到STATE_BACKUP的條件不能僅僅是“檢測到Tag”而應(yīng)該是“Tag中心x坐標(biāo)在圖像中心±10像素內(nèi)且y坐標(biāo)大于某個值表示距離合適”。這些閾值都需要在真實場地上反復(fù)測試確定。4.3 PID速度控制狀態(tài)機(jī)決定了左右輪的目標(biāo)速度V_left_target和V_right_target但如何讓電機(jī)的實際速度跟上目標(biāo)速度呢這就需要PID控制器。我為左右輪分別獨立配置了一個位置式PID控制器實際上控制的是PWM占空比間接控制速度。PWM_duty Kp * e(t) Ki * ∫e(t)dt Kd * de(t)/dt其中e(t) V_target - V_actual是速度誤差。然而這里有一個巨大的坑我們通常沒有低成本的速度傳感器對于微型直流減速電機(jī)加裝編碼器成本劇增。因此我采用了一種簡化方案開環(huán)控制結(jié)合定時補償。即我默認(rèn)PWM占空比與電機(jī)速度在一定范圍內(nèi)呈線性關(guān)系。通過實驗我測量出不同占空比下小車大致的直線速度建立一個粗略的查找表。在控制時直接根據(jù)目標(biāo)速度查表得到PWM值。同時引入一個非常小的P項比例項來補償因電池電壓下降、地面摩擦變化帶來的誤差但這個P項系數(shù)很小主要起微調(diào)作用而不是真正的速度閉環(huán)。更實用的做法是加入“航向角”的閉環(huán)。雖然輪子速度不閉環(huán)但我們可以通過一個廉價的MPU6050陀螺儀加速度計來獲取小車轉(zhuǎn)彎時的角速度并對其積分得到航向角Yaw。這樣在STATE_ALIGN和STATE_ADJUST狀態(tài)中我們可以實現(xiàn)角度閉環(huán)PID比如需要左轉(zhuǎn)30度我們就設(shè)定目標(biāo)角度用PID控制左右輪差速直到MPU6050反饋的角度達(dá)到目標(biāo)。這比單純依賴視覺坐標(biāo)和開環(huán)定時控制要精準(zhǔn)和穩(wěn)定得多。我在項目后期加入了MPU6050控制精度立刻提升了一個檔次。5. 系統(tǒng)集成調(diào)試與避坑實戰(zhàn)記錄將視覺、控制和機(jī)械部分組裝起來后真正的挑戰(zhàn)才開始。以下是我在調(diào)試過程中遇到的主要問題及解決方案問題一視覺識別延遲與車輛運動不同步。現(xiàn)象小車在STATE_SEARCH狀態(tài)下前進(jìn)時OpenMV識別到車位Tag但小車由于慣性會沖過頭導(dǎo)致起始泊車點不準(zhǔn)。 分析從OpenMV捕獲圖像、處理、發(fā)送到STM32接收、解析、狀態(tài)切換存在一個100-200ms的延遲。在這段時間里小車仍在以原速度運動。 解決預(yù)測與提前量在STATE_SEARCH狀態(tài)讓小車以非常慢的速度前進(jìn)減小延遲期間移動的距離。狀態(tài)切換緩沖當(dāng)接收到有效Tag數(shù)據(jù)時不立即跳轉(zhuǎn)到STATE_ALIGN而是先進(jìn)入一個STATE_BRAKE剎車子狀態(tài)發(fā)送一段時間的反向PWM讓電機(jī)快速制動待車停穩(wěn)后再開始對齊操作。雖然增加了狀態(tài)復(fù)雜度但顯著提高了可重復(fù)性。使用AprilTag的tag.translation()信息如果AprilTag標(biāo)定得好它可以估計出Tag相對于攝像頭的距離z方向。我們可以設(shè)定一個距離閾值例如20cm當(dāng)小車運動到該閾值范圍內(nèi)時再觸發(fā)剎車這比單純依靠圖像像素坐標(biāo)更物理、更準(zhǔn)確。問題二電機(jī)干擾導(dǎo)致串口數(shù)據(jù)錯亂或MCU復(fù)位?,F(xiàn)象每當(dāng)電機(jī)啟動或轉(zhuǎn)向時OpenMV發(fā)送的數(shù)據(jù)偶爾會出錯甚至STM32程序跑飛。 分析如前所述電機(jī)是大電流感性負(fù)載其啟停會產(chǎn)生強烈的電磁干擾EMI通過電源線和空間輻射影響微控制器和串口電平。 解決電源隔離如前文硬件部分所述邏輯電源與電機(jī)驅(qū)動電源徹底分開并使用大容量電容如1000μF電解電容并聯(lián)0.1μF陶瓷電容在電機(jī)驅(qū)動電源輸入端進(jìn)行濾波。信號隔離在STM32的PWM輸出線和電機(jī)驅(qū)動模塊的輸入線之間串聯(lián)一個100歐姆左右的電阻可以削弱高頻干擾。如果干擾特別嚴(yán)重可以考慮使用光耦隔離模塊但成本會增加。軟件容錯在STM32的串口接收中斷服務(wù)程序中增加數(shù)據(jù)校驗。例如我使用的數(shù)據(jù)格式是“tag:%d,%d,%d\n”在解析時會嚴(yán)格檢查字符串是否以“tag:”開頭是否包含兩個逗號以及轉(zhuǎn)換后的數(shù)字是否在合理的圖像坐標(biāo)范圍內(nèi)0-320 0-240。任何一步出錯這一幀數(shù)據(jù)都會被丟棄等待下一幀。這保證了即使有偶發(fā)干擾系統(tǒng)也不會因錯誤數(shù)據(jù)而崩潰。問題三地面摩擦不均導(dǎo)致軌跡偏離?,F(xiàn)象在STATE_BACKUP倒車時理論上左右輪速度相同小車應(yīng)直線后退但實際上總會偏向一邊。 分析即使是同一型號的電機(jī)其內(nèi)部阻力、齒輪間隙也有微小差異加上地面平整度和摩擦系數(shù)不可能絕對均勻?qū)е聝蓚€輪子的實際轉(zhuǎn)速有細(xì)微差別長時間累積就會產(chǎn)生明顯偏差。 解決加入航向角反饋再次強調(diào)這是治本的方法。通過MPU6050實時讀取Z軸角速度積分得到偏航角。在倒車過程中不斷用小幅度差速例如讓偏快一側(cè)的輪子略微減速來修正航向角使其保持為0直線后退。這實現(xiàn)了一個真正的“航向閉環(huán)控制”。開環(huán)補償如果沒有IMU可以做一個簡單的實驗讓小車在目標(biāo)場地上空載直線前進(jìn)5米測量其最終偏離直線的距離。根據(jù)幾何關(guān)系可以反推出左右輪的速度比例系數(shù)。例如如果總是向右偏說明左輪實際速度比右輪快那么在代碼中給左輪的目標(biāo)速度乘一個略小于1的系數(shù)如0.98給右輪乘一個略大于1的系數(shù)如1.02進(jìn)行靜態(tài)補償。這個方法很粗糙且在不同地面、不同電池電量下需要重新校準(zhǔn)。問題四起始位置容錯性差?,F(xiàn)象要求小車必須從非常精確的位置和角度開始搜索否則整個泊車流程就會失敗。 分析狀態(tài)機(jī)的轉(zhuǎn)換條件設(shè)計得過于苛刻沒有考慮初始誤差。 解決放寬STATE_ALIGN對齊狀態(tài)的判定條件并使其成為一個更智能的“逼近”過程。例如不是要求Tag中心x坐標(biāo)必須嚴(yán)格等于圖像中心而是設(shè)計一個比例控制角速度ω Kp * (tag_cx - image_center_x)。這樣小車會自動朝著使Tag居中的方向轉(zhuǎn)動形成一個平滑的視覺伺服過程。同時y坐標(biāo)代表距離也采用類似的比例控制來調(diào)整前進(jìn)/后退速度。這樣只要Tag在視野內(nèi)小車就能自動調(diào)整到合適的起始位姿大大提升了系統(tǒng)的魯棒性和用戶體驗。6. 項目源碼結(jié)構(gòu)與關(guān)鍵代碼剖析提供的源碼包解壓后主要包含兩個工程目錄OpenMV_Script和STM32_Project以及一個Documentation文件夾。6.1 OpenMV腳本工程 (OpenMV_Script/main.py)這是運行在OpenMV Cam H7上的主腳本。其結(jié)構(gòu)清晰初始化部分配置攝像頭參數(shù)分辨率、色彩模式、關(guān)閉自動增益和白平衡以穩(wěn)定顏色識別、初始化串口。主循環(huán)img sensor.snapshot()捕獲一幀圖像。調(diào)用img.find_apriltags()或img.find_blobs()進(jìn)行識別。如果找到目標(biāo)計算其中心坐標(biāo)并可能進(jìn)行一些濾波比如只取面積最大的目標(biāo)。按照預(yù)定的協(xié)議格式通過uart.write()發(fā)送數(shù)據(jù)。數(shù)據(jù)發(fā)送頻率通過time.sleep_ms()控制避免過高頻率導(dǎo)致串口緩沖區(qū)溢出或STM32處理不過來。關(guān)鍵技巧在腳本開頭進(jìn)行鏡頭標(biāo)定對于AprilTagOpenMV內(nèi)部已經(jīng)集成了標(biāo)定只要你知道鏡頭的焦距焦距可以通過一個簡單的標(biāo)定程序計算出來網(wǎng)上有現(xiàn)成腳本find_apriltags函數(shù)返回的tag.translation()就是真實世界中的近似距離單位是米這比像素坐標(biāo)有用得多。我在代碼中預(yù)留了使用translation()[2]即Z軸距離作為判斷條件的接口。圖像處理前可以加一個img.lens_corr()函數(shù)進(jìn)行鏡頭畸變校正對于廣角鏡頭尤其有用能讓檢測更準(zhǔn)確。6.2 STM32工程 (STM32_Project)基于Keil MDK或STM32CubeIDE開發(fā)使用HAL庫或標(biāo)準(zhǔn)外設(shè)庫。核心文件包括main.c包含主循環(huán)、狀態(tài)機(jī)主函數(shù)Parking_StateMachine()、串口中斷回調(diào)函數(shù)。motor.c/h電機(jī)驅(qū)動層封裝了PWM初始化、設(shè)置左右輪速度的函數(shù)如Set_Motor_Speed(int left, int right)。這里實現(xiàn)了前文提到的速度開環(huán)映射或簡單的P補償。pid.c/hPID控制器實現(xiàn)雖然速度環(huán)可能沒用到但航向角PID控制會用到。uart_parser.c/h串口數(shù)據(jù)解析器。包含一個環(huán)形緩沖區(qū)在串口中斷中填充數(shù)據(jù)在主循環(huán)中解析出完整的、符合格式的一行命令。imu_mpu6050.c/h如果包含MPU6050的驅(qū)動通過I2C讀取原始數(shù)據(jù)進(jìn)行濾波如互補濾波和解算得到穩(wěn)定的姿態(tài)角。state_*.c各個狀態(tài)的具體實現(xiàn)函數(shù)如state_align(), state_backup()等。一個關(guān)鍵函數(shù)示例狀態(tài)機(jī)調(diào)度void Parking_StateMachine(void) { switch(current_state) { case STATE_SEARCH: // 控制小車慢速前進(jìn) Set_Motor_Speed(SEARCH_SPEED, SEARCH_SPEED); // 檢查串口解析器是否有新的有效Tag數(shù)據(jù) if (uart_has_new_tag_data()) { Parse_Tag_Data(tag_x, tag_y, tag_id); if (tag_id EXPECTED_PARKING_TAG_ID) { current_state STATE_BRAKE; // 先剎車 brake_timer HAL_GetTick(); } } break; case STATE_BRAKE: // 剎車200ms Set_Motor_Speed(-BRAKE_POWER, -BRAKE_POWER); if (HAL_GetTick() - brake_timer 200) { Set_Motor_Speed(0, 0); current_state STATE_ALIGN; align_start_time HAL_GetTick(); } break; case STATE_ALIGN: // 使用Tag的x坐標(biāo)進(jìn)行比例控制使Tag居中 int error_x tag_x - IMAGE_CENTER_X; float omega ALIGN_KP * error_x; // 計算目標(biāo)角速度 // 根據(jù)當(dāng)前距離tag_y或tag.translation[2]計算目標(biāo)線速度V float V ALIGN_SPEED; // 可能是一個根據(jù)距離變化的函數(shù) // 差速模型計算左右輪速 float left_speed V - omega * WHEEL_BASE / 2.0f; float right_speed V omega * WHEEL_BASE / 2.0f; Set_Motor_Speed((int)left_speed, (int)right_speed); // 檢查對齊條件誤差小于閾值且持續(xù)一段時間 if (abs(error_x) ALIGN_THRESHOLD) { if (HAL_GetTick() - align_start_time ALIGN_HOLD_TIME) { current_state STATE_BACKUP; backup_start_time HAL_GetTick(); } } else { align_start_time HAL_GetTick(); // 條件不滿足重置計時 } break; // ... 其他狀態(tài)類似 default: break; } }這個函數(shù)在每個主循環(huán)周期中被調(diào)用根據(jù)current_state執(zhí)行相應(yīng)的動作和狀態(tài)轉(zhuǎn)移判斷。這里的一個細(xì)節(jié)是使用了非阻塞式延時比如STATE_BRAKE中通過對比當(dāng)前時間戳和開始剎車的時間戳來判斷是否結(jié)束而不是用HAL_Delay()這樣就不會阻塞整個程序其他任務(wù)如串口接收可以照常運行。7. 擴(kuò)展思考與優(yōu)化方向這個基礎(chǔ)項目跑通后有很多方向可以深入優(yōu)化讓它更接近一個“智能”系統(tǒng)多傳感器融合目前嚴(yán)重依賴單一視覺傳感器??梢栽黾映暡▊鞲衅髟诘管嚾霂斓淖詈箅A段用于檢測與后方障礙物的實際距離實現(xiàn)精準(zhǔn)??勘苊庾矇Α?梢詫⒊暡ǖ臄?shù)據(jù)與視覺的Tag距離估計進(jìn)行融合提高可靠性。編碼器在電機(jī)上安裝增量式編碼器實現(xiàn)真正的雙輪速度閉環(huán)控制。結(jié)合輪子里程計可以進(jìn)行簡單的航跡推算即使短暫丟失視覺信號也能估計出自身位置。慣性測量單元如前所述MPU6050等IMU對于測量角速度、補償車輛傾斜非常有用。路徑規(guī)劃算法目前的倒車路徑是簡單的圓弧或直線??梢砸敫鼉?yōu)的路徑規(guī)劃例如Reeds-Shepp曲線或Dubins路徑這些是機(jī)器人學(xué)中用于計算滿足最小轉(zhuǎn)彎半徑約束的最短路徑的經(jīng)典方法。規(guī)劃出的路徑可能由多段圓弧和直線組成控制邏輯需要相應(yīng)升級來跟蹤這條路徑。更高級的視覺處理除了AprilTag可以嘗試線段檢測識別停車位的邊界線。OpenMV的find_line_segments()函數(shù)可以檢測圖像中的直線段通過篩選和組合可以重構(gòu)出停車位的輪廓。這對光照的依賴性比顏色低但算法更復(fù)雜。機(jī)器學(xué)習(xí)在OpenMV上運行輕量級的神經(jīng)網(wǎng)絡(luò)模型如TinyML直接檢測車位。OpenMV的H7系列芯片支持一些基本的神經(jīng)網(wǎng)絡(luò)框架。這將是邁向“通用車位識別”的一大步。上位機(jī)監(jiān)控與調(diào)試通過STM32的另一個串口連接藍(lán)牙模塊如HC-05或Wi-Fi模塊如ESP-01S將小車的實時狀態(tài)如當(dāng)前狀態(tài)、傳感器數(shù)據(jù)、電機(jī)PWM值發(fā)送到電腦或手機(jī)上的上位機(jī)軟件。這能極大地方便調(diào)試和算法優(yōu)化。你可以用Python的PyQt或Tkinter快速寫一個顯示小車軌跡和數(shù)據(jù)的可視化界面。這個項目最大的收獲不是做出了一個能自動泊車的小車而是在這個過程中你將嵌入式開發(fā)、硬件電路、實時控制、計算機(jī)視覺和基礎(chǔ)機(jī)器人學(xué)等多個領(lǐng)域的知識串聯(lián)了起來并親手解決了其中涌現(xiàn)出的無數(shù)工程問題。每一個參數(shù)的調(diào)整每一個異常的排查都是對“系統(tǒng)思維”和“調(diào)試能力”的絕佳鍛煉。希望這份詳細(xì)的拆解和心得能幫助你少走一些彎路更深入地享受從零搭建一個智能系統(tǒng)的樂趣。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷五月色丁香在线看| 日韩成人精品中文字幕| EEUSS鲁片一区二区三区| 在线视频九色97| 色九网| 很很干夜夜干| 婷婷色婷婷亚洲成人| 色偷偷五月天| 99久久6| 熟美女麻豆| 能看的av| 婷婷色五月激情强奸四射| 99久热精品在线| 欧美五月婷婷| www。五月天激情| 99久久综合网| 亚洲操逼网| 五月丁香亚洲五月| 超碰在线个人观看| www.五月婷婷.com| 色婷婷网| 91人人人人人人人| 色婷婷丁香五月| 色高清无码视频| 91趴趴| 国产成人网站在线观看| 五月丁香婷成人网| 99精品人人| 久久九色| 婷婷五月天亚洲五码| 中文精品久久久久人妻不| 97碰精品| 国产成人精品一区二区三区视频| 丁香蜜臀黄色婷婷五月天| 色五月天中文字幕| 激情久久久| 99热亚洲| 婷婷啪啪| 99热99色| 激情床戏| 超碰人人操人人干| 91九色视频| 免费视频这里只有精品| 日本性激情色播| 五月丁香香蕉| 五月丁香激情综合网官网| 亚洲AV免费在线| 日日夜夜狠狠操| 久月丁香爱婷婷综合| 久久99看免费| 91狠狠色色丁香婷婷综合久久| 国产乱人偷精品人妻A片| 91丨九色丨熟女|新版| 99热精品免费在线观看| sisi热国产| 激情性爱网站| 9久久久| 中国女人内射6XXXXX| 色情丁香五月婷婷精品| www久久99| 婷婷五月激情欧美大胆视频| 成人色色综合| 丁香久久九九99| 女人高潮内射99精品| 丁香五月综合激情性爱| 少妇人妻综合色6699| 97丁香五月天| 翔田千里无码| 欧美色色色色色色色| 婷婷区日本| 五月天另类小说亚洲| 色色色婷婷五月天| 9999久久久久| 美女婷婷六月色| 天天做天天爱天天搞| www91精品| 在线亚洲综合| 五月婷在线影院| 五月天另类图片区99| 色97啪啪| 99精品热| 五月婷婷六月基地| www.日日日.com| 激情婷婷五月社区| 99ri在线播放| 五婷婷六月合| 久久婷婷综合五月天| 婷婷在线免费| 蜜臀av粉嫩av懂色av| 亚洲人人操| www.色综合.com| 青青草原99热| 六月婷婷综合激情| 五月婷婷六月天| 激情综合无码| 成人免费黄色短视频| 婷婷六月丁香五月图区| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 五月婷婷色欲| 激情五月份婷婷| 久久一级片| 99久在线精品| 人妻操逼| 久久五月天婷婷| 五月天天综合| 欧美在线视频99| 五月丁香啪啪网| 日本熟妇乱妇熟色A片蜜桃 | 婷婷五月天亚洲综合| 操操国产| 日本三级99人妇网站| www. 五月. com| 99精品自拍视频| 五月婷婷综合网| 91精品久久久久久| 久久99激情丁香婷婷小说网| 欧美日韩999| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 91操操| 九九热精品| 草草色情综合网| 99热插| 99热国内| www.久久爱| 人妻久久久久久久 | 热99精品视频五月| JAPANRCEP老熟妇乱子伦视频| 一级片操逼视频| www,99色| 开心五月婷婷激情| 天天爽天天摸| 九九视频在线观看视频6| 亚洲av无码影院| 婷婷久久欧美| www激情| 99热网精品| 欧美日韩成人在线网站| 五月天自拍视频| 六月婷婷激情| 五月婷婷,六月婷婷| 嫩草综合网| 99热最新精品| 97热在线精品| 亚洲婷婷免费| 精品热青草| 婷婷玖玖五月天| 熟女五月天久久综合| 久久久婷婷五月亚洲97号色| 激情婷婷五月少妇| 五月六月伦理| AV大香蕉| 在线成人网址| 天天操天爱综合| 色五月婷婷五月| 五月丁香综合影院| 日韩啊啊啊| 激情综合五月| 五月伊人综合| 狠狠色噜噜狠狠狠狠综合| www.婷婷五月天,com| 精品国产人人爱人人| 91丁香五月| 亚洲亚洲人成综合网络| av国产精品偷| 天天插天天射| 色天使色综合| 色综合伊人网| 久大香蕉| 综合久久99| 日碰日| 五月丁香va| 亚洲精品亚洲人成人网| 色色99色色| 五月天色色婷婷| 久久全色| 99热播放| 激情综合五月色在线| 人妻中文在线| 天天日天天摸天天| 五月久久丁香| 久久久久久人妻| yjzz亚洲国产| 婷婷五月天播播| 字幕网AV中文字幕| 激情综合五月开心狠狠| 天天天久久久| 九色激情| 大香蕉婷婷丁香视频在线| 天天操加勒比| 666555。COm毛片| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 欧美日韩成人h| 丁香狠狠色婷婷久久无码视频| 国产原创视频91九色| 亚洲色色香蕉| 超碰人人艹| 久久五月丁香| 色婷婷五月天激情在线观看| 五月天色图| 97精品欧美91久久久久久久| 六月五月久久丁香| 伊人五月综合网| 婷婷情色五月天| 99日本精品视频热| 天天日天天舔| 亚州操操| 日韩久久这里只有精品| 国产免费一区二区三区三州老师F1F1.CC| 成人国产网| 人人干Av| 另类天堂| 色婷婷综合网| 五月天婷婷视频小说| 爱射综合| 综合色久| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 天天综合亚洲综合网天天αⅴ| 六月婷婷综合| 色五月婷婷综合| 凹凸探花电影| 婷婷激情在线| 色婷综合| 中日韩美欧成人一区二区精品在线| 婷婷五月天黄色小说| 欧美人人操| 爱99干99| 五月丁香六月激情在线| 婷婷五月天综合AV| 丰满少妇猛烈A片免费看观看 | 欧美性生交XXXXX无码小说| 久热视频这里只有精品| 亚洲永久免费| 91婷婷丁香五月| 国产精品色色666| 成片免费观看大全| 久操乱| 秋霞性爱AV| 欧美成人精品一区二区| 玖玖福利视频资源| a69在线视频| 国精产品一区二区三区| 五月婷综合| AAA久久| 婷婷综合在线| 无套内射极品大美女| 天天在线久久综合| 五月婷综合| 成人无码髙潮喷水A片| 婷婷性福五月天| 99色五月| 久人人操| 亚洲AV另类| 日日躁夜夜躁狠狠久久AV| 无码区婷婷五月花开| 五月天色婷婷基地| 天天爽天天摸| 五月婷视屏在线观看| 情五月亚洲婷婷| 丁香五月婷婷啪啪啪| 综合网网欲色| 成人免费黄色短视频| 五月天偷拍| 操碰91| 新激情五月天天在线网| 色欲婷婷五月天丁香| 激情网五月婷婷| 婷婷丁香久久五月综合| 五月激情婷婷开心五月| 97久久香草精品视频| 激情深爱五月婷婷| 99激情视频热| 天天拍夜夜爽| 99爱免费视频| 丁香五月天资源网| 色99视频| 99爱在线免费视频| 日韩丰满少妇无码内射| 久久艹 五月天| 婷婷五月天桃花网| 4399欧美另类视频| 在线成人网站| 五月婷婷成人网首页| 九九色中文| 婷婷涩五月| 五月久久婷婷| 婷婷五月天,影院| 婷婷久久国产视频| 精品综合久久久久久五月天| a久久免费视频| 天天射色五月天| 丁香五月婷婷激情中文| 99热天堂| 婷婷欧美综合| 成 人片 黄 色 大 片| 成AV人片一区二区三区久久| 激情涩播| 五月丁香91| 亚洲成人网站在线| 色综合爽| 亚洲狠狠干| 国产综合色婷婷精品久久| 亚洲99综合| 99精品视频网| 亚洲国产网址| 综合天天综合| 激情婷婷丁香色五月| 激情五月色在线播放| 色色色色av777| 深爱激情网五月天| 婷婷丁香色五月| 丰满少妇猛烈A片免费看观看| 青青久久五月| 99久久久国产大片| 激情五月四色| 99精品网| 黄色99热| 异能之下短剧免费观看全集| 五月天激情开心网| 天天综合 99久久婷婷| 26uuu精品一区二区| 激情五月成年| 欧美色婷婷| 色 五月婷婷基地| 91操人| 丁香久久综合| 国产原创视频91九色| 久久综合26p| 婷婷五月综合婷婷| 啪啪啪大香蕉| 极品少妇XXXX精品少妇偷拍| 色五月婷婷激情五月| 思思99re这里只有| 天天操天天国产三级片处女学生妹| 四月婷婷丁香五月| 中海油常州环保涂料有限公司| 色色无码| 九九久久五月天综合伊人| 午夜少妇在线观看视频| 亚洲秘 无码一区二区三区妃光/1| 一级A片天天操夜夜操| 激情综合网五月激情网| 五月天激情www| 色99在线观看| 久久九九经典| 五月丁香婷婷人体| 欧美成人精品A片免费一区99| 九九热99在线视频| 开心五月综合| 国产精品18久久久| 玖玖资源站国产| 色五月av| 操操操91| 日日夜夜狠狠干| 婷婷啪啪| 五月婷婷综合热| 狠狠色大香蕉| 狠狠se| 丁香五月AV综合激情| 成人电影一区| 国产av基地| 欧美xx激情视频在线观看| 色五月婷婷网| 天天人人综合| 亚洲婷婷五月天| 一区二区免费看| 婷婷色爱| 五月天激情亚洲| a色色色色色| 久久五月网| 激情图片99| 五月激情婷婷丁香| 五月天激情啪啪| 丁香六月无码播放| 97伊人综合婷婷| 亚洲激情97五月天| 91嫩草久久| 79精品视频在线观看,| 无码AV大香线蕉伊人| 99热只有精品在线观看| 久久五月热| 26uuu欧美激情另类| 五月停视频天堂| 色婷激情网| 偷偷与邻居做爰完整视频| 激情深爱婷婷网| 婷婷五月激情小说| 五月天婷婷开心| 大香蕉啪啪| 久久3p| 五月天开心网| 丁香激情久久| 一本大道伊人AV久久综合| 婷婷伊人激情婷婷| 亚洲AV成人无码精品| 五月天激情无码| 婷婷五月a| 丁香六月婷婷综合缴| www久久久久| 日韩成人电影在线播放| 女人露出p毛视频www网站| 思思精品视频| 人人干Av| 大香蕉狠狠爱主页| 我爱大香蕉| www.五月激情.com| 人人人操 超碰| www.色擼擼.com| 麻豆精品| 成人做爰A片免费看网站找不到了 噼里啪啦在线观看免费完整版视频 | www,五月天激情| 九九99九九99九九99视频网| 五月天激情综合网站| 丰满少妇乱A片无码| 色婷婷五月亚洲| 99艹精品在线观看| 99热在这里只有精品| 二人电影免费版在线观看| 国产麻豆视频| 深爱激情六月天| 97视频.干com| 香蕉AV777XXX色综合一区| 色婷婷社区| 婷婷丁香花五月天| 精品欧美一区二区三区久久久| 色99热| 大香线蕉伊人| 久爱综合| 99热这里只有精品55| 五月丁香久久激情网| 久久婷婷网址| 五月天婷婷久久视频| 这里只有精彩视| 性视频久久| 丰满人妻妇伦又伦精品国产| 婷婷五月花| 日本婷婷丁香五月| 亚洲AV人人操| 亚洲欧洲一二| 性生生活大片又黄又| 99国产精品久久久久久久久久久| 九九九午夜影院成人| 91视频五月丁香| 一本大道熟女人妻中文字幕在线 | 深爱五月网| AV大香蕉| 激情九月天天天天婷婷| 香港九九六区八区99| 亚洲这里只有精品| av在线观看网站| 五月天激情无码高清 | 26UUU一区二区| 伊人大香久久| 99婷婷精品推荐在线视频| 六月丁香中文字幕| 久狠狠| 亚洲综合干| 色婷婷久久久| 任你擦免费视频| 91人妻九色大屁股| 狠狠色综合五月人人| 日本人妻A片成人免费看片| 婷婷色基地| 天干天天干天天天天天| 99这里有精品久久97| www.97干视频| 久热伊人9| 天天色五月婷婷91久久久久久久| 色99在线观看| 欧洲亚洲午夜| 色综合xx| 婷婷五六日| 五月天第四色开心色播| 另类五月婷婷| 综合色五月| 91 原创 在线 九色| 9 7总站超级碰免费视频| 国产成人AV| 99热在线播放| 综合久久激情久久| 丁香狠狠干| 亚洲第一成人无码A片| 99精品在线| 欧美在线视频99| 婷婷5月开心6月| 色婷婷色五月另类综合| 色婷丁香五月| 亚洲 在线 性爱| 天天 日综合| 五月六月丁香婷婷在线观看| 婷婷丁香午夜综合影视| 六月丁香激情最新更新| 激情五月六月丁香| 99热在这里只有精品| 色五月综合激情| 99视频只有这里精品| 播五月丁香六月| 亚洲 五月 婷婷 成人| 欧美va亚洲va在线播放| 噜噜色婷婷| 亚洲色色色| 午夜激情综合| 国产乱妇无乱码大黄AA片| 天天色天天操天天射| 天堂美国久久| 久久 无毛。| 天天综合网91| 色宗合,宗合网| 五月丁香六月婷婷a v| 成人性爱精品视频| 欧美久久网| 深爱婷婷网| 精品亚洲国产成AV人片传媒| 激情五月九九九| 欧美久久网| 五月天精品| 午夜69成人做爰视频| 日本激情综合| 丁香花五月天激情| 天堂五月婷婷| 五月丁香色婷婷久久| 久久久这里有精品| 色五月婷婷丁香凹凸| 久久激情天堂| 情婷婷五月天在线| 久久婷婷五月| 中文字幕网伦射乱中文| 激情AV中文| 丁香五月花婷婷开心| 乱轮A片| 成人五月天丁香| 蜜桃人妻无码AV天堂三区| 色吧网综合| 97碰久久| 日日夜夜九九| 色欲av伊人久久大香线蕉影院| 草操网| 五月丁香啪啪| 国精产品一区一区三区免费视频| 六月撸婷婷| 2020夜夜操天天爽| 久久9精品| 久久久久久五月天| 五月天婷婷久久| 五月婷在线视频免费播放| 超级碰碰91| 亚洲精品国产A久久久久久| 激情伊人网| 深爱五月天婷综合| 99在线小视频| 激情五婷网| 亚洲精品视频在线| 99A级片| www.lingjunshare.com| 99日韩| 婷婷五月天网址| 国产精品视频久久99| 91九色熟女| 4399无码视频二区| 日日色五月天| 五月丁香偷拍| 超碰色色综合| 欧美色色色色色色| 日本大逼91| 婷婷五月天伦理| 日韩999| 亚洲激情五月| 五月丁六月香| 黄色av高清| 五月天堂婷婷| 色色色网站| 成人国产综合| 亚洲人妻AV| 久久总和99| 99热97| 婷婷久久爱| 超碰色碰碰| 99在线观看视频精品| 伊人久久婷婷| 色99在线| 丁香五月成人网| 五月丁香激情啪啪网| 激情综合激情五月一起草| 丁香五月婷婷激情97| 狠狠 婷婷| 久久久久久久人妻| 色情性爱视频网址| 熟妇无码乱子成人精品| 五月天色导航| av电影在线播放| 五月婷婷亞洲中文| 色五月色五天色情网址| 天天色天天日| 97极品在线| 伊人久久大香蕉网| 久久曰曰| 91丨九色丨东北熟女| 激情文学天天| 国产精品久久久久久久久久| 亚洲综合婷婷六月丁香五月| 久久一级免费黄色片| 天天摸天天透天天舔| 色婷六月| 狠狠狠狠狠狠狠狠| 春色激情第四色| 逼特逼在线免费播放| 99性爱精品| 91九色在线观看免费| 噜噜吧天天爱| 九九精品热| 婷婷丁香六月| 婷婷六月五月| 玖玖爱综合网| 大伊香蕉精品视频在线| www.久热| 婷婷丁香射射| 九九九干精品| 五月婷婷五月色| 丁香五月婷婷啪| 欧美日韩99| 人妻视频一区而且二区| 999久久久国产精品| 欧美色色色| 色五月激情五月| 亚洲va欧洲va国产va不卡| 国产午夜精品一区二区| 丁香五月激情综合| 日本熟女二区| 熟女激情网| 大香蕉视频99| 97操碰视频| 色国产五月| 97久久久免费福利网址| 天天色粽合合合合合合合| 丁香五月丁香伊人| PORNY九色9l自拍视频成人| 婷婷五月天基地| 五月情婷婷| 丁香五月在线人妻| 91人人妻人人操| 久久98| 日本五月婷婷| 婷婷大美在线| 五月久久婷婷丁香| 亚洲av成人一区二区电影在线| 中文AV在线播放| 日日做天天操夜夜爽| 久热 91| 婷婷D区| 大香网伊人久久综合| 欧美亚洲婷婷五月| 日操| 欧美日韩91| 婷香狠狠爱五月| 国产精品A成V人在线播放| 丁香五月激情啪| 天天爽天天摸| 热99久久这里只有精品| 丁香九月婷婷| 亚洲午夜电影| 狠狠色丁香久久综合婷婷亚洲成人福利| 成人丁香五月天| 综合成人小说婷婷| 女人天堂 AV| 精品无码色| 黄网免费看| 久久er99| 婷婷五月精品中文字幕| 乱女乱妇熟女熟妇综合网站| 五月婷婷影院| 大香蕉中文| 婷婷之玖玖| 久久大大香| AA片在线观看视频在线播放| 五月天激情四射| 久久与婷婷| 天天日天天干天天操| 色五月成人在线| 五月天婷婷午夜丁香| 色啪综合| 日本在线视频播放91| 久久国产AV| 丁香五月婷婷综合激情啪啪啪| 免费观看全黄做爰的视频| 久久久精品人妻| 9999久久久久| 久99| 色色色9| 91一起操| 亚洲婷婷五月天| 精品久久艹| 无码任你操| 亚洲色频| 久热AA| 香蕉操亚洲| 自拍偷窥99热| 综合色五月| 开心五月天激情网| 99热97| 日日干天天| 九九热最新| 91超级碰在线| 色婷婷伊人| 久久女婷| 日本三级大片| 桃色成人网| 色五月丁香A欧美com| 婷婷丁香五月在线观看91| BBWCUCKOLD精品熟妇| 碰97 久| 99热最新国内| 激情 婷婷| 九九热九九| 色婷婷电影| 婷婷五月激情四射手| 婷婷伊人綜合中文| 99在线69| 六月婷婷日| 国产精品色色色色| 99精品视频网站| 色女人久久| 五月综合色| 人妻熟女一区二区AV| 婷婷五月丁香性爱| 色婷婷伊人| 琪琪理论片| 91人人操人人| 五月婷深深爱激情网| 天天爽天天日| 天天综合网在线| 久久久久亚洲AV综合| 97人人操人人操人人操人人| 99久热在线精品| 婷婷天天综合| 狠狠色噜噜狠狠| 日日操天天操| 日韩国产在线免费观看| 五月丁欧美| 少妇人妻综合色6699| 久久久久9| seuuu婷婷| Www.久久| 九九九这里只有精品| 色色色国产| 精品99在线| http:色情日本com| 99热在线精品播放| 五月婷综合网| 久久婷婷五月| 色级婷婷| 91viP在线看| 五月丁香欧美在线| 另类小说色婷婷| 成人啪啪色婷婷久| 青草热视频这里只有精品| 欧美性爱一区| 亚洲AV成人一区二区在线观看| 天堂综合久久| 人人综合五月人人婷婷| 五月婷婷中文字幕| 婷婷五月无码| 小视频aaa久久久| 丁香久久五月婷综合| www.丁香黄色五月天人与| 亚洲无码另类| 亚洲久久天堂| 久久综合网免费视频| 五月天激情久久| 婷婷干| 综合激情五月丁香| 第五色婷婷| 区美毛片子| 婷婷性爱五月天| 淫视馆aV二区一区| 另类亚洲视频| 夜丁香综合| 婷婷丁香18| 操人妻90p| 成人五月天丁香婷| 国产精品国产| 色 色 色综合com| 婷婷久久综合久| 激情五月婷色| 在线观看av网站| 婷婷激情中文综合| 久久综合激情婷婷激情| 丁香五月在线视频| 色五月天天在线观看资源站| 欧美天天干五月丁香| 丁香婷婷大香蕉| 狠狠精品干练久久久无码中文字幕| 国产偷人爽久久久久久老妇APP| 99热欧美精品| 久久婷婷五月综合伊人| 无码啪啪| 色99久草在线| 久热中文字幕| 九九亚洲视频| 日本五月视频| 九九色热| 97在线观视频免费观看| 久久天堂婷婷五月| 六月丁香激情综合| 五月天色小说| 亚洲欧洲中文日韩久久AV乱码| 天天爱夜夜爽| 日本美女五月天| 狠狠色丁婷婷日日,伊人激情综合网| 色色a| 激情五月天。| 色色三级视频| 热99视频| 中文字幕 中文字幕明步| 99re思思精品视频在线观看| 国产暴力强伦轩1区二区小说| 六月婷婷网| 夫妇交换刺激做爰| www.金莲av| 久久欧洲综合网| 日碰日| 这里只有精品2| 成人网页在线观看| 91偷拍视频| 九九熱最新視頻| 四LLL少妇BBBB槡BBBB| 五月天婷婷开心| 久久激情四射| 丁香五月婷婷AV在线| 手机旧版看人妻1025| 五月丁香婷婷色| 五月婷婷六月丁香激情深爱| 疯狂做受XXXX高潮A片| 久久久精品人妻录| www.com亚洲网站在线免费| 99爽视频| 久久五月激情网| 超碰人人妻| 99热主页日本| www.狠狠狠.com| 99热在线网站| 九九热精品视频| 激情激情激情网| 色欧美日| 99色热| www.六月丁香看AV| 999精品乱码77777| 婷婷丁香六月| 亚洲天天操| 天天激情5月天亚洲| 少妇做爰免费视看片| 久久只有精品| 五月激情综合性爱| 26uuu欧美| 六月丁香激情网| 国产超碰在线| 色热久| 亚洲在线操| 人人看人人摸人人| 久久久免费精彩视频| 激情五月丁香五月| 精品国产va久久久久久久| 色综合中文| 日本三级第一页| 亚洲欧美婷婷五月色综合| 久久 天天| 丁香五月综合亚洲| 久久亚洲网| 亲子乱AV一区二区三区下载| 不卡成人免费| 少妇水多A片太爽了| 久操热| AVDV久久| 色五月婷婷丁香五月| 天干干夜夜操| 超碰三级秋霞| 久操激情| 91日韩美女被插视频| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | www.精品99| 亚洲国产黄色电影| www.色多多婷| 最近中文字幕大全免费版在线| 久久六月天| 五月天色综合| 26uuu日韩| 五月婷婷色激情| 日逼免费视频 | 日韩色色色色| 精品夜夜澡人妻无码AV| 激情小说五月天| 丁香五月天视频| 99热国产这里只有精品| 国产精品色色| 色五月丁香婷婷久草| 五月丁香啪啪| A久久| 五月婷婷之综合激情| 看久久性爱视频| 色五月丁香在线| 操逼在线视频| 九九热这里只有国产精品| 伊人在线婷婷草| 另类色网| 第二色AⅤ| 激情综合色五月六月婷婷| www.色婷婷。com| 国产日日夜夜操| 先锋男人99资源| 婷婷操逼网| 激情综合亚洲色婷婷五月| 99性爱无码| 99精品网站| 欧美日韩AAAA| 亚洲另类视频| 一区二区免费看| 996热re视频精品视频| 色五月激情网| 日韩三级片一区二区| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 99热精品中文字幕| 五月天丁香网| 免费视频在线观看的网站| 丁香五月婷婷图片综合| 天天操比比| 久热这里| 婷婷.com| 99热 在线播放| 色综合久久88色综合天天99| 女人露出p毛视频www网站| 久久6这里只有精品| 精品无码99| 色激情五月天| 人妻av在线| 欧美成人精品A片免费一区99| 婷婷五月丁香基| 色综合久网| 婷婷六月啪啪| 丁香综合久久| 九九综合九九| 五月丁香综合伦理片| 丁香六月婷婷综合欧美| 99热偷拍| 69精品人人人人| 伊人久久大香| 五月色综合网欧美网| α久久| 国产婷婷五月色情综合| 色婷五月| 狠狠操狠狠色| 色色色婷婷五月| 色婷婷丁香五月丁香| 色五月婷婷基地| 来吧亚洲综合网| 超碰妻人人| 婷婷综合网| 天天热夜夜操| 九九99免费理论| 老美AA片| 亚洲综合无码| 婷婷夜夜夜夜| www.99久| 亚洲AV电影av| 六月丁香视频网站| www.激情五月| 国产又色又爽又黄又免费| 婷婷五月精品中文字幕| 九九草热在线观看| 久久草大香蕉| 五月色婷婷夜色| 丁香综合伊人| 人妻少妇色综合| 国产欧美精品AAAAAA片| 久久与婷婷| 丁香五月成人在线| 丁香九月激情| 99超级碰碰| 婷婷射图五月天| 五月天开心网| 蜜臀av粉嫩av懂色av| 开心五月婷| 久久久月丁香| 国产激情AV| 九热av| 亚洲综合五月天综合| 爱久综合| 玖色色综合| 免费试看小视频 99| 婷婷六月丁香五月| 六月色激情| 丁香五月停停av| 91丨九色丨国产打屁股| 开心五月婷婷婷美女| 嫩草乱码一区三区四区| 日本不卡一区二区三区| 好好干Av| 在线视频你懂得| 久久99久久久| 夜丁香综合| 五月天丁香久久综合| 婷婷丁香社区网| 丁香 久久| 激情淫乱男女| 五月丁香婷婷综合视频| 91se视频| 五月婷婷内射网| 九九av| 久热 91| 超碰不卡在线| 光棍影院日韩精品| 欧美五月丁香| 风流少妇A片一区二区蜜桃| 激情AV| 午夜少妇在线观看视频| 超碰免费99| 色丁香五月| 欧美色必爱| 久久五月丁香激情综合| 五月天婷婷综合网| 99色这里| 99热亚洲精品| 97干在线视频| 99热e| 午夜色婷婷| 五月丁香六月婷综合成人综合| 激情五月天99色| 这里只有精彩视频| 欧美日韩国产一区二区| 第四色五月天| 五月天婷婷久草丁香| 婷婷五月天天天| 九九激情视频| www.五月天婷婷| 一月婷婷色色| 91九色|疯狂|高潮|对白|| 久久久ww| 国产午夜一区二区三区| 国产精品久久99| 337p大胆噜噜噜噜噜91Av| 开心久久五月天| 一起草AV| 婷婷久久六月天| 久综合4| www,天天干| 亚洲精品视频电影| 超碰在线看| 五月天·www·com| 51精品国自产在线| www.亚洲激情| 色五月婷婷91在线| 久久婷婷六月综合综合| 激情六月丁香| 欧洲色色| 五月婷婷开心综合| 色九月欧美| 天天做天天爱天天爽| 精品人妻久久久| 极品五月天| 色五月婷婷在线| 日本女va| 在线综合亚洲欧美65| 538在线精品| 狠狠色婷婷777| 欧美搡BBBBB摔BBBBB| 99综合99| av线电影| 91性高潮久久久久久久久| 狠狠操.COM| 超碰av天堂| 极品少妇XXXX精品少妇偷拍| 日韩在线aaa| 久久视频婷婷视频| 欧洲第一无人区观看| 五月丁香婷婷开心| 偷偷操99| 粉嫩AV久久一区二区三区| 亚洲欧美999| 久久久久9| www.色多多婷| 亚洲天堂爱爱| 九九九成人在线视频| 黄色99热| 99ER热精品视频| 色屌丝中文字幕| 五月丁香久久网| 色色色色色色五月婷婷| 日本欧美成人片AAAA| 国产精品日韩十五区| 久久五月综合| AV中文字幕夜夜操b天天摸bb| 丁香色五月天| 玖玖热视频| 天天天操天天天爰| 综合激情专区| 丁香五月花| 久久婷婷网| 亚洲欧州色情在线观看| 午夜大香蕉| 激情丁香久久| 666555。COm毛片| 五夜婷婷| 色五月综合在线| 婷婷综合五月天激情| 色情婷婷。| 婷婷综合国产| 少妇大叫太大太粗太爽了A片 | 丁香五月综合| 欧美黑人巨大猛烈cuckold| 日本九九视频| 天天肏天天舔AV| 国产精品美女久久久久AV超清| 五月天久久综合| 亚洲色综合性| 色狠狠激情五月| 91干在线| 综合久久久婷| 男女啪啪视频久 9| 午夜少妇在线观看视频| 99A片| 婷婷操久久| 激情五月天婷婷五月天| 热的无码综合视频| 人妻久久久久久久久妻久久久久久久久| 日91高清无玛| 9 1 A v久久久| 丁香深五月婷婷| 欧美色综合天天久久综合精品| 久久99久久99久久99人受| 天天综合五月天| 色视频五月天| 青青草原精品久久| 欧美va亚洲va在线播放| 五月婷婷和六月| 天天看片日日夜夜| 亚洲av免费在线| 五月丁香亭亭操逼| 色月丁| 四季AV综合网| 激情婷婷丁香色五月| 日本久久色| 婷婷五月激情四射手| 青青久在线视频免费观看| 白人荫道BBWBBB大荫道| 五月丁香激情综合| 五月丁香久久| 国产成人精品一区二区三区视频| 狠狠狠狠狠狠| 色99在线| 99精品视频在线观看| 无码色| 香蕉AV777XXX色综合一区| 五月天开心网| 精品无码久久久久久久久| 伊人综合网站| 久99999热视频在线观看免费| 成人无码精品1区2区3区免费看| 五月婷婷涩涩爱| 玖玖色综合色| 色婷婷在线视频观看| 五月丁香婷婷综合网色欲| 中文字幕婷婷在线| www.99精品视频| 色婷婷久久综合| 天天天久久久| 色噜噜,噜噜色| 米奇影视资源777狠狠色婷婷五月天激情网| 深爱激情九九五月天| 久色五月婷婷综合| 色色色9| 五月天激情久久| 天天色天天操天天射| 福利视频在线播放| 中文字幕人妻一区二区| www. 五月. com| 婷婷丁香激情综合色情| 看黄的网站18禁| 婷婷丁香人妻| 色狠狠色噜噜AV天堂五区消防| 九九热最新| 婷婷综合激情| 亚洲中文字幕在线观看| 色五月婷婷成人视频| 五月丁香久久久| 人人97操| 久久色情| w婷婷五月婷婷w| 日韩啊啊啊| 97色色婷婷| 精品人妻午夜一区二区三区四区| 另类亚洲电影| 欧洲亚洲免费视频9| 开心五月婷婷六月丁香| 六月丁香久久| 婷婷激情五月综合| 人人人操 超碰| 丁香五月婷婷亚洲色图| 俺来也综合网精品一区| 玖玖资源站视频| 六月丁香久久| 碰超亚洲| 午夜丁香| 这里只有精品免费视频在线观看| 婷婷久久久久| 97在线观视频免费观看| 国产精品国产| oVV4WIB3vFi8D| 超碰资源在线| 国产欧美精品AAAAAA片| 国产婷婷五月天| 草婷婷在线| 国产亚洲在线观看| 久久3级片| 99精品在线播放| 五月婷婷天| 色婷婷激情| 久人操| 激情小说之五月| 亚洲久热| 一区二区三区四区牛| 思思热99er在线视频| 国产.亚洲.欧洲视频在线| 中文字幕网伦射乱中文| 97狠狠色| 美女五月狠狠| 国产精品涩涩涩视频网站| 99在线视频精品| 久久99热久久99精品| 狠狠精品干练久久久无码中文字幕| 99久久五月丁香野外| 99热精国产这里只有精品| 色情五月婷婷| 五月婷婷草| 色色哒五月婷婷六月丁香| 色婷婷成人做爰A片免费看网站| 丁香五月色网| 丁香五月婷综合网| 午夜69成人做爰视频| 天天爱天天做天天日| 99视频只有精品| 大香蕉在线99热| 国产成人VA| 欧美在线视频99| 啪啪夜久久| XX色综合| 丁香婷婷影院| 甈吧vv| 伊人色综合网| 丁香五月婷婷六月婷婷| www.99热在线| 亚洲视频1区| 色婷婷丁香香香蕉视频| 欧洲电影在线观看免费版英语版 | 色99网站| 真实的国产乱XXXX在线91| 天天草天天舔| 激情五月天婷婷| 天天狠天天狠| 久久五月天综合| 久久性操| 4399亚洲视频| 国产免费一区二区三区三州老师F1F1.CC | 久久综合99| 天天日天天舔天天摸| 97色碰| 久青青久| 99色在线视频| 亚洲精品乱码久久久久久综合| 久久99视频|