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

ARTICLE DETAIL

資訊詳情

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

ODrive固件解析:從STM32定時(shí)器時(shí)基到8kHz控制環(huán)的實(shí)現(xiàn)

ODrive固件解析:從STM32定時(shí)器時(shí)基到8kHz控制環(huán)的實(shí)現(xiàn) 直接開工。搞過 ODrive 的人都知道這玩意兒在電機(jī)控制圈子里是個(gè)“繞不開的參考系”。開源、硬件設(shè)計(jì)漂亮、固件質(zhì)量高而且它那套代碼里藏了不少底層細(xì)節(jié)普通 demo 工程里根本看不到。尤其是從定時(shí)器時(shí)基到 8 kHz 控制環(huán)這一整條鏈路幾乎是所有想深入 FOC 控制、想自己移植固件、或者想搞明白“為什么我的電機(jī)跑起來噪音那么大”的人的必修課。這一篇是系列的第二篇核心就一件事講清楚 ODrive 固件里定時(shí)器時(shí)基是怎么搭建的又是怎么一步步把它變成實(shí)際執(zhí)行 PID 控制律的 8 kHz 控制環(huán)。這里會(huì)涉及 STM32 定時(shí)器的底層配置、PWM 生成、更新中斷觸發(fā)、以及中斷服務(wù)程序里的任務(wù)調(diào)度最終帶你把整個(gè)調(diào)用鏈路串起來。適合誰(shuí)看想讀 ODrive 源碼但不知道從哪下手的用 STM32 自己寫 FOC 想抄作業(yè)的以及已經(jīng)在跑 ODrive 但總感覺“里面有事兒”的好奇派??赐赀@篇你應(yīng)該能說出“8 kHz 控制環(huán)”到底是哪個(gè)中斷拉起來的那個(gè)中斷里又干了哪些事。1. 內(nèi)容整體設(shè)計(jì)與思路拆解1.1 先搞清楚 8 kHz 控制環(huán)到底是個(gè)什么概念很多人一聽“控制環(huán)”第一反應(yīng)是“一個(gè) PID 循環(huán)”。這句話不算錯(cuò)但對(duì) ODrive 來說控制環(huán)不是一個(gè) while(1) 里跑的邏輯而是一個(gè)被定時(shí)器中斷精確驅(qū)動(dòng)的硬實(shí)時(shí)任務(wù)。在 ODrive 固件里它把控制邏輯分成了好幾層電流環(huán)最內(nèi)層負(fù)責(zé)把 d/q 軸電流快速壓到目標(biāo)值頻率最高。速度環(huán)中間層基于編碼器測(cè)速得到的速度值輸出電流指令。位置環(huán)最外層基于目標(biāo)位置和實(shí)際位置的誤差輸出速度指令。ODrive 把這幾個(gè)環(huán)放在同一個(gè)定時(shí)器中斷里跑整個(gè)控制周期的頻率就是 8 kHz。也就是說每過 125 微秒CPU 會(huì)強(qiáng)制暫停當(dāng)前手頭的事跳到中斷服務(wù)函數(shù)依次完成編碼器讀數(shù)、坐標(biāo)變換、PID 計(jì)算、PWM 占空比更新然后再跳回去干之前的事。為什么是 8 kHz這其實(shí)是幾個(gè)約束條件折中的結(jié)果STM32F405 的 CPU 主頻是 168 MHz8 kHz 意味著每個(gè)控制周期約有 21000 個(gè) CPU 周期可用。電流環(huán)需要在一個(gè)周期內(nèi)完成至少一次完整的 Clarke/Park 變換加 PI 運(yùn)算再加上速度環(huán)、位置環(huán)的 PID運(yùn)算量不小。控制頻率越高電流環(huán)帶寬越高電機(jī)噪音和振動(dòng)越小但 CPU 壓力也越大。8 kHz 不是隨便拍腦袋定的它是一個(gè)在“能帶動(dòng)多少運(yùn)算量”和“控制性能還需要提升多少”之間的平衡點(diǎn)。后續(xù)你會(huì)看到ODrive 里很多參數(shù)都跟這個(gè)頻率掛鉤比如電流環(huán)的 PI 增益、濾波器的截止頻率、甚至看門狗的超時(shí)判斷。所以先記住這個(gè)數(shù)8 kHz 是 ODrive 固件的控制心跳頻率。1.2 時(shí)基選型為什么用定時(shí)器而不是 SysTickODrive 固件運(yùn)行的平臺(tái)是 STM32F405/F407 系列這個(gè)系列提供了多個(gè)定時(shí)器。這里就涉及一個(gè)關(guān)鍵選擇為什么控制環(huán)的中斷源用的是高級(jí)定時(shí)器 TIM1而不是大家更熟悉的 SysTick滴答定時(shí)器如果你看過一些 STM32 工程會(huì)發(fā)現(xiàn)很多人用 SysTick 做延時(shí)或者做簡(jiǎn)單的時(shí)間片輪詢。SysTick 確實(shí)簡(jiǎn)單Cortex-M 內(nèi)核自帶不用翻手冊(cè)就能配好。但它有一個(gè)先天不足SysTick 的優(yōu)先級(jí)是固定的你沒法把它調(diào)成比外設(shè)中斷更高的優(yōu)先級(jí)。在電機(jī)控制這種場(chǎng)景里控制環(huán)必須搶占一切不能容忍被串口中斷、USB 中斷打斷。一旦控制中斷被其他中斷延誤電流環(huán)的執(zhí)行時(shí)間跳動(dòng)會(huì)直接反映在電機(jī)噪音和電流波形上。TIM1 是高級(jí)定時(shí)器它不僅可以輸出帶死區(qū)的互補(bǔ) PWM還自帶更新中斷。ODrive 的巧妙之處在于它讓 TIM1 既承擔(dān) PWM 輸出職責(zé)又承擔(dān)控制環(huán)中斷來源一份硬件資源兩重功能這是非常典型的嵌入式思路。軟件上把中斷優(yōu)先級(jí)設(shè)為最高保證任何時(shí)刻控制中斷來了都能打斷其他任務(wù)。你需要理解的核心思路是控制環(huán)的中斷源不一定非要用定時(shí)器但必須滿足兩個(gè)條件——可精確配置頻率、優(yōu)先級(jí)足夠高。用定時(shí)器是 STM32 平臺(tái)上一個(gè)很自然、很成熟的方案。SysTick 在這種硬實(shí)時(shí)場(chǎng)景里不具備優(yōu)勢(shì)。1.3 從定時(shí)器到控制環(huán)的整體鏈路先給你一張“地圖”把整個(gè)過程在邏輯上畫出來。ODrive 固件啟動(dòng)后進(jìn)入 main 函數(shù)完成一堆初始化最后進(jìn)入一個(gè) while(1) 主循環(huán)。但主循環(huán)里干的全是慢節(jié)奏的事USB 通信、日志輸出、參數(shù)保存、狀態(tài)機(jī)切換這些。真正干控制活的是那段中斷驅(qū)動(dòng)的代碼。整個(gè)鏈路是這樣走的初始化階段配置 TIM1 的時(shí)基讓它產(chǎn)生頻率為 8 kHz 的更新事件開啟更新中斷并把 NVIC 里 TIM1_UP_TIM10 的中斷優(yōu)先級(jí)調(diào)到最高。啟動(dòng)階段使能定時(shí)器計(jì)數(shù)TIM1 開始跑更新中斷開始按 125 微秒一次的頻率觸發(fā)。運(yùn)行階段每次進(jìn)入中斷服務(wù)函數(shù)依次執(zhí)行“讀編碼器/讀電流采樣值 → 電流環(huán) FOC 計(jì)算 → 速度環(huán) PID → 位置環(huán) PID → 更新 PWM 比較寄存器”。主循環(huán)階段處理對(duì)實(shí)時(shí)性不敏感的任務(wù)比如通過 USB 接收上位機(jī)的指令、解析參數(shù)、打印狀態(tài)。這個(gè)結(jié)構(gòu)中主循環(huán)像是一個(gè)“后臺(tái)辦公室”處理各種不急的瑣事定時(shí)器中斷像是“生產(chǎn)線上的節(jié)奏器”每 125 微秒發(fā)出一聲“干活了”把控制任務(wù)從上一道工序推到下一道工序。硬件中斷的確定性保證了控制周期的穩(wěn)定這正是電機(jī)控制領(lǐng)域最核心的追求。2. 核心細(xì)節(jié)解析與實(shí)操要點(diǎn)2.1 定時(shí)器時(shí)基的計(jì)算與配置要理解 ODrive 的代碼你得先能自己把時(shí)基算出來。這一步不難但很容易搞錯(cuò)。STM32 的時(shí)基由三個(gè)寄存器控制PSC預(yù)分頻器、ARR自動(dòng)重載值、以及時(shí)鐘源頻率。公式非常簡(jiǎn)單定時(shí)器頻率 定時(shí)器時(shí)鐘源頻率 / (PSC 1) / (ARR 1)ODrive 用的 STM32F405TIM1 掛在 APB2 總線上。當(dāng)系統(tǒng)主頻 168 MHz、APB2 預(yù)分頻系數(shù)為 1 時(shí)TIM1 的時(shí)鐘頻率就是 168 MHz。如果 APB2 分頻為 2則定時(shí)器時(shí)鐘為 84 MHz此時(shí)定時(shí)器會(huì)額外倍頻到 168 MHz具體要看芯片的時(shí)鐘樹。要實(shí)現(xiàn) 8 kHz可以用很多組合比如PSC 0ARR 20999頻率 168 MHz / 1 / 21000 8000 HzPSC 1ARR 10499頻率 168 MHz / 2 / 10500 8000 HzPSC 83ARR 249頻率 168 MHz / 84 / 250 8000 Hz第一種組合 ARR 偏大適合需要較長(zhǎng)周期的 PWMODrive 里因?yàn)?TIM1 同時(shí)還要輸出 PWMPWM 頻率和微步細(xì)分有關(guān)所以它的 PSC 和 ARR 需要綜合計(jì)算。打開固件源碼你會(huì)看到timer_freq和pwm_freq這兩個(gè)變量被反復(fù)計(jì)算就是在調(diào)這組參數(shù)。有一個(gè)細(xì)節(jié)值得注意ODrive 支持 PWM 中心對(duì)齊模式也就是定時(shí)器計(jì)數(shù)先往上加、再往下減。這種模式下的更新事件頻率是 PWM 頻率的兩倍一個(gè)完整的三角波周期產(chǎn)生兩次溢出中斷如果你不理解這一點(diǎn)后面分析中斷觸發(fā)頻率時(shí)會(huì)卡住。2.2 中斷服務(wù)函數(shù)的編寫風(fēng)格ODrive 的中斷服務(wù)函數(shù)寫得非常干凈沒有一堆 if-else。它直接在中斷里調(diào)用一個(gè)統(tǒng)一的入口函數(shù)然后這個(gè)入口函數(shù)內(nèi)部會(huì)做一次“當(dāng)前階段判斷”決定這一拍要執(zhí)行什么任務(wù)??创a的時(shí)候你會(huì)發(fā)現(xiàn)ODrive 的 TIM1 中斷服務(wù)函數(shù)本身非常短真正的大頭在Motor::update()這類函數(shù)里。這種風(fēng)格的好處是中斷入口保持極短減少中斷延遲控制邏輯獨(dú)立成類方便復(fù)用和測(cè)試。這里給你一個(gè)實(shí)操層面的建議寫電機(jī)控制代碼時(shí)不要往中斷里塞浮點(diǎn)打印、塞日志、塞編碼器數(shù)據(jù)的串口發(fā)送。你在調(diào)試時(shí)可能會(huì)忍不住想“順便發(fā)個(gè)數(shù)據(jù)看看波形”但只要串口傳輸時(shí)間超過了控制周期控制環(huán)就被你親手毀了。ODrive 的做法是中斷里只操作共享內(nèi)存標(biāo)志通信任務(wù)由主循環(huán)統(tǒng)一處理。2.3 優(yōu)先級(jí)與搶占為什么 NVIC 配置必須正確NVIC嵌套向量中斷控制器的優(yōu)先級(jí)配置是 ODrive 能穩(wěn)定運(yùn)行的又一關(guān)鍵。Cortex-M4 支持搶占優(yōu)先級(jí)和子優(yōu)先級(jí)。ODrive 把 TIM1 更新中斷的搶占優(yōu)先級(jí)設(shè)為最高這樣任何時(shí)刻來了控制中斷其他中斷都得讓路。哪怕你正在處理 USB 傳輸控制中斷來了也會(huì)先打斷 USB 服務(wù)函數(shù)跑完控制任務(wù)再回去繼續(xù)處理 USB。我見過不少人把控制中斷的優(yōu)先級(jí)和串口中斷設(shè)成相同優(yōu)先級(jí)或者只比串口高一點(diǎn)點(diǎn)結(jié)果電機(jī)運(yùn)行的時(shí)候偶發(fā)抖動(dòng)電流波形上出現(xiàn)毛刺。原因很簡(jiǎn)單串口中斷本來就頻繁如果控制中斷排隊(duì)等串口處理完那這個(gè)周期的控制計(jì)算就被延遲了執(zhí)行時(shí)間抖動(dòng)自然體現(xiàn)在電機(jī)噪音里。正確配置分兩步在NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority里設(shè)置最高搶占優(yōu)先級(jí)。確保NVIC_IRQChannelSubPriority不會(huì)因?yàn)槠渌?jí)中斷導(dǎo)致?lián)屨蓟靵y。需要記住的是分配給控制環(huán)中斷的時(shí)間資源是定死的一旦被搶走這個(gè)控制周期就補(bǔ)不回來。這是硬實(shí)時(shí)系統(tǒng)的基本特性。2.4 時(shí)基相關(guān)的幾個(gè)“坑”很多人把 ARR 配置成 PWM 頻率對(duì)應(yīng)的值卻發(fā)現(xiàn)更新中斷頻率不對(duì)原因就是上面說的中心對(duì)齊模式下更新事件觸發(fā)在頂點(diǎn)和底點(diǎn)。有些定時(shí)器配置需要在初始化時(shí)額外生成一次更新事件否則第一次中斷不會(huì)來。PSC/ARR 修改后需要重新初始化定時(shí)器或者使用影子寄存器功能否則會(huì)出現(xiàn)一個(gè)周期內(nèi) PWM 頻率突變的問題。我對(duì)這項(xiàng)工程印象最深的一點(diǎn)是ODrive 里為了精確限制 PWM 的更新頻率專門用了一個(gè)叫PWM_UPDATE_MECH的機(jī)制它保證 PWM 在線更新時(shí)的相位同步這種細(xì)節(jié)如果不是自己調(diào)過毛刺很難想到。3. 實(shí)操過程與核心環(huán)節(jié)實(shí)現(xiàn)3.1 時(shí)基初始化代碼分析打開 ODrive 固件源碼找到init_pwm()函數(shù)核心工作就是配置 TIM1。我在這里用偽代碼加注釋的方式還原一下配置流程方便你對(duì)照源碼理解void init_pwm(TIM_TypeDef* TIMx) { // 1. 先把定時(shí)器時(shí)鐘打開以 APB2 為例 RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE); // 2. 時(shí)基單元初始化設(shè)定 PSC 和 ARR TIM_TimeBaseInitTypeDef tim_init; tim_init.TIM_Prescaler 你算好的 PSC; tim_init.TIM_Period 你算好的 ARR; tim_init.TIM_CounterMode TIM_CounterMode_CenterAligned1; // 中心對(duì)齊模式 TIM_TimeBaseInit(TIMx, tim_init); // 3. 如果是中心對(duì)齊模式需要單獨(dú)設(shè)置更新中斷的觸發(fā)時(shí)機(jī) // 一般在頂點(diǎn)/底點(diǎn)都觸發(fā)實(shí)際頻率為 PWM 頻率的 2 倍 // 4. 使能更新中斷 TIM_ITConfig(TIMx, TIM_IT_Update, ENABLE); // 5. 使能定時(shí)器 TIM_Cmd(TIMx, ENABLE); }這一段就能解釋很多事TIM_Period決定了 PWM 的周期也決定了更新中斷的間隔。如果你手頭跑的是 ODrive v3.x 固件默認(rèn)的 PWM 頻率在 20k~40k 之間配合中心對(duì)齊模式更新中斷頻率變成 PWM 頻率的兩倍。但是ODrive 內(nèi)部會(huì)配置成“只在底點(diǎn)觸發(fā)中斷”這樣就保證中斷頻率仍然是 8 kHz同時(shí) PWM 頻率更高能有效降低電機(jī)噪音。實(shí)測(cè)下來這一步配置正確與否區(qū)別非常大配置錯(cuò)了控制環(huán)頻率變成 PWM 頻率的另一倍電流環(huán)參數(shù)就得重新調(diào)。3.2 PWM 比較寄存器更新定時(shí)器時(shí)基只是骨架真正的控制輸出體現(xiàn)在 PWM 占空比上。FOC 控制最后一步是生成三路 SVPWM 信號(hào)每路信號(hào)的占空比對(duì)應(yīng)逆變器三相的開關(guān)狀態(tài)。ODrive 的做法是在控制中斷里算出三相占空比數(shù)值然后寫入 TIM1 的三個(gè)比較寄存器CCR1/CCR2/CCR3。因?yàn)閱⒂昧祟A(yù)裝載寄存器實(shí)際的比較值更新會(huì)發(fā)生在下一個(gè)周期開始時(shí)這樣避免了一個(gè)周期內(nèi) PWM 占空比突變導(dǎo)致的電流畸變。這個(gè)“預(yù)裝載”機(jī)制用生活類比來說有點(diǎn)像樂隊(duì)指揮。指揮定時(shí)器給每個(gè)樂手比較寄存器一個(gè)樂譜預(yù)裝載值但樂手們不會(huì)在指揮手一揮的瞬間立刻改而是等到這個(gè)小節(jié)結(jié)束、下一小節(jié)開始的時(shí)候才統(tǒng)一翻頁(yè)。這樣就保證了每個(gè)人都在同一個(gè)節(jié)拍點(diǎn)切換不會(huì)有人早半拍有人晚半拍。3.3 執(zhí)行頻率驗(yàn)證方法怎么確認(rèn)系統(tǒng)真的是按 8 kHz 在跑你不會(huì)去用示波器測(cè)量中斷執(zhí)行時(shí)間——測(cè)一個(gè)中斷執(zhí)行時(shí)間實(shí)際上是很難的事情。常見的做法是在中斷服務(wù)函數(shù)入口翻轉(zhuǎn)一個(gè) GPIO。用示波器看這個(gè) GPIO 的方波頻率就能直接讀出控制環(huán)頻率。再用示波器測(cè)量中斷執(zhí)行時(shí)間也就是 GPIO 高電平的寬度就能看出每個(gè)控制周期用了多少 CPU 時(shí)間。實(shí)測(cè) ODrive 在 8 kHz 控制頻率下完整跑完一輪電流環(huán)速度環(huán)位置環(huán)大約占用 80~120 微秒。這個(gè)數(shù)字和 125 微秒的控制周期一比你會(huì)發(fā)現(xiàn)在 CPU 還有余量。那為什么不用 16 kHz因?yàn)殡娏鳝h(huán)的帶寬不光取決于執(zhí)行頻率還受限于 ADC 采樣時(shí)間、PWM 死區(qū)時(shí)間、編碼器讀取延遲等因素頻率翻倍并不代表性能翻倍。3.4 中斷到控制環(huán)的調(diào)用鏈ODrive 里中斷服務(wù)函數(shù)和你真正想找的 PID 邏輯之間隔了一層“調(diào)度邏輯”??聪潞?jiǎn)化后的調(diào)用順序TIM1_UP_TIM10_IRQHandler - Motor::update() - read_encoder() / read_current() - current_controller_.update() - controller_.update() // 包含位置環(huán)、速度環(huán)邏輯 - write_pwm_commands()每一步都有講究。讀編碼器必須在控制周期開始階段做越早越好因?yàn)榫幋a器讀數(shù)越接近這個(gè)周期開始時(shí)的真實(shí)速度速度環(huán)的采樣延遲越小。讀電流采樣值也類似它直接決定了電流環(huán)的響應(yīng)質(zhì)量。控制環(huán)的實(shí)際執(zhí)行順序是內(nèi)環(huán)電流環(huán)先執(zhí)行外環(huán)速度/位置后執(zhí)行。之所以電流環(huán)最優(yōu)先是因?yàn)殡娏鳝h(huán)的反電動(dòng)勢(shì)更快延遲會(huì)導(dǎo)致電流相位滯后直接影響力矩輸出的精度。3.5 主循環(huán)與中斷的數(shù)據(jù)交換主循環(huán)和中斷經(jīng)常需要共享數(shù)據(jù)比如用戶通過上位機(jī)改了速度指令這個(gè)指令需要通過 USB 中斷傳到主循環(huán)再在主循環(huán)里寫入共享內(nèi)存下一拍控制中斷就會(huì)讀到新的目標(biāo)值。這個(gè)數(shù)據(jù)交換的實(shí)現(xiàn)處處體現(xiàn)“無(wú)鎖編程”的思想。中斷里只是讀取共享變量主循環(huán)只在安全時(shí)機(jī)修改共享變量或者用獨(dú)立的緩沖區(qū)完成狀態(tài)同步。你在源碼里不會(huì)看到一堆 mutex那是因?yàn)?ODrive 故意把數(shù)據(jù)流設(shè)計(jì)成了單生產(chǎn)者單消費(fèi)者的模式。真要在自己的工程里復(fù)刻這套邏輯先別急著加鎖先想想你的數(shù)據(jù)流是不是單向的。單向數(shù)據(jù)流加上內(nèi)存屏障基本就夠了。4. 常見問題與排查技巧實(shí)錄4.1 控制環(huán)頻率不對(duì)的排查步驟這是最常遇到的問題。你按照源碼改了參數(shù)覺得應(yīng)該是 8 kHz但測(cè)量出來要么翻倍要么減半。第一步確認(rèn) TIM1 的時(shí)鐘源頻率。很多人從別的工程拿了初始化代碼芯片主頻不同APB2 分頻不同時(shí)基就差出來了。用 debugger 直接讀 RCC_CFGR 寄存器的值這個(gè)最靠譜。第二步確認(rèn)計(jì)數(shù)器模式。如果你用的是中心對(duì)齊更新事件頻率和 PWM 頻率的關(guān)系是兩倍關(guān)系。尤其要注意 ODrive 里使用的是 CenterAligned1 模式更新中斷在計(jì)數(shù)頂點(diǎn)和底點(diǎn)都會(huì)觸發(fā)必須檢查中斷標(biāo)志位過濾邏輯。第三步看中斷優(yōu)先級(jí)有沒有被其他頻繁中斷搶占。如果中斷優(yōu)先級(jí)配錯(cuò)控制中斷的執(zhí)行間隔會(huì)出現(xiàn)偶發(fā)變長(zhǎng)你在示波器上看到的不再是干凈的方波。我處理過最多的 case 是明明代碼沒問題但控制環(huán)頻率偏了最后發(fā)現(xiàn)是 APB2 分頻設(shè)置被別的初始化函數(shù)改了。建議每次配置定時(shí)器之前先打印一下定時(shí)器時(shí)鐘頻率。4.2 電機(jī)運(yùn)行時(shí)抖動(dòng)、噪音大的原因噪音大的原因往往不是 PID 參數(shù)太激進(jìn)而是底層時(shí)基不干凈。如果控制環(huán)執(zhí)行時(shí)間抖動(dòng)在幾個(gè)微秒以上電流環(huán)輸出的相位噪聲會(huì)直接變成電機(jī)抖動(dòng)。這里有個(gè)實(shí)用的診斷方法把控制環(huán)的執(zhí)行時(shí)間測(cè)出來把執(zhí)行時(shí)間的波形和電流波形放到同一個(gè)時(shí)間軸上對(duì)比。如果電流波形上的毛刺出現(xiàn)的位置和執(zhí)行時(shí)間變長(zhǎng)的位置重合那問題就在中斷優(yōu)先級(jí)或者中斷阻塞上。還有一個(gè)隱蔽的原因電流采樣值是在 PWM 計(jì)數(shù)器頂點(diǎn)觸發(fā)的 ADC 采樣的如果你把采樣點(diǎn)配置錯(cuò)了采樣到的電流值會(huì)帶有巨大的開關(guān)噪聲進(jìn)而導(dǎo)致電流環(huán)計(jì)算出來的占空比噪聲放大。4.3 定時(shí)器更新中斷偶爾丟失的問題定時(shí)器更新中斷不會(huì)“丟”但確實(shí)會(huì)發(fā)生“被同優(yōu)先級(jí)中斷屏蔽”的情況。Cortex-M 的中斷系統(tǒng)里如果正在處理一個(gè)優(yōu)先級(jí)相同的中斷新到的中斷必須等待。而 TIM1_UP_TIM10 這個(gè)中斷向量在 ODrive 里同時(shí)也對(duì)應(yīng)用途不那么嚴(yán)格的 TIM10。如果你在代碼里開了 TIM10而又不小心把優(yōu)先級(jí)設(shè)成和 TIM1 一樣那 TIM10 的中斷就會(huì)跟控制環(huán)搶執(zhí)行時(shí)間。這種問題的排查很痛苦因?yàn)楝F(xiàn)象像是“偶爾丟中斷”。唯一的辦法是全工程搜索所有定時(shí)器中斷把控制環(huán)中斷優(yōu)先級(jí)設(shè)為絕對(duì)最高其他所有中斷都要讓路。4.4 看門狗和暫停操作帶來的問題ODrive 支持通過上位機(jī)暫停電機(jī)暫停操作本身會(huì)直接關(guān)閉 PWM 輸出但定時(shí)器還在跑。如果你在暫停時(shí)還需要保持控制環(huán)的編碼器讀數(shù)更新那定時(shí)器不能停。ODrive 的處理是暫停狀態(tài)只置標(biāo)志位控制環(huán)還在繼續(xù)跑只是輸出占空比被置為安全值。如果你自己寫代碼時(shí)用了“暫停就關(guān)定時(shí)器”的做法那再啟動(dòng)時(shí)要重新做同步很容易漏掉 PWM 的初始相位同步電機(jī)啟動(dòng)時(shí)會(huì)有彈跳。我的建議是暫停就封 PWM 輸出讓控制環(huán)繼續(xù)空轉(zhuǎn)。4.5 控制環(huán)頻率參數(shù)怎么調(diào)整才安全如果你想試 16 kHz 控制環(huán)不要只改定時(shí)器。你要同時(shí)確認(rèn)三件事ADC 采樣時(shí)間是否足夠短。電機(jī)驅(qū)動(dòng)芯片的硬件過流保護(hù)響應(yīng)時(shí)間是否跟得上。電流環(huán) PI 參數(shù)是否需要重新整定。頻率翻倍后執(zhí)行時(shí)間也翻倍你必須先量測(cè)新的執(zhí)行時(shí)間是否還在控制周期內(nèi)。如果執(zhí)行時(shí)間接近甚至超過控制周期那不用測(cè)也知道結(jié)果——系統(tǒng)完全不工作。我實(shí)測(cè)過ODrive 默認(rèn)狀態(tài)下的執(zhí)行時(shí)間大約在 80 微秒左右升到 16 kHz 時(shí)執(zhí)行時(shí)間會(huì)略長(zhǎng)但依然有裕量。問題是 PID 參數(shù)需要重調(diào)不然同樣的帶寬目標(biāo)下離散化誤差變了增益也需要調(diào)整。5. 斷電重啟后時(shí)基配置的校驗(yàn)與調(diào)試5.1 上電初始化順序的講究ODrive 的初始化順序是有講究的先初始化時(shí)鐘樹再初始化 GPIO再初始化定時(shí)器最后配置中斷和全局變量。如果你把定時(shí)器初始化放在編碼器接口初始化之前有的編碼器接口配置會(huì)順手把定時(shí)器的重映射改掉導(dǎo)致時(shí)基計(jì)算對(duì)不上。調(diào)試的時(shí)候我建議你在定時(shí)器初始化函數(shù)里加一個(gè)斷點(diǎn)打印 ARR 和 PSC 的最終值先確認(rèn)這兩個(gè)數(shù)和你預(yù)期一致。然后再往下走等跑到控制中斷里再打印讀到的編碼器值確認(rèn)真實(shí)物理量進(jìn)入系統(tǒng)。5.2 一個(gè)快速驗(yàn)證時(shí)基是否穩(wěn)定的技巧想讓控制環(huán)穩(wěn)定運(yùn)行你可以不用 PID 輸出先做開環(huán)測(cè)試。給一個(gè)固定占空比跑起來看電機(jī)是不是勻速轉(zhuǎn)動(dòng)。如果電機(jī)轉(zhuǎn)動(dòng)時(shí)有明顯的卡頓感說明控制執(zhí)行頻率不穩(wěn)定或者 PWM 更新時(shí)機(jī)不對(duì)。這個(gè)測(cè)試簡(jiǎn)單但非常有效它能幫你把“時(shí)基問題”和“控制算法問題”分離。時(shí)基不穩(wěn)后面調(diào)什么都白搭先解決基礎(chǔ)問題再往上層走。5.3 關(guān)于調(diào)試接口是否影響時(shí)基的說明很多人開著調(diào)試器跑電機(jī)的時(shí)候發(fā)現(xiàn)電機(jī)聲音跟拔掉調(diào)試器不一樣。這不是錯(cuò)覺。調(diào)試器的實(shí)時(shí)跟蹤機(jī)制會(huì)影響 CPU 執(zhí)行效率如果開啟了DEBUG_MODE里的 trace 或者頻繁斷點(diǎn)控制環(huán)的時(shí)間微調(diào)會(huì)受影響。我的建議是關(guān)閉 J-Link 的實(shí)時(shí)數(shù)據(jù)請(qǐng)求盡量不要在中斷里打斷點(diǎn)。每次打斷點(diǎn)中斷服務(wù)函數(shù)的時(shí)間特征都不一樣。你可以把數(shù)據(jù)寫到內(nèi)存里等停了再讀效果遠(yuǎn)好于打斷點(diǎn)。6. 寫在最后的個(gè)人實(shí)操心得說實(shí)話我自己第一次讀 ODrive 源碼的時(shí)候最大的感受不是它的 FOC 算法多精妙而是它對(duì)“時(shí)間”這件事的認(rèn)真程度。每一段代碼都在小心翼翼地維護(hù)一個(gè)確定性的時(shí)間節(jié)奏。這種節(jié)奏一旦被打破什么高級(jí)算法都救不回來。從定時(shí)器時(shí)基到 8 kHz 控制環(huán)本質(zhì)上就是在回答一個(gè)問題你憑什么保證每隔 125 微秒做一次一樣的動(dòng)作答案是用硬件定時(shí)器用嚴(yán)格的優(yōu)先級(jí)配置用不阻塞的中斷服務(wù)函數(shù)用預(yù)裝載寄存器來同步輸出。如果你打算在自己的工程里復(fù)刻這套機(jī)制先別急著抄代碼先把下面這幾個(gè)問題想明白你的控制頻率是多少為什么是它你的時(shí)基用的是哪個(gè)定時(shí)器它和 PWM 是什么關(guān)系你的中斷服務(wù)函數(shù)里有多少事在做是不是有不必要的操作你的中斷優(yōu)先級(jí)配對(duì)了沒有還有沒有其他中斷在執(zhí)行時(shí)阻塞了控制環(huán)把這些問題的答案寫下來再做代碼移植你會(huì)發(fā)現(xiàn) ODrive 源碼瞬間“透明”了。最后再分享一個(gè)小技巧調(diào)試時(shí)把控制環(huán)執(zhí)行時(shí)間、控制頻率、PWM 占空比更新延遲這幾個(gè)參數(shù)做成變量塞進(jìn) ODrive 自己的日志系統(tǒng)里用上位機(jī)實(shí)時(shí)拉曲線。我靠這個(gè)方法排查過好幾個(gè)詭異的問題——某個(gè)變量看起來是平均值正常但瞬時(shí)值已經(jīng)跑飛了。這種級(jí)別的排查光靠看代碼是看不出來的。下一篇文章我會(huì)繼續(xù)拆解電流環(huán)的代碼重點(diǎn)講 Clarke/Park 變換在固件里怎么寫的、電流 PI 調(diào)節(jié)器的抗飽和機(jī)制以及 SVPWM 那段代碼背后的數(shù)學(xué)原理。到時(shí)見。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
只有精品视频在线观看| www.99视频| www.综合久久| 欧美一级a | 久久九九怡红院| 4399无码视频| 这里只有精品免费视频| 久久总和99| 婷婷五月AV| 日韩久久色| 久久激情四射| 疯狂做受XXXX高潮A片| 九九性爱网| 日本www五月婷婷| 996精品热视频| 免费观看全黄做爰的视频| 九九在线视频| 九九这里只有精品| 激情深爱综合网| tingtingjiqingwuyue| 久久一操| 超碰免费观看| 色综合77777| 丁香婷婷色五月| 婷婷丁香激情综合色情| 深爱激情69热| 99国产这里只有精品| 99婷婷五月天| 激情五月伊人婷婷| 97色色色色色色色色色色色色色| 婷婷五六日| 思思99久久| 在线五月婷| 午夜天堂一区人妻| 亚洲欧洲中文日韩久久AV乱码| 一级黄色影片| 伊人婷婷五月天| 狼友视频在线观看18| 五月天天天色| 天天骑天天操| 伊人狠狠丁香婷婷综合尤物| 九热精品| av狠狠操| http:色情日本com| 婷婷五月天综合亚洲| 亚洲色婷婷| 色婷婷丁香五月| 久久性刺激| 婷婷天天五月天| 成人AV在线电影| 婷婷金品综合视频| 天天插天天射| 婷婷色五月大香蕉在线| 色婷婷色和| 国产婷伊人| 九九无码| 任我干视频在线观看| 国产看真人毛片爱做A片| 国外亚洲成AV人片在线观看| 国产69久久久欧美黑人A片| 五月天婷婷色| 天堂伊人干| 久久综合五月天激情小说网站 | www,8050,午夜三级| 狠狠综合| 玖操97| 人人射av| 夜夜操夜夜操| 97久久久| AV片一区在线观看| 大香久久伊人网| 五月婷婷97| 99热一本久道| 99久久久国产大片区| 狠狠操天天操| 婷婷草| 日本色狠狠| 天天色天天| 色婷婷www| 99热国产| 无毒黄色网址| 久久久精品视频79| 99爱免费在线视频| 婷婷97碰碰| 色五月婷婷综合| 九热视频| 91久久九| 激情五月天在线观看婷婷| 天天摸天天舔天天爽| 99热九九在线| 91热99| 婷婷操逼| 九色地址91视频| 九九色影院| 婷婷五月天伊人在线| 玖久精品视频9| 日日操日日爽| 这里只有精品免费视频| 操逼五月天| 色婷婷成人网| 99免费热视频| 激情五月天丁香| 99碰碰。| 99在线观看精彩视频| xxx日本东京热| 丁香成人五月天| 97操操操| 538任你爽视频不一样的| 二人电影免费版在线观看| 欧美婷婷五月天综合| 成人精品亚洲性爱| 99精品丁香五月| 国产精品视频网| 五月婷在线| 婷婷五月丁香婷婷| 九九成人| 最新av在线观看| 色五月丁香五月五月婷婷| www99热| 99热精品中文字幕| 亚洲AV第二区国产精品| 狠狠干五码| 我爱大香蕉| 婷婷五月天VI| 五月婷婷色男女| 六月丁香婷婷综合在线| 九久九精品| 久久er免费视频| 六月激情久久| 九九久久9 9在线观看| 五月丁香婷婷啪啪| 婷婷午夜精品久久久| 大香蕉在九| 亚洲中文字幕av| 丁香五月网在线观看| www.久久爱| 色婷婷色和| 色婷婷六月激情| 夜夜久久综合网| 激情综合视频| 日日射天天射| 久久精品国产精品| 99re这里只有精品视频6| 91久久五月天| 婷婷久久内射| 97人人做| 99热综合在线| 色五月天堂| 久久综合香蕉国产国产蜜臀AV| 怡红院院在线导航网| 五月天婷综合| 久久色五月| 深爱激情六月天| 婷婷五月天天| 99热这里只有精品 搜| 色色色热| 天天人人天天爽| 99亚州综合精品成人网| 五月色在线| 综合狠狠干| 亚洲图色五月天| 99精品爱| 激情五月瑟瑟| 六月婷婷色色色| 色欲色香综合网站| 欧美日韩成人高清在线| 五月丁香久久久久| 婷综合| 伊人久久大香线蕉av一区| 懂色AⅤ| 激情综合网婷婷五夜| 亚洲五月天综合| 可以免费观看的AV| 欧美美女国产日韩一区二区久| 激情五月婷婷| 五月丁香网中文字幕| 五月婷婷六月天| 国产欧美日韩性爱| 久草热8精品视频在线观看| 久久婷婷视频| 中文字幕日本最新乱码视频| 丁香婷婷在线| 亚洲一级AV在线免费播放| 丁香五月六月婷婷怡红院| 国产精品男人AV不卡| 中文字幕性爱丰满| 噜噜狠狠色综合久| 婷婷五月天成人视频| 色五月无码| 五月丁香六月婷婷久久| 丁香婷婷久久激情| 久久久久久99日本| 噜噜操操| 五月激情六月| 超碰免费人人肏| 99re这里| 97成人丁香婷婷| 99精品在线| 婷婷五月天激情视频| 2025超碰| 九九热99免费视频| 色狠狠伊人久久五月丁香| 无码少妇高潮喷水A片免费| 乱抡小BB| 九九综合网色全集 | 五月丁香婷婷基地| 综合深爱五月| 综合婷婷久久| 99视频在线观看视频| 日韩AV免费看| 婷婷伊人久久| 激情综合网亚洲色图| 国产综合丁香五月天| 日本久久人| av大香蕉| 色色婷婷婷丁香五月天| 99九九精品| 深爱激情网噜噜色| 综合久久综合久久| 亚洲成人日韩无码精品| 婷婷五月天堂| 亚洲色情网站| 快乐婷婷五月天| 新激情五月天| av色色国产| 99热精国产这里只有精品| 国产44页| www.超碰97| 天天操夜夜操| 热99热9| 久99久热| 九九热99久久99| 五月天天天色| 五月丁香六月婷婷啪啪| 人妻操操色| 99色五月| av网站免费在线| 99在线观看| 色欲资源网| AV网站免费在线| 欧美情色一区| 亚洲成人综合在线| 五月丁香婷婷综合久久| 色婷婷社区| 久热这里只有精品性色AV| 激情碰碰碰| 激情五月婷婷视频一区二区三区| 丁香婷婷色情| 99精品视频免费| 欧美久久五月婷婷| 99久久99视频只有精品| 人妻AV在线观看| 99干免费视频| 嫩BBB搡BBBB榛BBBB| 停停五月色宗合| 九九婷婷五月天影视| 人人操插| 99热在线中文字幕| 日韩综合久| 1024国产在线| 黑人糟蹋人妻HD中文字幕| 久激情网| 色综合久久88色综合天天99| 五月丁香网站| 丁香成人五月天| 亚洲综合丁香婷婷六月天| 五月婷婷色影院| 色婷婷四虎| 国产精产国品一二三在观看| 五月激情在线| 久久伊人大香蕉| 九九热99视频| 亚洲天堂热| 五月婷视频| 大陆肏屄视频| 色五月婷婷内射| 国产一区男女| 丁香婷婷色五月合集| 婷婷五月天激情文学小说| 色婷久九| 亚洲综合五月天婷婷丁香| 激情五月瑟瑟| 亚洲狠狠婷婷| 91无码视频| 丁香五月大香蕉AV| 棕合影院色色| 影音先锋色婷婷| 六月丁香色色色| 婷婷香蕉视频| 啪啪东京热| 99综合99| 色女人久久| 久久人人九| 九九人人看| 98色丁香五月婷婷综合网| 五月色丁香婷婷综合| 亚洲黄色操逼| 国产a视频| 一级无码作爱片| 久久婷婷桃花五月天| 六月婷欧美丁香综合| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 97资源欧美日韩大香蕉超碰一区| 色哟哟精品| 99爱爱| 亚洲精品视频在线| 五月色综合| 亚洲精品无码一区二区| 99国产99| 婷婷激情四射网| 久久色五月| 久久久www| 久热大香蕉| 天天爽在线视频| 婷婷丁香视频在线观看免费| 亚洲色色精品| 啪色综合| 婷婷五月天在线观看| 91se精品国产| 亚洲视频操| 色色操| 午夜爱爱爱成人| 久久这里只有国产精品视频| 狠狠操综合| 色五月成人| 久久性爱视频| 婷婷久久欧美| 成人午夜无码视频| 色欲资源网| 久久天堂| 丰满少妇猛烈A片免费看观看| 婷婷中文字幕网站| www.婷婷五月天| 久久亚洲A| 99爱最新免费视频在线观看| 思思99热| 伊人无码高清| 欧美三级黄色片久久| 激情综合五月| 激情五月综合网最新 | 久久sp免费视频| 五月丁香婷婷久久| 五月婷婷开心丁香| 99re思思久久| 亚洲婷婷综合视频| 五月丁香六月婷婷精品| 五月婷婷丁香网| 色色婷婷五月| 伊人久热91网| 成人小说 五月天 婷婷| 婷婷97碰碰| 成人国产欧美大片一区| 午夜九九九九九九九九九九九九九| 久久五月天精品视频| 99爱免费视频| 裸睡玩奶头(高H)| 六月激情丁香一道本7777| 久久色频| 五月天丁香| 熟妇内谢69XXXXXA片| 成人中文字幕在线| www.夜夜騎夜夜狠| 色婷婷亚洲婷婷| 久久久久久18| 天天草天天日| 五月天色图| 9久9久| 丁香五月婷婷六月婷| 天天干天天拍| 99视频在线看| 99色在线观看| 激情久久久| 天天激情| 六月成人网| 欧美 日韩 成人 在线| 韩国久久少妇视屏| 亚洲精品一区中文字幕乱码| 操操操操操操婷婷五月天| 日韩无码色色| 99九九精品视频推荐| 热99精品视频在线观看| 91成人电影| 99热超碰人| 一区二区三区四区五区| 精品久久久人妻| 婷婷丁香综合| 久久机热/这里只有精品| 在线观看国产高清视频免费网站 | 91婷婷丁香五月天免费视频网站| 中文资源在线a| 久久久久久久久久久久久久久久久精典| 看婷婷五月天网| 激情 婷婷| 色色综合五月| 欧美日韩一区二区三区四区| 99色在线观看视频者| 色黑鬼导航| 99色婷婷视频| 精品人人操| 五月天婷婷社区| 色婷婷丁香AV综合| 久久开心五月天激情| 香蕉婷婷五月| 色婷婷激情视频| 99只有精品| 深爱丁香网| 久久99热这里只有精品| 色噜噜狠狠色综合无码久久欧美| 久久机热/这里只有精品| 五月天丁香成人社| 亚洲永久免费| 大香蕉五月丁香| 大香蕉久久久久| 97亚洲婷婷| 日熟女| 日韩日比视频| 九色视频91| 色9999日韩国产| 色播婷婷大香蕉| 婷婷五月天AV在线| 国产精品久久..4399| 性爱网五月天| 六月婷婷无码| 激情五月天天| 五月天婷婷视频小说| 99热99操| 国产超碰在线| 79精品在线视频| 99精品成人无码A片观看金桔| 欧美五月丁香在线| 日本女色人人| 26uuu精品一区二区| 综合久久首页| 99热亚洲精品| 天天情色五月天| 成人 AV播放| 五月婷婷五月天| 成人网站免费在线播放| 99热久| 思思re视频在线| 影音 五月 婷婷 久久| 九九热这里只有精品在线观看| 综合久久伊人| 久久久久er热| 五月丁香伊人网| 亚洲视频码| 久久久无码精品成人A片小说| 五月色婷婷影院| 激情六月婷婷| 久久色五月天激情小说| 亚洲午夜视频| 久久人妻熟女一区二区| 五月婷婷激情中文字幕| 青青操avbb| 激情婷婷五月综合| 婷婷五月天电影网| 99视频这里有精品免费观看| 激情五月综合| 97碰精品| 天天做天天爱| 欧美日韩AAAA| 国产xxxxx在线观看| 大香焦啪啪啪| 色吧五月| 天天婷婷| 亚洲色婷婷婷婷人人爽| 亚洲AV无码影院| 99热免费精品热久久66| 婷婷五月丁香国产| 夜夜干天天操| 播播网色播播| 成人婷婷深爱综合网| 亚洲久艹| 日本不卡一区二区三区| 视频一二区| 婷婷舔| 九九色院| 色六月 婷婷| 亚洲av网站| 天天射夜夜骑| 五月丁香啪啪啪免费看| 婷婷精品综合| 婷婷婷久久| 五月天成人小说| 婷婷丁香成人五月天| 天天综合情| 五月色丁香婷婷综合| 日韩aaa| 日本颜色视频人人爱| 五月婷婷色播视频| 六月丁香综合| 日韩xx在线| 中文字幕乱码亚洲精品一区| 99性视频| 天天操B| 精品久久66| 天天干,天天舔| 亚洲无aV在线中文字幕| 色情成人五月天| 五月婷婷六月激情| 日韩无码专区| 色婷婷五月色| 99热这里有精品| 丁香六月毛片| 中文不卡一二三区| site:esunnet.com| 色五月天丁香| 久久婷婷网| 亚洲第二AV| 69热91天堂| 禁欲电影完整版在线播放| 亚洲综合五月天婷婷丁香| 婷婷五月天激情网站| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 超碰在线9| 99精品免费欧美小视频| 婷婷五月骚厕所| 国产 码在线成人网站| 99热99久久| 五月天天视频| 五月天色影院| 深爱婷婷网| 99re鈥哸鈥唙| 色婷婷亚洲婷婷在线观看| 99热日韩| 日韩99色99| 亚洲bt丁香五月天婷婷激情小说| 久久久久久丁香五月| 第四色婷婷色五月| 久久久99精品| 五月激情婷婷开心| 色爱五月天| 五月激情婷婷丁香天堂| site:pnnrt.com| 日本五月婷婷| 丁香五月手机在线| 色五月激情五月天| 99热这里都是精品| 色99视频| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 99热这里都是精品| 成人短视频在线| 久99视频| 日日做A爰片久久毛片A片英语| 成人无码髙潮喷水A片| 少妇高潮呻吟A片免费看软件 | 久久综合9| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 五月天色五月| 色爱综合网| 亚洲五月婷婷| 曰韩五月丁香色婷婷无码| 久久婷婷原创视频| 欧美成人日韩| 丁香五月亚洲AV| 激情综合网五月天天| 天天综合图片| 久久a热| 男人天堂99| 99热这里只有精品9| 色狠狠伊人久久五月丁香| 成人深爱丁香五月| 天天搞天天色综合| 五月久久婷婷| 日本精品人妻无码77777| 色青青电影色五月| 五月天婷婷情色| 99热99在线| 久久99热精品a片在线观看| 深夜A片| 夜夜撸夜夜骑| 99热精品在这里| 国产婷婷色综合AV蜜臀AV| 31色区视频免费看| 国产成人高清| 丁香六月 婷婷六月| 亚洲丁香网| 五月婷婷六月丁香综合在线| 六月丁香婷婷综合狠狠爱夜夜爱| 六月丁丁香| www,99热在线观看| 少妇高潮一区二区三区99欧美| a色色色色色| 丁香五月综合福利视频导航| 天天做天天爱天天爽| 天天射综合网站| 极品少妇XXXX精品少妇偷拍| 五月狠狠| 第2色五月婷| 六月丁香VA| 激情综合色网| 婷色天堂| 色综合久久888| 2023天天日夜夜爽| 五月丁香啪啪啪综合网| 狠狠色丁香乆乆| www.91在线观看| 无码人妻一区二区三区四区| 天天天综合网| 538在线精品| 九九综合网色全集| 少妇口诉沐足视频播放器网址| 婷婷 伊人 久久| 婷婷综合视频| 久久婷婷色情7777网站| 日韩久久这里只有精品| 大香蕉五月天婷婷| 激情婷婷综合网| 六月丁香婷婷综合色播| 国产成人高清| 亚洲av另类在线观看| 97久久人人| 丁香五月婷婷手机| 大战熟女丰满人妻AV| 99人人干人人| 天天射综合网夜夜操| 婷婷激情六月| 9999热在线免费观看| 婷婷丁香五月天小说| 五月天婷婷影院| 99干免费视频| 色婷婷六月开心中文字| 五月天狠狠网站| 亚洲久久激情| 亚洲精品无码99热| 快乐激情五月色婷婷| 久狠狠| 五月丁久久| 成人精品一区二区三区四区五区| 91激情五月开心| AV在线不卡播放| xxxx五月| 91丨九色丨东北熟女| 黄久久久| 色婷婷六月丁香综合欲精品| 国产肥白大熟妇BBBB视频| 久久久久久久丁香五月天婷婷| 五月婷婷视频在线观看| 97伦色婷婷| 欧美丁香六月激情视频| 六月婷婷色综合| 狠狠操综合| 丁香久久久| 超碰在线网站| 婷婷色基地| 99色色网| 99久热| 99啪啪网| 久久久久久9| 亚洲五月天婷婷| xxxx五月天色色| www.六月丁香看AV| 午夜不卡久久精品无码免费| 天天狠狠色噜噜| 99色在线| www 五月天 com| 欧美成人精品A片免费一区99| 欧美丁香婷婷天天操| 97AV在线视频| 亚洲精品影视| 丁香六月婷婷综合| 成人天天爽| 五月丁香啪啪| www·五月天| 欧美精品XXXXBBBB| 日本成人噜噜噜噜噜| 国产看真人毛片爱做A片| 日韩黄黄| 97在线观视频免费观看| 婷婷五六月丁香| 婷婷五月天成人网| 色婷婷在线综合色播网| 综合色在线| 色色色色色色综合| 丁香婷婷午夜| 大天天伊人| 骚五月婷婷| 在线中文av| 91人妻色色网| 精国产品一区二区三区A片| www.人人操人人看人人想人人摸 人人人人操,COM | 色五月婷婷基地| 中日韩美欧成人一区二区精品在线| 亚洲天堂啪啪| www.zbzhongsen.com| 久久久99久久| 日本狠狠干| 五月丁香亚洲综合网| 中文字幕精品推荐免费在线观| 天天爽天天摸人妻综合网| Www.狠狠| 国产99热| 欧美性爱特黄一级aaaassss| 久久久久九九九九视屏小说88| 思思热久热| 超碰色综合| 极品精品一区二区三区在线| 六月婷婷激情| 国产成人片| 91免费在线视频6| 成人电影AV在线观看| 久久久激情视频| 六月天婷婷| 日日做夜夜爱| 婷婷综合天堂| 色色色婷婷五月| 激情五月综合| 久久99免费视频网站| 97欧美在线| 婷婷五月综合欧美在线播放| 久9热在线免费观看| 超碰久热| 66精品成人免费网站在线观看| 人人色人人弄人人操| 欧美色色色色色色| 有码人妻久久| 九九热99熟女| 8090在线影视少妇| 97在线综合| 婷婷五月天色网久| 中文资源在线a | 色另类五月天| 成人视频在线免费播放| 国产精品第一国产精品| 五月天婷婷綜合院| 五月www| 91九色超碰| 97在线精品| 乱轮A片| 激情综合婷婷五月| 午夜日韩久久久网站| 天天插天天射| 久色激情| 啪啪六月婷婷| 草美女在线观看视频在线播放| 久久九九精彩| 任你躁XXXXX麻豆精品| 高清无码网址| 青青草原精品久久| 婷婷日在线观看| 99久精品视频| 婷婷婷婷婷婷婷婷婷婷丁香| 婷婷伊人綜合中文字幕小说| 播五月,色五月,开心五月播放器| 成 久久| 99免费综合网| www.9797国产| 激情五月婷婷在线区| 国产老熟妇亲子乱对白| 狠狠色丁香久久综合婷婷亚洲成人福利 | 九月婷婷| 99ri视频在线播放| av免费人人| 婷婷五月天天| 丁香五月,开心五月,成人婷婷| 五月丁香综合影院| 91狼友视频网页更新| 激情综合婷婷| 俺去也五月| 无码动漫av| 色综合激情| 五月中旬婷婷丁香六| 5月色亭亭视频| 日韩无码专区| 九九九日本熟女| 色婷婷五月成人网| 丁香六月成人网| 老师高潮流白浆喷水的A片| 国产成人精品一区二三区熟女在线| 婷婷精品在线| 国产美女视频久| 五月丁香五月婷婷在线观看| 色丁香婷婷美女视频网站| 丁香婷婷射| 色婷婷久久综合久色| 天天久久66xxx| 亚韩在线视频| 亚洲天堂99| 亚洲旡码| www.久久| 中文字幕成人| 色色婷婷五月| 亚洲成人综合在线| 99在线精品视频观看免费下载| 99A级片| 色婷婷播放| 九97免费视频| 97成人丁香| 免费超碰在线| 久久综合五月| 大香蕉伊人99| 激情综合网址| 噜噜色天天开心| 思思热天天看| 婷婷激情六月综合| 天天日夜夜草进麻麻的子宫| 丁香五月天欧美| 六月色五月天天婷婷| A久网| 人草人人| 五月丁香六月婷婷久久肏| 中文久久婷婷| 婷婷丁香人妻天天爽| 久久免片| 日韩黄色中文字幕| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 九九热最新| 色色激情网| 日韩AAAAA| 欧美私人家庭影院| 色婷婷综合久久| 97热超碰| 久久女人天堂| 成人五月天在线视频在线观看 | 99热精品在线观看| 精品影院| 色五月婷婷影视| 成人永久免费视频在线观看| www99热| 激情丁香淫荡婷婷| 五月丁香六月婷婷综合网站| 五月天狠狠色| 大香蕉手机视频| 天天成人综合视频| 九九精品在线观看视频6| 大婷婷色呦呦噜噜色呦呦噜噜| 国产亚洲99久久精品| 丁香五月天激情| 3DAV亚洲香蕉久久 一区二区| 亚洲无aV在线中文字幕| 精品国产va久久久久| 丁香5月啪啪| 噜一噜在线| 激情五月天色播| 久在线综合69| 色伊人婷婷| 青青草六月丁香| 五月婷婷免费在线视频| 丁香六月啪| 婷婷酒色网| 成人av免费观看| 少妇口诉沐足视频播放器网址| 99综合| 激情六月婷婷| 热久久这里只有三级视频| 五月婷婷六月丁香综合| 亚洲噜色| 色丁香久久| 欧美精品狠狠色丁香婷婷| 色七七九九| 69激情小说| 九月综合| 伊人喵咪a V| 五月天堂色| 五月激激激情综合网| 日韩欧洲亚洲| 字母不卡码人逼| 国产韩日亚洲美州欧亚综合在线| 九九亚洲视频| 人人操AV| 色九月欧美| 天天色色婷婷| 日日爽夜夜爽| 五月丁香偷拍| 天天射天天射一道本日本社区 | 丁香婷婷九月| 69色色视频| 婷婷五月丁香五月| 香蕉大综综综合久久| 婷婷九月丁香久久| 色色网站在线| 久久伦乱| 青青草成人网| 亚洲视频在线观看| 久久黄A片| 五月开心久久| 丁香五月停停av| 天天爽成人综合网站| 噜噜狠狠色综合久| 婷婷在线日韩综合| 天天做天天要天天爽| 亚洲无码播放| 天天色99| site:feetmall.com| 伊人无码高清| 免费黄色视频网址| 日韩久热| 色爱综合五月| 九九99一区| 久久久国产精品黄毛片| 国产中文亚洲欧美日韩性交| 天天干天天叉| 色五月婷婷在线观看第一页舔| oumeisesewang| 九九久久综合| 丁香五月首页| 大香蕉久久婷婷精品综合| 大香蕉久久久久久久久| 丁香久久五月天视频在线观看| 国产这里只有精品| 婷婷久久亚洲| 五月婷久久| 人人性久久| 区美毛片子| 色婷婷五月影院| 99精品免费| 欧美色偷偷大香| 丁香五月婷婷在线观看| 一本婷婷丁香久久| 亚洲色vA| 婷婷五月天渟渟| 五月天精品综合在线| 婷婷婷狠狠| 五月激情丁香五月宗合| 亚洲V国产V欧美V久久久久久 | 狠狠色丁香久久婷婷综合五月| 韩国三级五月天婷婷。| 色婷婷色综合| 岛国AV网| 嫩草视频观看| 黄色三级日本| 九月丁香亭亭| 一本色道久久综合狠狠躁小说| 妇激情基地| 99视频| 久久草人妻| 大陆极品少妇内射AAAAAA| 五月丁香色色综合| 欧美成人猛片AAAAAAA| 色综合播放| 岛国在线观看91| 久久色这里只有精品| 色yeye欧美| 久久综合五月天| www.色婷婷.com| 99热精品观看| 成人日韩欧美| 伊人六月丁香婷婷| 91蝌蚪窝视频在线| 成人婷婷深爱综合网| 51精品国自产在线| 国精产品一区二区三区| 精品国产一区二区三区四区阿崩| 99精品无码网站| 精品婷婷丁香五| 天天日天天草| 在线成人网址| 五月丁香福利| 五月色婷婷综合色| 亚洲无码影音| 丁香五月天在线观看| 成人综合视频在线| 这里只有精品视频99| 天天色五月| 96自拍视频九色在线观看| 婷婷五月图片小说视频| 无码动漫av| 婷婷金品综合视频| 精品一区二区三区木瓜| 色播激情婷婷| 91九色网| 亚洲综合视频一下| 色色色婷婷| 99久久99久久综合| 激情五月婷婷综合色播小说| 狠狠色丁香久久| 泰州成人视频| 国产精品热搜丁香五月婷婷| 五月天综合久久丁香91| 中文字幕欧美日韩VA免费视频| 色色射| 久久婷婷亚洲| 99色在线观看视频者| 91久久九久久九久久九久久九久久| av 一区三区四区| 两性婷婷丁香五月| 久久九色| 九九热精品6| 99热在线精品播放| 性爱激情五月| 丰满人妻一区二区三区| 日本色婷婷五月天成人电影| 国产精品24r| 91精品综合久久久久久五月丁香| 这里只有精品9| 久久精品9| 婷婷伊人综合| 色吧五月婷婷| 五月婷婷免费在线视频| 深爱激情AV| 久久婷婷夜| 亚洲狠狠终合停停终合| 丁香五月婷婷亚洲综合精品| 天天天天天天天操| 色综合大香蕉| 91成人看| 成熟妇人A片免费看网站| 久久婷婷五月天蜜桃| 久久黄色网扯| 在线99色| www,99视频| 色婷另类| 99色最新在线视频网站| 日日夜夜狠狠婷婷色| 黄页免费一级视频懂色| 亚洲熟妇AV乱码在线观看| 91激情五月开心| 天天干com| 色网站99| 激情久久肏屄视频| 欧美婷婷丁香五月| 青青草免费公开视频| 六月婷婷综合| 伊人五月综合网| 欧美婷| 婷婷色五月综合丁香| 99视频久久久| 婷婷国产五月天17c| 婷婷五月综合在线| 色私五月婷婷| 五月婷婷成人| 噜噜噜精品欧美成人在线观看| 激情综合网络插| 91丨九色丨熟女丰满| 亚洲另类AV| 任你弄在线视频免费| 色色婷婷五月| 色综合色色| 超碰国产在线观看| 这里只有精品免费 | 超碰av在线| 五月丁香久久| 婷婷五月激情视频| 操你av| 婷婷日日天天| 丁香五月骚喷水视频| 91操色| WWW丁香五月| 91久久| 色婷婷欧美| 精品久久婷婷| 91九色欧美| 狠狠爱婷婷丁香| 婷婷丁香黄色| 日本久久极品| 免费在线观看av网站| 国产激情一区| 天堂va久久久噜噜噜久久Va| 国产精品久久久久久喷浆| 久久性爱视频| 国产亚洲在线| www一起操| 久久精品99久久| 香蕉97碰碰碰超视精品| A1片久久| 99视频网址| 欧美熟妇一区二区三区| 五月激情婷婷国产精品久久久久久| 九九色video| 亚洲无码AV片| 久久在线92| 超级黄色片| 操碰99| 丁香五月性爱| 91超级碰碰碰| 久久这里只有精彩| 五月婷婷六月丁香免费| 亚洲一色色色色色色色色| 婷婷激情综合无月| 日本va欧美va精品发布视频| 天天色伊人| 亚洲人妻五月丁香婷婷| 99久久九九| 99热免费| 丁香六月狠狠干| 亚洲色五月天| 1000部毛片A片免费观看| 国产成人精品一区二区三区视频| 国产成人精品一区二三区熟女在线 | 97精品自拍视频| 色五月婷婷综合在线| 超碰色综合| 婷婷激情丁香五月天综合| 久久九九99字幕| 色色色色色色97| 色停停五月,在线观看| 久久99大全| 99精品在这里| 国产视频色色色色色色色| 丁香婷婷影院| 99干99| 玖月婷婷爱丁香| 婷婷五月天99| 激情综合五月婷婷丁香| 九九99久久| 免费看欧美成人A片无码| Caoporn公开| 亚洲AV成人片无码网站| 五月激情四射婷婷丁香| 五月激情综合深爱| 五月婷婷视频| 99色色网| 熟女国产在线一区二区三区四区| 日本色色网站| 婷婷免费成人视频| 日日干天天爽| 五月婷婷欧美| 超碰日韩人妻在线| 操操自拍| WWW.激情| 色播五月网| 丁香五月激情婷婷| 99网址在线观看| 国产在线中文字幕| 亚洲免费99| 色五月五月婷婷| 香蕉AV777XXX色综合一区| 婷婷五月六月丁香| 日本久久综合| 天天爽夜夜爽天天爽夜夜爽| 在线观看婷婷5月| 亚洲乱码精品久久久久.. | 丁香婷五月天| 色噜噜狠狠色综无码久久合欧美| 丁香五月天啪啪| 九九Y精品热播| 五月天国产成人| 人妻内射视频| 亚洲色婷婷| 九月丁香八月婷婷久久综合久97| 激情五月激情综合网一级丸片| 99久久大片| 午夜丁香| 亚洲碰碰碰| 中文不卡一二三区| 91久久久久久久久18| 伊人在线另类| 色五月天丁香| 色www99| 97久久久久| 思思热久热| 激情色色色| AV大片在线观看| 热热久久精品视频| 九热免费视频| 久久久久9| 五月天婷婷久草丁香| 激情五月天无码| 日韩啪啪视频| 丁香花五月天社区| 日本特黄aaaaa| 五月婷婷啪啪网| 五月天婷婷Av| 五月丁香六月婷婷亚洲激情综合| 婷婷99热| 久久久久97| 天天日天天操天天干| 开心激情综合| 99亚洲精美视频在线观看| 久久婷婷五月天激情唯美| 国产日比| 婷婷色丁香五月| 思思热这里只有精品| 激情五月天婷婷播播久久综合91| 日本一级一级一级一级| 五月丁香六月激情视频| 天啪天啪天啪天啪| 停停色综合伊人| av在线资源| 色婷婷电影网| 欧美影院| 99久久精彩视频| 成人丁香五月天| 影音先锋 91工厂| 九九热黄色| 极品色丁香| 婷婷开心激情| 日本欧美啪啪| 丁香五月婷婷影院| 亚洲AV电影av| 开心五月婷| 日木WWW视频| 伊人婷婷五月| 色99色| 丁香婷婷激情五月色| 六月丁香啪啪啪| 九九Av| 99久久婷婷国产综合精品草原| 强伦轩人妻一区二区电影| 色婷婷香蕉丁丁网| 五月婷婷爽爽爽| 天天天天天天天操| 色综色网| 99久久精品网| 天天干在线播放| 婷婷六月色播| 久久se 综合网| 激情婷婷五月天日本系列| 五月天大香焦| 狠狠狠狠操| 久草 tingting| 久机视频这只有精品| 青青草Avb在线| 国产成人99久久亚洲综合精品| 在线免费观看激情视频| 天天日天天草| 热婷婷在线视频| 欧美影院| 色综合久久天天综合网| 91精品无码| 九九精品视频免费在线| 人妻人人操| 午夜九九电影| 琪琪色五月婷婷老师| 99视频网| 色婷久| 色激情五月| 成人日韩欧美| 亚洲精品白浆高清久久久久久| 久久99色色| 91在线观看九区| 人人播| 色色色国产| 丁香婷婷六月男男| 在线中文字幕视频| 中文字幕在线观看视频www| 夜夜骑日日夜夜| 丁香六月婷婷操逼网| 五月天婷婷丁香| 91久久久久久久久18| 色婷婷激情| 婷婷丁香基地在线| 欧美男女婷婷| 激情综合啪啪| 激情婷婷内射| 97色综合| 51XX午夜影福利| 五月丁香婷婷无码A∨| 国产成人精品一区二三区熟女在线| 丁香六月天之亚州热女| 久久九九中文字幕| 亚洲精品99| 中文无码精品一区二区三区| 婷婷五月丁香人妻无码高清| 51XX午夜影福利| 婷婷五月成年人| 丁香婷婷综合影院| 婷婷的99视频网站| 中文不卡一二三区| 九九热内射| 第四色激情网| 婷婷五月天亚洲精品| 一起草aV| 色爱综合网| 国产精品五月天婷婷| 99ri在线视频| 久热在线中文字幕色999舞 | 久久综合五月天| 九九精品热| 色五月婷婷在线观看| 久久久久久久五月婷婷六月丁香综合,开心激情综合网 | 激情九九综合网| www.91九色| 清纯唯美 激情四射| 色五月婷婷网| 婷婷激情五月综合基地|