日韩精品一区二区三区在线视频放-无码中文字幕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色| 韩日欧亚a级| 亚洲se91| 欧美后进式| 51一区二区三区| 狠狠操官网| 亚州操操穴网| 亚洲精品久久久久毛片A片拉屎| 人妻乱仑一区二区三区| 中文字幕第7页| 国产福利av精彩对白| 人妻酒店出差被中出免费在线播放| 国产激情在线| 婷婷五月天色| 欧美综合色图网| 任你爽视频| 67914在线兔费成人视频| 国产成人精品必看| julia ann久久| 国产激情av女片自拍| 人妻黑丝袜电影| 国产无码高清操逼视频| 97公开久久| 国产一区二区三区视频在线看| 鸥美精品一区二区久久婷婷| 日本免费人成视频播放120秒| 国产视频第2页| 丁香六月综合激情| 91肉片| 午夜精品99久久久久传媒| 亚洲在线欧美| 亚洲射综合网| 欧美,日韩,亚洲视频| 亚洲日韩XXX| 黄色一级视| 久久香蕉国产线看观看亚洲女人 | 死我十八禁| 激情网色| 久久亚洲一区女同性恋中文字幕 | av天堂天堂av日韩| 白嫩白嫩的午夜九久久久久久久久久久久成人剧场 | 992大香蕉| 亚洲少妇喷视频看| 性爱视频无打码在线观看| 欧美A√综合网 | 久久精品国产Aⅴ| 久草精品国产蜜臀| 日韩有码一区三区| 人妻日日干| 欧美92| 天天肏美女| 嗯啊视频免费在线观看| 大鸡巴久久| 99国产精品在线观看| 在线观看无码三级少妇| 五月天人妻综合| 大香蕉在线视频15| 91c色| 中文字幕乱妇免费视频| 我想要啊 啊 啊| 日本在线一二| 柠檬AV导航| 极品销魂美女一区二区 | 亚洲麻豆精品二区三区| 亚洲成人日韩小说| 69一区二区| 伊人aaa| 婷婷综合五月天| 国产一区免费午夜视频| 欧美欧美啪啪视频| 人伦四五区| 北条麻妃性愛视频| 操淫穴亚洲五月丁香| 色综合色综合网| 国产成年女人免费视频播放a| 天天在线91| 宗合情欲网| 色5月婷婷| 97在线精品观看视频| 中文字幕乱妇免费视频| 囯产精品久久久久久久久久二区三区| 超碰97综合在线| 亚熟hd视频在线| 免费av高清无码| 91无码人妻精品一区二区三区蜜桃| 久插综合| 亚洲aw毛茸茸在线| 大乔未久88一区| 日本免费一区二| 在线观看精品国产免费| 国产自产自拍| 欧美伊人久久综合网| 91色婷婷综合久久中文字幕二区| 国产精品对白自产拍| 黄色十八禁网站| 伊人97超碰| 五月天激情网站| 中文操嬖片。| 中文字幕奈奈美被公侵犯| 欧美天天射| 殴美色网| 这里只有精品97| 高潮9999外国| 99热精品在线观看| 天天摸天天操视频| 9I1性色影院| 国产精品国产| 国产精品一区二区三| 高颜值美女口爆高潮浪叫| 人妻 欧美亚洲| 裸体1区| 无码操逼天堂| 97中文字幕一区| 成人开心网在线视频| 一区二区播放| 777超碰| 日韩欧美加勒比| 蜜桃av色偷偷av老熟女| 亚洲欧美天堂| 四虎国产精品永久地址入口| 欧美日本国产日韩激情视频| 另类小色呦| 日亚韩精品视频二区三| 99自拍视频在线| 91美女中出| 殴美,日韩国产伦精品| 天美av在线观看| 人人喜人人妻| 91日产欧美| 97视频新免费| 女生久久网| 久久熟女人| 久久超碰、| 九九九九九九视频| 欧姜老司机| 久久青青草在线视频| 男女啪啪啪18禁网站| 99久久久久久亚洲精品不卡| 成人性爱全视频观看| 天天爽人人综合免费7799| 99无码视频| 国产有码一区| 91精品国| 国产精品点击进入在线影院| 色九月婷婷| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 色网1| 欧美的精品的视频| 激情黄色片在线观看| 亚洲激情综合另类男同| 中文字幕在线观看视频www| 91久热这里只有精品| 绯色AV粉色AV蜜臀AV| 无码男人天堂| 视频不卡中文字幕| 亚欧国产无码精品在线| 日本午夜福利视频| 国产AB视频| 2024黄色视频| 日本99热| 热热色青青草| 思思热久久成人| 精品一区二区三区蜜桃臀赵总 | 天天天堂影视日韩亚洲91| 91欧美情色| 天天射天天操天天干天天吃2018 | 在线毛片片免费观看| 一级特级aaaa毛片免费观看 | 一个人免费HD91视频| 天天欧美色| 欧美日韩中文字幕不卡| 99999久久久久9国产精品| 97超碰碰碰| yazhououmeizongya| 天天日日夜夜| 欧美十八禁导航成人| 搡老女人老91二区| 免费伦费视频在线观看| 九九热re99re6在线精品| 91扒丝袜综合在线| 欧美精品999| 精品久久无码午夜福利| 91熟女丨91老女人| 91色综合色| 色嘟嘟人妻天堂网| 婷婷色色五月天| 欧美性爱第一区| 婷婷爽人人婷婷爽视频| 最新制服中文第一页| 激情综合av| 岛国AV一区二区电影| 天天躁日日躁AAAXX| 日本1区2区不卡视频| 久久香蕉国产线看观看亚洲女人 | 精品国产三级av韩国在线| 玖玖资源视频一区二区三区| 中文字幕第95页| 极品后入免费视频| 大香网伊人久久综合网eew| 天天操天天插| 中文字幕一区二区三区蜜臀| 亚州色交| 久久婷婷在线观看视频| 台湾佬中文娱乐自偷自拍| www.狠狠操| 亚洲综合婷婷| 国产成人精品亚洲日本| 国产 日韩 另类 视频一区爱| 综合操逼| 92午夜免费福利视频| 亚洲 日本 国产 综合| 国产91精品在线免费| 国产三级片在线观看| 日韩欧美久久婷婷网站| 成人性交午夜免费片| 淫纸中9区| 果冻传媒A片一二三区| 日本道日本道中文字幕日本道最新日本道在线观看 | 夜夜草网站| 成人片在线播放| 婷婷久草| 口爆欧美91| 少妇一区二区三区在线观看| 东京热熟女亚洲视频网站| 青青伊人加勒比海| 超碰综合97在线| 亚洲a色| 国产一区二区在线播放| 尤物av网站免费在线播放| 欧美gv在线观看| 免费无码国产精品v片在线观看| 国产AV激情无码久久无码| 国产成人免费观看在线视频| 日韩另类| 97久久久精品| 快播久久人人aV| 国产精品香蕉| 日本狂喷奶水在线播放212| 日本性爱少妇| 欧插网站| 色欧美色交综合| 国产99热| 国产成人手机视频激情| 中文高清一区二区的| 超碰天天操| 欧美丝袜亚洲| 欧美综合国产精品久久丁香| 日韩AC| 亚洲人精品久久久喷水| 91n免费处女| 精品国产乱码久久久| 国产日韩精品无码去免费专区国产| av天堂精品久久| 五月丁香综合| 日韩综合色网| 极品欧美一区二区三区| 99热自拍| 污电影在线观看| 日韩欧美亚洲自拍偷拍| 色色色热| 欧美丝袜美女电影一二三四区| 丰满人妻-区二区三区| 国产成人精品必看 | 国产精品免费久久久久久久久久| 日本天天操| 国产精品久久久视频| 2019亚洲男人天堂| 岛国激情视频在线观看| 国产人妻精品久久久一区二区三区 | 蜜臀久久一区二区| 久热最新在线杭州| 国产精品制服丝袜清纯唯美| 国精综合一二三区影视| 性综合网| a网站免费观看| #NAME?| 啪啪啪东京| 国产黄a三级三级三级av在线看| 97久久国产亚洲精品超碰热| 国产成人无码啪| 色女综合| 人人性爱视频免费| 中文字幕一区 二区三四五 区日 日骚| 欧美第五页| 97摸视频| 乱色老一区二区三区的观看方式| 亚洲男人久久综合天堂| 超碰夫妻97| 久久久久久人妻一区精品色欧美| 91色综合激情| 免费A片三p视频| 精品无码久久久| 94色色电影网| 久久精彩视频9| 中文一区二区三区影院| 伊人久久国产免费观看视频| 99久久久久久亚洲精品不卡| www被窝色com| 91精品国产高清久久久久久,亚洲成人| 妇女视频网站| 黄色一区二区秘书性感| 亚洲电影91| 无码高清国产AV| 狠狠色一区二区中文字幕| 第四色奇米影视777| 亚洲宗合电影| 日韩无码精品综合久久| 91欧美丨精品丨入口| 91香蕉视频在线观看免费| 亚洲男人天堂2016| 操逼视频亚洲| 亚洲精品人体| 国产精品久久久久绯色| 中文字幕亚洲永久精品| 亚洲欧美洲综合| 乱精品一区字幕二区| 在线免费观看高清无码视频| 欧美久久久| 蜜臀AV网站| 9I1性色影院| 国产精品经典一卡久久久| 亚洲日韩视频二区| 手机在线大香蕉| 国产a级精品| 十八禁av无码免费网站APP| 加勒比五月天| 国产成人亚洲精品自产在线 | 蜜臀AV一区二区三区激情综合| 2024黄色视频| 亚洲极品| 欧美一区二区三区大综合| 又粗又长又爽在线观看| 欧美97se| 91偷拍欧美亚洲| 亚洲最大AV网| jazzjazz国产精品麻豆| 97国产精品久久久久| 亚洲天天艹| 草草影院最新网址| 国内外内射高清视频| 久久这里| 久久午夜伦| 色成人Www精品永久观看| 国产区在线| 午夜精品久久久久久久99热影院| 亚洲九区| 最近的最新的中文字幕视频| 亚洲乱码精品一区二区| 久草免费在线视频| 97网址97| 蜜桃色院一区久久 | 色婷婷国产精品一区在线观看| 天美精品一区二区三区四区在线观看| 99ri视频| 国产日韩在线播放| 久久受www免费人成| 天天夜夜rb| 一区二区不卡| 欧美色九九九| 观看免费区二区三区二| 色色婷| 日本免费专区| 啪啪AV导航| 草草草视频在线免费看| 精品在线蜜臀| 国产精品夜夜| 精品美女少妇一区二区| 香蕉精品二区二区| 99视频自拍区| 亚洲一区中文字幕| 91视频女生| 91超碰碰在线| 伊人四虎综合| 国产后入清纯| 久久中文字幕女同性恋一区| 尤物视频新赏网鲜网色诱网| 2017天天透天天通天天擦| SS久久| 久九九九九九九热| 人妻久热在线| 一二三啪啪专区| 骚货| 不卡超碰护士AV在线免费播放| 色婷婷丁香| 黑人无码一区二区| 国产无码一二三区| 五月天综合| 丁香婷婷久久| 长长久久88视频| 中文激情网| 亚洲精品日韩国产欧美| 亚洲精品 大香蕉| 六月婷婷激情| 欧美人妻精品| 激情图片亚洲色图| 久色99999| 本道在线| 91女日逼| 亚洲 无码 偷拍| 午夜无遮挡男女啪啪视频| 久久黄色性爱视频| 色玖玖| 内射日韩大臀美女| 亚洲一二三| 天天干人妻视频| 日本加勒比无码专区| 啊啊啊在线观看| 影音先锋日本一区二区| 日韩av在线播放不卡| 91GD.COM| 国产又大又粗又长视频在线| 亚洲视频二区| 日骚逼视频| 欧美黄色手机在线观看| 久久成人午夜精品影院 | 天天综合站| 91高潮| 澳门黄片一香蕉视频| 你想操日本小逼吗| 理论久久婷婷网 8| 久久久久久裸体| 色逼综合| 精品v日韩欧美国产| 999在线电影香蕉| 岛国人妻少妇av在线观看| 中出91视频| 国产欧美在线观看免费观看| av片在线观看免费播放| 天天天乱色综合全| 91 丝袜在线播放| xxx0国产在线播放| 熟女自慰久久久| 国产乱码久久久| 日熟女| www.夜夜操| 欧美97日韩精品| 激情小说亚洲色图| 操逼网免费无码视频| 精品视频97| 天天综合色图| 国产福利av精彩对白| 国产综合久久久鬼色| 超碰色图| 91在线精品| 日韩 成人 有码| 起碰97| 久99| 超碰天天去日穴| 大香蕉强奸乱伦| 亚洲综合113页| 后入国产| 床上啊啊啊一区二区三区| 热久久无毒不卡| 亚洲va有码在线天堂| 厕所偷拍在线| 国产又粗又大硬免费色网视频| 五月香婷婷| 日韩欧美蜜桃精品久久中文字幕久久| 亚洲91在线播放影院| 伊人久久国产免费观看视频| 久久精品店| 超碰九色| AV女优男人的天堂| 六月天婷婷| 啊啊啊轻点在线观看| 熟女精品va中文字幕| 欧美情色贴图| 国产AV毛片| 色色色色色色色色综合| 国产 无码 一区二区| 四虎国产成人精品免费一女五男| 白丝被操91| 97天天做| 最新岛国大片| 九七毛片九九毛片| 亚洲黄色a级片| 四虎免费看黄| 色yeye成人免费视频| 久久噜| 国产精品爽爽v| 精品中文日韩字幕视频| 伊人aaa| 天天干天天操天天操夜夜操天天操| 91 刺激在线| 激情小说亚洲图片| 强奸乱伦大香蕉网| 97热视频在线观看| 免费中文在线| 久久精品国产亚洲av水密被窝| 精品国产Av无码久久久亚洲| 美女淫穴| 中文字幕中文字幕一区二区| 欧美日韩亚洲五月天婷婷| 色色毛片| 日韩精品怡红院| 亚洲黄色a级片| 日本Suv精品一区二区| 野狼激情网| 国产无码精品无码| asc国产精品| 国产激情片在线观看| 99999国产精品| 激情文学欧美| 能在线播放的国产三级| 91欧美经典| 国产成人久久久精品免费AV| 国产99999| 免费看污网址| 99热在线观看| 日韩成人在线性爱视频| 国产精品久久久久9999小说| 人人澡人人爽人人精品| 精品在线观看视频在线| 97天天| 黑人精品久久97| 67914亚洲精品| 岛国在线国产| 97爱亚洲| 国产嫩草精品A88AV| 亚洲无套久久嗯嗯| 秋霞曰韩R级| 亚洲激情视频| 日韩中文字幕精品一二三事国产精品| 欧美熟爽综合| 色综合网1| 黄色av网站在线播放| 91亚洲影视| 宗合情欲网| 婷婷久久五月| 中国国产精品一区视频| 天天综合网国产| 亚洲美女自拍偷拍视频| 亚洲一区日韩精品中文字幕 | 性爱视频无打码在线观看| 91精品国| 男人天堂网手机版婷婷| 97人人爱人人做人人乐| 亚洲天天艹| 色九月婷婷| 久久国产热视频97电影| 福利视频合集| 久久久久久人体| 在线情色电影 91大 | 99蜜桃臀久久久欧美精品网站| 99啪啪| 一个国产在线综合网站| 久久久91| 九九九九一区| 无码操逼天堂| 91美女在线视频| 亚洲人成色9999精品久久| 久热伊人| 蜜臀国产AV中文字幕| 欧美一级做a爰片免费视频| 欧美十八禁导航成人| 特级特黄一级毛片免费| 人妻9117c| 成人线上超碰| 亚洲精品人伦一区二区| 亭亭在线资源| 一本一道久久综合久久| 伊人少妇久久久| 呻吟 欧美 日本 中出| 九9热伊人| 中文字幕日韩人妻视频一区二区三区交换夫妻| 亚洲综合影片| 久久久久78| 国产二区三区粉嫩在线| 欧美 日韩 婷婷 五月| 操死我了嗯嗯嗯| 老熟女熟妇| 国产成人主播| 亚欧美色图| 日本亚欧爱爱| 久久春色| 午夜a成v人电影| 久久久久久久伊人精品| 亚洲最新中文字幕免费| 韩国一级做A片免费的| 国产日本久久免费精品| 伊人AAA| 免费看污网站| 国产农村妇女精品1区二区| 伊人久久久日韩一区| 99热18这里只有精品| 超碰这里有精品| 亚洲视频精选| 色就色综合| 乱伦av麻豆| 丁香六月婷婷久久综合| 久久九九一区二区三区成人| 老女人老91妇女老热女| 麻豆天美在线| 国产日韩精品无码去免费专区国产| 欧美探花网| 大屁股xxxxx| 高清不卡视频| 加勒比五月天| 大香蕉78| 黄色av一区二区在线| 国产又粗又又黄又猛| 啊啊啊在线看| 国产家庭乱伦表演| 久久久久97| 国产综合色精品在线观看| 人人性爱视频免费| 欧美一区二区亚洲天堂| 亚洲色色色| 亚州综合AⅤ| 天美麻豆一区二区三区| 国产真乱mangent| 这里都是精品在线观看| 丁香婷婷激情五月天无毒不卡 | 91久久99久久91熟女精品| 欧美专利1区2区3区4区5区免费| 青青11操操操操操操操操| 国产偷人妻精品一区二区在线| 成人性交午夜免费片| 一级岛国大片| 992这里有精品| 乱老熟女一区二区三区| 色色九区| 国产伦乱91| 欧美变态激情网| 女生91网站| 激情看片网站| 国产久久久久影院老熟女| 激情一区二区| 中文字幕在线高清男人的天堂| 91美女在线视频| 操熟女91| 99综合视频一体| 色偷偷综合91久久噜噜| 在线中文字幕| 色九九九| 搡老熟女免费视频| 精品欧美А∨无码黑人大荫蒂| 婷婷五月在线视频| 一区二区播放| 男女猛烈无遮掩视频免费软件| 99视频精品| 好看的久久不射无码影视影院| 大香蕉78| 开心五月天激情网| 日日操夜夜操天天操免费观看麻豆| 天天色播亚洲综合网站| 少妇精品久久久| 性爱免费视频成人| 中文字幕伊人| 操操操日本的逼| 91女优在线观看| 色欲日韩欧美在线一区| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 国产久久成人| 粉嫩久久久久| 九月丁香综合网| 久久99精品国产| 欧美日本国产日韩激情视频| 五月天亚洲网| 99久久精品国产高潮| 亚州,欧美在线| 婷婷五月天网| 久久久久久久| 熟妇艹鸡八| 一区操逼日比视频| 2019AV天堂| 自拍偷拍亚洲熟女妇人精品| 97伦乱| 97色在线| 加勒比综合| 久久精品老司| 超碰成人国产| 久久久久女教师免费一区 | av日韩中文字幕| 三级片网站在线播放| 青青草好吊色| 亚洲欧美setu| 欧美日韩 强奸乱伦| 传媒在线观看一区二区三区| 不卡超碰护士AV在线免费播放| 熟女乱3伦999| 欧美综合自拍亚洲综合图| 日本三级黄页| 色哟哟 日韩精品| 蜜臀无码一区二区| 97干日韩| 韩日性爱av| 香蕉视频精品亚洲一区二区三区在线播| 视频在线观看一二三区| 1769一区| 欧美综合亚洲| 一区麻豆 高清中文字幕| 人人操人人摸人| 不卡视频一区蜜桃视频| 国产盗摄美女如厕大神作品在线观看| 韩国一级做A片免费的| 91老司机在线| 国产久久男人天堂| 91亚洲精品青草| 国产成年女人免费视频播放a| 亚洲欧美综合网 | 草草草视频在线免费看| 天天在线91| 综合 青草 伊久久 影院 综合| 亚洲第一免费视频| 国产精品女aA片爽爽视频| 超碰综合97在线| 偷看洗澡一二三区美女| 国产成人超碰在线| 97在线观| 亚洲欧美天| av午夜玫瑰| 东北黄色电影| 99热在线观看| 无码黑人精品一区二区三区三| 东京热双插| 国产精品一区在线播放| 秋霞男人网| 97人肏| 婷婷色网| 久久性视频| 国产欧美一级在线观看| 亚洲国产91精品一区二区久久| 青草精品视频日本久久久久网站在线| av麻豆啪啪| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 欧亚乱色熟女一区二区| 亚洲97成人在线观看| 欧美翘臀视频网站一区二区三区| 国产精品久久久久999| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 五月婷婷综合网| 99精品久久久久久久婷婷蜜桃| 欧美呦呦性爱| 91视频伊人| 日本在线观看网址| 久久久久99999| 人妻精品一区二区| 欧美激情专区| 91亚洲色图| 久久久久国色αv免费观看| 久久偷偷色综合蜜桃| 97在线资源| 91欧美丝袜| 欧美亚综合色图| 不卡九肏| 97色涩| 超碰久久综合| 蜜臀久久99'精品久久久| 欧美爱国产综合、| 亚洲AV色图一区| 蜜臀th| 91热热色| 国产精品午夜AV完会免费| 日本阿v天堂在线观看| 欧美天天干| 美女被啪到深处抽搐视频| 台湾一区国产高清在线| 乱伦日本中文自拍| 韩国黄片aaaa| 五月婷婷AV| 俺去久久| 大香蕉中文aV在线| 超碰综合色| 日韩传媒在线| 亚拍在线| 欧美最婬乱婬爆婬牲视频| 丝袜美腿操av| 91殴美| 我要色综合网| 狠狠婷婷亚洲中文综合久久| 久久这里只精品免费福利| 精品九九九九| 美女熟妇色| 久久这里是精品| 在线观看精品国产免费| 操狠狠| 91在线美女| 国产第二页| 美女久久久久久久久久久| 亚洲性爱电影| 日本精品高清一二区一本到| 欧美激情总合网| 欧美玖玖爱免费玖玖| 久久啊啊啊| 亚洲欧美国产中文视频| 欧美中出1| 亚洲综合图文| 国产精品大屁股999| 绯色一区二区三区不卡少妇| 尤物一级在线免费观看| 18一区二区三区| 91色色综合| 日本一级真人黄色性爱视频| av天堂5| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 5278欧美一区二区三区| 91 丝袜在线| 干美女人妻| 乱伦一区二区三区‘| 色欧美天天| 福利天天都操| 欧美亚洲国产91在线| 五月丁香影视| 国产精品一区二区麻豆| 2017天天插| 久久精品国产亚洲AV片多多| 欧美 传媒 麻豆 日韩 偷拍| 色欧洲| 日韩AV无码中文一区二区| 色 婷97| 97超碰碰| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 精品人妻一二三| 五月天激情四射| 最新9久久久9免费视频| 伊人专区一区二区三区| 1024日韩| 另类图片五月天| 日韩人妻中文视频| 国产婷婷一区| 亚洲欧美日韩免费观看| 97人妻色| 91bbb| 国模吧 一区二区三区| 久久精品中文字幕女同| 黄色AAAAA欧美| 丰满精品人妻少妇久久字幕| 欧美一级在线观看成人| 91超碰人人| 免费国产视频| 黄色污污污污污污网站| 久久久久久久久9| 日本在线视频导航| 人妻激情视频| 欧亚性爱视频免费看| 国产精品粉嫩福利在线| 亚洲 欧美 手机在线观看| 97天天在线| 噜噜噜在线视频| 熟妇激情| 欧美日综合| 美女91AV| 成人资源中文字幕在线观看天天| 九色黄站| 人妻天天爽夜夜爽精品2| 国产精品国产亚洲区艳妇糸列| 一区二区偷拍拍视频| 熟妇熟女一区二区三区| 精品福利视频| 岛国激情视频在线观看| 玖玖爱一区在线| 黄色小视频日本txt| 中文字幕一二三av| 男人天堂2019亚洲| 大香蕉欧美| 男人的天堂VA在线| 色噜噜人妻丝袜a∨先锋影| 97在线公开视频| 国内外色色色色色成人视频| 亚洲无码com| 日韩精品大香蕉伊人在线| 一区二区三区亚洲| 激情五月天校园春色网| 开心五月婷婷激情| 三男一女不戴套的A片| 亚洲吊色| 在线性黄高清免费视频| 婷婷综合伊人一区| 人妻内射一区二区在线视频| 欧美色综合影院| 欧美在线天堂| 超碰这里只有精品| 五月丁香啪啪| 亚洲精品国产日韩无码AV永久免| 大香蕉啪啪啪啪在线| 丁香九月激情| 99久久精品无码一区二区毛片免费| 亚洲欧美爆| 人摸人人操人| 老司机福利青青草| 久久久久人| 综合婷婷| 黄色人人| 国产白丝av| 亚洲人综合| 亚洲精品蜜桃久久久一区二区三区| 一级@啪啪视频| 快灬快灬 一下爽蜜桃在线观看| 青娱乐蜜桃臀AV色婷| 操逼网站地址| 国产精品成久久久久午夜午夜| 欧美体内射精| 亚洲视频一二区| A V少妇特黄三级| 久久久亚洲Av| 激情综合网激情综合| 欧美淫乱视频| 中文字幕人妻色偷偷久久皮| 噜噜噜无码AV一级一级久久影院| 伦激情人妻另类人妻| 欧美人妻少妇| 91天堂丝袜美腿| 国产日韩精品一区二区三区| 五月婷久久| 热99这里只有精品| 欧美性爱第一区| 东京热毛片177b2viP| 精品丰满熟妇人妻一区| 校园春色宗合网| 黄总AV色图| 国产超碰在线| 久久婷婷亚洲| 亚洲欧美国产其他二区| 国产性爱乱伦AV| 国产精品一区二区a| 蜜臀久久久99久久久久| 天干天干天干天天做| 好爽要喷了| 九九九精品一区二区无码| 日韩无码嘿咻黑热久| 久久婷婷伊人| 99性视频| 久久精彩免费视频| 国产精品蜜乳AV| 性色av网站| 欧美一区二区观看在线| 国产精品麻豆视频网站| 人人人摸人人| 日韩成人私密一级精品av| 亚洲色图 欧美| 97精品国产| 天天综合色图| 欧美日韩在线小说 | 亚洲色图20p| 亚洲熟妇丝袜在线观看| 97人人草| 色噜噜综合在线| 1024久久高清视频| 日本三级人妻a人妻一在线| 日本福利社| 一二三四日本视频高清| 奸色色 男人天堂 天天射| 国产天美欧美| 亚洲成人福利电影免费| 亚洲成人性爱在线观看| 久久美女福利是上海美女| 国产欧美一区激情交| 九九热AV| 婷婷丁香五月综合| 欧美成人9797| 91麻豆天美国产| 熟妇高潮精品一区二区三区下载| 神马福利久草| 色天使大香蕉| 亚州国产成人精品女人久久 | 韩国一级婬片A片AAAAA| 无码视频黄色网战| 日日干日日| 打av高清| 久久久成人精品| 91天天美女| 校园春色五月天| 俄罗斯一区二区视频在线观看| 国产强上视频在线观看| 色婷网| 91 手机在线播放 绯色| 啊啊啊好舒服好爽啊啊啊视频| 亚洲男人综合网| 91A欧美电影网站| 无码天堂| 自拍偷拍 高清无码| 五月婷丁香| 台湾大香蕉99热| 精品久久久一本一道| 超碰色大香蕉| se吧提供91精品国产91久久久久久| 亚洲AV噜噜狠狠网址蜜桃动漫| 久久婷婷精品| 丁香六月综合激情| 久久一二三四不卡| 人妻熟女一区二区三区视频| 思思热在线视频免费| 丝袜美腿制服人妻二区中文字幕| 人人操人人大香蕉| 久久久9品一区二区三区| 欧美玖玖爱免费玖玖| 亚洲色91| 欧洲一级性爱视频在线观看| 欧美九9 9 9| 秋霞鲁丝午夜无码一区二区三| 操人妻视频| 亚洲精品国产熟女久久久久久| av在线资源| 成人一区二区三区四区| 天天噜| 国产成人无码高清| 精品乱子一区二区三区99| 欧美色图片欧美色图| 蜜乳视频网站| 久久草草欧美精品| 青青草华人在线欧美在线| 亚洲AV无码乱码| 99日韩| 亚洲天堂人人妻| 天天操夜夜操| 九月婷婷综合| 1024午夜激情男人的天堂| 久久精品一区二区| 色99视频| 亚洲精品黑丝| 樱花蜜乳av| 亚洲夜色在线| 人妻美腿丝袜日韩| 久久精品久久九九精品| 色婷婷在线视频精品导航| 东北女人高潮视频| 亚洲AV无码翔田千里网站| 国产av尤物| 91精品网站| 亚洲操操| 清纯唯美综合| 翔田千里av一区二区三区| 精品亚州18| 九月激情婷婷| 大香蕉宅男伊人| 欧美日韩黄片精品在线| 老熟女91av| 精品人妻一区二区三区在线视频不卡| 国产精品午夜高潮呻吟久久av| 亚洲啪啪啪啪视香蕉| 奇米狠999| 中文字幕神马久久| 国产无码精品高清| 啊啊啊啊二区好大| 欧美激情性久久久久久| n1038 一二三区| 欧美日韩大黄片| 嗯嗯啊啊操死我| 日本人妻最新在线中| 麻豆AV一区二区| 韩国三级一线观看久| 欧美成人亚洲精品| 私人尤物在线精品不卡| 神马久久久久眼| 粉嫩av平台| 日本一天色道久久久精品视频| 欧美亚洲国产91在线| 欧美综合第一| 亚洲图片婷婷五月天| 91N综合在线| 久久精品中文字幕无码l| AV久日| 一类av片在线看| 日韩精品9区| 在线观看日韩av不卡| 久久蜜桃一区二区| 久久大香蕉手机高清| 亚洲性网| 影音综合网| 亚洲第一精品在线视频| 国产和美国毛片| 人妻AV在线| 狠狠久久手机视频精品| 激情图片伦理国产一区二区日韩| 粉嫩av久久一区二区三区| 人妻熟女一区二区| 欧美日韩成人| 日韩免费高清大片在线| 久久精品亚洲东京热色播| 亚洲色图尤物视频| 欧美 日韩第一性色| 操狠狠| 爽极品影院| 欧美激情 一区| 欧美|91色综合| 久久五十路熟女人妻| 91国产丝袜白虎| 中文字幕一区 二 区 三 四 五 区日 日 骚| 国产精品久久天天干| 美女AV一区二区| 日韩中文字幕二区| 日本久久女同性恋视频| 国产和美国毛片| 久久伊人在线五区| 女人双腿搬开让男人桶| 国产免费内射视频| 97爱b| 97舔舔| 粉嫩在线一区二区懂色| 色吧5亚洲| 情色图区| 嗯嗯啊啊用力视频免费| 成人国产精品三级A片| 狠狠色伊人亚洲综合网站色| 97在线播放| 精品网站99999| 天天日天天舔天天喷天天射| 亚洲国产精品成人综合| 夜夜欧美| 天天草AV| 嗯……啊…嗯嗯…啊…好舒服| 99久久网站| 欧美狠狠| 亚洲女优有码无码高清| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 97操| 久区视频| 亚洲大色鬼| 18一区二区三区| 久久99精品视频| 国产亚洲精品av一区| 少妇被c 黄 免费观看| 一本色道人妻久久| 欲色啪| 国产一区二区三区不卡手机在线| 91强奸乱轮| 18禁精品网站在线看| 亚洲国产成人精品久久久国产成人一区二区| 死我十八禁| 黑人精品久久97| 日本岛国黄色网址| 天天视频综合在线观看视频| 一级日本牲交大片好爽在线看| 97干在线| 91色宗合| 久久国产精品m码| nuu12国产麻豆精品| 久久久久网站-538在线视频-欧美永久乱码 | 玖玖爱在线视频免费观看| 99av| 性欧美999| 人妻娇喘 激情视频| 超碰97极品9| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 亚州乱码中文字幕综合久久久| 精品国产乱码久久久久久久久1| 丁香六月激情综合| 大香蕉婷婷| 这里只有精品久久| 黄色片大香蕉| 国桃视频产巨乳精品一区二区在线| 夜夜高潮夜夜爽| 一道本东京热加勒比一区二区三区| 婷色五月| 在线 制服丝袜中出 人妻| 99操逼| 久热九九| Julia在线播放亚洲久久| 视频二区美腿丝袜制服人妻欧美| 亚洲精品无码少妇久久| 色色色色电影网| 涩五月婷婷| 日韩美一区| 综合 青草 伊久久 影院 综合 | 中文久久96| 欧美最大综合网| 深喉吞精| 亚洲无线观看久久| 97精品一区二区视频|