日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

STM32+MPU6050數(shù)據(jù)濾波實(shí)戰(zhàn):從噪聲分析到姿態(tài)解算

STM32+MPU6050數(shù)據(jù)濾波實(shí)戰(zhàn):從噪聲分析到姿態(tài)解算 玩過MPU6050的朋友大概都有過這種經(jīng)歷明明小車放在桌面上靜止不動(dòng)串口打印出來的角度數(shù)據(jù)卻上下跳個(gè)不停像是傳感器自己在“發(fā)抖”。用這樣的數(shù)據(jù)去做自平衡車或者云臺穩(wěn)定結(jié)果就是電機(jī)不停抖動(dòng)、重心根本穩(wěn)不住。我也在這上面折騰過很長時(shí)間試過各種網(wǎng)上流傳的代碼最后才搞明白濾波這件事核心不是套用某個(gè)公式而是想清楚你手里的數(shù)據(jù)到底臟在哪里、你要的是哪一種“干凈”。這篇文章就基于stm32_mpu6050這個(gè)經(jīng)典組合把從原始數(shù)據(jù)到可用姿態(tài)角的完整鏈路捋一遍。內(nèi)容包括傳感器數(shù)據(jù)為什么會有噪聲、幾種常見濾波算法的原理和代碼、實(shí)際調(diào)參時(shí)的判斷方法以及一個(gè)綜合互補(bǔ)濾波的實(shí)用方案。適合剛接觸STM32和MPU6050的初學(xué)者也適合已經(jīng)跑通了例程但發(fā)現(xiàn)效果不理想、想系統(tǒng)搞懂濾波的開發(fā)者。1. MPU6050原始數(shù)據(jù)為什么會“抖”噪聲的來源與特性分析先說結(jié)論MPU6050輸出的原始值本身不是不能用的但它直接拿來做姿態(tài)控制時(shí)效果一定會讓你懷疑人生。這不是傳感器壞了也不一定是I2C讀取時(shí)序有問題而是數(shù)據(jù)里混著幾類性質(zhì)完全不同的干擾信號。1.1 傳感器噪聲白噪聲、隨機(jī)游走與固定偏差MPU6050內(nèi)部是MEMS結(jié)構(gòu)測量加速度和角速度依靠微小的硅結(jié)構(gòu)在慣性力下發(fā)生的形變再通過電容變化轉(zhuǎn)換成數(shù)字信號。這種微機(jī)械架構(gòu)決定了它對溫度、振動(dòng)、電源紋波都非常敏感。具體表現(xiàn)可以拆成三類第一類是白噪聲也就是高頻隨機(jī)抖動(dòng)。你把MPU6050放在桌面上用串口以100Hz的頻率打印原始加速度值會看到數(shù)據(jù)在某個(gè)均值附近來回跳跳動(dòng)的幅度通常在±0.02g左右。這類噪聲在頻域上表現(xiàn)為寬帶均勻分布屬于典型的隨機(jī)過程也是濾波算法要處理的主要對象。第二類是隨機(jī)游走也叫零偏不穩(wěn)定性。陀螺儀的零偏零輸入時(shí)的角速度輸出值不是固定不變的它會隨著時(shí)間緩慢漂移。比如剛上電時(shí)靜止?fàn)顟B(tài)的陀螺儀Z軸輸出是-1.2°/s通電半小時(shí)后可能漂到-2.5°/s。這種漂移是低頻的、緩慢的用高頻濾波器根本濾不掉需要在算法層面做補(bǔ)償。第三類是固定偏置也就是bias。每顆芯片出廠時(shí)的零偏都不完全一樣第一顆MPU6050的X軸加速度零偏可能是0.03g第二顆可能就是-0.02g。這個(gè)偏差可以通過上電靜止幾十次取平均值的方式估算出來然后在每次讀取時(shí)減去。1.2 運(yùn)動(dòng)中的測量誤差加速度計(jì)怕振動(dòng)、陀螺儀怕積分漂移傳感器的噪聲不是靜止時(shí)才有的真正麻煩的是運(yùn)動(dòng)過程中引入的誤差。加速度計(jì)測量的是“比力”也就是物體受到的加速度總矢量和。當(dāng)你的設(shè)備靜止時(shí)它測量的只有重力加速度g此時(shí)可以通過三角函數(shù)算出傾角。但設(shè)備一旦運(yùn)動(dòng)起來加速度計(jì)測到的不再是單純的重力分量而是疊加了運(yùn)動(dòng)加速度的混合值。這時(shí)候如果你直接用atan2(acc_y, acc_z)算角度得到的姿態(tài)會瞬間被運(yùn)動(dòng)加速度“帶跑”表現(xiàn)得非?!百\”——小車一加速角度就亂跳。陀螺儀的情況正好相反。陀螺儀測量角速度短期內(nèi)積分出來的角度非常平滑不會像加速度計(jì)那樣被運(yùn)動(dòng)加速度干擾。但它有一個(gè)致命問題積分會把零偏誤差也累加起來導(dǎo)致角度隨時(shí)間緩慢漂移。你可能只是把設(shè)備靜止放了一分鐘積分出來的角度已經(jīng)從0°漂到了20°。加速度計(jì)姿態(tài)“噪聲大但無漂移”陀螺儀姿態(tài)“短期平滑但長期漂移”這兩者的互補(bǔ)性正是后面所有濾波算法的根本出發(fā)點(diǎn)。1.3 數(shù)字層面的干擾I2C讀取與量化誤差除了傳感器本身的物理特性數(shù)據(jù)鏈路也會引入“假噪聲”。STM32通過I2C或SPI讀取MPU6050時(shí)如果使用了模擬I2C又沒有加延時(shí)控制讀到的數(shù)據(jù)可能偶發(fā)跳變。MPU6050的加速度計(jì)是16位ADC輸出如果配置的量程是±2g那么每個(gè)LSB代表的物理量是2g/32768≈0.000061g。聽起來分辨率非常高但實(shí)際系統(tǒng)的底噪遠(yuǎn)大于這個(gè)值低四位往往就是隨機(jī)的不必過度解讀。判斷抖動(dòng)是傳感器問題還是讀取問題有個(gè)簡單辦法在MPU6050靜止?fàn)顟B(tài)下連續(xù)讀500個(gè)加速度原始值如果數(shù)據(jù)呈近似高斯分布且重復(fù)試驗(yàn)時(shí)均值穩(wěn)定那就說明讀取鏈路沒有問題抖動(dòng)就來自傳感器本身濾波算法要解決的就是這個(gè)噪聲。2. 動(dòng)手之前先算清賬根據(jù)應(yīng)用場景決定濾波目標(biāo)很多教程上來就貼濾波代碼卻從不說清楚這個(gè)濾波器適合什么場景、截止頻率為什么取這個(gè)值。在我看來這是最要命的一個(gè)坑——你把別人調(diào)試好的參數(shù)抄過來但你的設(shè)備運(yùn)動(dòng)特性和別人的完全不同效果自然千差萬別。2.1 運(yùn)動(dòng)頻率與濾波截止頻率的關(guān)系每個(gè)實(shí)際系統(tǒng)都有自己的特征運(yùn)動(dòng)頻率。手持云臺上的人的抖動(dòng)頻率通常在1~10Hz無人機(jī)飛行時(shí)姿態(tài)變化的典型頻率在0.5~5Hz而自平衡小車的傾角修正頻率可以低到0.1~2Hz。一個(gè)性能合格的濾波器應(yīng)該讓“你要的姿態(tài)信號”無損通過同時(shí)把“你不要的噪聲”壓下去。這就是截止頻率要解決的事。我常用一個(gè)生活化類比來理解這個(gè)事你想從一碗粥里挑出紅棗但粥里混著米粒、水、碎渣。如果你用一個(gè)孔特別大的漏勺結(jié)果是紅棗和碎渣一起撈上來如果用一個(gè)孔特別小的濾網(wǎng)紅棗也被卡住了。濾波器就是在找一個(gè)合適的“孔徑”——它要匹配你要撈的東西的“尺寸”。對MPU6050的姿態(tài)數(shù)據(jù)來說你想要的姿態(tài)變化頻率是信號傳感器上的高頻抖動(dòng)和振動(dòng)是噪聲。設(shè)計(jì)濾波器時(shí)先估算信號最高頻率比如兩輪自平衡車的傾角控制周期是5ms傾角變化率一般不會超過2Hz那低通濾波器的截止頻率設(shè)在2Hz左右就相對安全。如果設(shè)在20Hz姿態(tài)響應(yīng)快了但噪聲也大量通過控制效果一定抖。2.2 不同應(yīng)用場景的濾波需求分級我把常見場景按對濾波的要求分成幾檔。如果你給無人機(jī)做姿態(tài)解算需要實(shí)時(shí)響應(yīng)性極好一階低通濾波的相位延遲就會比較傷腦筋需要用互補(bǔ)濾波或卡爾曼這類能提供“加速度計(jì)修正趨勢、陀螺儀提供短期動(dòng)態(tài)”的方案。如果只是做一個(gè)可視化角度計(jì)顯示當(dāng)前傾斜角度延遲幾百毫秒完全無所謂滑動(dòng)平均濾波就足夠了。如果做的是計(jì)步器關(guān)注的不是精確角度而是周期性特征那么重點(diǎn)應(yīng)該是帶通或閾值檢測而不是單純低通。很多初學(xué)者糾結(jié)“到底哪個(gè)濾波算法最好”但現(xiàn)實(shí)中算法沒有絕對的優(yōu)劣只有和“你要解決的具體任務(wù)”是否匹配。你得先回答一個(gè)問題這個(gè)數(shù)據(jù)是用來給人看、還是給控制回路用人眼可以接受一定延遲但控制回路對延遲和噪聲都極其敏感。這兩者的濾波策略會完全不同。3. 常見的濾波算法代碼實(shí)現(xiàn)與調(diào)參要點(diǎn)在這一節(jié)我給出幾種在STM32上跑過的濾波實(shí)現(xiàn)全部用C語言寫可以直接移植。涉及的變量名盡量保持通用方便你改到自己的工程里。3.1 滑動(dòng)窗口濾波簡單直接但延遲代價(jià)要認(rèn)滑動(dòng)窗口濾波也叫移動(dòng)平均是思路最樸素的一種保存最近N次傳感器的值每次輸出這N個(gè)值的平均值。窗口越大平滑效果越強(qiáng)但響應(yīng)也越遲鈍。#define FILTER_WINDOW_SIZE 16 float filter_buffer[FILTER_WINDOW_SIZE]; uint8_t filter_index 0; float filter_sum 0.0f; float sliding_window_filter(float new_value) { filter_sum - filter_buffer[filter_index]; filter_buffer[filter_index] new_value; filter_sum new_value; filter_index; if (filter_index FILTER_WINDOW_SIZE) { filter_index 0; } return filter_sum / FILTER_WINDOW_SIZE; }窗口大小怎么選我做過一組對比實(shí)驗(yàn)IMU靜止在桌面對Z軸陀螺儀的原始值分別做8點(diǎn)、16點(diǎn)和32點(diǎn)的滑動(dòng)窗口濾波。窗口越大輸出越平滑但給一個(gè)階躍輸入突然把傳感器旋轉(zhuǎn)90°時(shí)8點(diǎn)約80ms就能跟上32點(diǎn)則需要300ms左右。如果控制回路的周期是5ms這300ms的延遲意味著30多個(gè)控制周期你的姿態(tài)都還是“舊數(shù)據(jù)”輕則影響手感重則直接振蕩發(fā)散。所以滑動(dòng)窗口濾波只適合對延遲不敏感的場景比如顯示參數(shù)、記錄日志、離線分析。你要用它做實(shí)時(shí)反饋控制就得掂量一下延遲能不能接受。3.2 一階低通濾波輕量級數(shù)字濾波器和截止頻率計(jì)算一階低通濾波也叫指數(shù)移動(dòng)平均是最經(jīng)典的輕量濾波方式計(jì)算量極小適合STM32這類資源有限的MCU。算法核心是當(dāng)前輸出 上次輸出 × 系數(shù) 當(dāng)前輸入 ×1 - 系數(shù)用一個(gè)系數(shù)決定新舊數(shù)據(jù)的權(quán)重。#define LOWPASS_ALPHA 0.2f float lowpass_output 0.0f; float lowpass_filter(float new_value) { lowpass_output (1.0f - LOWPASS_ALPHA) * lowpass_output LOWPASS_ALPHA * new_value; return lowpass_output; }這個(gè)α系數(shù)和截止頻率之間是有公式的α 1 - exp(-2π × fc × dt)其中fc是期望的截止頻率單位Hzdt是采樣周期單位s。如果采樣頻率是100Hzdt0.01s想要截止頻率是5Hz代入計(jì)算α≈0.269。注意α越大說明當(dāng)前新數(shù)據(jù)的權(quán)重越高濾波器響應(yīng)越快平滑效果越弱α越小歷史數(shù)據(jù)的權(quán)重越大平滑更強(qiáng)但延遲也更大。我建議選α?xí)r不要拍腦袋取0.1或0.2這樣“看著順眼”的數(shù)而要根據(jù)你的采樣率和期望截止頻率算出來算完再結(jié)合實(shí)測微調(diào)。這里有個(gè)我自己的經(jīng)驗(yàn)先用公式算出理論值然后把它放大1.5~2倍再試因?yàn)閷?shí)際系統(tǒng)中采樣間隔往往不完全均勻I2C讀取時(shí)間會導(dǎo)致dt抖動(dòng)理論值會偏保守。3.3 卡爾曼濾波輕量一維實(shí)現(xiàn)工程中最常用的姿態(tài)濾波方案很多教程把卡爾曼濾波講得很玄乎但工程上最常用的其實(shí)是簡化成一維的版本。完整卡爾曼要算矩陣協(xié)方差即便STM32F103跑起來壓力不大但代碼復(fù)雜度和理解成本對多數(shù)項(xiàng)目來說并不劃算。做單軸角度濾波時(shí)一維卡爾曼就夠用。狀態(tài)量定義如下角度angle、角速度偏置bias。陀螺儀測量值作為控制輸入驅(qū)動(dòng)狀態(tài)預(yù)測加速度計(jì)計(jì)算出的角度作為觀測值做修正。typedef struct { float angle; // 角度估計(jì)值 float bias; // 陀螺儀零偏 float P[2][2]; // 誤差協(xié)方差 float Q_angle; // 角度噪聲協(xié)方差 float Q_bias; // 零偏噪聲協(xié)方差 float R_measure; // 觀測噪聲協(xié)方差 } Kalman_t; void kalman_init(Kalman_t *kalman) { kalman-angle 0.0f; kalman-bias 0.0f; kalman-P[0][0] 0.0f; kalman-P[0][1] 0.0f; kalman-P[1][0] 0.0f; kalman-P[1][1] 0.0f; kalman-Q_angle 0.001f; kalman-Q_bias 0.003f; kalman-R_measure 0.03f; } float kalman_get_angle(Kalman_t *kalman, float new_angle, float new_rate, float dt) { float rate new_rate - kalman-bias; kalman-angle dt * rate; kalman-P[0][0] dt * (dt * kalman-P[1][1] - kalman-P[0][1] - kalman-P[1][0] kalman-Q_angle); kalman-P[0][1] - dt * kalman-P[1][1]; kalman-P[1][0] - dt * kalman-P[1][1]; kalman-P[1][1] kalman-Q_bias * dt; float S kalman-P[0][0] kalman-R_measure; float K0 kalman-P[0][0] / S; float K1 kalman-P[1][0] / S; float y new_angle - kalman-angle; kalman-angle K0 * y; kalman-bias K1 * y; float P00_temp kalman-P[0][0]; float P01_temp kalman-P[0][1]; kalman-P[0][0] - K0 * P00_temp; kalman-P[0][1] - K0 * P01_temp; kalman-P[1][0] - K1 * P00_temp; kalman-P[1][1] - K1 * P01_temp; return kalman-angle; }卡爾曼里的三個(gè)噪聲協(xié)方差參數(shù)Q_angle、Q_bias、R_measure決定了濾波器的“性格”。Q_angle越大表示你對“模型預(yù)測角度”越不信任濾波器會更傾向于相信加速度計(jì)觀測值響應(yīng)快但輸出更嘈雜R_measure越大表示你覺得加速度計(jì)觀測噪聲越厲害濾波器會更相信陀螺儀預(yù)測平滑但延遲大。我的調(diào)參經(jīng)驗(yàn)是先把R_measure固定到0.01~0.1之間再調(diào)Q_angle觀察靜態(tài)下角度輸出是否抖動(dòng)適中然后轉(zhuǎn)動(dòng)傳感器看動(dòng)態(tài)響應(yīng)能否跟上而不產(chǎn)生明顯滯后。3.4 互補(bǔ)濾波加速度計(jì)和陀螺儀各取所長最推薦入門首選如果讓我給初次做姿態(tài)濾波的人推薦一個(gè)方案我會說互補(bǔ)濾波。它對參數(shù)不敏感效果穩(wěn)定代碼也簡單非常適合作為首個(gè)能“真正用起來”的姿態(tài)濾波算法?;パa(bǔ)濾波的思想是陀螺儀積分得到的角度高頻特性好但低頻會漂移加速度計(jì)計(jì)算的角度低頻準(zhǔn)確但高頻噪聲大。把兩者加權(quán)融合各取所長。權(quán)重由參數(shù)alpha決定alpha越大越信任陀螺儀角度越平滑但對加速度計(jì)的修正越慢。#define COMP_ALPHA 0.98f float comp_angle 0.0f; float complementary_filter(float acc_angle, float gyro_rate, float dt) { // 陀螺儀積分 comp_angle gyro_rate * dt; // 和加速度計(jì)角度互補(bǔ)融合 float weight 0.98f; // 越大越信任陀螺儀 comp_angle weight * comp_angle (1.0f - weight) * acc_angle; return comp_angle; }這里的0.98是經(jīng)驗(yàn)值意味著每一拍里只“相信”加速度計(jì)2%。假設(shè)采樣率是100Hz這個(gè)權(quán)重相當(dāng)于加速度計(jì)的修正時(shí)間常數(shù)約0.5秒也就是當(dāng)你靜止放置設(shè)備時(shí)大約0.5秒后濾波角度會被加速度計(jì)“拉”到正確的絕對值上——這個(gè)響應(yīng)速度對大多數(shù)人來說足夠。想深入理解這個(gè)參數(shù)的自動(dòng)調(diào)節(jié)邏輯可以去搜Mahony互補(bǔ)濾波的實(shí)現(xiàn)思路但初學(xué)階段手動(dòng)設(shè)一個(gè)固定權(quán)重完全夠用。4. 實(shí)測案例基于STM32F103C8T6的濾波前后對比與調(diào)參觀察在實(shí)際板子上驗(yàn)證一下濾波效果。我用的是一塊經(jīng)典的STM32F103C8T6最小系統(tǒng)板通過軟件模擬I2C也就是常說的GPIO口模擬時(shí)序連接MPU6050模塊采樣率設(shè)為100Hz。硬件接線很簡單PB6接SCLPB7接SDAVCC接3.3VGND接GND。測試場景分三種靜止桌面、快速翻轉(zhuǎn)、持續(xù)晃動(dòng)。每種場景分別記錄原始加速度計(jì)算角、滑動(dòng)窗口濾波輸出、互補(bǔ)濾波輸出。4.1 靜止?fàn)顟B(tài)濾波前后數(shù)據(jù)波動(dòng)對比把板子平放在桌面上靜止不動(dòng)分別采集500個(gè)數(shù)據(jù)點(diǎn)。原始角度直接用atan2計(jì)算的波動(dòng)范圍大約是±1.2°標(biāo)準(zhǔn)差約0.6°。這種波動(dòng)對于顯示來說尚可接受但如果直接作為PID控制器的輸入控制量會很不穩(wěn)定電機(jī)就會有明顯的嗡嗡聲。改用16點(diǎn)滑動(dòng)平均后波動(dòng)范圍縮小到±0.4°標(biāo)準(zhǔn)差約0.2°。改用互補(bǔ)濾波alpha0.98后靜態(tài)角度波動(dòng)范圍降到±0.3°以內(nèi)而且響應(yīng)仍然非常靈敏用手輕碰一下板子讓角度突變1°濾波輸出大約在0.1秒內(nèi)就跟蹤到位。所以如果你做的是靜態(tài)角度測量滑動(dòng)窗口就夠用如果要做實(shí)時(shí)控制必須上互補(bǔ)濾波或卡爾曼。4.2 動(dòng)態(tài)翻轉(zhuǎn)濾波器對劇烈運(yùn)動(dòng)的跟隨性能把板子拿在手里快速翻轉(zhuǎn)90°對比不同濾波器對階躍輸入的響應(yīng)?;瑒?dòng)窗口濾波的延遲明顯翻轉(zhuǎn)過程中濾波角度會“拖尾”大約需要150ms才能跟上真實(shí)角度互補(bǔ)濾波在翻轉(zhuǎn)瞬間也能快速跟隨但會略微過沖約2°隨后在幾十毫秒內(nèi)穩(wěn)定到真實(shí)角度。這個(gè)過沖來自加速度計(jì)的“慣性”——翻轉(zhuǎn)瞬間運(yùn)動(dòng)加速度分量混入加速度計(jì)測量值導(dǎo)致加速度計(jì)計(jì)算角瞬間跳變。互補(bǔ)濾波雖然給了加速度計(jì)較小權(quán)重但這個(gè)瞬間錯(cuò)誤還是會影響輸出。這也是為什么在強(qiáng)加速度場景比如無人機(jī)急速拉升、小車急加速下純互補(bǔ)濾波表現(xiàn)并不理想需要更復(fù)雜的算法來“察覺”并抑制這種運(yùn)動(dòng)加速度干擾。對于大多數(shù)入門項(xiàng)目兩輪車、云臺、機(jī)械臂互補(bǔ)濾波的這點(diǎn)過沖完全在可接受范圍內(nèi)不必為它過度設(shè)計(jì)。4.3 實(shí)際操作中的兩個(gè)小坑初始化姿態(tài)估計(jì)和數(shù)據(jù)幀間隔這里分享兩個(gè)在實(shí)測中踩過的小坑。第一個(gè)坑是初始化姿態(tài)估計(jì)。很多教程直接給濾波器狀態(tài)量賦0但如果設(shè)備上電時(shí)并不是水平放置的濾波輸出就會從一個(gè)錯(cuò)誤的初始值開始收斂導(dǎo)致前幾秒的角度輸出非常離譜。解決辦法很簡單上電后先連續(xù)讀50次加速度計(jì)取平均然后算出初始角度再把它作為卡爾曼或互補(bǔ)濾波的角度初值寫進(jìn)去。這樣一開機(jī)姿態(tài)就是靠譜的。第二個(gè)坑是數(shù)據(jù)幀間隔不均勻。STM32通過I2C讀取MPU6050并做串口打印時(shí)整個(gè)循環(huán)耗時(shí)不是固定值。如果用定時(shí)器中斷做采樣中斷里執(zhí)行I2C讀取、濾波、串口發(fā)送那么數(shù)據(jù)間隔相對穩(wěn)定如果你用while循環(huán)加delay(10)實(shí)際間隔可能從8ms到15ms不等。這種時(shí)間間隔抖動(dòng)對互補(bǔ)濾波和卡爾曼影響很大因?yàn)樗鼈兊念A(yù)測方程都依賴dt。我的建議是用一個(gè)固定頻率的定時(shí)器中斷作為采樣節(jié)拍濾波計(jì)算放在中斷里或者中斷置標(biāo)志位、主循環(huán)里處理但無論哪種方式都要保證兩次濾波之間的dt是穩(wěn)定值。我在實(shí)際工程里把采樣率設(shè)為1kHz并在MPU6050的FIFO配合下批量讀取數(shù)據(jù)然后降采樣到100Hz做濾波。這樣既保證了I2C讀取的時(shí)序穩(wěn)定性又保留了數(shù)據(jù)完整性效果比“定時(shí)中斷里慢慢讀”好很多但初學(xué)者不必一開始就上這個(gè)方案先把基礎(chǔ)流程跑通、數(shù)據(jù)穩(wěn)定再考慮更精細(xì)的時(shí)序控制。5. 濾波不只是濾鏡從濾波到姿態(tài)解算的完整鏈路前面講的都是對單一軸的獨(dú)立濾波實(shí)際操作中MPU6050輸出三軸加速度和三軸角速度要得到完整的橫滾角、俯仰角、偏航角還需要做“姿態(tài)解算”——也就是把多個(gè)軸的濾波結(jié)果融合成三維姿態(tài)。5.1 加速度計(jì)滾轉(zhuǎn)/俯仰角計(jì)算atan2的正確姿勢靜止或緩慢運(yùn)動(dòng)時(shí)橫滾角Roll和俯仰角Pitch可以直接用加速度計(jì)的三軸分量計(jì)算。注意這里一定要用atan2而不是atan因?yàn)閍tan2能根據(jù)輸入符號自動(dòng)判斷象限輸出完整的-π到π范圍角度。float roll atan2f(acc_y, acc_z) * 180.0f / 3.14159f; float pitch atan2f(-acc_x, sqrtf(acc_y * acc_y acc_z * acc_z)) * 180.0f / 3.14159f;這里有個(gè)細(xì)節(jié)值得解釋計(jì)算Pitch時(shí)分母用了sqrt(acc_y2 acc_z2)而不是直接用acc_z。這樣做的好處是當(dāng)pitch接近±90°時(shí)acc_z趨近于0直接用acc_z當(dāng)分母會導(dǎo)致數(shù)值爆炸。加上acc_y的分量后分母不會真的落到0計(jì)算結(jié)果也就穩(wěn)定了。這個(gè)公式只對“加速度計(jì)沒有運(yùn)動(dòng)加速度干擾”的假設(shè)成立。只要你的設(shè)備不是持續(xù)高速機(jī)動(dòng)這個(gè)假設(shè)在多數(shù)入門項(xiàng)目中是成立的。5.2 偏航角Yaw為什么不能用加速度計(jì)磁力計(jì)的必要性很多剛接觸的人會疑惑“我也是三軸加速度計(jì)為什么偏航角算不出來”原因很簡單加速度計(jì)測的是“重力方向”而重力方向是完全豎直的它不攜帶任何關(guān)于“繞豎直軸旋轉(zhuǎn)了多少度”的信息。你可以試著把設(shè)備平放在桌面上水平旋轉(zhuǎn)360°加速度計(jì)的三軸讀數(shù)幾乎不變因?yàn)闆]有重力分量變化可以用來計(jì)算yaw。想得到y(tǒng)aw需要引入磁力計(jì)電子羅盤來測量地磁場方向但這又會引入磁干擾、傾角補(bǔ)償?shù)纫欢研聠栴}。這就是為什么很多入門項(xiàng)目都只做Roll和Pitch兩軸姿態(tài)——對兩輪自平衡車、四軸飛行器的部分模式下這兩軸就足夠用了。如果你必須測yaw建議購買集成磁力計(jì)的九軸模塊比如MPU9250或ICM20948并單獨(dú)學(xué)習(xí)磁力計(jì)校準(zhǔn)流程。5.3 一個(gè)你可以直接抄作業(yè)的完整融合例程這里給出一個(gè)適用于STM32F103C8T6的基礎(chǔ)級完整例程框架把前面的知識點(diǎn)串起來。假設(shè)MPU6050的讀取函數(shù)已經(jīng)寫好定時(shí)器以5ms周期調(diào)用main_imu_update也就是200Hz采樣率。// 全局變量 Kalman_t kalman_roll, kalman_pitch; float roll_angle 0.0f, pitch_angle 0.0f; void imu_main_init(void) { mpu6050_init(); // 靜態(tài)采50次算初始角度 float acc_x_sum 0, acc_y_sum 0, acc_z_sum 0; for (uint8_t i 0; i 50; i) { mpu6050_read_raw(acc_x_raw, acc_y_raw, acc_z_raw, gyro_x_raw, gyro_y_raw, gyro_z_raw); acc_x_sum acc_x_raw; acc_y_sum acc_y_raw; acc_z_sum acc_z_raw; delay_ms(2); } float acc_x acc_x_sum / 50.0f / 16384.0f; float acc_y acc_y_sum / 50.0f / 16384.0f; float acc_z acc_z_sum / 50.0f / 16384.0f; float init_roll atan2f(acc_y, acc_z) * 57.2958f; float init_pitch atan2f(-acc_x, sqrtf(acc_y * acc_y acc_z * acc_z)) * 57.2958f; kalman_init(kalman_roll); kalman_init(kalman_pitch); kalman_roll.angle init_roll; kalman_pitch.angle init_pitch; } void main_imu_update(void) { int16_t acc_x_raw, acc_y_raw, acc_z_raw; // 實(shí)際類型按你的讀取函數(shù)修改 int16_t gyro_x_raw, gyro_y_raw, gyro_z_raw; mpu6050_read_raw(acc_x_raw, acc_y_raw, acc_z_raw, gyro_x_raw, gyro_y_raw, gyro_z_raw); // 加速度單位換算假設(shè)量程±2g所以除以16384 float acc_x acc_x_raw / 16384.0f; float acc_y acc_y_raw / 16384.0f; float acc_z acc_z_raw / 16384.0f; // 角速度單位換算假設(shè)量程±250°/s所以除以131.0 float gyro_x gyro_x_raw / 131.0f; float gyro_y gyro_y_raw / 131.0f; float gyro_z gyro_z_raw / 131.0f; float acc_roll atan2f(acc_y, acc_z) * 57.2958f; float acc_pitch atan2f(-acc_x, sqrtf(acc_y * acc_y acc_z * acc_z)) * 57.2958f; // dt為0.005s即5ms roll_angle kalman_get_angle(kalman_roll, acc_roll, gyro_x, 0.005f); pitch_angle kalman_get_angle(kalman_pitch, acc_pitch, gyro_y, 0.005f); }注意這里陀螺儀量程、加速度量程與實(shí)際配置必須一致否則算出來的物理數(shù)值是錯(cuò)的后續(xù)濾波再漂亮也沒有意義。我在調(diào)試時(shí)會先用串口把換算后的acc_x、gyro_x打印出來靜止應(yīng)該接近0減去零偏后垂直放置對應(yīng)值應(yīng)該約等于±1g確認(rèn)量換算正確后再跑濾波這個(gè)習(xí)慣能省一堆排查時(shí)間。6. 濾波參數(shù)怎么調(diào)一套可復(fù)用的調(diào)參方法與評價(jià)標(biāo)準(zhǔn)濾波算法的代碼實(shí)現(xiàn)不難難的是參數(shù)調(diào)節(jié)。不少讀者跑通代碼后發(fā)現(xiàn)自己調(diào)出來的效果還不如原始數(shù)據(jù)——這不是算法問題而是缺少一套“怎么調(diào)、調(diào)到什么程度算好”的方法論。6.1 先測清“噪聲底”每個(gè)系統(tǒng)都有自己的噪聲水平調(diào)參之前先把系統(tǒng)的底噪水平測清楚。方法很簡單設(shè)備靜止以實(shí)際工作采樣率采集原始加速度和角速度數(shù)據(jù)各采集1000個(gè)點(diǎn)計(jì)算標(biāo)準(zhǔn)差。標(biāo)準(zhǔn)差就是你的系統(tǒng)“噪聲底”。這個(gè)數(shù)值決定了濾波器的強(qiáng)度需求——如果加速度X軸靜止標(biāo)準(zhǔn)差是0.03g那濾波后標(biāo)準(zhǔn)差能降到0.01g就已經(jīng)是很好的效果不要指望能濾到0.001g那會導(dǎo)致嚴(yán)重延遲。記錄這個(gè)噪聲底以后做任何相關(guān)項(xiàng)目的濾波參數(shù)初值都能從這套歷史數(shù)據(jù)里找到起點(diǎn)而不是每次從零開始碰運(yùn)氣。6.2 給傳感器一個(gè)階躍信號觀察響應(yīng)速度制作一個(gè)簡易測試架把MPU6050固定在一根硬桿的一端手持另一端??焖傩D(zhuǎn)90°并保持靜止記錄濾波輸出角度隨時(shí)間的變化曲線。觀察兩個(gè)指標(biāo)從開始旋轉(zhuǎn)到濾波輸出首次接近目標(biāo)值的時(shí)間延遲/上升時(shí)間。穩(wěn)定后濾波輸出與真實(shí)角度的誤差穩(wěn)態(tài)精度。用MATLAB、Python的matplotlib或者直接用STM32的串口發(fā)送數(shù)據(jù)到匿名上位機(jī)都能畫出曲線。我的判斷標(biāo)準(zhǔn)是濾波后角度的延遲時(shí)間不應(yīng)超過控制周期的3~5倍穩(wěn)態(tài)誤差應(yīng)在±0.5°以內(nèi)。如果延遲過長說明濾波器對傳感器的信任過度偏向了平滑側(cè)需要調(diào)大新數(shù)據(jù)權(quán)重如果穩(wěn)態(tài)誤差偏大且波動(dòng)劇烈說明平滑不足需要調(diào)大平滑權(quán)重。6.3 一份快速排查指南現(xiàn)象與參數(shù)對應(yīng)關(guān)系我整理了一張表格記錄常見現(xiàn)象和對應(yīng)的調(diào)參方向供大家對照參考現(xiàn)象可能原因調(diào)參方向靜止時(shí)濾波輸出波動(dòng)大平滑權(quán)重不夠增大滑動(dòng)窗口/減小低通α/增大卡爾曼R_measure動(dòng)態(tài)響應(yīng)太慢跟不上動(dòng)作平滑過度減小滑動(dòng)窗口/增大低通α/減小卡爾曼R_measure短時(shí)間快速抖動(dòng)高頻振動(dòng)耦合先加低通濾波去掉高頻分量再進(jìn)姿態(tài)濾波角度緩慢漂移陀螺儀零偏未補(bǔ)償上電初始化時(shí)估算零偏并減去翻轉(zhuǎn)瞬間角度突變運(yùn)動(dòng)加速度干擾增加加速度計(jì)權(quán)重降低或者使用更復(fù)雜的運(yùn)動(dòng)加速度補(bǔ)償靜止穩(wěn)定但一通電就振蕩濾波延遲過大與PID耦合降低PID增益同時(shí)減小濾波延遲先讓控制穩(wěn)住再談濾波這張表解決的是“現(xiàn)象→參數(shù)”的映射問題排查效率比逐個(gè)參數(shù)盲調(diào)高很多。7. 避坑集合MPU6050濾波路上最常見的幾個(gè)錯(cuò)誤認(rèn)知最后聊聊我見過最多的幾個(gè)錯(cuò)誤認(rèn)知這些坑幾乎每個(gè)初做MPU6050濾波的人都會踩一遍。7.1 “濾波算法越復(fù)雜越好”的誤解卡爾曼不是萬靈丹Mahony也不是。算法越復(fù)雜計(jì)算量越大參數(shù)越多越難調(diào)到工作良好的狀態(tài)。對兩輪小車這種應(yīng)用一階互補(bǔ)濾波已經(jīng)夠用對四旋翼這種高速動(dòng)態(tài)系統(tǒng)Mahony互補(bǔ)濾波通常是更均衡的選擇只有對精度和響應(yīng)要求都比較高的系統(tǒng)才值得上全狀態(tài)卡爾曼。先跑通最簡單的看實(shí)測數(shù)據(jù)再?zèng)Q定要不要升級算法。7.2 “濾波代碼抄過來就能用”的誤解很多人從網(wǎng)上抄一段濾波代碼按原樣粘貼到自己工程里期望立刻得到平滑數(shù)據(jù)。結(jié)果往往不理想。原因包括你的采樣頻率和原代碼作者不同dt錯(cuò)位會導(dǎo)致算法行為完全不同你的運(yùn)動(dòng)場景不同原始信號帶寬不同你用的傳感器量程不同換算系數(shù)不同。抄代碼可以但必須自己核對采樣周期、量程、換算、初始值。這四件事沒問題代碼才有意義。7.3 “濾波可以解決所有噪聲問題”的誤解濾波處理的只是數(shù)據(jù)層面的噪聲硬件層面的問題濾波幫不了忙。電源紋波太大、地線接觸不良、I2C上拉電阻太小導(dǎo)致信號變形、傳感器安裝在劇烈振動(dòng)的電機(jī)旁邊且沒有減震——這些問題在源頭上就搞臟了數(shù)據(jù)再好的濾波器也只能把垃圾數(shù)據(jù)濾成“更平滑的垃圾數(shù)據(jù)”。處理噪聲問題的優(yōu)先級應(yīng)該是先改善硬件、再接好地、再做濾波而不是一上來就琢磨濾波。以我自己的經(jīng)驗(yàn)每次遇到“數(shù)據(jù)抖得離譜”的情況第一反應(yīng)永遠(yuǎn)是排查接線、電源、安裝方式而不是調(diào)濾波。等硬件問題解決了濾波這個(gè)環(huán)節(jié)會比你想象的輕松得多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
九九九久久久久| 麻豆成人AV| 亚洲综合在线91| 高清国产精品福利网站| 日美免费黄片| 久久国模av| 亚洲第一男人天堂| 日韩黄色电影网站| 色天堂在线观看| 亚洲春色一区二区三区| 欧美一区二区亚洲天堂| 97操综合| av片在线观看免费播放| 在线观看不卡一区二区三区| 澳门人妻久久| 成人免费不卡在线视频| 91色综合色| 国产女人与拘做受视频免费| KK色在线影院| 天天日天天色| 天天色欧美| 色嘟嘟人妻天堂网| 午夜人人操| 欧美一区二区成人一卡| 日韩卡一卡二卡三在线| 中文字幕一区二区无码成人 | 男人亚洲天堂| 国产版a级片直播在线| 亚洲熟女乱色一区二区三区久久久 | 五月天婷精品激情| 日本操逼aaaaa| 不卡人妻少妇精品毛片一区23区视频| 性久久| 欧美日韩夜夜| 九九精品99| 青青草大香蕉视频| 青青草在线视频播放器| 啊啊啊要高潮了| 国产一区在线免费播放| 国产精品九九九| 殴美色网| 亚洲欧美日韩电影网站一区| 91蜜臀在线久久久久| 精品欧美А∨无码黑人大荫蒂| 高清不卡一二三区视频......| 免费自拍三级综合| 91春色| 欧美性爱一区二区三区| 制服丝袜第二页| 台湾肥佬网一区二区三区| AV在线性爱| 玖色av| 亚洲欧洲日产国产综合网| 99热日本| 亚洲色吧网| 777奇米影视777四色| 99老司机精品视频在线观看 | 国内偷拍精品一区二区| 久久精品无码一区二区三区| 97香蕉人人乳| 国产天天骚| 无码聚合| 天天影视综合网欧美精品| 乱伦Av网| 久草视频分类在线| 久热久| 青青草日韩无码| 超碰在线人妻| 熟妇人妻一区二区三区| 夜夜夜久久| 91久久18禁| 久久久18禁| 亚洲AV无码久久精品蜜桃小说| 日韩色女精品| 欧美综合第一页| 26uuu性| 免费精品人妻一区二区三| 在线观看日韩av不卡| 国产11页| 久久久久久久久久久久黄色| 欧美精品系列| 蜜臀久久99精品久久久久久-DVD| 密乳无码| 大稥蕉免费视频这里只有精品| 日本人体九九九九九九| 久久美国毛片| 91人妻在线视频| 国产精品一区二区三区在线| 强奸乱伦免费网站| 国产精品久久aV| 牛牛操视频逼| 中文字幕少妇色| 激情久久日韩精品中文字幕麻豆| 日韩一级二级三级免费看完整版| 亚洲精品人妻吞精av| 东京热av男人的天堂| 91亚洲人| 丁香五月激情五月| 综合五月天| 熟女视频久久| 精品乱码在线观看| 青青草天天亲夜夜操网| 天天天操天天天爱| 久久精品国产免费观看99| 99精品高潮| 亚洲成人福利电影免费| com 首页 18岁 禁区 女优 免费 精选 同城| 丝袜人妻av一区二区| 五月婷婷色| 超碰97国产欧美| 天天插夜夜操| 国产精品久久久亚洲一区| 午夜噜噜噜| 亚洲欧美中文日韩视频中国语 | 亚洲熟女综合一区二区| 伊人天堂在线| 成人精品在线免费视频| WWW.操逼.COM| 男人的天堂日本东京热| 国产麻豆福利av在线播放| 少妇人妻在线| 日韩精品一区二区三区四虎影视| 亚洲高清综合网| 欧美色偷拍| 国产精品国产精品国产| 天天舔天天日天天射| 涩涩涩综合| 亚洲色入欧美| 欧美嫩性色| 久久人人舔人人爽舔人人av片| 国产传媒一区日韩| 日本天天色| 无码操逼视频一下| 色综合大香蕉| 韩国毛片一区二区三区| 国产免费一区二区在线A片视频| 一级毛片电影免费看| 欧美黄色片在线播放| 午夜美女诱惑电源网| 熟妇人妻精品一区二区视频色欲| 99精品国产户外露出| 一区二区亚州激情久婷婷欧美| renqi久久久久久久久久久久| 久久无码成人| 一区二区精品日韩欧美在线观看| 中文字幕蜜乳av| 97视频免费播放| 97久久精品亚洲中六字幕| 粉嫩久久久极品| www99热| 特级毛片特黄久久免费看| 91精品91久久久中77777| 国产无遮挡| 九九九综合精品| 日本操BAV| 国产 三级自拍| 亚洲成人无码影院| 天天日天天干少妇日| 欧美91网| 风骚少妇视频中文字幕| 亚洲色堂免费视频| 91亚洲青青草原精品1区| 亚洲.欧美.丝袜.中文.综合| 欧美强奸乱| 五月婷婷AV| 网页导航五月天免费一二三区 | 98人妻精品一区二区色欲| 男人天堂2030| 3d成人精品一区二区| 国产成人精品日本视频| 亚洲第一成人影院色播| 日韩美脚一区二区网站| 欧美综合色站| 日韩综合色网| 大学生美女口爆| 国产成人欧美一区二区三区的国产| 水多多映视AV| 99久视频| 夜夜 中文视频rt| 色香综合天天影视综合| 黄色大片免费在线| 精品久久久久,69国产成人精| jk白丝没脱就开始啪啪| 欧美另类综合久久| 污啪啪啪视频| 人妻美腿丝袜制服诱惑综合天堂-| 欧美午夜精品久久久久久超碰| 长长久久曰曰夜夜成人网| 亚洲有薄码区久久在线一区| 国产免费久久精品99re韩国| 婷婷精品| 国产一级内射无挡观看| 91美| 亚欧操逼片在线观看 | 欧美综合色图网| 日本A级视频| 日韩九区| 岛园激情| 高跟丝袜AV专区国产| 欧洲性爱无码区| 男人天堂导航| 九九九九亚洲| 天天综合,91入口| 91爰爱欧美| 97久久精品亚洲| 大香蕉人妻| 亚欧日韩成人| 日本激情免费大片| 五月婷婷六月丁香网址| 欧美综合国产精品久久丁香| 久久这里只精品免费福利| 啊啊啊啊好疼| 东北熟女91| 密臀成人视频久久久| 91爱看| 国产一区二区三区中文字幕| 亚洲 日韩 欧美 国产综合体| 欧美特大黄一级片片免费| 人人操人人操人人操人人操人人操人人人11.CM| 成人性生活高清视频在线播放| 超碰性爱97| 欧美熟女激情| 欧美亚洲第1页| 久久手机视直播| 亚洲精品久久久久久久蜜桃臀| 十八禁成人网站在线观看| 午夜超爽| 亚洲 一区二区 自拍| 操逼无码一区| 两性色网| 去干网最新版| 午夜福利成人免费视频| 婷婷丁香五月综合| 肥臀熟女福利视频一区二区| 天天看少妇| 久久精品一区二区三区不卡| oumeisetu综合| 麻豆天美国美国产AV| 激情综合97| 91色五月俺来也| 97舔舔| 91精品人妻一区二区三区蜜桃臀| 人妻丝袜肏逼| 欧美色图20P| 97爱综合| 家庭乱伦麻豆| 日韩 欧美 视频 在线 一区| 免费看日产一区二区三区| 看一级黄色视频| 校园春色制服丝袜中文字亚洲| 亚洲情色五月天| 绑缚麻绳人妻寝取完整版| 精品国产一区二区久久| 熟妇高潮精品一区二区三区下载| 国产suv一区二区三区6| 国产成人无码a| 日本网色| 裸模AV女优| 中国熟女91| 久久是精品| 亚洲男人天堂网站| 在线视频亚洲无码| 亚洲黄网在哪免费看| 男人的天堂2010| 伊人操操| 中文字幕99999| 日韩成人性爱AV| 91大学精品激情戏| 91国产丝袜美女| 四虎免费在线观看| 亚洲激情AV| 绑缚麻绳人妻寝取完整版| 97视频一区| 成人影院永久免费观看网址| 亚洲超碰在线| 日本有码久久| 久草成人影片| 黑人操一区二区| 国内精品999| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 亚洲综合图色在线| 亚洲天堂男人网| 不卡一区二区日本视频| 国产丝袜视频| 91在线一起| 性爱视频免费网址| 亚洲操人| 97bbn| 夜夜夜夜久久久久| 丁香五月激情综合国产| 欧美第五页| 亚洲欧洲精品视频发布| 97视频900| 密乳AV免费观看| 亚洲宗合电影| 韩国一级做a久久久久| 激情综合五月丁香| 天天干人人乐| 婷婷午夜| 天天摸天天操视频| 粉嫩不卡一区二区性爱| 亚洲狼狼干综合1| 熟妇色99| 欧美|91色综合| 茄子社区国产精品| 狠狠色狠狠色狠狠五月| 久久直播国产| 免费毛片在线播放| 久久女女| 一区二区三区机械有限公司| AV女资源| 天天色综亚洲91污| 久久久久深夜无码| 日日干夜夜干| 日韩免费中文字幕视频| 性色av一区二区| 97人人夜夜精品视频| 九九久久99| 人人妻人人爽一区二区三区| 涩五月婷婷| 久久加勒比| 去干网最新版| 欧美不在线| caopeng97| 欧美18 在线观看| 97日视频| 色色五月天激情| 亚洲综合网91| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 欧美老妇女内射网址| 国产三级在线现体验区| 2019亚洲男人天堂| 东京日日夜夜| 正在播放国产精品一区| 2020中文字幕在线| 婷婷五月天在线观看| 国产树林里野战在线看| 欧美色图综合网| av婷婷色网| 天天草夜夜草高潮片| 久久伦理视频久久大香蕉视频| 免费av大片| 色逼综合| 男人的天堂无码| 色综合五月天| 翔田千里AⅤHD无码| 欧美日韩人妻婷婷一区| 婷色五月天| 国产深喉视频一区二区| 欧美久久人妻少妇一区二区| 日本久久99| 中文字幕丰满人妻日本| 中文熟女五十乱码在线| 日韩99神马视频播放| 国产 无码 一区二区| 亚洲天堂2020| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 99热超碰在线| 中文字幕一区二区韩| 国产精品96| 性欧美天天| 在线另类| 嫩草一区二区在线观看| 久久久97| 在线看污网站| 超碰97久久国| 无码99| 日韩国产欧美伦理在线| 成人五月天丁香激情综合| 熟妇高潮二区三区| 日日做夜狠狠爱欧美黑人| 丁香五月天社区| 操逼不卡中文字幕| 97爱爱爱| 欧美色女人| 国产怡红院在线| 综合视频91| 91 国产丝袜在线放观看| 伊人久久婷婷| 国产理论视频在线播放| www国产无码| 综合久久2017| 久久有码视频| 中文字幕第二页| 日本一久是| 国内操逼视频二区| 美欧老女人97| 欧美韩国你懂得在线| 九九热免费国产视频婷婷伊人五月 | 国产东北女人在线视频| 精品中文字幕一区二区| 人人妻人射| 国内毛片婷婷六月色| 可以免费看黄片的视频| 尤物网站91| 久久日本熟妇熟色一区| 欧美97超碰| 粉嫩AV一区二区夜夜| 国语精品av| 午夜αv| 中国人高清www色视频免费| 可免费观看的av毛片中日美韩| 久久91| 国产精品久久久久无码Av网曝门| 九九精品99| 九九久久一区二区伦理| 亚洲欧洲网站免费观看| 欧美色偷拍| 一区 欧美 日韩 麻豆| 亚洲第91页 | 久久久A∨| 久久久久久久97| 亚洲色婷婷久久91| 台湾成人无码AV| 欧美刺激色黄片免费看| 91蜜臀在线久久久久| 中文字幕片| 97在线亚洲| 青青色在线观看| 日韩精品国产一区二区| 九九精品热| 青青草视频久久久久| q2午夜理论片夜色av| 九九亚洲| 国产高清MV操逼视频| 久久一二三四五六七八九区区区| 丝袜美女诱惑 91 视频| 国产传媒av天美传媒在线| 欧美精品23| 五月激情影院| 啊啊啊啊啊啊啊啊啊啊在线观看| 少妇精品| 国产黄色 A 片免费看| 人妻天天夜夜爽一区二区| 欧美日动态视频| 60秒不遮不挡| 无码乱人伦中文视频| 久久久亚洲精品电影免费看| 亚洲精品久久久久久| 麻豆国产精品午夜视频| 99久久综合网| 久久久久斤小| 国产亚洲精品无码三区| 大香蕉 222| 舔人妻中文免费视频| 精品日韩中文在线| 91丝袜美女| 校园春色美腿丝袜| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 不卡日本一区二区| 成人在线视频网| 久久精品视| 乱伦熟女专区| 伊人色综合超碰| 天天伊人| 99久久久| 97Ai亚洲| 婷婷五月成人| 在线二区不卡| 丁香五月性爱| 超碰吊日色| AV无码久久久精品| 色拍偷亚洲| 精品久久久久久无码| 草b在线| 亚洲在线| 中文字幕少妇色 | 国产高清不卡视频| 100啪啪视频大全| 在线女人91| 欧美激情综合| 5252色欧美在线| 手机看片91人妻| 亚洲国产综合久久久性感熟妇| 丰满人妻-区二区三区免费看| 久久一区二区三区入口| 91热| 久久黄黄| 国产在线综合网| 美女高潮视频91| 国内毛片欧美香蕉精品| 人人澡综合涩| 日本欧美亚洲高清在线看| 久男人久久| 国产精品青草综合久久| 青草成人免费视频一COm| 男人天堂2019亚洲| 欧美日韩午夜精品一区二区三区 | 探花一区二区三| 啊啊啊啊好疼视频| 久久午夜伦| 18禁看网站一区| 欧亚日韩三区| 啊视频在线| 欧美天天干| 欧美大码在线视频| 人人操人人操人人操人人操人人操人人人11.CM | 男人精品天堂一区| 国产精品老师| 成人小说另类在线| 91精品国产长腿丝袜美女| 丁香五月激情五月| 黄色大片免费在线| 亚洲色天堂九9| 蜜臀久久一区二区| 亚洲AV无线| 啊啊啊网站| www.男人天堂| 蜜臀久久99精品久久久老,,| 欧美日韩国产黄色片| 超碰吊日色| 日本东京热大香蕉a片| 黑人精品成人一区二区三区| 啪啪视频免费在线观看| 五月天亚洲网| 殴美日韩m| 丁香九月激情啪| 五月丁香黄色网| 九九九国产精品| 97视频在线免费看| 亚洲色综合| 欧美综合娱乐久久| 老司机午夜精品视频| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 搡老熟女老女人老熟妇免费视频| 天天干天天操天天操夜夜操天天操| 91爱看| 99re3这里只有精品| 天天视频综合在线观看视频| 欧美成年人性爱视频免费观看| 久久视频,这里只有精品| 久久熟女人| 色爱国产| 国产福利小视频高清在线观看| 女沟厕偷窥piss小便| 加勒比综合在线| 色综和网| 78久久久| 麻豆乱码久久精| 天天综合,91综合永久| 女人午夜视频777| 中国少妇XXXX做受| 亚洲另类小说卡通动漫| 日韩精品字幕| 东京热一区二区中文字幕| 欧美九九九| 青青草影视蜜久久| 亚洲精品乱码久久久久久蜜桃麻豆| 狠狠图片青青草 | 一牛影视成人片免费| 亚洲**2021在线观看| 色婷婷国产精品一区在线观看| 日韩99999| 九九九不卡| 欧美自拍网| 亚洲国产97在线精品一区| 熟女精品一区二区在线观看| 九九九九免费高| 丰满精品人妻少妇久久字幕| 97免费在线视频| 99热这里只有精品地址| 69XX一中文字幕人妻91| 天天色图| 欧美色图片91| 色呦呦、国产精品| 日本日日色视频| 18精品一区| 人妻精品4K4K4K4K4| 久久熟女人| 宅男91视频在线播放| 97综合在线观看| 亚洲青青青视频在线| 啊啊啊用力在线观看| 久久婷婷一区二| 97蜜桃综合| 久久视网78| 日本男人插女人的逼黄色| baiduhicn.com。| 91碰碰| 高潮9999外国| 日逼97| 毛片一区二区| 亚洲国产欧美另类自拍| 欧日a| 人妻熟女一区在| 人人妻人人操人人乐| 六月丁操逼| 亚洲电影91| 91蜜臀人妻中文字幕在线| 人人妻人人玩人人澡人人爽| 人妻无一区二区三区| 精品人妻一区二区视频| 九九黄色网| 中文字幕少妇色 | 国产精品日日摸天天碰| 五月天亚洲色图| 国产成人精品必看| 五月丁香影视| 97在线欧洲| 毛片99-全集电影手机免费观看完整-B029AV| 98久久超碰| 日韩黄色av中文字幕| 最新国产精品久久精品| 欧美 亚洲 大香| 少妇人妻在线| 色屁屁影院www国产| 国产精选三级在线观看| 顶级少妇BT天堂| 97久久精品不卡| 免费成人在线观看91| 久久精品色欧美aⅴ一区二区| 人人喜人人妻| 亚洲欧美校园| 国产精品69人妻无码久久久| 伊人亚洲国产一成人久久精品,久久| 国产午夜视频| 屁股久久久久久久| 激情专区综合| 免费亚洲国产精品久久一区| 成人蜜乳小视频网站| 色婷婷五月综合激情中文字幕| 67194无码不卡| 青青草依人大香蕉| 日韩成人精品视频自拍| 丝袜性亚洲| 男人的天堂va| 亚洲欧美经典一区二区| 夜夜 中文视频rt| 久久久性| 欧美在线官网| 91亚洲人| 99精品网| 久久久精精精| 五月激情视频| 91青青在线| 国产无码一二三区| 老鸭窝日丰县女人| 乱伦AVxx| 久久久久久久久久久久欧美日| 伊人专区一区二区三区| 国产夜夜艹| 视频不卡中文字幕| 久久久精品日本一道| 人妻丝袜日本| 亚洲 91 在线| 精品国产乱码久久| 亚洲色图久久精品蜜| 日日躁天天躁狠狠躁| www.av在线观看| 91精品婷婷国产综合久久| 日本一区二区成人在线| 99国产精品自在自在| 色狠狠 - 百度| 曰韩香蕉97| 91人妻尻屄视频| chaopen97久久| 99热自拍| 蜜臀久久99精品久久久电影| 骚乳在线| 草草影院日本第一页| 亚洲色香| 国产a级精品| 美国日韩黄片| 小骚逼被操的爽不爽| 欧美大香蕉同搞| 少妇激情AV| 色五月婷婷网| 国产精品久久久久久久无码AV| 欧美色图片91| 淫荡少妇免费| 青青草这里只有精品| 欧美日不卡| Sekablack无码一区| 久久成年精品| 中文字幕欧美丝袜07资源| 熟女乱伦二区| 中文久久96| 色牛aV| 日日干夜夜干| 五月天欧美色图| 日韩精品 视频一区二区| 97视频620| 亚洲精品国语在线播放| 91中文在线| 色在线综合| 粉嫩粉嫩一区性色AV片| 天天看特黄的免费网站 | 一区二区三区机械有限公司| 欧美色九九| 夜夜欧美| 人妻精品综合中文字幕在线| 亚洲欧洲中文日韩女优乱码| 激情文学亚洲| 淫色网综合| 日韩性爱电影一区| 黄片免费日韩| 久久精品国产97欧美精品亚洲| 狠狠狠一区二区三区| 免费亚洲黄色视频在线观看| 不卡视频一区蜜桃视频| 性爱欧美五月| 中文字幕99999| ,国产乱人伦精品一区二区三区| 久久久久久亚洲Av无码| 操逼逼福利视频| 亚洲美女精品九九视频| 狠狠干91| 性欧美另类高清| 色呦呦呦在线观看视频| 精品三级在线专区| 91无码人妻精品一区二区三区蜜桃| 欧美性,色九九| 中文字幕五区| www久| 自拍视频一区在线观看| 国产强奸乱伦无码视频| 91美女片在线| 欧美一区二区三熟女剧情| 欧美少妇性乱| 区一二区日韩亚洲乱码av电影| 狠狠操夜夜操蜜桃视频三区| 亚洲一区中文字幕一区| 国产AV无码AV| 伊人久久综合影院| 国产精品4p在线观看| 干超碰碰熟女| 9118禁| 色噜噜国产精品视频一区二区| 天堂av最新电影网| 精品久久久久成人码免| 亚州色图片在线色| 欧美日韩亚洲五月天婷婷| 少妇综合| 2021国产成人精品久久| 久久六六| 91国产操逼视频| 91天天| 男女啪啪啪18禁网站| 少妇久久久久久| 99无码| 亚洲国产精品无码AV久久| 欧美高清第一页| 天天综合欧美| 国产高清自拍视频| 97色网| 久久超碰国产一区二区三区| 97超碰磁| 欧亚性爱在线视频| 亚洲一卡2卡3卡4卡乱码网站| 精品人妻一区| 亚欧国产无码精品在线| 91久久久久久久| 桃色五月天| 久久国产三区| 久久综合精品一区二区三区| 美腿丝袜高跟网免费视频免费视频| 性色国产东北露脸精品视频| 国产亚洲日本| 2020天天色综合| 久久二| 午夜福利国产欧美日韩夜夜| 色综合天天| 91粉嫩萝控精品福利网站_精品影音先锋国 | 天天天乱色综合全| 亚洲无限观看| 婷婷8月天青娱乐| 亚洲国产成人精品女人久久久| 日本性爱视频一级| 黄色AAAAA欧美| 日本污ww视频网站| 天天日日舔舔| 亚洲大色堂| 超碰9 7女人 | 超碰97在线 欧美 国产| 亚洲综合校园春色| 四虎影视精品| 亚洲自拍天堂| 91精品久久综合熟女| 另类综合另类| 国产女人9999| 免费a v| 亚洲制服欧美另类内射| 嗯啊免费视频| 国产AV线| 亚洲成人黄色在线观看| 亚卅熟女乱色| 成人日本精品九区| 91N综合网| 中文字幕AV乱伦| 九九黄色网| 97色色,97综合| 色九久| 国产成人手机视频激情| 91色女| 美女十八禁| 日韩无码a片| 天天色香欲综合网| 99re在线视频这里只有精品| 亚洲日韩视频二区| 中文高清一区二区的| 91亚洲欧美综合高清在线| av天堂影视中文在字幕在线中文 | 国产精品久久久吖| 综合激情婷婷| 97网址97| 黄色人人| 台湾佬中文娱乐自偷自拍| 亚洲图片小说欧洲| 亚洲一区二区中文字幕| 丁香婷婷激情五月天无毒不卡| 一区二区影视| 熟女视频久久| 操逼无毒无码免费视频| 日小BB小视频| 97国伦国色| 综合网天天| 可以免费观看的av| nuu12国产麻豆精品| 亚洲天堂AV在线播放| 日本不卡码黄色 | 欧美狠狠操| 欧美亚洲中文| 亚洲成人av色网| 国产久久天堂资源| 综合色99| 中文不卡视频| 综合色99| 91国产丝袜白虎| 亚洲最大网站av| 97国产伦理| 99色热国产视频精品| 性色av一区二区| 欧美日韩另类在线| 日日做夜狠狠爱欧美黑人| 少妇高潮流水av免费| 九九久久一区二区三区| 13小男生GAY自慰脱裤子| 台欧久久精品视频| 久久大黄片| 偷拍亚洲高清图片| 少妇厨房愉情理伦片bd在线观看 | 亚洲成人一区二区精品| 欧美激情久久久久| www.黄色在线| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 亚洲精品一区中文字幕乱码| 国产精品扒开腿做爽爽爽视频| 色噜噜综合在线| 欧美人体性爱互联网第一页婷婷日本| 九九九午夜| 国产日韩手机视频在线| 欧美青青视频| 乱伦熟女区| 91网站18禁| 91色综合激情| 国产精品一区二区校花| 亚洲精品国产熟女久久久| 91久久久久久久久18| 午夜高清成人在线视频| 亚州,欧美在线| 婷婷久草一区二区三区| 国内精品嫩模A∨私拍小视频| 97视频620| 3p国产欧美99热| 夜夜躁狠狠躁日日躁av| 亚洲精品国产AV天美传媒| 99热99在线播放激情| 天天色综合影视网| 伊人97色天使| 人摸人人操人| 亚洲男人天堂av| 亚洲第91页 | 国偷自 一区| 无码免费一区二区三区啪啪| 无码外流操逼视频| 青青草导航在线视频| 亚州操操穴网| 91强奸乱轮| 欧洲久久一二线| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 国产一区二区在线电影| 蜜臀中文字幕| 亚洲大色鬼| 精品人妻二区三区| 亚州操逼网| 久久国产在线一区二区| 青青草AV色| 欧亚第一综合网| 五月丁香成人网| 国产精品点击进入在线影院| 男同专区一区二区三区在线| 国产成人天堂| 91人妻超碰| 国产欧美日韩在线不卡第一页| 中文字幕美女91| 久久伊人影院| 日本精品一区二区三| 色九九九| 日韩精品区二区三区不卡| 凹凸久久人人| 人人操人人93| 久久女女| 欧美另类自拍 | 欧美A√综合网| 91网站18在线观看| 91性高潮久久久久久久久| 日本熟女免费視颖| 最新亚洲黄色免费电影| 98久久超碰| 国产精品一二三| 欧美综合综合| 久操| 久久久精品中文字幕麻豆| 国产丰满熟夫69mpp| 天天综合色电影| 中文字幕乱妇免费视频| 国产丸一视频| 日韩 欧美 国产 麻豆| 色天使大香蕉| 亚洲av热热色| 欧美久久久15P| 中美日韩毛片| 不卡九肏| 国产一区二区三区不卡手机在线| 亚洲精品久| 久久欧美按摩999| 精品久久青青草| 蜜桃成人1区2区3区| 丁香激情五月| 激情文学网伊人| 日本狠狠干| 五月天婷婷影院| 丁香五月婷婷基地| 五月丁香婷婷色| 丁香五月婷婷啪啪| 久久综合激情| 狠狠干狠狠色| 六六久久日韩不卡| 天天操狠狠日夜夜干超碰撸com视频在线观看| 国产热RE99久久6国产精品首| 日本韩欧美在线播放a| 乱伦熟女区| 欧美日韩第一页| 久久激情网| 屌色在线97视频| 熟女丰满人妻一区| 亚洲熟妇乱女区二区三区| 青娱乐 成人娱乐在线| 三级片大波波| 天天天天做夜夜夜夜做| 综合网97| 人妻丰满熟妇av无码区蜜桃| 无马一区二区| 亚洲九九九九| 国产无码高清操逼视频| 强奸乱伦大香蕉网| 久久综合九九| 91丝袜美女| 一本大道综合伊人精品热热| 肉丝无码中文高清| 欧美九九九| 亚洲成人激情小说视频| 国产精品人妻熟女aⅴ| 一个人免费HD91视频| 五月天婷婷激情| 欧美久久草熟女| 亚洲一区二区 麻豆传媒| 人妻 欧美亚洲| 亚洲日韩美女丝袜美腿人妻视频| 永久电影三级在线观看| 岛国AB视频| 性爱久久| 91久久堂| 中文字幕丝袜| 尤物视频一区| 色五月婷婷久久| 美女淫穴| 欧美狠狠狠| 老熟女搡BBBB搡BBBB视频| 在线看免费无码AV天堂的| 少妇蜜汁| 91欧洲入口| 伊人热综合| 色婷婷狠狠18禁| 亚洲色9| 奶水 人妻 哺乳 在线| 翔田千里AⅤHD无码| 九月丁香| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 中文字幕制服诱惑| 日韩中文字幕人妻视频| 6080yy午夜理论三级一区二区三区无码| 97久久久精品| 91五十路| 人妻熟女av国产网站| 97久久超碰国产网站| 欧美成人精品一区| 亚一综合久久久久久久久久| 九月丁香婷婷| 青青操日韩| 韩国黄片aaaa| 一区中文字幕二区日韩| 午夜男人的天堂| 日韩性爱播放| 中文字幕第23区| 久久双插| 亚洲综合色男人网| 久久久无码精品人妻二区| 国产日韩欧美操逼视频| 久久亚洲影院一区二区| 91天美免费| 国产亚洲色婷婷久久99精品91葵花宝典| 九九热免费在线国产视频伊人五月| 97资源站日韩| 精品成人av一区二区三区在线| 久久日本熟女精品一区| 午夜福利国产欧美日韩夜夜| 91蜜臀熟女| 欧美性性性| 婷婷色导航| 黑丝制服中文字幕| 艹少妇网站| 91丨精品丨国产丨丝袜| 另类小说综合网| 国产精品网站www| 一级性爱视频免费观看 | 日本精品不卡一二三区| 男人的亚洲天堂| 国产视频一区二区三区在线免费观看 | 久久极品一区二区| 好爽视频在线观看| 五月丁香| 97超碰欧美精品| 色色色网站| 国产一线二线三线av| 97精品综合久久| 婷婷国产精品一区二区| 在线国产探花| 97欧美日韩综合| 亚洲宅男天堂| 亚洲开心网| www.97在线| 国产成人亚洲精品无| 丰满少妇一区二区三区四区观看 | 中文幕97| 日本不卡高清视频| 大香蕉92| 黄色av一区二区在线| 欧美色图20P| 色精品极品| 亚洲欧美国产中文视频| 欧美午夜色妇色鬼| 欧美黄色大片在线观看 | 100啪啪视频大全| 综合天天网| 色噜噜人妻丝袜a∨先锋影| 国产精品白丝AV| 日本三级中国三级99人妇网站| 中文字幕熟女人妻丝袜| 天操天操夜操夜月操月年年操| 国产又色又粗又黄又爽| 精品久久九| 国产高潮AA片免费看| 欧美超碰在线| 欧美老妇女内射网址| 久久久亚洲欧美综合| 在线洲亚线| 亚洲中文字幕妇伦久久| 黑人白女精品一区| 青青草原成人| 激情四射婷婷四五月天| 男女激烈网站最新| 国产精品一二三| 免费视频在线观看啊啊啊啊啊| 日本一区视频在线观看| 超碰偷拍| 国产美脚女优尤物在线观看| 亚洲精品天堂久久A∨51成人漫| 亚洲中文sv| 少妇天堂网络| 亚洲福利中文字幕在线| 夜夜爽爽爽| 久久久久亚洲?V片无码V| 欧美综合色图片| 国产精品制服丝袜中文字幕日韩一区二区三区 | 午夜免费视频1000| 在线观看无码三级少妇| 久久久亚洲精品中文字幕人妻| 久草资源在线视频官方总站日韩丝袜美腿 | 亚洲欧美在线观看无码| 99re99在线视频| 国产亚洲欧洲在线观看| 中文字幕成人| 成人精品一区二区91毛片不卡| 97chaopengongkai| 使劲用力艹少妇视频一区二区| 狠狠干狠狠干| 久久久亚洲欧美综合| 欧美精品三级黄片| 欧美第五页| 亚洲诱惑| 久久久久中出| 任你爽视频| 国产av又色又爽又黄| a'v在线资源| 日本在线999| 青青操视频在线| 91麻豆天美传媒HD| 很很干很很操| 久久这里只精品99re66图| 欧美aa一级片| 精品视频一区二区| 亚洲影视高清三级-草1024榴社区入口-品爱AV| 久久综合日韩亚洲欧美| 91一区二区| 无码国产精品午夜不卡( | 九九九九免费高| 图色综合网| 天美AV片| 婷婷五月色| 中字乱伦AV| 日韩激情啪啪| 免费的很黄很污的全部视频| 亚洲麻豆av一区二区| 91亚洲在线| JuliaAnn丝袜熟女系列| 日韩欧美中文字亚洲慕| 亚州欧美总和| 亚洲成人妻日韩在线| 操B久久| 精品无吗久久| 亚洲成人一二三区| 亚洲有薄码区日本系列中文字幕| 大香网伊人久久综合| 久久久久婷婷| 欧美色综合影院| 久久99午夜精品一区人妻| 黄页视频网站野外| ..日韩av毛片精品久久久| 国产女人和拘做爰视频 | HEYZO高无码国产精品227| 欧美亚洲尤物久久| 欧美日韩不卡a片| 强奸乱伦亚洲第一页| 在线岛| 国产理论视频在线播放| 日韩精品在线观看观看| 久久美女国产| 欧美成人一级免费电影| 激情干在线| 免费一级毛片在线视频观看| 99色婷婷| 亚洲97超碰| 91精片| 久久久久久网址| 无码外流操逼视频| 顶级丝袜熟女一区二区三区| 亚洲九月丁香| 91丨九色丨国产打屁股| 亚洲不卡AV在线|