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

ARTICLE DETAIL

資訊詳情

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

FOC電流采集代碼優(yōu)化:從ADC觸發(fā)到DMA搬運的完整實踐

FOC電流采集代碼優(yōu)化:從ADC觸發(fā)到DMA搬運的完整實踐 做FOC的兄弟如果你點進這篇文章大概率是被那幾行“看起來沒問題跑起來就炸”的電流采集代碼折磨過。這個系列我已經(jīng)寫到第11篇了前幾篇聊了任務調(diào)度、內(nèi)存池、log開銷這些通用優(yōu)化手段今天專門落到一個非常具體的場景上一段跑在STM32或類似MCU上的FOC電流采集程序怎么把它從“能跑”優(yōu)化到“抗干擾、低延遲、CPU占用低”。這篇文章我會按照自己實際調(diào)試的路徑來寫——先看原始代碼有哪些壞味道再用工具量化瓶頸然后給出整套優(yōu)化方案最后是踩坑記錄。不聊虛的每一步都對著代碼和時間數(shù)字說話。1. FOC電流采集性能優(yōu)化的前置認知1.1 電流采集在FOC環(huán)路里的核心地位FOC說到底就是一個“觀電流-換坐標系-算電壓矢量”的閉環(huán)。Clark變換把三相電流采樣值投影到靜止坐標系Park變換再把它轉(zhuǎn)到旋轉(zhuǎn)坐標系得到id和iq然后過電流環(huán)PID反Park變換生成電壓矢量最后SVPWM輸出給逆變器。這套鏈路里第一環(huán)就是電流采集。電流采集慢半拍整個電流環(huán)的相角裕度就會下降。具體來說電流環(huán)的延遲直接加進系統(tǒng)的相位滯后里。如果你采樣延遲從2微秒漲到10微秒在20kHz電流環(huán)下相當于把系統(tǒng)相位裕度拖掉了大約9度左右。如果原來就只留了30到40度裕度這9度延遲完全可能讓電機從“穩(wěn)”變成“嘯叫”甚至“炸管”。我見過不少現(xiàn)場問題電機跑起來低速抖、高速嘯排查了半天不是PID沒調(diào)好而是電流采樣的時機和耗時根本不對。所以做FOC性能優(yōu)化第一個要動的就是電流采集。1.2 為什么電流采樣要放在下橋熱搜詞里有個高頻問題FOC電流采集為什么都要設置在下橋這個要結合三相逆變器的開關狀態(tài)來理解。FOC常用的是雙電阻或三電阻采樣方案。雙電阻方案里采樣電阻串在下橋臂MOSFET的源極和地之間只能在下管導通的時刻采集到對應的相電流。因為上管導通的時候相電流走的是母線上管到電機繞組的路徑不經(jīng)過下橋采樣電阻你根本量不到東西。具體到“什么時候采”這個點業(yè)內(nèi)通用做法是在PWM中心對齊模式的定時器上溢或下溢時刻觸發(fā)ADC。因為在這個時刻三相下橋全部處于導通狀態(tài)至少也要避開死區(qū)和窄脈寬的坑采樣電阻上有完整的相電流流過采集到的值最穩(wěn)定。所以“下橋采樣”不是工程師拍腦袋定的而是由電流物理路徑和SVPWM開關狀態(tài)共同決定的。你只要理解了這一點后面配置ADC觸發(fā)時就不會擰巴。1.3 性能優(yōu)化前先搞清楚要優(yōu)化什么指標看性能永遠先定義指標。對于FOC電流采集代碼我主要關注下面三個數(shù)字。第一是CPU占用率。電流環(huán)中斷如果每50微秒跑一次一次執(zhí)行10微秒那就是20%的CPU花在了電流環(huán)上。如果還能壓到3微秒就能省出大量CPU給上位機通信、觀測器或者其他控制任務。第二是采樣延遲也就是從“電流真實流過采樣電阻”到“電流環(huán)拿到這個數(shù)據(jù)”的時間差。這個延遲包含ADC轉(zhuǎn)換時間、搬運時間、濾波時間和坐標變換時間。門檻就是剛才說的延遲越小相位裕度越充足。第三是采樣噪聲和抖動。ADC觸發(fā)的時刻抖動會導致采樣值抖動如果抖動和電機的電磁噪聲疊加你最后看到的電流波形就是一團毛刺。這會影響電流環(huán)質(zhì)量也會讓轉(zhuǎn)速波動變大。這三個指標互相牽制。CPU占用下去了如果采樣時刻飄了也是白搭。所以優(yōu)化不是單一維度而是整套鏈路一起優(yōu)化。2. 原始代碼的壞味道與性能基線測量2.1 一段很典型的“能用但難受”采集代碼為了說明問題我把一份常見的電流采集代碼簡化后放在下面。這段代碼雜糅了STM32標準庫和部分HAL風格真實項目里往往比這個更亂。// 電流環(huán)中斷PWM下溢觸發(fā)頻率20kHz void TIM_UP_IRQHandler(void) { // 手動觸發(fā)ADC轉(zhuǎn)換然后死等結果 ADC1_StartConversion(); while (!ADC1_GetFlagStatus(ADC1_FLAG_EOC)) ; // 阻塞等待 int16_t adc_val[2]; adc_val[0] ADC1_GetValue(); ADC1_StartConversion(); while (!ADC1_GetFlagStatus(ADC1_FLAG_EOC)) ; adc_val[1] ADC1_GetValue(); // 換算實際電流值 float ia (float)adc_val[0] * K_SCALE - I_BIAS; float ib (float)adc_val[1] * K_SCALE - I_BIAS; float ic -(ia ib); // 低通濾波用的還是double static double ia_flt 0.0, ib_flt 0.0; ia_flt ia_flt * 0.9 (double)ia * 0.1; ib_flt ib_flt * 0.9 (double)ib * 0.1; // Clark變換 float i_alpha ia_flt; float i_beta (ia_flt 2.0f * ib_flt) * 0.57735027f; // Park變換用了正弦和余弦?guī)旌瘮?shù) float sin_t sinf(theta); float cos_t cosf(theta); float id i_alpha * cos_t i_beta * sin_t; float iq -i_alpha * sin_t i_beta * cos_t; // 電流環(huán)PID省略中間代碼 pid_id_run(pid_id, id, id_ref); pid_iq_run(pid_iq, iq, iq_ref); // 更新SVPWM比較值 svpwm_update(); }你第一眼看這段代碼可能覺得“該做的都做了”但真正跑起來就發(fā)現(xiàn)問題很多。最大的問題是阻塞等待ADC轉(zhuǎn)換STM32F103這類MCU的ADC單次轉(zhuǎn)換大約1微秒到幾微秒不等如果你每個PWM周期要采兩路一路等一次光這一項就吃掉好幾微秒。第二個問題是中斷里做低通濾波而且用的double在Cortex-M3/M4上double運算比float慢不少。第三是Park變換里的sinf和cosf雖然加了f后綴但庫函數(shù)還是在中斷里跑了幾百個周期。這些問題單看每一項好像都“還好”累積起來就比較致命。我們實測過這段代碼在一顆72MHz的Cortex-M3上跑一個20kHz中斷的執(zhí)行時間能到13.8微秒CPU占用率27.6%。電機不轉(zhuǎn)的時候沒問題一旦帶上負載電流波形毛刺明顯電機噪音也大。2.2 用IO翻轉(zhuǎn)和邏輯分析儀測性能基線不測量就沒有優(yōu)化。每寫一段優(yōu)化代碼之前我都會先在中斷入口和出口拉高拉低一個測試IO用邏輯分析儀看高電平時間寬度。這個方法土但非常有效能干到幾十納秒的精度。測法很簡單進中斷先GPIO置高出中斷前GPIO置低邏輯分析儀采樣率設到100MHz以上抓幾個PWM周期高電平時間就是中斷執(zhí)行耗時。當時測出的數(shù)據(jù)大致是項目數(shù)值PWM頻率20kHz周期50微秒中斷平均執(zhí)行時間13.8微秒中斷最大執(zhí)行時間15.2微秒CPU占用率27.6%ADC觸發(fā)方式軟件手動觸發(fā)阻塞等待采樣抖動峰峰值約±1.2微秒看到采樣抖動這行你可能就明白了為什么這個電機低速時會有周期性的噪聲。因為電流采樣點前后飄了1微秒以上在正弦波電流的過零點附近這個時間偏移對應不小的電流誤差。這誤差進了電流環(huán)等于給系統(tǒng)加了一個隨機擾動。2.3 明確瓶頸優(yōu)先級先時序后算法面對這段代碼我曾經(jīng)也想過先把sinf換掉、把double換float但實測發(fā)現(xiàn)這些還不是關鍵。核心瓶頸是先“什么時候采”的問題沒解決。軟件觸發(fā)ADC意味著你必須等ADC轉(zhuǎn)換完才能做下一步。你永遠不知道前一次中斷里的其他代碼是不是拖沓了導致這次ADC觸發(fā)晚了。這個機制本質(zhì)上是串行依賴的天生就會引入抖動。所以第一優(yōu)先級是改采樣觸發(fā)方式把ADC觸發(fā)從“軟件觸發(fā)輪詢等待”改成“硬件定時觸發(fā)DMA搬運”。這樣ADC轉(zhuǎn)換和CPU計算可以在時間上重疊起來。等CPU真正拿到數(shù)據(jù)的時候ADC已經(jīng)把該轉(zhuǎn)的都轉(zhuǎn)完了。算法層面的優(yōu)化像濾波、坐標變換可以放到后面做。先把時序理順往往能解決一大半問題。3. 優(yōu)化方案逐步落地從ADC觸發(fā)到DMA搬運3.1 用定時器硬件觸發(fā)ADC替代軟件觸發(fā)針對上面的痛點第一步就是把ADC改成由定時器主動觸發(fā)。STM32的高級定時器TIM1或TIM8在PWM輸出模式上有個很方便的特性可以配置為在中心對齊計數(shù)的上溢或下溢事件時輸出一個觸發(fā)信號給ADC。這樣ADC采樣就和PWM載波嚴格同步了不需要軟件干預。SVPWM的中心對齊模式下定時器計數(shù)值先增后減遞減到0的時刻下溢正好是三相下橋全部導通的窗口中心在這里觸發(fā)ADC采樣是最理想的。配置的核心代碼大致長這樣// 以STM32F407為例使用TIM1的TRGO觸發(fā)ADC1 TIM_SelectOutputTrigger(TIM1, TIM_TRGO_UPDATE); // 或者根據(jù)需求用TIM_TRGO_CC1IF等事件 ADC_InitTypeDef adc_init; // ADC獨立模式12位采樣時間盡量短但保證充足 adc_init.ADC_Mode ADC_Mode_Independent; adc_init.ADC_ExternalTrigConv ADC_ExternalTrigConv_T1_TRGO; adc_init.ADC_ExternalTrigConvEdge ADC_ExternalTrigConvEdge_Rising; adc_init.ADC_Resolution ADC_Resolution_12b; // 其他配置略配置好以后你每次PWM周期內(nèi)不需要再調(diào)用ADC1_StartConversion()ADC硬件會在定時器事件到來時自動啟動轉(zhuǎn)換。這里有個細節(jié)觸發(fā)邊沿要選對。如果你的定時器配置為上溢和下溢都會更新那就需要根據(jù)實際配置選擇沿。常用的做法是配置成僅在向下計數(shù)到0時觸發(fā)一次這樣每個PWM周期只采樣一次。如果你的電流環(huán)需要每個周期采集兩次比如在某些特殊工況下需要兩個矢量作用時刻的電流用于低調(diào)制比下的重構再改成雙觸發(fā)。3.2 打開ADC的DMA模式讓數(shù)據(jù)自動搬運光靠硬件觸發(fā)還不夠因為轉(zhuǎn)換完成標志還是要軟件去查。此時引入DMA就順理成章了。ADC每個通道轉(zhuǎn)換完成后DMA會自動把數(shù)據(jù)從ADC的數(shù)據(jù)寄存器搬到內(nèi)存數(shù)組里不需要CPU參與搬運。配置DMA的要點有兩個一是工作在循環(huán)模式這樣每個PWM周期DMA都會自動搬運一組新數(shù)據(jù)永遠不用重裝二是數(shù)據(jù)長度要和ADC通道數(shù)對齊。DMA_InitTypeDef dma_init; dma_init.DMA_Channel DMA_Channel_0; // ADC1對應DMA2 Stream0按芯片手冊選 dma_init.DMA_PeripheralBaseAddr (uint32_t)ADC1-DR; dma_init.DMA_Memory0BaseAddr (uint32_t)adc_buffer; dma_init.DMA_DIR DMA_DIR_PeripheralToMemory; dma_init.DMA_BufferSize 2; // 兩路電流采樣 dma_init.DMA_Mode DMA_Mode_Circular; // 循環(huán)模式 dma_init.DMA_PeripheralInc DMA_PeripheralInc_Disable; dma_init.DMA_MemoryInc DMA_MemoryInc_Enable; dma_init.DMA_PeripheralDataSize DMA_PeripheralDataSize_HalfWord; dma_init.DMA_MemoryDataSize DMA_MemoryDataSize_HalfWord; dma_init.DMA_Priority DMA_Priority_High; dma_init.DMA_FIFOMode DMA_FIFOMode_Disable;DMA模式下CPU完全不用等ADC。電流環(huán)中斷觸發(fā)時直接讀adc_buffer[0]和adc_buffer[1]即可。注意要用volatile修飾緩沖數(shù)組否則編譯器可能在優(yōu)化時把兩次讀數(shù)組重排或直接緩存到寄存器里讀到舊數(shù)據(jù)。內(nèi)核里有一個非常反直覺的坑——你讀DMA緩沖時DMA可能正好在搬運新數(shù)據(jù)。雖然循環(huán)模式下ADC的兩個通道是順序轉(zhuǎn)換的但如果你在PWM中斷里讀到的兩路數(shù)據(jù)分別屬于兩個不同的PWM周期那你用來算Clark變換的ia和ib就不是同一時刻的電流值會產(chǎn)生額外的相位誤差。解決辦法有兩個要么在PWM中斷里讀數(shù)據(jù)時先關DMA再讀再開DMA這種方法如果操作不當會丟失一個觸發(fā)事件不一定好要么配置ADC為注入組單次掃描模式用注入組轉(zhuǎn)換結束事件觸發(fā)中斷保證兩個通道是同一批次轉(zhuǎn)換出來的。我個人更推薦后者因為它從機制上保證了兩個值的時間一致性。3.3 電流環(huán)中斷瘦身只留真正必要的計算硬件觸發(fā)和DMA解決的問題是“采集過程不占用CPU時間”。但中斷里仍然存在一些不合理的計算。先看濾波部分。有些工程師習慣把低通濾波放在中斷里但我們得想清楚FOC電流環(huán)本身就是一個帶寬很高的環(huán)路你砍掉高頻噪聲是可以的但如果濾波太深會把有用信號也削掉。比如你用0.1的系數(shù)做低通等效帶寬可能已經(jīng)低于電流環(huán)帶寬了這會導致相位延遲增大。更穩(wěn)妥的做法是如果ADC采樣毛刺不是特別嚴重直接用硬件層面優(yōu)化。比如把ADC采樣時間從1.5周期加到3個周期讓采樣電容充分充電毛刺往往就下來了。實在需要軟件濾波優(yōu)先用一階IIR系數(shù)選0.7到0.9之間別低于0.7。再來看坐標變換時的sinf和cosf。我理解很多人圖省事直接用數(shù)學庫但它的實現(xiàn)里包含精度和兼容性考慮往往不是最快的。FOC里角度theta的變化是有規(guī)律可循的在很多項目里可以把sin/cos表做成512點甚至1024點的查找表查表加線性插值的誤差足夠小速度卻快很多。3.4 用查表替代實時三角函數(shù)計算舉一個具體例子。假設電機最高電頻率是500HzPWM頻率20kHz也就是每個電周期有40個PWM周期。如果用512點sin表每次查表之間角度步進是360/512約等于0.7度對電流環(huán)來說精度已經(jīng)足夠好了。查表法實現(xiàn)如下#define SIN_TABLE_SIZE 512 #define SIN_TABLE_MASK (SIN_TABLE_SIZE - 1) // 建表時一次性算好 static float sin_table[SIN_TABLE_SIZE]; void sin_table_init(void) { for (int i 0; i SIN_TABLE_SIZE; i) { sin_table[i] sinf(2.0f * PI * i / SIN_TABLE_SIZE); } } // 查表線性插值 float fast_sin(float angle_rad) { float index_f angle_rad * (SIN_TABLE_SIZE / (2.0f * PI)); int32_t index (int32_t)index_f; float frac index_f - (float)index; index SIN_TABLE_MASK; int32_t index_next (index 1) SIN_TABLE_MASK; return sin_table[index] (sin_table[index_next] - sin_table[index]) * frac; }實際項目中這個查表函數(shù)在Cortex-M4上大概幾十個周期就能跑完比sinf快一半還多。3.5 電流環(huán)代碼抽離緊急任務和非緊急任務分開電流環(huán)中斷里除了坐標變換和PID往往還混著一些不太相關的東西。比如有的工程師會把轉(zhuǎn)速估算、弱磁控制、過流保護邏輯全塞在一個中斷里。這類問題在優(yōu)化時要拆開。FOC中真正需要和PWM同頻執(zhí)行的部分只有電流采樣讀取、坐標變換、電流環(huán)PID、SVPWM輸出。這些都是必須在載波周期內(nèi)完成的“緊急任務”。轉(zhuǎn)速估算這類東西很多時候不需要20kHz的頻率。如果你的目標帶寬在100Hz左右那么轉(zhuǎn)速估算哪怕降到1kHz也沒有問題。把它挪到低優(yōu)先級定時中斷或者主循環(huán)里跑能大幅減輕高頻中斷的負擔。過流保護必須走硬件比較器或ADC模擬看門狗這是硬件級別的快速保護不能讓軟件延遲決定是否炸MOS管。軟件層面的過流檢測可以作為第二道防線不要把它和電流環(huán)PID混在同一個中斷里。3.6 把高頻中斷放到RAM里執(zhí)行這個優(yōu)化點知道的人不算多但在Flash速度慢的MCU上非常有效。很多MCU從Flash取指令是有等待周期的尤其是高頻時鐘下。比如STM32F4在168MHz主頻下Flash等待周期可能到5個周期這意味著每條指令都要多等好幾個周期。解決辦法是直接把電流環(huán)中斷服務函數(shù)放進RAM執(zhí)行。GCC環(huán)境下用__attribute__((section(.ramfunc)))即可IAR則用__ramfunc關鍵字。__attribute__((section(.ramfunc))) void TIM1_UP_IRQHandler(void) { // 快速執(zhí)行電流環(huán) }注意這段函數(shù)會被拷貝到RAM里運行如果RAM緊張就不能放太多內(nèi)容。實際項目中我通常只把最關鍵的電流環(huán)ISR放進去其他普通中斷保持原地不動。4. 優(yōu)化后的代碼長什么樣4.1 結構清晰的電流環(huán)主流程經(jīng)過了上面幾步的優(yōu)化電流環(huán)中斷的代碼就清爽多了。下面是我在項目中實際使用過的簡化版本// 電流環(huán)中斷TIM1下溢硬件觸發(fā)ADCDMA搬運 __attribute__((section(.ramfunc))) void TIM1_UP_IRQHandler(void) { adc_dma_buffer_t adc read_adc_buffer(); // 原始電流還原 float ia adc.sample_a * K_SCALE - I_BIAS; float ib adc.sample_b * K_SCALE - I_BIAS; float ic -(ia ib); // 可選的弱濾波只在必要時啟用 ia iir_lpf(ia, filter_a_state); ib iir_lpf(ib, filter_b_state); // Clark變換 i_alpha ia; i_beta (ia 2.0f * ib) * SQRT1_3; // Park變換查表法 float s fast_sin(theta), c fast_cos(theta); id i_alpha * c i_beta * s; iq -i_alpha * s i_beta * c; // 電流環(huán)PID pid_id_run(pid_id, id, id_ref); pid_iq_run(pid_iq, iq, iq_ref); // 反Park變換 vd id_out * c - iq_out * s; vq id_out * s iq_out * c; // SVPWM輸出 svpwm_apply(vd, vq); }這段代碼的精髓在于數(shù)據(jù)已經(jīng)從DMA那準備好了濾波函數(shù)做了輕量化三角函數(shù)用查表整個中斷里沒有阻塞等待沒有多余的判斷分支。你甚至可以把這段代碼的執(zhí)行時間控制得很穩(wěn)定這對FOC控制的一致性非常重要。4.2 ADC配置代碼的完整示例光看中斷代碼還不夠ADC和DMA的初始化也要配套。這里給一個相對完整的STM32F4系列初始化參考。void foc_adc_init(void) { ADC_InitTypeDef adc_init; DMA_InitTypeDef dma_init; GPIO_InitTypeDef gpio_init; NVIC_InitTypeDef nvic_init; // 使能ADC1時鐘和GPIO時鐘 RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE); RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_DMA2 | RCC_AHB1Periph_GPIOC, ENABLE); // PC0和PC1作為模擬輸入對應ADC1的通道10和通道11 gpio_init.GPIO_Pin GPIO_Pin_0 | GPIO_Pin_1; gpio_init.GPIO_Mode GPIO_Mode_AN; gpio_init.GPIO_PuPd GPIO_PuPd_NOPULL; GPIO_Init(GPIOC, gpio_init); // DMA2 Stream0配置 dma_init.DMA_Channel DMA_Channel_0; dma_init.DMA_PeripheralBaseAddr (uint32_t)ADC1-DR; dma_init.DMA_Memory0BaseAddr (uint32_t)foc_adc_dma_buffer; dma_init.DMA_DIR DMA_DIR_PeripheralToMemory; dma_init.DMA_BufferSize 2; dma_init.DMA_PeripheralInc DMA_PeripheralInc_Disable; dma_init.DMA_MemoryInc DMA_MemoryInc_Enable; dma_init.DMA_PeripheralDataSize DMA_PeripheralDataSize_HalfWord; dma_init.DMA_MemoryDataSize DMA_MemoryDataSize_HalfWord; dma_init.DMA_Priority DMA_Priority_High; dma_init.DMA_Mode DMA_Mode_Circular; DMA_Init(DMA2_Stream0, dma_init); // ADC1配置 adc_init.ADC_Mode ADC_Mode_Independent; adc_init.ADC_ScanConvMode ENABLE; // 掃描模式多通道 adc_init.ADC_ContinuousConvMode DISABLE; // 超時觸發(fā)不是連續(xù)轉(zhuǎn)換 adc_init.ADC_ExternalTrigConvEdge ADC_ExternalTrigConvEdge_Rising; adc_init.ADC_ExternalTrigConv ADC_ExternalTrigConv_T1_TRGO; // TIM1觸發(fā) adc_init.ADC_DataAlign ADC_DataAlign_Right; adc_init.ADC_NbrOfConversion 2; ADC_Init(ADC1, adc_init); // 配置兩個通道的采樣時間 ADC_RegularChannelConfig(ADC1, ADC_Channel_10, 1, ADC_SampleTime_3Cycles); ADC_RegularChannelConfig(ADC1, ADC_Channel_11, 2, ADC_SampleTime_3Cycles); // 使能DMA和ADC ADC_DMACmd(ADC1, ENABLE); ADC_Cmd(ADC1, ENABLE); }初始化代碼里需要注意的一個細節(jié)是掃描模式下ADC的通道順序就決定DMA緩沖里的數(shù)據(jù)順序。你必須清楚通道10對應dma_buffer[0]通道11對應dma_buffer[1]后面讀數(shù)據(jù)時別搞反。4.3 優(yōu)化后的性能參數(shù)實測代碼改完之后我用同樣的邏輯分析儀測了一輪結果對比如下指標優(yōu)化前優(yōu)化后中斷平均執(zhí)行時間13.8微秒4.2微秒中斷最大執(zhí)行時間15.2微秒4.5微秒CPU占用率20kHz中斷27.6%8.4%采樣抖動峰峰值±1.2微秒±0.15微秒電流波形毛刺明顯帶載時噪聲大基本消除CPU占用從27.6%降到8.4%直接省出了19個百分點的算力。這個余量你可以用來做無傳感器觀測器、做在線參數(shù)辨識或者干脆降低主頻以省電。采樣抖動從1.2微秒壓到0.15微秒電機低速時的周期性噪聲基本消失。5. 高頻FOC工程中的常見問題清單5.1 采樣點正好落在死區(qū)或者窄脈寬區(qū)間電流采集要避開死區(qū)時間否則采樣出來的電流不是真實相電流。這個問題在做小占空比、低調(diào)制比工況時尤其容易踩。SVPWM載波中心的下橋?qū)ù翱谌绻瑼DC采樣時刻稍微偏一點就可能采到死區(qū)期間的回流狀態(tài)。解決思路是加入最小采樣窗口判斷。比如計算當前PWM周期的有效下橋?qū)〞r間如果低于某個閾值比如3微秒就放棄本輪采樣用上一次的電流值或者把ADC觸發(fā)點往安全方向偏移。5.2 電流過采樣濾波后出現(xiàn)了額外相位延遲有些工程師為了讓波形更干凈喜歡把多個PWM周期內(nèi)的電流采樣值做平均。比如四周期滑動平均這在軟件上很好寫但效果不一定好。因為滑動平均本質(zhì)是一個FIR濾波器它本身會引入大約1.5個采樣周期的延遲。在電流環(huán)里這個延遲直接轉(zhuǎn)化為相位滯后。我見過有人把滑動窗口加到八個點結果電機跑高速時電流環(huán)開始振蕩。濾波不是越強越好做電流環(huán)濾波時一定要拿示波器看階躍響應確認沒有額外相移。5.3 DMA循環(huán)模式下讀到了“半新半舊”的數(shù)據(jù)這個問題我在3.2節(jié)提了一些實際項目中經(jīng)常讓人頭疼。DMA循環(huán)模式是永遠在跑的你讀數(shù)組的時候數(shù)組里面可能既有前一周期數(shù)據(jù)又有本周期的數(shù)據(jù)。這在ADC掃描模式配置不當?shù)臅r候尤其明顯。我的建議是果斷使用注入組轉(zhuǎn)換。注入組轉(zhuǎn)換可以配置為一次轉(zhuǎn)換一組通道并把結果鎖存到注入數(shù)據(jù)寄存器里。這樣讀到的兩個值才是嚴格同一時刻的快照不需要用開關DMA這種粗糙的規(guī)避方案。5.4 PFC和電機驅(qū)動共用MCU時中斷優(yōu)先級怎么定很多項目是一個MCU同時管PFC和電機FOC。PFC通常也是高頻控制兩個電流環(huán)中斷優(yōu)先級一旦配錯系統(tǒng)就會出現(xiàn)奇怪的震蕩。一個基本準則是哪個環(huán)路帶寬高、故障風險大哪個優(yōu)先級就高。FOC的過流風險更大通常FOC電流環(huán)中斷優(yōu)先于PFC。PFC的電流環(huán)如果稍微滯后一拍一般不會炸機但FOC的電流環(huán)滯后就會導致電流失控。5.5 在中斷里不要用printf這條聽著像廢話但真的有人踩坑。FOC電流環(huán)20kHz頻率下你要是往中斷里塞一個printf哪怕是重定向到數(shù)組緩存也會大量占用CPU時間甚至把中斷棧頂爆掉。調(diào)試的時候可以用IO翻轉(zhuǎn)邏輯分析儀或者DMA串口輸出少量關鍵變量不要用阻塞式的printf。真要看波形把變量存到一個環(huán)形緩沖區(qū)然后讓上位機通過慢速通道慢慢讀這個通道放在主循環(huán)里執(zhí)行就行。6. 優(yōu)化思路的橫向遷移不只適用于FOC這套優(yōu)化方法并不是只能用在FOC電流采集上。數(shù)字電源的電壓電流雙環(huán)、伺服驅(qū)動的編碼器采樣、并網(wǎng)逆變器的電網(wǎng)電壓鎖相環(huán)它們本質(zhì)都是“高速外設采樣高頻控制中斷延遲敏感閉環(huán)”。你只要記住這條主線數(shù)據(jù)準備盡量用硬件自動完成CPU在中斷里只做真正的控制運算最后用測量數(shù)據(jù)驗證每一個環(huán)節(jié)的開銷。哪里延遲大就把哪里往硬件卸載或者往低頻搬。我自己在數(shù)字電源項目里也復用了這套ADCDMA定時器觸發(fā)機制效果同樣明顯。所以這篇文章的內(nèi)容與其說是“FOC電流采集代碼優(yōu)化”不如說是一套嵌入式高實時性閉環(huán)的通用套路。最后說一個個人心得做這類優(yōu)化不要一上來就懷疑自己的控制算法不行。先把鏈路里每一段延遲都測出來、量出來讓數(shù)據(jù)告訴你瓶頸在哪里。大多數(shù)情況下問題根本不在PID參數(shù)而在數(shù)據(jù)通路本身。把通路理順了電流環(huán)自然就聽話了。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
成人资源中文字幕在线观看天天| 乱伦一二三| 亚洲AV无码秘 蜜桃臀国精产品| 国产精品免费视频不卡| 加勒比日本在线| 丁香九月婷婷| 亚洲AV无码| 一区二区三区麻豆| 操屄不卡视频| 9ⅰ久久久天天| 正在播放国产精品一区| 国产精品久久发布| 欧洲亚洲人妻无码久久三区四区| AV不卡在线| 欧美精品双插| 亚洲黄片免费在线播放| 国产欧美一区二区| 欧美人黑A片无码免视费| 日本中文字幕在线视频| 伊人午夜福利视频| 夜夜爽77777| 三级网站超变态精品| 亚洲天堂精品日韩电影| 久久久99久9| 国产 日韩 欧美一区| 日本高清电影欧美色图| 伊人网高清| 色婷婷成人| 老熟女综合网 | 人妻无码后入| 国产精品99精品视频网站| 欧美色图亚州激情| 亚洲另类欧美精品| 天天看高清麻豆| 97在线精品观看视频| 情色av电影| 亚洲欧美另类激情小说| 男女激情中文字幕| 草草网站影院白丝内射| 精品少妇人妻一区二区三区| 婷婷大香蕉| 日韩情色一区二区| 91九九九馒头| 九九精品无码专区免费| 超碰97在线中文| 日韩丰满熟妇| 91老司机精品| 丰满欧美少妇| 亚洲无码太久| 用力操死我| 秋霞成人做爱| 亚洲国产97在线精品一区| 国产精品视频精品一二| 大香蕉性欧美| 不卡九肏| 欧美日韩不卡a片| 91AV天美在线视频| 乱伦av麻豆| 97中文字幕一区| 五月婷婷AV| 97精品在线视频| 日韩内射视频| 日韩免费看黄片| 欧美丝袜亚洲| 亚洲情色1区| 日韩精品一区二区日韩| yaouchengrenav| 男人天堂日日夜夜| 欧美 亚洲 综合 制服| 男人天堂2017| 蜜臀av网址| 91啪啪| 色臀av| 亚洲精品天堂久久A∨51成人漫| 91国产丝袜美女| 亚洲夜色在线| 1769精品一区二区三区| 日韩黄色片子| 蜜臀99久久国产| 欧美日韩资源在线| 久久欧美1卡2卡3| 一区二区影院| 亚洲熟女综合一区二区| 精品国产乱码久久久兰草影视| 亚洲图片偷拍视频区| 国产精品人妻免费精品| 日韩无码服务区| 伊色综合天堂色97| 婷婷大香蕉| 精品人妻一区二区视频| 欧美极品| 中出20p| 情侣操 逼视频99| 99无码| 91艹B视频| 亚洲伊人成综合成人网| 国产熟妇 码视频户外直播| 日韩有码回春沙龙第一页| 亚洲另类色图片| 国产成人网| 精品一区二区综合熟妇| 91麻豆天美传媒在线| 欧美综合 站| 图色综合网| 99精品在线播放| 91成人久久| 久久精品国产亚洲妲己影视| 天天亚洲| 国产精品久久久久9999小说| 加勒比久久av| 98福利在线视频| 大香蕉色网| AV天天在线观看| 国产精品免费视频不卡| 成人乱码一区二区三少妇| 日韩欧洲操屄视频| 香蕉国产精品麻豆亚洲欧美日韩 | 国产AAAAAABBBBB| 葡萄牙性视频一二区| 欧美综合色综合| 亚洲天堂另类小说男人| 大香蕉久久| 久久精品国产亚洲AV高清演员表| 亚洲日韩人妻中文字幕一区| 操逼片国产| 另类图片欧美激情综合| 男女一进一出视频久久| 好湿好紧视频| 亚洲少妇综合| 另类图片五月天| 午夜九九| 少妇久久久久久久| 丝袜美腿av女优在线| 欧美色图欧美| 精品蜜乳AV免费观看| 免费a v| 日韩精品一区二区人人人| 欧中美三级一区二区三区| 99热国产精品| 激情综合 婷婷五月 红杏| 国产91丝袜 在线播放| 桑老女人九区| 亚洲高清欧美总合| 97久久久| 国产真乱mangent| 2020中文在线一区二区三区| 国产精品99久久久www| 岛国艾薇凹凸视频天堂| 欧美婷婷| 色综合婷婷| 六六久久日韩不卡| 欧美少妇大量自拍视频在线观看| 日本不卡二三区| m欧洲一级午老| 超碰碰激情97+久| 男人的天堂在线| 九色 蝌蚪 熟女自| 加勒比综合88| 精品91日日夜夜超清资源| 家庭乱伦国产精品| 91精品久久久久| 亚洲欧美国产精品久久久久久久| 超碰97人妻自拍| 国产又黄又粗又猛大片| 老司机天天操| 强奸乱伦动态污图免费| 久热69九色熟妇97| 亚洲少妇色图自慰直播| 久久久天美| 久久精品熟妇丰满人妻99| 久久久久亚洲Av无码专区老牛影视| 青青青国产手线观看视频2| 日韩在线性爱免费视频| 影音先锋国产精品| 九九九久千久久激情蜜桃在线看 | 91人妻丝袜无码| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 97人亚洲综合字幕| 亚洲诱惑天堂| 人人操人人93| 婷婷深爱五月| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 欧美色999| 亚欧毛片基地国产毛片基地| 亚洲精品乱码久久久久久蜜桃麻豆| www.99视频| 91色噜噜狠狠| 暴力av在线| 国产强奸乱伦无码视频| 伊人久久大香大香线蕉中文| 一区麻豆 高清中文字幕| 天天综合网~91入口| 干B网| 国产成人无码a| 亚洲五月婷婷| 秋霞福利网| 97国产超碰| 手机在线视频国内精品| 人妻天天爽夜夜爽精品2| 色拍偷亚洲| 污色区网站| 色官网在线| 人人污日韩一区二区| 嗯嗯不要 视频| 精品国产Av无码久久久亚洲| 五月丁香成人网| 青青草男人天堂| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 吻戏激情性巴克| 东北操逼| 亚洲国产一区二区日韩专区| 久久久久久夜夜夜夜夜| 美女t无毒不卡不卡| 网站A V在线| 九九热AV| 99少妇| www.99中文字幕| 嗯嗯嗯好爽| 97在线亚洲| 污污汅18禁网站在线永久免费观看 | 欧洲无码一区二区| 久久东京热成人| 亚洲最大成人a毛毛片| 成 人 影视 一区 二区 三区 四区| 亚洲天堂人人妻| 亚洲欧美日韩中文播放| 欧美在线官网| 激情小说亚洲色图| 99在线精品视频| 九九九九九九九| 国内亚洲高清无码| 爆乳免费黄网站| 国产日韩怡红院| 日本欧美国内在线| 天美传媒精品久久视频| 欧美网站免费| 男人精品天堂一区| 国产精品一级毛片不卡视| 伊人网在线观看| 精品免费视频国产一区| 97天天搞在线| 色吧5亚洲| 美女在线H91| 91制服丝袜中文字幕| 久久婷婷精品| 在线不欧美| 亚洲精品男人的天堂| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 蜜臀一二三区| 亚洲制服欧美另类内射| 中文字幕综合人妻| 亚乱色| 伦理日韩国产久久| 久久久免费一级黄片| 亚洲丝袜制服国产91_国语字幕免费观看完整版下载第5集_ | 91在线色| 大香蕉免费乱伦视频| 91网站18+| 热九九精品| 国产日韩美女小穴视频网站不卡| 天天影视色香色欲| 综合久久久久久久久91| 五月天亚洲网| 26uuu欧美| 欧美东京热青青草| 中文字幕少妇色| 密乳AV免费观看| Aa东京男人的天堂| 久久精品一区二区三区不卡| a片在线播放| 欧美91精彩| 欧美亚洲色图另类国产| 91碰碰| 国产精品三级视频网站 | 日本免费一区二区不卡 | 天天爽入口| 99综合网| 一级性爱啪啪视频| 中文字幕av一区二区三区人妻少妇 | 东京热,男人的天堂| 亚洲中文字幕三级在线| 99久久久无码国产精品性啊聊| 夜夜久久| 国产热RE99久久6国产精品首 | 在线综合色| 婷婷10月天青娱乐| 歐美一級亂黃99在綫精品| 操逼天美3区| 女人天堂网| 久操99| 人人操人人大香蕉| 成人av在线播放| 91日日夜夜| 欧美日韩国第一区| 亚洲天堂7777| 亚洲国产精品无码AV久久久| 久久αⅴ| 超碰在线1234区| 老女人日韩美91| 国产精品干干干| 伊人久久AV诱惑悠悠| 国产玖玖| 嫩草影院在线观看精品| 99re9| 综合大香蕉美。| 在线只有精品| 色嗨嗨在线| 国产一区二区三区高清视频| 97se亚洲| 日韩综合97P| 91久热这里只有精品| 久久精品中文字幕无码l| 91日韩| 天天干人妻视频| 日韩午夜国产| 综合色播| 日韩乱插| 岛国视频一二三区| 日韩操啪| 精品69网| 一,爱啪啪,在线免费视频| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 97超碰色屌| 91九色在线| 特级毛片特黄久久免费看| 在线视频97| 91M一社| 久久久久大香青草精品综合| 国产天天骚| 婷婷激情四射| 国产精选三级在线观看| 亚洲制服aⅴ中文字幕| 国产无码成人无码| 色欧美综合| 国产精品一区二区麻豆| 欧美天堂第二区| 国产AV天美| 青青青操| 欧美 亚洲 制服 精品| 91chinese在线| 婷婷丁香五月天亚洲天堂网| 免费一级a毛片久久久久久鸭绿欲| 精品黄色电影| 夜色91| 熟妇一区二区| 午夜男人的天堂| henhen91| 91 丝袜在线播放| 一区二区三| 久久二| 97资源久久| 97碰碰色| 草草草视频在线免费看| 91网九色蝌蚪操熟女| 婷婷五月天激情四射| 国产精品操| 亚洲毛片基地专区| 亚洲无码电影久久久| 国产精品96久久久久久| 久久超碰网| 国产日本一区二区三区蜜臀在线观看| 国产主播福利| 人人摸人人摸人人干| 久久无码电影| 欧美后进式| 欧美1727免费观看视频| 久久久97| 淫色网综合| 欧美性猛交美女自慰91| 丝袜狠狠草尤物人妻av91| 国产精品久久久蜜臀| 区一二区日韩亚洲乱码av电影| 夫妻四区五区六区| 性性久久| 亚春色色| 91五十路| 伊人专区一区二区三区| 欧美日韩国产三级黄色| 亚洲黄网在哪免费看| 99综合网| 美性中文综合网| 亚洲天堂久| 精品人妻一区二区免费蜜桃视频| 日韩熟女无码| 熟女人妇一区二区三区| www.五月天| 亚洲图片欧美日韩| 久日91在线| 蜜桃午夜视频一区二区| 91狠狠综| 午夜电影在线观看无码专区| 91国产精品在线看| 欧美 熟女 日韩| 欧美激情 亚洲色图| 亚洲美女av无码| 日本欧美韩国国产在线| 欧美黄片视频在线观看免费| 91亚·色| 99re在线视频| 天天日夜干| 免费看黄视频亚洲网站| 操91| www.AV有限公司一区| 中出91视频| 天天上日日上日韩精品| 岛国精品视频在线观看| 佐山爱中文字幕| 精品少妇人妻一区二区三区| 中文字幕乱码人妻二区三区| 国内精品999| 色综九九九一区| 两女互慰AV高潮喷水在线观看| 五月丁香久久| 色婷婷日韩精品一区二区三区| 在线播放成人高清免费视频 | 不卡九肏| 色汉综合| 亚洲色五月| 91熟女少妇| 人妻啪| 久久婷婷国产一区二区色| 九热超碰| 午夜福利视频在线一区| 国产乱人妻精品入口| 国产粉嫩蜜臀av一区二区三区| 色婷婷九月| 久久久久婷婷精品av电影| 亚欧性爱无码| 久久精品72| TS人妖另类精品视频系列| 91综合在线| 亚洲美腿丝袜香蕉影视欧美成人| 美女写真| 死我十八禁| 国产精品一区二区三区,亚洲综合| 操我啊啊啊啊啊| 亚洲视频精选| 五月天婷婷久久| 丝袜美腿操av| 久久久激情| 久久日韩肥臀| 激情五月丁香五月| 97欧美综合网| 久操大香蕉手机视频在线看 | 亚欧美综合网| 日韩亚洲美女一区久久| 午夜毛片亚洲精品片国产久久久| 久久人妻丝袜一区二区三| 欧洲视频在线| 欧美1727免费观看视频| 欧美999| 素人美腿视频网站| 亚洲国产一级黄色视频| 天天影视激情欧美| 成 人片 黄色大片| 久草精品视频| 中文字幕成人理论在线| 五月天精品| 97色在线| 亚洲美女AV无码| 99re3这里只有精品| 91社区伊人| 久偷拍| 国产一级作爱毛片| 91天堂丝袜美腿| 丁香五月天堂网| 亚洲色图图片| 日韩噜噜69| 岛国视频免费在线观看| 91白嫩| 五月天黄色av| 2018天天干在线视频| 久久久精| 日韩pv中文| 日韩av电影成人在线| 新精精品久久精品| 丁香婷婷啪啪| 思思视频免费看网站| 精品中文日韩字幕视频| 日本色色色| 亚洲国产另类在线中文| 大香蕉琪琪日本女优不卡| 香蕉人人操tv| 超碰免费97| 日韩无码AB| 丁香色五月 97干| 国产一国产一级毛片古装| 黄呦呦在线| 国产97色在线| 日本黄大片在线观看视频| 操淫穴亚洲五月丁香 | 国产精品盗摄 偷窥盗摄| 人妻天天爽| 亚洲五月丁香花狠狠干一区二区三区 | 狠狠操一区二区| 久操视频资源站公开| 日韩情色一区二区| 99精品久久久久久| 91N欧美| 日本东京热加勒比久久| 伊人网高清| 中文字幕文字幕无码一区二区三区电影99| 激情五月天网| av在线一区二区三区| 国产精品播放| 精品制服美女中文一区二区三区| 青青草在线成人视频| 玖玖爱免费观看视频| 日韩亚洲欧美中文字幕| 高潮9999外国| 午夜福利在线合集| 大香蕉综合| 91九色在线| 天天弄天天操| 国产在线视频午夜精华在| 超碰97.com| 国产小炒后入式| 青青国产精品在线| 啊视频在线| 亚洲精品性爱片| 九九九色| 水滴偷拍| nuu12国产麻豆精品| 久久久熟妇熟女国产| 午夜天堂精品久久久久91| 中文字幕aⅴ在线视频| 国产精品久久久久久亚洲色欲| 美女十八禁| 啊啊啊啊啊啊啊啊啊在线观看| 男人的天堂.com| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 欧美最大综合网| 女人一区| 殴美日韩m| 91大胆欧美| AV 少妇 人妻 偷拍| 亚洲色图欧美视频| 亚洲精品亚洲人成在线麻豆| 久久久久久久伊人精品| 亚洲āv网址在线观看| 91成人无码| 在线看污网站| 清纯唯美第一页| 天天干夜夜| 欧美 亚洲 综合 制服 另类| 麻豆一区二区三区精品| 亚洲自拍欧美国产首页网曝 | 午夜爽爽爽在线观看永久入口姬片| 欧美成熟性爱精品| 一中国女人毛片水真多| 操一操摸一摸| 人妻精品视频一区二区三区 | AV污污污污| 91c色| 午夜福利精品| av日韩手机在线影视| 久久91精品国产9丨久久分亭| 眼镜人妻101.com| 亚洲图片日本AⅤ欧美在线| 国产二区三区免费视频| 欧美性爱日韩高清| 中文字幕,人妻,日韩| 高清无码一区二区三区| 国产人妖视频一区在线观看| 熟女精品va中文字幕| 国精精品无码一二三区水多多| 日韩激情中文字幕有码| 国产精品一区二区黄片| 九九热视频在线观看| 成人 日韩欧美一区| 曰韩精品九九无码| 人妻出轨一区二区三区| 亚洲情色图片区| 91少妇香蕉久久精品| 成人一级二级| 超碰97男女| 国产强奸乱伦第1页| 免费精品国偷自产在线在线| 日本三级A片网站com| 日本免费中文字幕在线| 尤物一级在线免费观看| 67914亚洲精品| 澳门成人网站久国产日韩| 欧美情色男人的天堂| 偷拍色图| 国产精品丝袜在线| 中文字幕一区二区视频在线观看| 久久久99免费| 粉嫩在线一区二区懂色| www.狠狠干.coom| 91久久18禁| 久久久久幕乱码| 麻豆天美一区二区| 国产精品嫩草久久久久| 99在线精品观看99| 欧美日韩黄色片一区二区三区四区人与兽做爱| 日本五十路在线| 日本布卡一区二三区| 草草电影院| 久久久久国产精品喷潮免费观看臀 | 免费网色网站| 四虎AV在线播放| 国产精品久久久久无码Av网曝门| 欧美强奸一区二区诱惑| 91欧美高清| 动漫av中文| 97在线免费看视频| 99色热国产视频精品| 啪啪91| 污污污8888| 蜜臀99久久国产| 人妻干天天| 99性视频| 亚洲吊色| 久久久无码视频| 黄色网址在线免费观看| 18一区二区三区| 国产日产欧产美韩系列麻豆免费| 亚洲人成在线放东京热| 日韩不卡av一二三| 蜜臀AV成人精品蜜臀| 男人的天堂1024| 欧美性爱1080p| 人妻夜夜爽天天爽麻豆三区网站| 97综合久第一页| 亚洲无码超碰免费| 亚洲成人碰碰| 国内精品久9| 为用户提供免费看黄网址在线观看| 激情久久久| 日韩三级性| 狠狠色伊人亚洲综合网站色| 狠狠色丁香| 五十路人妻在线| 欧美亚综合色图| 一本色道久久综合精品婷婷| 日韩欧美中文| 伊人一区二区三区| 欧美v日韩v亚洲v最新在线| 大地资源在线观看中文第二页| 亚洲欧美setu| 人人模人人看| 超碰97爽| 中文字幕乱码在线| 一级黄色影片| 国内外激情在线| 亚洲古典另类欧美在线| 亚洲 另类 丝袜 自拍 动漫| 四虎国产精品永久在线囯在线| 五月丁香| 99re6在线视频播放免费精品| 超碰成人最新最好看| 伊人991| 久久伊人亚洲AV无码网站| 婷婷情色综合网| 伊人91| 五月天丁香| 岛国天天午夜影院传媒网| 国产一级做a爰大片免费久久| 欧美91网站| 久久久久久日韩| 国产美女精品| 国产日逼视频| 日韩美女高潮喷水视频| 成人乱人伦一区二区| 久久久久七视频| 高清无码久操视频| 超碰 av 女人天堂| 国产成人精品必看| 亚州高清色综合| 93人人操人人| 国产自产22区| 国产热RE99久久6国产精品首 | 亚洲囯产精品女人久久久| 国产精品第二页| 亚洲色色探花| 久热99999| 亚洲成av人片色午夜乱码| 97亚洲自在精品在线观看| 婷婷五月激情综合| 久久岛国| AND人妻系列| 操www| 99re在线视频国产| 国模少妇一区二区三区| 国产精品午夜福利| 丁香五月影院| 天天草天天日| 综合久久欧美| 激情五月天校园春色网| 日韩99神马视频播放| 亚熟在线| 干B| 欧美亚洲宗合色性图| 欧美国产操逼| 天美传媒精品久久视频| 欧美78P| 91亚洲色图| 日本中文字幕不卡视频| 国产精品高清2021在线| 综合久久久久久久综合网| 欧美黄片欧美黄片xxx| 99热这里只有精品地址| 婷婷五月天福利| 黄页18禁| 密臀视频一区二区三区| 国产熟码AV| 国产传媒日韩欧美| 久热在线精品免费观看| 久草免费在线一区二区| 夜夜一区二区| 麻豆伊人网| 97在线播放| 欧美视频一| 91人妻中文| 男人的天堂不卡一区二区| 久九干| 欧美第二页午夜| 久久久久久久人妻丝袜| 国产精品亚洲高清在线| 久久久久久人妻| 久久久久久91香蕉国产| 五月天久久人妻| 豆花视频操逼网址| 五月婷婷爱六月丁香色| 亚洲AV高潮| 九九九九一区| 亚洲av无码成电影在线播放| 日韩在线观看中文字幕视频| 熟妇视频一区二区三区在线观看| 国产精品乱码久久久久久| 91制服丝袜中文字幕| 精品久久久久久中文字幕三区 | 久久亚洲日韩熟女精品| 三级日韩一区二区三区| 超碰在线人妻| 日本欧美色| 蜜臀视频网站| 女人午夜视频777| 青青青青草av在线观看| 一区在线国产播放| 亚洲蜜臀懂色| 日本一二区不卡| 激情啪啪拍91| 先锋音影AV| 91精品人| 中文字幕五区| 精品女同一区| 丰满人妻一区二区三区四区| 欧美中文字幕男人天堂久久精品 | 久久精品人妻一区二区三区| 日韩人妻一区二区| 另类小说五月天| 国产精品色约约| 亚洲乱伦图片视频| 嫩草伊人久久精品| 久久精品国产Aⅴ| 亚洲激情网一二三四区| 91模特在线观看| 色综合av男人天堂| 欧美大片天天看| 久久久精品91八戒| 精品.99999| 97免费在线观看| 丁香五月影院| 中文字幕福利视频一区二区三区在线观看| 一区二区影院| 国产精品天干天干综合网麻豆| 亚洲欧洲中文日韩女优乱码| 热久久91婷婷| av网站免费看| 欧美男女午夜啪啪| 国产精品午夜AV完会免费| 极品色社| 97这里只有精品| 天天综合色电影| 91狠狠综| 91人妻视频| 午夜a成v人电影| 久久精品老司| 人人操人人操人人人操| 青青青艹在线视频| 天堂中文日本在线观看| 人妻少妇久久| 激情五月丁香五月| 亚洲一区二区AV| 亚洲国男人的天堂| 秋霞午夜成人福利片片| 另类亚洲图色| 国产av波波国产精品| 青青草玖玖爱| 爽 好舒服 无码刺激久久| 狠久久| 精品国产少妇高潮视频| 夜草网站| 天天干人妻| 九九性爱网| 777超碰| 日本日日色视频| 免费公开人人操| 91痴汉| 天堂九九九九九九九九九| 日本潮催一卡操| 女人的天堂大香蕉网| 另类一区| 97啪啪| 日韩中文字幕2020| 极品极品色影院| 国产成人在线观看网址| 色五月天AV| www色日本| 97亚洲综合影院| 啊啊啊啊啊啊啊啊啊啊在线观看| 亚洲欧美精品福利在线| 欧美天天综合网| 97一区二压| 狼人久草| 日韩一区二区精彩视频| 超碰 国产熟女精品一区| 婷婷五月丁香五月| 草莓精品视频在线免费观看| 老熟妇一区二区三区| 午夜男人天堂| 在线可观看的黄色网址| 97超碰中文在线| 天天日美女的B| 嗯嗯啊在线视频| 色婷婷视频| 欧美国产婷婷久久| 亚洲无限观看| 久久精品欧美一区蜜桃| 少妇3P性爱自拍| 9999久久久| 人妻素股| 亚洲色9| 超碰91在线| 性久久久| 97超碰9| 久久久久国产| 精品.99999| 秋霞视频一区二区 | 加勒比99999| 丝袜av一区二区三区| 亚洲男人天堂Av| 人人操人人uiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | 欧美最大综合网| 你操综合| 中文字幕 国产 精品| 两女互慰AV高潮喷水在线观看| 四虎在线视频| 九七人妻在线| 日韩av色图综合| 国产女人高潮视频| 国产AV超爽| 日本精品无码三级网站| 亚洲黄片免费在线播放| 1024精品在线| 日韩欧美~中文字| 九九九九九九九九九九精品视频| 中文字幕 一区二区 亚洲无码| 色五月首页| 一区三区啪啪| 午夜福利在线合集| 国产一区二区三区免费视频在性观看| 日韩欧美女求操每天更新| 久久精品男人的天堂| 97资源免费视频| 少妇三P| 天天综合欧美综合| 天色综合网| 亚洲中文字幕有码视频一区二区三区| 亚洲va综合va国产va中文| 看日韩操逼| 欧美国产伊人久久久久| 亚洲AV秘 精品久久老牛影视| 国产黄色小视频网站| 测评在线观看AV| 少妇久久久| 91 欧美| 性夜影院爽黄A爽免费动漫| 久久超碰com| 欧美激情1区| 91性情| 天天做天天爱| 久久久久九九九九| 亚洲国产美女久久久久| 天天躁日日躁狠狠躁| 亚洲天天综合| 成 人 A V免费视频在线观看| 免费精品无码一级毛片牛牛影视| 超碰97精品| 69视频入口| 岛国在线免费视频| 一类无码操逼视频| 色成人Www精品永久观看| 在线观看AV片| 丰满的三级少妇欧美久久久| 日本123区操B视频| 99操碰| 国产女人高潮视频| 十八禁网站在线| 大香蕉99热| av东京热男人的天堂| 亚洲九九视频在线观看| 91日韩网站| 97亚洲精品| 操操逼视频| 日本成人电影资源网| 成人片在线播放| 蜜桃色色网站视频三区| 另类亚洲图色| 久久久久921| 青青五月天| 久久精品国产亚洲5555| 啪啪啪东京| 丁香五月天激情网站| 国产免费一区二区三区最新不卡 | 色吧综合网| 偷拍 精品 另类 四区| 无码视频一区二区| 超碰欧美97资源| 天堂无码| 盗摄女人妻在线| 屌色在线97视频| 日本啊啊啊啊啊视频| 人人摸人人舔一区二区| 蜜臀久久99精品久久久久久| 亚洲熟女乱色一区二区三区| 全免费a敌肛交毛片免费| 日日狠狠久久偷偷色综合免费| 操人妻逼91| 免费男人的天堂| 69视频入口| 日本一级二级三级网站| 久操综合在线| 欧美 综合 亚洲| 超碰在线一区| 欧美午夜一区二区三区| 97超碰色五月| 激情文学小说一区二区 | 亚洲极品| 秋霞操逼片| 午夜男女爽爽爽在线视频| 免费看污网站| 欧美色91| 免费观看国产不卡av| 碰碰在线视频| 亚洲日本天堂| 亚洲另类欧美精品| 99热这里只有精品9| 欧美亚洲AN| 少妇综合网| 女人高潮大叫一级毛片| 日夜干射色啊| 91色综合| 久久99久久99精品免视看婷婷| 男人的天堂VA在线| 欧美色网| AA丁香综合激情| 久久精品高清无码一区| 日本国产亚洲一区在线观看| 亚洲激情在线| 97欧美色| 欧美精品99久久久**| 爱射综合| 欧美性夜| 丁香五月激情婷婷| 国产91丝袜在线播放蜜月| 中文字幕AV乱伦| 久久综合日韩亚洲欧美| 久久精品无码一区二区三区| 日本视频一区二区三区| 大香蕉伊在线久草麻豆天堂故事| 日韩猛交| 国产这里只有精品| 人妻激情视频| 天天干人妇| 物业黑人 AV一区| 成人性爱视频在线看| 色眯眯射| 另类图片欧美激情综合| 精品无码久久久| 天堂男人网| 久久99操天天日| 亚洲 欧美综合| 99操视频| 夜夜欧美 | 97情超碰色| 国语国产操逼伊人AV网| 麻豆国产成人精品| 巨爆乳一区二区爆乳区| 国产熟妇一区二区| 日韩美女啪啪一区| 国产美女口爆吞精| 中国一级操逼视频| 91草草草| 91社操逼| 亚洲欧美91√| 岛国精品视频在线观看| 欧美性高潮| 亚洲人人操| 欧洲亚洲少妇| 久久人人妻| 一级性爱视频免费观看 | 99超碰碰| 一区二区 韩日AV| 亚洲动态色图| 密臀在线免费观看| www.久久制服糖| 日日做夜狠狠爱欧美黑人| 亚洲一欧洲中文字幕在线| 极品一区二区三区免费| 亚洲欧美日韩综合在线尤物 | 99热一区二区三区四区| 骚逼高潮久久精品| 超碰在线人人射| 国产丝袜美腿美女麻豆| 无码逼| 亚洲欧美综合网| 综合色图区| 人人做,人人操,人人摸| 日韩精品大香蕉伊人在线| 中文自拍欧美影视| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 色哟哟的毛片| 肏逼福利网站| 吉川爱美亚洲二区在线| 操婷婷逼| 天天看天天日| 手机久操欧美综合色码| av婷婷色婷婷色六月| 欧美色干| 吉田爱美AV在线| 国产一区二区欧美日本| 久 久无码人妻AV| 伊人久久久日韩一区| 亚洲AV无码国产成人| 国产精品熟女一区二区三区| 丰满搜索结果 -第18页- 久久高清无码| 国产区91柔拿会所技师| 人人妻人人爽一区二区三区| 欧美熟妇人体| 操婷婷逼| 欧美十八禁视频| 青青久日| 国模不卡一本二本三电影| 人人操人人狠狠操| 三男一女不戴套的A片| 欧美在线中M| 久久五月份| 亚欧日韩成人| 超碰97久久| 夜夜夜夜爽| 亚洲最大黄网| 国产精品久久久三级无码| 久久久久9999| 加勒比性爱成人在线| 久久色激情一区二区三区| 午夜精品探花| 亚洲欧洲中文日韩女优乱码| 撸无码不卡免费视频| 99色婷婷中文字幕乱色| 色色色综合| 奇米狠999| 91免费看一区二区三区| 夜夜嗨一区二区三区三州加勒比| 少妇毛片久久| 综合啪啪| 国产精品嫩草影院免费| 日本阿v天堂在线观看| 97人人色| 熟妇高潮精品一区二区三区下载| 精品久久青青草| 亚洲欧洲综合视频在线| 在线岛| 亚州熟女乱伦| 99在线精品视频| 成人日本片久久久蜜桃| 久久大精品乱码视频人妻熟女| 97蜜桃综合| 色婷婷激情| 91黑人无码激情在线| 蜜桃视频成a人v在线| 情趣丝袜无码操逼视频| 蜜桃狠狠色伊人亚洲综合网站| 风间由美日韩欧美久久| 91精品国产乱码| 99抽插| 人妻精品一区二区全免费| 91 手机在线播放 绯色| 99自拍视频在线| 自拍偷拍2025在线观看| 欧美性爱三区二区| 先锋色眉乱伦资源| 偷拍亚洲熟女视频播放| 秋霞操逼片| 污色区网站| 人人操欧美风骚| 啊啊啊啊网站| 91亚洲在线| 亚洲97在线| 久草午夜| 97九色| 美女被啪到深处抽搐视频| 亚洲日韩天堂| 久久大| 亚洲伊人成综合成人网| 亚洲九九九| 国产无码精品无码| 国产乱伦视频污| 欧亚无码视频| 免费av在线播放二区| 国产视频一区二区三区在线免费观看 | 青青草字幕AV| 无码操逼天堂| 四虎免费视频| 蜜臀久久99精品久久久久电影| 青青草在线视频播放器| 变态综合色| 好色综合| 日韩一区二区精彩视频| 26UUU欧美激情一区二区| 欧美成人四级在线播放| 波多野结衣先锋影音| 日韩不卡在线一区二区| 最新欧洲欧美日本激情网站| 天天插天天舔舔天天干| 熟女自慰久久久| 熟女网站最新| 精品一区二区2| 玖玖久久久| 无码久久亚洲高清,| 在线无码网站| 99日精品欧美国产| 看日韩美女二区三区免费操逼视频| 亚州宗合另类| 青青操在线亚洲视频观看欧美在线| 综合91网| 这里只有97精品| 久久综合九色综合欧洲98| 人人潮人人摸| 伊人久久婷婷| 人妻一区二区三区| 欧洲自拍色图gif在线| 一本大道青青| 亚欧高清| 91小视频| 91爱综合| 亚洲自拍欧美色综合| 综合色欧美| 91深夜夜| 99热精品在线在线| 国产精品网站www| 我想要啊 啊 啊| aV中亚| 强奸乱伦av电影| 人妻碰碰碰碰碰碰| 在线小视频| 精品午夜福利导航| 乱伦av.com|