欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

飛控計(jì)算機(jī)硬實(shí)時(shí)操作系統(tǒng)選型與核心機(jī)制解析

飛控計(jì)算機(jī)硬實(shí)時(shí)操作系統(tǒng)選型與核心機(jī)制解析 先說個(gè)結(jié)論飛控系統(tǒng)選型實(shí)時(shí)性不是選項(xiàng)是門檻。在正式開始講飛控計(jì)算機(jī)常用的硬實(shí)時(shí)操作系統(tǒng)RTOS之前有必要先把這個(gè)詞拆開看——為什么大家反復(fù)強(qiáng)調(diào)“硬實(shí)時(shí)”而不是隨便找一個(gè)通用操作系統(tǒng)或者“看起來實(shí)時(shí)”的軟實(shí)時(shí)系統(tǒng)頂上。飛控計(jì)算機(jī)承載著姿態(tài)解算、導(dǎo)航融合、指令輸出、傳感器采樣這些任務(wù)任何一個(gè)環(huán)節(jié)出現(xiàn)不可預(yù)測(cè)的延遲輕則控制品質(zhì)下降重則直接導(dǎo)致失控。硬實(shí)時(shí)操作系統(tǒng)在這里扮演的角色就是確保關(guān)鍵任務(wù)在確定的時(shí)間窗口內(nèi)完成誤差按微秒、毫秒來度量而不是“盡量快”。這篇文章面向的讀者是正在做飛控軟件開發(fā)、無人機(jī)/航天器/工業(yè)自動(dòng)化項(xiàng)目的工程師或者打算從裸機(jī)程序遷移到RTOS、正在為平臺(tái)選型頭疼的朋友。我會(huì)從硬實(shí)時(shí)的底層邏輯講起逐個(gè)分析幾種主流RTOS的現(xiàn)狀與選型要點(diǎn)再把調(diào)度、中斷、時(shí)間管理這些核心機(jī)制掰開揉碎最后結(jié)合我實(shí)際開發(fā)中踩過的坑給出可直接落地的排查手段。內(nèi)容不堆教科書概念全是能用的東西。1. 硬實(shí)時(shí)到底在解決什么問題很多人一開始接觸“硬實(shí)時(shí)”這個(gè)概念以為就是“反應(yīng)快”。其實(shí)“快”和“確定”是兩碼事。飛控系統(tǒng)要的不是平均延遲低而是最壞情況延遲有上限。這個(gè)區(qū)別如果不搞清楚后面選型、設(shè)計(jì)任務(wù)模型的時(shí)候一定會(huì)出問題。1.1 硬實(shí)時(shí)與軟實(shí)時(shí)的本質(zhì)差異拿生活里的場(chǎng)景類比一下。外賣平臺(tái)說“預(yù)計(jì)30分鐘送達(dá)”如果今天30分鐘、明天40分鐘、后天超時(shí)了賠你一張券這就是軟實(shí)時(shí)——偶爾晚一點(diǎn)后果可控用戶能接受。但急救車的調(diào)度通道不一樣救護(hù)車出發(fā)晚一分鐘可能直接影響搶救結(jié)果這個(gè)延遲是絕對(duì)不能被容忍的這就是硬實(shí)時(shí)。飛控計(jì)算機(jī)顯然是后者更準(zhǔn)確地說它是一輛要求每一毫秒都要精確踩點(diǎn)的“急救車”。從技術(shù)定義上說硬實(shí)時(shí)系統(tǒng)要求任務(wù)必須在截止時(shí)間Deadline之前完成哪怕只超一次也算系統(tǒng)失敗軟實(shí)時(shí)系統(tǒng)則允許偶爾錯(cuò)過截止時(shí)間只要平均性能過得去就行。這個(gè)定義差別帶來了完全不同的設(shè)計(jì)哲學(xué)通用操作系統(tǒng)比如桌面Linux、Windows追求吞吐量和公平性任務(wù)調(diào)度器會(huì)盡可能讓所有進(jìn)程都“有飯吃”但沒人能保證某個(gè)關(guān)鍵任務(wù)在10毫秒內(nèi)一定跑完而硬實(shí)時(shí)RTOS追求的是可預(yù)測(cè)性Predictability寧肯犧牲一點(diǎn)平均吞吐也要保證關(guān)鍵路徑上的行為時(shí)間是確定的。1.2 飛控為什么對(duì)實(shí)時(shí)性要求這么苛刻飛控計(jì)算機(jī)的工作模式大致是這樣一個(gè)閉環(huán)傳感器以固定頻率比如慣導(dǎo)200Hz、氣壓計(jì)50Hz、GNSS 10Hz產(chǎn)生數(shù)據(jù)飛控在每一個(gè)控制周期內(nèi)讀取這些數(shù)據(jù)、做姿態(tài)解算、運(yùn)行控制律PID、LQR、ADRC等等、輸出舵面/電機(jī)指令然后進(jìn)入下一個(gè)周期。這個(gè)循環(huán)一旦建立每個(gè)環(huán)節(jié)的延遲就都被“鎖”在了周期預(yù)算里。舉個(gè)例子假設(shè)控制周期是5ms200Hz那么從傳感器數(shù)據(jù)“新鮮可用”到指令輸出整個(gè)鏈路的延遲最好控制在2ms以內(nèi)剩余的3ms還要留給余量。如果操作系統(tǒng)調(diào)度不穩(wěn)定某次中斷響應(yīng)超時(shí)了200微秒傳感器數(shù)據(jù)晚到了控制律拿到的就是“過期面包”姿態(tài)回路出現(xiàn)相位滯后飛機(jī)在高速機(jī)動(dòng)時(shí)就會(huì)開始抖動(dòng)甚至發(fā)散。這不是理論推演我實(shí)際調(diào)過一架出現(xiàn)高頻振顫的固定翼最后定位到根因就是某個(gè)外部設(shè)備的共享中斷把飛控的主控制任務(wù)的響應(yīng)時(shí)間拉長(zhǎng)了——操作系統(tǒng)本身沒問題但實(shí)時(shí)保證被破壞了。所以飛控領(lǐng)域選RTOS本質(zhì)上是在選一個(gè)“行為可預(yù)期”的運(yùn)行環(huán)境。它并不需要什么花哨的調(diào)度算法而是需要任務(wù)切換時(shí)間確定、中斷響應(yīng)時(shí)間確定、同步原語不會(huì)導(dǎo)致優(yōu)先級(jí)反轉(zhuǎn)失控。這幾個(gè)點(diǎn)后面我會(huì)逐一展開。2. 常用硬實(shí)時(shí)操作系統(tǒng)橫向?qū)Ρ葮I(yè)內(nèi)常說的“飛控常用硬實(shí)時(shí)操作系統(tǒng)”其實(shí)是有代際和流派之分的。有人喜歡商用封閉生態(tài)的VxWorks有人擁抱開源Linux的RT補(bǔ)丁也有人在小飛控上跑FreeRTOS。沒有絕對(duì)的好壞只有合不合適的場(chǎng)景。這里按我自己的理解把它們分成三類傳統(tǒng)商業(yè)RTOS、準(zhǔn)實(shí)時(shí)Linux變體、輕量級(jí)開源RTOS。2.1 VxWorks老牌高可靠選手VxWorks在航空航天領(lǐng)域的歷史地位相當(dāng)穩(wěn)固很多成熟飛控產(chǎn)品、航電設(shè)備都跑在它上面。它最核心的優(yōu)勢(shì)有兩個(gè)一是微內(nèi)核設(shè)計(jì)內(nèi)核只提供任務(wù)調(diào)度、中斷管理、IPC這些最基礎(chǔ)的服務(wù)其他功能文件系統(tǒng)、網(wǎng)絡(luò)協(xié)議棧以組件方式加載這意味著核心執(zhí)行路徑很短、行為容易分析二是它的確定性調(diào)度非常成熟配合專用的分析工具可以對(duì)任務(wù)的WCET最壞執(zhí)行時(shí)間做比較嚴(yán)格的測(cè)算。實(shí)際用下來VxWorks的缺點(diǎn)是生態(tài)封閉、授權(quán)成本高、開發(fā)調(diào)試需要專門的IDE和環(huán)境。如果是做量產(chǎn)消費(fèi)級(jí)無人機(jī)或者小團(tuán)隊(duì)科研項(xiàng)目這個(gè)成本和門檻會(huì)顯得比較重。但如果做的是有人機(jī)飛控、衛(wèi)星姿軌控這類高安全等級(jí)系統(tǒng)VxWorks依然是穩(wěn)妥的選擇。2.2 RT-Linux / PREEMPT_RT把Linux改造成實(shí)時(shí)系統(tǒng)Linux本身是分時(shí)操作系統(tǒng)但這不影響它通過補(bǔ)丁變得“準(zhǔn)實(shí)時(shí)”。PREEMPT_RT補(bǔ)丁現(xiàn)在相當(dāng)一部分已經(jīng)合入主線內(nèi)核把Linux內(nèi)核里的不可搶占區(qū)間大幅縮小把中斷線程化讓實(shí)時(shí)任務(wù)的調(diào)度延遲從幾十毫秒壓縮到幾十微秒量級(jí)。很多新一代飛控尤其是基于高性能處理器、需要跑復(fù)雜導(dǎo)航算法的平臺(tái)會(huì)直接采用“Linux RT補(bǔ)丁 實(shí)時(shí)線程”的架構(gòu)。這套方案的好處是生態(tài)豐富調(diào)試方便你可以一邊跑著ROS/中間件做感知和規(guī)劃一邊用實(shí)時(shí)線程保證控制環(huán)的確定性。代價(jià)是它很難達(dá)到VxWorks那種嚴(yán)格意義上的硬實(shí)時(shí)保證因?yàn)長(zhǎng)inux內(nèi)核自身的復(fù)雜性仍然存在即使打了補(bǔ)丁最壞情況下的調(diào)度延遲也依然比商業(yè)RTOS要差一些而且這個(gè)“差”很難通過靜態(tài)分析完全證明。所以我的建議是對(duì)實(shí)時(shí)性要求沒那么苛刻、但計(jì)算復(fù)雜度很高的飛控任務(wù)比如視覺導(dǎo)航、SLAM控制融合用RT-Linux很合適對(duì)硬實(shí)時(shí)要求極端的任務(wù)還是把控制環(huán)放到專用RTOS上更安心。2.3 FreeRTOS / uC/OS / RT-Thread輕量級(jí)開源主力中小型飛控從穿越機(jī)到中小型多旋翼用得最多的還是輕量級(jí)RTOS。這里FreeRTOS幾乎是事實(shí)標(biāo)準(zhǔn)一方面它是開源免費(fèi)的另一方面它的內(nèi)核足夠精簡(jiǎn)任務(wù)切換和中斷響應(yīng)都能做到微秒級(jí)。uC/OS過去也很流行尤其是它的內(nèi)核源碼清晰、教學(xué)價(jià)值高現(xiàn)在一些新項(xiàng)目也會(huì)用RT-Thread因?yàn)樗脑O(shè)備驅(qū)動(dòng)框架和組件生態(tài)更適合做“帶豐富外設(shè)的復(fù)雜產(chǎn)品”。這類RTOS的特點(diǎn)是沒有MMU或者不啟用MMU、任務(wù)棧靜態(tài)分配、調(diào)度器簡(jiǎn)單直接。它們的目標(biāo)就是讓MCUSTM32、GD32這類飛控跑起多任務(wù)同時(shí)保留確定性的時(shí)間行為。比如在STM32F4上跑FreeRTOS把控制任務(wù)設(shè)為最高優(yōu)先級(jí)、周期5ms只要中斷優(yōu)先級(jí)配置得當(dāng)抖動(dòng)通??梢钥刂圃趲孜⒚胍詢?nèi)這對(duì)飛控已經(jīng)完全夠用了。2.4 QNX適合需要“硬實(shí)時(shí)POSIX”的場(chǎng)景QNX是另一款商業(yè)微內(nèi)核RTOS在汽車、醫(yī)療等強(qiáng)安全領(lǐng)域有廣泛應(yīng)用飛控領(lǐng)域相對(duì)少見但它有個(gè)獨(dú)特優(yōu)勢(shì)提供POSIX接口應(yīng)用代碼可以比較方便地遷移到Linux上同時(shí)保持硬實(shí)時(shí)能力。如果你構(gòu)建的飛控系統(tǒng)需要跑復(fù)雜的應(yīng)用層比如任務(wù)規(guī)劃、通信管理又想把這些子系統(tǒng)和硬實(shí)時(shí)控制環(huán)隔離QNX的分區(qū)機(jī)制很值得參考。當(dāng)然它的授權(quán)費(fèi)用和生態(tài)門檻決定它更適合高端工業(yè)無人機(jī)、飛行汽車這類預(yù)算充足的賽道。為了更直觀對(duì)比我整理了一張選型速查表大家可以當(dāng)作參考參數(shù)來自我自己的實(shí)測(cè)和公開資料系統(tǒng)實(shí)時(shí)性級(jí)別典型調(diào)度延遲生態(tài)/許可典型飛控場(chǎng)景VxWorks硬實(shí)時(shí)微秒級(jí)~幾十微秒商業(yè)、封閉高安全有人機(jī)、航電PREEMPT_RT準(zhǔn)硬實(shí)時(shí)/硬實(shí)時(shí)有爭(zhēng)議幾十微秒~百微秒開源高性能計(jì)算控制融合FreeRTOS硬實(shí)時(shí)微秒級(jí)開源免費(fèi)MCU中小型飛控uC/OS硬實(shí)時(shí)微秒級(jí)開源/商業(yè)雙許可教學(xué)/工業(yè)控制RT-Thread硬實(shí)時(shí)微秒級(jí)開源復(fù)雜外設(shè)需求的飛控產(chǎn)品QNX硬實(shí)時(shí)微秒級(jí)商業(yè)高端無人系統(tǒng)、飛行汽車注意同一套R(shí)TOS在不同硬件、不同中斷負(fù)載下調(diào)度延遲差異很大。表格里的“微秒級(jí)”只能代表典型范圍真正的實(shí)時(shí)性能必須結(jié)合具體平臺(tái)實(shí)測(cè)。3. 硬實(shí)時(shí)系統(tǒng)的關(guān)鍵機(jī)制拆解選好RTOS只是第一步真正讓飛控跑得穩(wěn)的是你如何使用操作系統(tǒng)提供的機(jī)制。這一節(jié)我把幾個(gè)經(jīng)常被忽視、但恰恰決定系統(tǒng)實(shí)時(shí)性能的底層機(jī)制講清楚。3.1 調(diào)度算法優(yōu)先級(jí)搶占只是及格線大多數(shù)輕量級(jí)RTOS采用固定優(yōu)先級(jí)搶占式調(diào)度Fixed-Priority Preemptive Scheduling任務(wù)在創(chuàng)建時(shí)分配一個(gè)優(yōu)先級(jí)內(nèi)核保證任何時(shí)候運(yùn)行的都是“就緒隊(duì)列里優(yōu)先級(jí)最高的任務(wù)”。聽起來很簡(jiǎn)單但這里面的門道在于你怎么確定每個(gè)任務(wù)的優(yōu)先級(jí)周期、執(zhí)行時(shí)間、截止時(shí)間之間是什么關(guān)系經(jīng)典的單處理器調(diào)度理論給出了一個(gè)可調(diào)度性判定條件。比如最常用的RMSRate Monotonic Scheduling單調(diào)速率調(diào)度原則周期越短的任務(wù)優(yōu)先級(jí)越高。如果一組任務(wù)的CPU利用率總和不超過某個(gè)上限n個(gè)任務(wù)時(shí)為 n(2^(1/n)-1)n趨向無窮大時(shí)趨近約69.3%則可以保證所有任務(wù)都在截止時(shí)間內(nèi)完成。換句話說如果處理器跑一組周期任務(wù)總負(fù)載超過約70%RMS策略就開始面臨無法保證所有任務(wù)按時(shí)完成的風(fēng)險(xiǎn)。這給飛控設(shè)計(jì)者一個(gè)很實(shí)用的直覺不要把一個(gè)核塞滿留出至少20%~30%余量否則任何一點(diǎn)抖動(dòng)都可能引爆截止時(shí)間違約。再進(jìn)一步EDFEarliest Deadline First在理論上是最優(yōu)動(dòng)態(tài)優(yōu)先級(jí)調(diào)度平均利用率理論上可以跑到接近100%但它需要內(nèi)核支持動(dòng)態(tài)優(yōu)先級(jí)調(diào)整且最壞情況下的行為分析更復(fù)雜。飛控項(xiàng)目里我很少見到直接商用EDF的——大多數(shù)人還是用固定優(yōu)先級(jí)搶占策略因?yàn)樗?jiǎn)單、可預(yù)測(cè)、分析工具成熟。3.2 優(yōu)先級(jí)反轉(zhuǎn)飛行控制里最隱蔽的殺手優(yōu)先級(jí)反轉(zhuǎn)是個(gè)經(jīng)典問題但實(shí)際項(xiàng)目里很多人直到炸機(jī)也沒搞明白。簡(jiǎn)單說高優(yōu)先級(jí)任務(wù)A等待一個(gè)信號(hào)量這個(gè)信號(hào)量被低優(yōu)先級(jí)任務(wù)B持有而B又被中優(yōu)先級(jí)任務(wù)C搶占——于是A明明優(yōu)先級(jí)最高卻只能等C先跑完相當(dāng)于A的優(yōu)先級(jí)被“反轉(zhuǎn)”到了C之下。飛控里典型場(chǎng)景是控制任務(wù)最高優(yōu)先級(jí)要通過串口/I2C總線讀取傳感器數(shù)據(jù)而一個(gè)低優(yōu)先級(jí)的日志任務(wù)恰好持有了總線驅(qū)動(dòng)里的互斥鎖。如果控制系統(tǒng)沒有用“優(yōu)先級(jí)繼承”或“優(yōu)先級(jí)天花板”協(xié)議那么控制任務(wù)可能被日志任務(wù)拖著延遲在微秒級(jí)到毫秒級(jí)之間劇烈波動(dòng)——這在姿態(tài)控制里就是災(zāi)難。排查這個(gè)問題的思路我在第5節(jié)會(huì)詳細(xì)展開。這里先記住一點(diǎn)你在用信號(hào)量/互斥鎖保護(hù)共享資源時(shí)一定要確認(rèn)RTOS內(nèi)核是否默認(rèn)支持優(yōu)先級(jí)繼承Priority Inheritance。FreeRTOS的互斥量是支持的普通信號(hào)量不支持VxWorks的互斥量默認(rèn)也可以配置。用錯(cuò)了對(duì)象實(shí)時(shí)性就沒了保障。3.3 中斷處理前一半必須“快進(jìn)快出”中斷響應(yīng)時(shí)間直接影響飛控對(duì)外部事件的反應(yīng)速度。硬實(shí)時(shí)內(nèi)核一般把中斷處理拆成兩部分中斷服務(wù)程序ISR只做最緊急的、和硬件強(qiáng)相關(guān)的收尾然后立刻喚醒一個(gè)高優(yōu)先級(jí)任務(wù)通常是 deferred interrupt handler / bottom half去做剩余工作。這種“快進(jìn)快出”的設(shè)計(jì)是為了最大限度地減小中斷關(guān)閉時(shí)間。比如PWM捕獲中斷里只記錄時(shí)間戳、置一個(gè)標(biāo)志位姿態(tài)解算則放在主控制任務(wù)里完成。如果反其道而行之在ISR里做大量運(yùn)算不僅拉長(zhǎng)了本任務(wù)的占用時(shí)間還可能導(dǎo)致其他同樣重要的中斷被阻塞——在飛控這種中斷密集的系統(tǒng)里這是調(diào)度延遲的主要來源。另外需要注意中斷嵌套的配置。Cortex-M系列MCU可以設(shè)置搶占優(yōu)先級(jí)分組如果飛控里多個(gè)外部中斷定時(shí)器、DMA、外部信號(hào)之間互相搶占設(shè)計(jì)不好會(huì)出現(xiàn)“低優(yōu)先級(jí)中斷被高優(yōu)先級(jí)風(fēng)暴餓死”的怪象。我通常把控制周期定時(shí)器的中斷優(yōu)先級(jí)設(shè)為最高NVIC搶占優(yōu)先級(jí)0DMA搬運(yùn)其次外部通信再次并把用戶自定義的軟件中斷優(yōu)先級(jí)涂低——保證控制環(huán)路的節(jié)奏永遠(yuǎn)不被其他事件打亂。3.4 時(shí)間管理系統(tǒng)的心跳與任務(wù)的心跳RTOS的時(shí)間管理核心是Tick系統(tǒng)節(jié)拍。內(nèi)核靠Tick來進(jìn)行時(shí)隙調(diào)度、延時(shí)管理、超時(shí)檢測(cè)。Tick頻率越高時(shí)間精度越高但內(nèi)核的上下文切換開銷也隨之升高。飛控里常用的是把Tick設(shè)為1kHz1ms再輔以更高精度的硬件定時(shí)器比如TIM專門做PWM同步來驅(qū)動(dòng)控制周期。這樣既照顧了操作系統(tǒng)的通用延時(shí)需求又保證了控制環(huán)的高精度時(shí)基。還有個(gè)容易被忽略的點(diǎn)Tick中斷里的累積誤差。如果內(nèi)核在處理Tick時(shí)總是調(diào)用一個(gè)耗時(shí)的鉤子函數(shù)比如喂看門狗、做統(tǒng)計(jì)Tick周期就會(huì)漂移進(jìn)而影響所有依賴系統(tǒng)Tick的軟件定時(shí)器。我習(xí)慣把Tick鉤子函數(shù)保持為空看門狗喂食放在單獨(dú)的低優(yōu)先級(jí)任務(wù)里做防止時(shí)間基線被污染。4. 從選型到實(shí)現(xiàn)我的飛控遷移實(shí)操記錄這一節(jié)我想用一個(gè)實(shí)際發(fā)生過的項(xiàng)目作為主線把某小型飛控從裸機(jī)前后臺(tái)模式遷移到RTOS同時(shí)把硬件定時(shí)器驅(qū)動(dòng)、任務(wù)劃分、通信同步都重做了一遍。整個(gè)過程踩了不少坑但最后形成的架構(gòu)模式后來被團(tuán)隊(duì)復(fù)用到了三個(gè)不同機(jī)型上。4.1 任務(wù)如何劃分優(yōu)先級(jí)怎么釘死裸機(jī)時(shí)代飛控主循環(huán)里依次執(zhí)行“傳感器讀取→姿態(tài)解算→控制律→指令輸出”看起來簡(jiǎn)單但一旦加入數(shù)據(jù)鏈、日志、故障診斷等模塊主循環(huán)會(huì)被嚴(yán)重拖垮。遷移到RTOS后第一步是盤點(diǎn)所有功能模塊按周期和截止時(shí)間劃分任務(wù)。我當(dāng)時(shí)的劃分方式如下控制任務(wù)最高優(yōu)先級(jí)周期1ms讀取IMU原始數(shù)據(jù)、互補(bǔ)濾波/姿態(tài)解算、角速度環(huán)和姿態(tài)環(huán)控制律計(jì)算、輸出PWM。導(dǎo)航任務(wù)次高優(yōu)先級(jí)周期10ms讀取GPS/磁力計(jì)/氣壓計(jì)執(zhí)行位置環(huán)解算、航點(diǎn)邏輯。通信任務(wù)優(yōu)先級(jí)中等周期10ms/事件觸發(fā)MAVLink數(shù)據(jù)幀解析與組裝地面站鏈路收發(fā)。日志任務(wù)優(yōu)先級(jí)低周期100ms或事件觸發(fā)把關(guān)鍵狀態(tài)量寫入SD卡/Flash。故障診斷任務(wù)最低優(yōu)先級(jí)周期200ms檢查傳感器健康狀態(tài)執(zhí)行看門狗喂食異常時(shí)觸發(fā)保護(hù)邏輯。每個(gè)任務(wù)的棧大小要根據(jù)調(diào)用深度和局部變量估算不能貪省。尤其是通信任務(wù)如果用了標(biāo)準(zhǔn)庫printf、浮點(diǎn)格式化這類重操作棧給小了分分鐘溢出。我一般會(huì)預(yù)留30%以上的余量再用內(nèi)核提供的棧高水位檢測(cè)工具在滿負(fù)荷跑一段時(shí)間后檢查實(shí)際峰值。4.2 通信同步數(shù)據(jù)從傳感器到控制器的鏈路飛控?cái)?shù)據(jù)流本質(zhì)上是“生產(chǎn)者-消費(fèi)者”模型。傳感器中斷/DMA把數(shù)據(jù)寫進(jìn)緩沖區(qū)控制任務(wù)周期性地來取。這里最關(guān)鍵的是保證數(shù)據(jù)的一致性——不能出現(xiàn)控制任務(wù)讀到一半傳感器DMA又在更新同一片緩沖區(qū)導(dǎo)致數(shù)據(jù)“撕裂”。我常用的方案是雙緩沖Double Buffering加Buffer標(biāo)志位切換傳感器DMA寫完Buffer A后在中斷里原子地切換“當(dāng)前有效緩沖”指針到A同時(shí)清掉舊的標(biāo)志控制任務(wù)開始讀取前先獲取當(dāng)前有效指針讀取過程中禁止切換讀完再釋放。用FreeRTOS的話更規(guī)范的做法是任務(wù)級(jí)同步用二值信號(hào)量DMA中斷里give信號(hào)量控制任務(wù)里take信號(hào)量同時(shí)配合內(nèi)存屏障保證數(shù)據(jù)可見性。這里有個(gè)細(xì)節(jié)信號(hào)量take的超時(shí)時(shí)間一定要設(shè)置成有限值不要用無限等待否則一旦傳感器故障不再產(chǎn)生中斷控制任務(wù)就會(huì)永久掛起飛控直接失控。4.3 真實(shí)代碼示例FreeRTOS下的定時(shí)控制任務(wù)下面這段代碼是我在某個(gè)STM32F405飛控上實(shí)際用過的控制任務(wù)骨架展示了一個(gè)周期為1ms的控制循環(huán)如何與定時(shí)器中斷配合// 控制周期定時(shí)器中斷服務(wù)函數(shù)TIM61ms周期 void TIM6_IRQHandler(void) { BaseType_t xHigherPriorityTaskWoken pdFALSE; if (__HAL_TIM_GET_FLAG(htim6, TIM_FLAG_UPDATE) ! RESET) { __HAL_TIM_CLEAR_FLAG(htim6, TIM_FLAG_UPDATE); // 給控制任務(wù)一個(gè)二值信號(hào)量通知其“新的控制周期到了” xSemaphoreGiveFromISR(xControlLoopSemaphore, xHigherPriorityTaskWoken); portYIELD_FROM_ISR(xHigherPriorityTaskWoken); } } // 控制任務(wù)函數(shù) void ControlLoopTask(void *argument) { TickType_t xLastWakeTime xTaskGetTickCount(); for (;;) { // 在信號(hào)量上等待周期信號(hào)等待時(shí)間可以設(shè)長(zhǎng)一點(diǎn)作為安全兜底 if (xSemaphoreTake(xControlLoopSemaphore, pdMS_TO_TICKS(10)) pdPASS) { // 1. 讀取IMU數(shù)據(jù)最新數(shù)據(jù)由DMA搬運(yùn)到雙緩沖區(qū) imu_update_reading(); // 2. 姿態(tài)解算互補(bǔ)濾波或卡爾曼濾波 attitude_estimate(); // 3. 控制律解算 control_calculate(); // 4. 輸出PWM pwm_output_update(); } else { // 超時(shí)未等到中斷傳感器/定時(shí)器鏈路可能異常 safety_trigger(SAFETY_CONTROL_TIMEOUT); } } }關(guān)鍵點(diǎn)不要用xTaskDelayUntil去“生成”控制周期——雖然也能實(shí)現(xiàn)周期調(diào)度但它的精度完全依賴RTOS Tick而Tick在中斷繁忙時(shí)可能有不可忽略的抖動(dòng)。用硬件定時(shí)器中斷驅(qū)動(dòng)控制周期的精度要高得多這也是飛控實(shí)時(shí)性設(shè)計(jì)的標(biāo)準(zhǔn)做法。4.4 移植之后一定要做的裸機(jī)沒有的驗(yàn)證從裸機(jī)切到RTOS之后很多隱藏問題會(huì)被多任務(wù)調(diào)度“放大”出來。我強(qiáng)烈建議做以下幾項(xiàng)測(cè)試任務(wù)切換總耗時(shí)測(cè)試在GPIO上翻轉(zhuǎn)一個(gè)引腳測(cè)量高優(yōu)先級(jí)任務(wù)從就緒到手頭代碼實(shí)際執(zhí)行的延遲。這個(gè)指標(biāo)直接反映RTOS和BSP配置是否健康。最大禁中斷時(shí)間測(cè)試用定時(shí)器測(cè)量?jī)?nèi)核或驅(qū)動(dòng)里最長(zhǎng)的一次關(guān)中斷時(shí)間。如果某驅(qū)動(dòng)在臨界區(qū)里干了太久比如超過幾十微秒控制任務(wù)優(yōu)先級(jí)再高也沒用。長(zhǎng)期壓力測(cè)試讓飛控連續(xù)運(yùn)行數(shù)小時(shí)周期性記錄每個(gè)任務(wù)的執(zhí)行時(shí)間統(tǒng)計(jì)值最小/最大/平均觀察是否有任務(wù)執(zhí)行時(shí)間逐漸增長(zhǎng)的趨勢(shì)——這通常是看門狗喂食邏輯異常或者內(nèi)存碎片導(dǎo)致的慢性病。5. 常見問題與排查技巧實(shí)錄這節(jié)內(nèi)容全部來自我真實(shí)開發(fā)過程中的排查記錄不是從文檔里抄的。問題可能看起來五花八門但根子往往都出在那幾個(gè)核心機(jī)制上。5.1 問題一控制任務(wù)偶發(fā)超時(shí)周期抖動(dòng)忽大忽小癥狀任務(wù)周期平均很準(zhǔn)但每隔幾十秒會(huì)出現(xiàn)一次10倍于正常周期的超時(shí)。一開始懷疑是任務(wù)棧溢出抓了高水位監(jiān)控沒問題后來懷疑是內(nèi)存分配malloc導(dǎo)致阻塞但代碼里改用靜態(tài)內(nèi)存后問題仍在。最后定位一個(gè)低優(yōu)先級(jí)通信任務(wù)里用了庫函數(shù)對(duì)字符串做了處理這個(gè)庫內(nèi)部會(huì)調(diào)用一個(gè)慢速的全局鎖類似printf的實(shí)現(xiàn)鎖的持有時(shí)間在高負(fù)載下變得很長(zhǎng)而通信任務(wù)和某個(gè)中優(yōu)先級(jí)任務(wù)之間有優(yōu)先級(jí)反轉(zhuǎn)鏈把控制任務(wù)也牽連進(jìn)去了。解決方案把通信任務(wù)里的所有“重”如日志格式化、浮點(diǎn)轉(zhuǎn)字符串操作拆出去只在里面做協(xié)議解析的輕量部分同時(shí)給通信任務(wù)使用的互斥量打開優(yōu)先級(jí)繼承。改造后抖動(dòng)從幾百微秒降到了幾微秒。5.2 問題二中斷里做耗時(shí)操作導(dǎo)致控制周期漂移癥狀飛行中姿態(tài)偶爾出現(xiàn)“毛刺”分析日志發(fā)現(xiàn)姿態(tài)解算結(jié)果的執(zhí)行周期前偶爾有一段約幾百微秒的空白正好落在某個(gè)外設(shè)中斷的活躍窗口里。原因外設(shè)中斷的ISR里為了省事直接調(diào)用了HAL庫的阻塞式等待函數(shù)這段等待在低功耗模式下要持續(xù)幾百微秒期間控制周期的定時(shí)器中斷被懸置了。雖然定時(shí)器中斷優(yōu)先級(jí)更高但對(duì)方已經(jīng)進(jìn)入不可被搶占的執(zhí)行區(qū)間。解決方案ISR里禁止任何阻塞型調(diào)用把“等待外設(shè)就緒”的邏輯改成狀態(tài)機(jī)輪詢放到非實(shí)時(shí)任務(wù)里執(zhí)行。同時(shí)給出了一個(gè)原則ISR只做置標(biāo)志、讀寄存器、收數(shù)據(jù)不等待、不循環(huán)、不調(diào)用RTOS的阻塞API。這個(gè)原則后來寫進(jìn)了團(tuán)隊(duì)代碼規(guī)范。5.3 問題三臨界區(qū)過長(zhǎng)導(dǎo)致中斷丟失癥狀外部遙控器信號(hào)接收中斷偶爾丟包地面站看RSSI正常但飛控收到的通道值偶發(fā)卡頓。原因某個(gè)驅(qū)動(dòng)在進(jìn)入臨界區(qū)taskENTER_CRITICAL后調(diào)用了一個(gè)執(zhí)行時(shí)間很長(zhǎng)的函數(shù)比如一個(gè)軟件I2C的bit-bang循環(huán)導(dǎo)致遙控接收中斷在這段臨界區(qū)期間被屏蔽數(shù)據(jù)幀丟失。解決方案把臨界區(qū)改小I2C讀取改用硬件I2CDMA ISR喚醒徹底去掉長(zhǎng)臨界區(qū)。這也是RISC-V/ARM內(nèi)核CPU上跑RTOS時(shí)的經(jīng)典教訓(xùn)臨界區(qū)是中斷的敵人能多短就多短。5.4 問題四內(nèi)存碎片導(dǎo)致任務(wù)棧分配失敗癥狀系統(tǒng)運(yùn)行數(shù)天后某個(gè)周期性創(chuàng)建的任務(wù)比如臨時(shí)數(shù)據(jù)鏈路線程突然創(chuàng)建失敗看門狗復(fù)位后一切恢復(fù)正常循環(huán)往復(fù)。原因任務(wù)棧用的是動(dòng)態(tài)內(nèi)存分配heap運(yùn)行過程中頻繁創(chuàng)建/刪除任務(wù)產(chǎn)生外部碎片最終導(dǎo)致一次大塊內(nèi)存分配失敗。解決方案兩種典型處理——要么把這類任務(wù)改成永久任務(wù)信號(hào)量觸發(fā)推薦要么啟用靜態(tài)任務(wù)創(chuàng)建APIxTaskCreateStatic把棧放在固定的靜態(tài)數(shù)組里。飛控系統(tǒng)里我后來幾乎全部改用靜態(tài)棧動(dòng)態(tài)分配只用于啟動(dòng)階段運(yùn)行期不再分配。為了便于日常自查這里也給一張速查表覆蓋我反復(fù)遇到的高頻問題現(xiàn)象可能根因排查切入點(diǎn)高優(yōu)先級(jí)任務(wù)偶爾延遲優(yōu)先級(jí)反轉(zhuǎn) / 中斷嵌套過深檢查信號(hào)量是否開啟優(yōu)先級(jí)繼承抓調(diào)度延遲的波形控制周期抖動(dòng)大Tick不準(zhǔn) / 臨界區(qū)過長(zhǎng) / 某中斷執(zhí)行時(shí)間過長(zhǎng)測(cè)量Tick波形檢查臨界區(qū)調(diào)用鏈傳感器數(shù)據(jù)“撕裂”共享緩沖未用雙緩沖/原子切換檢查DMA中斷與控制任務(wù)之間的同步機(jī)制任務(wù)棧溢出棧分配過小/局部變量過大/庫函數(shù)吃棧用內(nèi)核的棧高水位檢測(cè)抓峰值系統(tǒng)運(yùn)行數(shù)天后復(fù)位內(nèi)存碎片 / 看門狗喂食被阻塞檢查動(dòng)態(tài)內(nèi)存分配頻度檢查低優(yōu)先級(jí)任務(wù)是否餓死中斷響應(yīng)普遍變慢禁中斷區(qū)間過長(zhǎng) / 中斷優(yōu)先級(jí)配置不當(dāng)用示波器抓GPIO翻轉(zhuǎn)測(cè)ISR響應(yīng)時(shí)間排查這些問題的工具我推薦幾個(gè)思路一是用邏輯分析儀或示波器配合GPIO翻轉(zhuǎn)標(biāo)記在關(guān)鍵路徑任務(wù)入口、ISR入口、任務(wù)出口前后打點(diǎn)直接測(cè)出時(shí)間線二是用RTOS內(nèi)核自帶的統(tǒng)計(jì)功能比如FreeRTOS的task statistics、VxWorks的WindView把每個(gè)任務(wù)的執(zhí)行時(shí)間、切換次數(shù)、棧使用情況記錄下來分析三是在代碼里埋循環(huán)計(jì)數(shù)器和時(shí)間戳日志輸出后用腳本離線分析抖動(dòng)分布。這三板斧基本能覆蓋絕大多數(shù)實(shí)時(shí)性疑難雜癥。我個(gè)人的體會(huì)是飛控的實(shí)時(shí)性問題絕大多數(shù)不是RTOS本身的缺陷而是應(yīng)用層把它“用壞了”。絕大多數(shù)疑似系統(tǒng)不穩(wěn)定的case最后都能回溯到優(yōu)先級(jí)設(shè)計(jì)不合理、臨界區(qū)過長(zhǎng)、ISR干重活這三大類原因。這提醒我們?cè)谧鱿到y(tǒng)設(shè)計(jì)的時(shí)候就要對(duì)任務(wù)模型、中斷設(shè)計(jì)、共享資源訪問做“實(shí)時(shí)性預(yù)分析”而不是等代碼寫完再調(diào)。這比選哪一個(gè)RTOS更重要——因?yàn)榧词鼓阌玫氖荲xWorks任務(wù)模型設(shè)計(jì)爛了也一樣救不回來反之即使只是FreeRTOS只要任務(wù)劃分、優(yōu)先級(jí)規(guī)劃、時(shí)間同步這些基本功扎實(shí)它也能撐起一架非常穩(wěn)的飛控。另外補(bǔ)充一個(gè)后續(xù)可以繼續(xù)玩的方向隨著飛控越來越復(fù)雜單核MCU開始不夠用了雙核/多核AMP非對(duì)稱多處理方案逐漸流行——比如用Cortex-M7負(fù)責(zé)控制環(huán)Cortex-M4負(fù)責(zé)通信和日志兩個(gè)核各自跑一套R(shí)TOS通過共享內(nèi)存和核間中斷通信。這個(gè)架構(gòu)能把硬實(shí)時(shí)和繁重IO分開但核間通信的同步、緩存一致性、資源歸屬每一樣都是新的坑。有興趣的朋友可以從“為每個(gè)核分配獨(dú)立的實(shí)時(shí)域”這個(gè)思路切入去研究這個(gè)方向做好了比單純追求更高主頻有意義得多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99热思思| 丁香婷婷五月色成人网站| 欧美成人无码一区二区三区| 色9999日韩国产| 久久久久久激情| 久久大香蕉同僚| 婷婷综合在线播放| 国产91视频| 久久狠狠干| 91精品久久久久久久久| 国产99热在线看| 色噜噜狠狠色综无码久久合欧美| 夜夜夜夜做天天天做无码视频| 精品香蕉99久久久久网站| 五月天电影网| 99久在线精品99re8热| 久九九热| 日日操夜夜撸| 亚洲色综合性| 97碰啪啪| A片天天| 天天射天天射一道本日本社区| 婷婷最新地址| 九热精品| 欧美成人网婷婷综合在线| 九九激情| 五月丁香六月色婷婷综合五月天| 高清资源站日A美A欧亚…| 99热只有这里才是精品| 强伦轩人妻一区二区电影| 噜噜狠狠色综无码久久合欧美| 91疯狂操操操操| 日韩操人| 久草五月天电影网| 91在线操| 日韩久久成人| 玖玖在线视| 天天爽天天爽天天爽天天爽天天爽| 香蕉AV福利精品导航| 婷婷基地五月色| www.色情五月天.com| 少妇激情基地| 99热这里只有精品中文字幕| 日本欧美在线| 午夜AV网| 噜噜在线| 五月天色五月| 99热大全在线观看| 一区二区aV电影免费看| 狠狠色丁香| 色色婷婷综合网| 99热日本精品| 99色婷婷| 另类视在线| 人人干人人干骚美女| 成人av在线网| 日日色综合| 亚洲mm色| 综合久久综合综合| 亚洲国产精品二二三三区| 五月天开心色色网| 欧美五月丁香啪啪响视频| 无码成人AAAAA毛片AI换脸| www色五月| 久久婷婷六月| 人人综合久| 中字幕视频在线永久在线观看免费| www激情| 狠狠操之狠狠操| 超碰在线播放免费观看| 五月丁久久| 原琪琪色影院| 婷婷 色 丁香 夜| 五月天色狠狠| 久草天堂| www.9797国产| 激情影院69| 99精品视频网| 欧洲日韩一区二区三区| 综合激情啪啪| 久久99操| 五月丁香婷婷婷激情爱爱| 五月天激情小说| 天天日天天干天天爽| 99re思思热在线视频| 久久激情婷婷| 九九热9| 久久婷婷五月| 五月丁香av中文| 五月天婷a| www。狠狠干。com| 五月婷婷性爱| 九九九热精品| 久久大香蕉同僚| 31色区视频免费看| 天天干天天插| 色五月婷婷亚洲最大| 丁香婷婷六月天| 玖玖色综合网| 我淫我色婷婷五月天激情四射| 99爱在线视频| 激情六月婷婷| 99精品在线观看视频| 日在线V视频在线播放| 超碰成人电影| 色哟哟性爱av| 国产资源在线视频| 狠狠99| 婷婷日本色| 色欧美一级| 婷婷久久网| AV在线免费播放| 婷婷播5月| 久色五月| 99热这里只有在线| 婷婷五月天在线综合| 五月婷婷无码| 欧美成性色| 色婷婷丁香| 成人毛片在线免费观看| 国产精品色婷婷久久久精品| 999精品乱码77777| 亚洲综合成人网| 激情综合色图| 五月婷婷AV| 九九99香蕉在线视频播放| 91/九色黑人| 伊人九九68| 色综合婷婷| 99热精品在线观看| 99婷婷| www.五月丁香| 极品人妻VIDEOSSS人妻| 国产精品日本一区二区在线播放| 天天影院色| 99久久9| 婷婷无码视频| 久99久视频| 六月婷婷色综合| 操人91| 九九热99视频| 激情五月综合| 嫩草AV久久伊人妇女超级A | 超碰国产在线播放| 激情玖玖综合网| 久久婷婷超碰| 婷婷丁香五月激情密臀av| 国精产品一区二区三区| 亚洲综合视频网| 婷婷久月| ss99热| 五月婷婷无码专区| 五月天婷婷视频小说| 无码色色色| 日日干日日| 日韩久热| 国产精品国产成人国产三级| 182无码| 婷婷情色五月| 国产成人综合在线| 全网最新网黄大秀直播高清,主播国产录屏在线 | 婷婷爱五月天| 久久性爱视频网站| 久久久精品婷婷五月天| 一区二区乱码视频| 91视屏在线观看com.wwwvv| 亚洲激情视频网| 狠狠色狠狠干| 狠狠艹狠狠艹| 五月婷婷丁香| 99熟女啪啪视频| 九九热婷婷| 天天精品视频免费观看| 91精品婷婷国产综合久久| 爱射综合| 亚洲欧州色情在线观看| 婷婷六月色开| 婷婷五月天天| 欧洲综合视频| 色丁香五月综合网| 欧美婷婷五月天| 91精品综合久久久久久五月丁香 | 日本婷婷丁香五月| 99成人精品| 综合久久人妻| www.色婷婷.com| 免费看欧美成人A片无码| 五月婷丁香| 91碰碰碰久久久久| 婷婷五月在线免费| 婷婷五月天电影在线| 伊人玖玖精品| 超碰cap| 日韩在线观看亚洲| 色丁香久综合在线久综合在线观看| 天天骑天天操| 人妻内射一区二区在线视频| 97人人搞| 天天日日夜夜爽。| www.婷婷六月天| 久久色吧| VA五月激情在线| 五月丁香六月婷综合成人综合| 91操片| 婷婷网五月天| 97久操视频| A√天堂网在线| 99热这里只有精彩| 一级AV片| 成人五月天在线观看| 第四色首页| 天天天天干| 婷婷综合干| 综合狠狠伊人| 国产精品色婷婷99久久精品| 1024在线观看免费视频| 婷婷久久六月天| 色色网五月激情| 色香蕉影院| 青青久久五月天丁香婷婷| 九九色综合| av五月天婷婷丁香| 少妇出轨做爰高潮A片| 美女黄频aⅴ视频| 色噜噜狠狠狠综合曰曰曰| 丁香五月中文字幕色播| 五月做爱| 综合五月天天天天天五月| 超碰九九热| 青青草99re| 少妇激情五月婷婷| 丁香成人五月天| 亚洲免费成人电影AV| 久草五月婷婷| www.天天干| 97碰碰九九视频| 五月视频日本免费观看| www.婷婷.com| 色色色国产| 国产精品热搜丁香五月婷婷| 丁香网五月天| 亚洲激情丁香五月基地| www.狠狠| 五月婷婷成人网首页| 91精品久久久久久| 久久婷综合| 精品色色| 婷婷丁香五月天色色| 亚洲中文丁香| 久9视频免费播放| 久久九九囯产| 五月婷婷婷丁香播| 国产麻豆视频| 亚洲综合网激情小说| 久操97| 夜夜嗨一区二区三区直播内容 | 色五月丁香五月五月婷婷| 五月丁香啪啪综合| 亚洲无码激情| 久久视频婷婷| 全高清无码视頻| 激情五月婷婷五月| 亚洲碰碰碰| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 亚洲婷婷五月草久| 北京熟妇搡BBBB搡BBBB| 无码九九| 激情图片五月天| 99ri在线观看视频| 久久六月天| 九色激情网| 国产精品国产| 亚洲国产成人在线| 手机旧版看人妻1025| 高清国产AV| 成人va在线播放| 日本123区日韩欧美不卡在线看| 久久机热这里只有精品| 久久婷婷色综合老司机| 婷婷天天日婷婷| OUMEIRIHANCHENGREN| 色五月播五月| 亚洲成人一区| 99ER热精品视频| 99精品视频在线6| 99视频精品全部免费观看| 92久久精品一区二区| www久久久| 97碰在线视频| 99爱在线| 成人无码髙潮喷水A片| 婷婷丁香五月视频| 人人肏逼视频在线一区二区| 99视频在线观看网址| 国产精品人妻在线网址| 色五月激情五月天| 婷婷五月天天aV| 就爱日五月天| www.91九色| 激情五月天婷婷图| 丰满少妇猛烈A片免费看观看| 五月天中文网| 激情久久久久久久久久久| 在线综合网| 婷婷色色五月天| 开心五月激情婷婷| 99大香蕉| 性综合网| 色五狠狠| 亚洲视频二区| 中文字幕网伦射乱中文| 99热这里只有精| 久久色天堂| 色五月亚洲| 丁香五月骚喷水视频| 日韩中出视频| 五月婷丁香| 婷婷五月天777| 麻豆AV一区二区三区| 婷婷五月天在线观看第二页| 亚洲综合激情五月久久| 激情五月最新网址| 五月婷激情| 亚洲五月天综合| 色青五月天| 成人丁香五月天| 伦99热| 91操在线观看| 国产XXXX搡XXXXX搡麻豆| 婷婷丁香激情综合色情| 五月丁香色婷婷婷基地| 五月丁香久久色| 午夜丁香婷婷| 天天插插天天| 色欲色天天香综合| 丁香五月 无码| 久久精品99| 五月天激情日色在线| 一本色道久久88加勒比—| 丁香五月久久| 影音先锋91| 激情五月婷婷欧美极品| 色琪琪一综合久久激情五月视频| 九九热精品| 婷婷五月天成人网| 狠狠操狠狠狠| 激情五月黄色小说| 97九色视频| 性无码专区无码| 青草五月天| 婷五月天在线草| 激情五月婷婷视频一区二区三区| 国产精品天天狠天天看| 精品人妻久久久久久| 思思国产99| 色婷婷中文字母五月丁香| 九九综合88| 久久五月丁香| 99热在线精品观看| 亚洲操B| 日日操,日日爽| 丁香五月欧美激情| 日韩久久系列| 亚洲国产精品二二三三区| 免费AV在线| 99.色| 操91| 色综合区| 综合性爱网| www五月婷婷| 99热这里只有精品3| 99热这里只有精品在线播放| 婷婷色香六月综合激情| 丁香五月综合激情久久潮喷| 丁香六月色婷婷| 亚洲免费电影2| 亚洲天堂热| 五月丁香六月婷婷久久肏| 日本在线噜噜| 婷婷五月永远18免费久久久| 色天天综合天天综合频道。| 97人人射| 久热大香蕉| 欧美色色色色色色| 51XX嘿嘿午夜无码| 五月丁香婷婷色播无码| 久久久久97| 五月天综合在线网| 亚洲综合五月天| 九九99在线免费在线观看视频| rr天天操| 久久a热| 天天爽天天草| 婷婷五月18永久免费视频| 视色网在线播放| 欧美色图45678| 色婷婷久久综合久色综| 91精品91久久久中77777久久玖玖九九| 超碰在线资源| 久草婷婷视频| 九九99精品视品| 婷婷97色| 182tv992tv人之初午夜免费观看| 亚洲欧美成人在线观看| 99在线资源视频| 日本在线播放97| 亚洲精品又粗又大又爽A片| 国产精品涩涩涩视频网站| 色情综合| 天天草女人| 成人超碰网| 日本一级淫| 大战熟女丰满人妻AV| 国产成人精品一区二三区熟女在线| 国产激情久久| 爱超碰性| 婷婷五月日本| 五月婷婷久久久久| 97视频91| 色婷婷综合久色AV五色最新| 婷婷区日本| 日日操夜夜爽天天天| 色宗合,宗合网| 色噜噜狠狠色综合无码久久欧美| 综合五月丁香久久| 综合五月亭亭9| 丁香六月色情| 亚洲欧美999| 久久激情五月婷婷| 五月丁香六月香香蕉| 九九色色| 久婷婷| 99精品视频网| 色逼综合网| 九月婷婷激情久久| 午夜亚洲国产精品av一区二区| 9久久婷婷国产综合精品性色| 久久九区| 五月婷婷久久内射| 亚洲成人婷婷| 丁香五月婷久久| 91操操| 激情人妻蜜夜系列区| 97碰碰草| 丁香花五月天激情| 五月色 亚洲| 开心婷婷五月中文字幕组| 色婷婷亚洲五月天| 色情综合网| 风流少妇A片一区二区蜜桃| 狠狠爱成人综合网| 97色色婷婷五月天| 六月丁香婷婷网| 五月婷婷啪啪啪啪| 亚洲综合婷婷| 五月天社区婷婷| 婷婷的色色五月天| 狠狠艹狠狠艹| 天天干狠狠| 99热精品在线播放| 最近中文字幕大全免费版在线| 综合久久十| 久热黄色| 人人综合五月人人婷婷| 国产精品国产| 四虎国产精品永久在线国在线| 婷婷久久爱| 九九九九综合| 性色99| 五月丁香婷草| 日韩国产在线精品| 免费成片在线观看| 人妻操逼视频。| WWW.桔色成人.COM| 亚洲成人网在线观看| 国产精品第一国产精品| 免费AV在线| 国产欧美日韩一区二区三区| 狠狠色综合网站久久久久| 激情婷婷五月天| 99久久综合狠狠综合久久| 爱操人妻| 色99网站| 激情五月丁香五月| 日韩av在线免费观看| 一本久久亚洲五月婷婷| 色五月超碰| 久久婷婷五月综合色欧美| 影音先锋毛片网站| 99精品免费欧美小视频| 婷婷亚洲五月丁香综合在线| 色婷婷五月天成人网| 99在线精品免费视频| 婷婷大乡焦噜噜| 久久婷婷操| 色九区| 香蕉视频性爱BB做爱| 久久激情五月婷婷| 丁香五月婷婷日本| 影音先锋自拍网| 亚洲国产成人综合| 激情深爱五月天| 五月日韩中文字幕| 女性自慰系列第五页| 五月天六月色| 色五月天 丁香| 美腿丝袜AV天堂网| 五月天电影网| 在线观看国产高清视频免费网站 | 天天综合五月天| 九九99精品视品| 天天搞夜夜叫| 色婷婷六月天| 熟女啪啪视频| 色99网站| 97色碰碰公开视频| 五月天激情综合10p| 激情丁香五月| 91色色色| 91精品久久久久久| 日本99在线| 五月激激激情综合网| 国产毛片精品一区二区色欲黄A片| 久久婷婷五月天| 婷婷色在线视频| 31色区视频免费看| 九九爱激情| 七月丁香五月婷婷在线| 天天射射夜| 性爱视频久久| 99久在线精品99re8热| 丁香五月婷婷骚视屏| 天天插天天草人人玩| www婷婷| 97久久人人| 久99久热| 亚洲成人AV电影网| 婷婷色激情五月天| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 伊人久久婷婷| 国产精品久久..4399| 激情五月天网站| 色五月婷婷影视| 亚洲成人噜噜| 丁香香蕉婷婷| 久久性刺激| 婷婷九色| 丁香六月激情| 亚洲色夜| 六月婷婷综合| 丁香五月天AV在线| 六月丁香婷| 天天日,天天射,天天插| 九九無妻| 亚洲婷婷六月天| 日本女色人人| 五月天激情小说欧美激情| 婷五月天| 久久婷婷亚洲| 丁香色六月婷婷| 欧洲色色| 巴基斯坦粉嫩无码视频| 天天网曰日曰夜夜综合永久免费| 五月丁香六月激情| 国产精品成人在线| 亚洲精品无码一区二区| 开心五月婷| 婷婷94s| 性色天| 99精品人人| 五月丁香婷婷六月| 色狠狠综合网| 影音先锋 萱萱| 五月天天爽| 99碰碰视频| 久久婷婷精品| 综合色播| 五月丁香激情深爱婷婷| 91性人人| 四色永久成人网站| 国产色色网站网址| 亚洲一级 片内射网站在线观看| 婷婷五月天狠狠搞干| 影音先锋男人资源站一区二区| 婷婷激情视频| WWW.五月天9999| 五月丁香久久激情综合| www,天天干| 亚洲操精品| 丁香五月天啪啪| 丁香五月天婷婷久久| 欧美私人家庭影院| 亚洲操B| 久久激情视频| 熟女人妻一区二区三区免费看| 激情五月少妇| 超碰激情网| 丰满少妇猛烈A片免费看观看| 婷婷五月丁香网| 热五月婷婷| 中文字幕欧美日韩VA免费视频| 欧洲第一久色| 九九99免费视频| 狠狠穞A片一區二區三區| 亚洲 六月 综合| 色综合久久88色综合天天看| 色色热| 丁香婷婷影院| 国产婷婷五月中文字幕高清| 超碰97久久| 777影视理论片大全在线观看| 欧美黄色AA片哗啦啦啦| 99精品在线观看视频| 99色热| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 国产成人综合电影| 婷婷人人操| 很很干在线视频| 丁香五月欧美婷婷综合| 五月丁香六月色婷婷综合五月天| www.99精品日操伊人乱碰在线| 久久这里有精品| 日本的α片xxxwww| 久久精品婷婷五月丁香| 久久人人添人人爽添人人片αV| 任你日视频| 99热在线观看这里只有精品| 九九碰九九爱97超| 丁香色色五月| 色婷婷激情| 大香蕉久久婷婷精品综合| 人人人人人人人人人草| 成人一级片| 激情婷婷在线| 成人做爰A片免费看网站找不到了 噼里啪啦在线观看免费完整版视频 | Caoub青青超碰| 五月色亚洲| 久久丁香五月| 99色1| 九九精品网站| 99久久视频| 五月婷婷久久大片| www.夜夜| 激情综合网五月丁香| 丁香美女主播视频在线观看| 亚色网站小视频| 99日本黄站| 婷婷久久婷婷色五月| 五月天综合在线| 高清不卡一区| 天天干,夜夜爽| 丁香五月天啪啪激情综合网| 99激情视频热| 五月婷成人| 激情五月天综合网| 色婷婷四色| 婷婷五月久久| 精品国产AV色一区二区深夜久久| 激情综合五| 久久狼人天堂| 另类激情五月在线视频欧美| 亚洲天天综合| 蜜臀av在线成人电影| 色婷婷婷av| 五月丁香六月香香蕉| 久综合九综合99| 内射干少妇亚洲69XXX| 五月天另类小说| 玖玖综合色| 日本九九网| 去色色五月天| 99热在线观看| 51精品国自产在线| 国产暴力强伦轩1区二区小说| 丁香六月色婷婷| 精品久热69| 激情五月婷婷五月| 五区毛片七区毛片| 去干网最新版本亚洲版| 天天操九九插| 五月欧美色色五月| 极品五月天| 6080av| 五月丁香久久精品在线观看| 色情五月婷婷| 亚洲婷婷丁香五月在线| 激情 五月 婷婷 丁香| 丁香色六月| 六月婷婷深深爱| 丁香婷婷精品视频| 亚洲色爽| 亚洲人妻一区二区| 色婷婷五月天天天干天天操天天爽| 99爱最新免费视频在线观看| 欧美狠狠草| 亚洲亚洲激情| 五月婷婷精品视频| yazhouzonghesese| 丁香六月视频| 深爱五月最新网址| 色婷婷成人| 激情综合五| 国产激情在线| 人妻久久久久久| 五月天久久综合| 久久婷婷伊人| 深爱五月天| 超碰av在线| 国外亚洲成AV人片在线观看 | 人人操AV| 五月丁香综合激情网| 91一起操| 五月婷婷深深爱| 久热超碰| 三十熟女| 五月天丁香色色| 色播五月丁香| 岛囯综合激情网| 美女视频图片久久91| 超碰网站在线观看| 淫视馆AV在线| 色9色| 久久成人人妻| 久久92| 开心五月激情网| 色五月婷婷在线观看第一页舔| 精品人妻一区二区三区四区不卡在| 丁香色色色| 欧美性生交XXXXX无码小说| 亚洲传媒在线观看| 国产免费一区二区三区三州老师F1F1.CC | 五月丁香色综合| 丁香六月婷婷综合| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 操一操干一干| www.91久久| 俺去也五月| 嫩草视频观看| 激情深爱综合| 九九激情| 激情五月综合网| 啪啪五月综合| 韩国情人在线电视剧免费观看高清版全集 | 丁香五月AV综合| 婷婷五月深深爱| 91热在线| 久久九九激情五月天| 国产精品电影网| 日本va欧美va精品发布视频| 五月天伊人网| 激情综合亚洲| 激情久久网 | 婷婷亚洲久久| 欧洲激情五月天婷婷| 久久99网| 五月花婷婷| 婷婷五月色情| 日日夜夜青青草| 激情欧美丁香五月| 亚洲国产精品VA在线看黑人| 亚洲免费观看高清完整版AV线| 亭亭丁香久久五月| 激情影院丁香五月| 五月天丁香婷婷网| 亚洲1区| 婷婷五月天在线观看免费| 亚州色色色| 99热www| 九九视频这里是精品五月| 精品99只有。| 人妻熟妇国产精品| 六月婷婷操逼| Av性爱网| 久久婷婷网站| www狠狠爱com| 九九AV| 人人操五月天| 婷婷欠久少妇| 丁香六月婷婷久久综合八月| 成人视频在线免费播放| 97色干在线观看| 久热大香蕉| 婷婷五月天电影网| 亚洲黄网AV| 日韩在线9| 91人人爽久久涩噜噜噜| 天天日日夜夜| 综合激情在线| 丁香六月视频免费观看| 色区久久| 99久久久免费| 国产综合婷婷| 成人免费视频一区| 色综色五月天婷婷| 精品人妻伦九区久久AAA片| AAA久久| 色综合九九| 99久在线精品99re8热| 欧美情色电影一区二区| 色情五月丁香婷婷网| 操操人人| 日韩另类在线观看| 婷婷激情五月综合| 万月丁香狠狠爱| 丁香婷婷少妇| 精品久热| 婷婷五月天美女| 色综合九九| 99热色婷婷| 亚洲色在线观看| 97久久婷婷色| 色婷婷色情| 色色色网站| 狠色综合网| 欧美成人A片AAA片在线播放| 99欧州偷拍视频| 99无码黄色视频| 碰碰碰碰碰99| 五月色丁香视频精品| 久久人妻超碰一区| 九九视频精品视频精品| 大战熟女丰满人妻AV| 青青草搞屄视频网站| 777色色色| 色五月激情视频在线综合| 久99久视频| 中文字幕AV在线播放| 在线网黄| 五月婷啪| 精品久热| 秋霞电影一级黄| 丁香五月天之婷婷影院| 婷婷综合另类小说| 亚洲99热| 五月天色播网| 天天日天天爽| 丁香五月天色综合| 五月综合久久| 色色日韩无码| www天堂99| 五月婷婷六月丁香在线视频| 免费99色| 丁香六月婷婷久久综合| 中美月韩免费A片| 五月丁香999| 色五月网址| 狠狠干狠狠干| 天天干肏夜夜| 99热伊人综合| 第五色色色婷婷| 日韩黄色网络| 日欧大屏操| caop在线| 99九九精品| 丁香六月 人妻| 狠狠操狠狠| www.丁香五月| 日本狠狠干| 婷色成人| 狠狠狠狠狠狠草| 五月天婷婷丁香| w婷婷五月婷婷w| 这里只有精品视频99| 色色综合日韩| 99热8在线| 色五月人妻| 殴美激情综合网| 激情丁香婷婷| 色播五月丁香| 色综合中文色综合网| 老司机日日夜夜青草| www.五月天性.com| 色 噜噜 九月 婷婷| 色停停五月,在线观看| 久久99免费视屏| 中字幕视频在线永久在线观看免费| WWW.99热| 久久一伦| 五月婷婷六月丁香综合在线| 伊人五月婷婷| 人人草人人视| 日韩操逼大片| 亚洲亚洲人成综合网络| 人人爱人人摸人人澡| 色五月自偷自拍婷婷婷婷| 99视频内射三四| 天天爽日日搞| 综合九九中文字幕| 亚洲免费看片| 韩国天天婷婷| 91丨九色丨43老版熟女| 禁欲电影完整版在线播放| 99re思思热久久| 色色色色色热| 伊人天堂婷婷| 久久国产色| 深爱五月日韩| 99热超碰| cao视频,现在观看| 婷婷五月天激情文学| 亚洲婷婷成人五月天| 91碰碰视频| 国产精产国品一二三在观看| 极品另类| 国产99视频永久免费| 五月天综合久久丁香91| 天天操夜夜操| 99热地址| 夜夜操夜夜姧| 丁香五月六月综合激情| 久久91久久精品久久| 欧美影院婷婷| 开心五月综合| 五月天激情综合在线| 黄色成人AV在线| 任你搞网站| 六月丁香五月激情婷婷| 狠狠丁香| 五月丁香久久婷| 激情丁香五月| 思思热在线精品视频| 国产Va视频| 婷婷欧美激情综合| 99无吗| 五月婷婷丁香五月亚洲色| 色综合久久中文| 丁香六月丁香婷婷激情| 五月激情婷婷在线| 色情成人五月天| 26uuu美女三级视频| 7777久久亚洲中文字幕| 五月激情视频| 天天操天爱综合| 看黄的网站18禁| 亚洲成人超碰| 91在线视频观看午夜福利| 91久久久久久久久18| 久久Xx| 婷婷丁香五月高清| 婷婷激情蜜桃玖玖丁香| 庭庭久久内射| 影院久久久| 国产精产国品一二三在观看| 色婷婷久久| www.99热在线| 色婷婷视频| WWW,五月| 九热视频精品| 婷婷九九色| 色五月情| 五月天激情四射| 这里只有精品视频| 婷婷基地爱| 丁香激情婷婷网| 激情六月丁香| 丁香五月大香蕉AV| 东北熟女视频99| 人妻丰满精品一区二区A片| 中文字幕成人| 99免费在线视频| 色视频五月天| 日日狠狠久久偷偷四色综合免费| 色色丁香五月婷婷| 五月天 综合 在线| 激情色中文| 91好好热日本在线| 欧美婷婷丁香五月| 色婷婷色综合| av中文在线| 色色色热热热| 久久久精品色| 五月天综合在线| 五月婷婷色情| 久久婷丁香五月| 五月婷婷导航| www,com,五月色色| 99视频只有精品| 五月丁香六月综合基地| 五月色欧洲| 人人添人人| 五月丁香综合伦理片| 婷婷五月天va| 九九99在线免费在线观看视频| 综合99久久| 丁香五月婷婷亚洲综合精品| 婷婷色情网| 五月丁香婷婷欧美色图视频五月丁香777电影 | 久久精品系列| 91chinese 在线| 影音先锋91男人资源在线播放| 69人人操人人爽| 色约约视频一区二区三区四区五区| 免费观看18视频网站| 国产精品美女久久久久AV超清| 欧美三日本三级少妇三99| 婷婷丁香九月| 亲子乱AV一区二区三区下载| 色婷婷www| 日本99久久| 大香蕉婷婷五月天| 色九九综合| 丰满人妻一区二区三区| 五月丁香999| 成人av在线网站| 五月丁香激情综合网| 免费亚洲婷婷| 欧美成人精品A片免费一区99 | 六月丁香啪啪| 免费视频WWW在线观看网站| 丰满少妇猛烈A片免费看观看| 婷婷五月丁香青青草在线| 亚洲蜜桃精久久久久久久久久久久 | 激情婷婷五月丁香啪啪啪| 久操香蕉| 香蕉久久av一区二区三区| 内射人妻视频国内| 99爱操| 免费婷婷| 99热最新| 国产精品国产成人国产三级| www.91热久久| 婷婷丁香色女人| 丁香久月婷| 异能之下短剧免费观看全集| 国产在线6| 婷婷日日天天| 久热只有精品| 婷婷亚洲综合| 成人龟情网丁香五月| 亚洲人人艹| 激情五月丁香社区| 香蕉久久国产AV一区二区| 丁香五月日啪| 五月丁香操亭亭网| caop在线| 色婷婷视频| 国产午夜精品一区二区三区四区| 91碰操| 综合另类视频| 五月丁香婷婷六月天| 免费在线观看欧美激情xx小视频| 婷婷久草| 日本一级黄色片。| 九九精品9| 五月丁香六月激情综合| 成人久久天天x资源站| 79精品视频| 思思热在线播放| 色狠狠婷婷| 亚欧州精品视频| 激情纯色婷婷五月天在线不卡视频| 九九热思思| 激情五月天婷婷五月天| 九九色婷婷五月天| 97碰| 99热这里只有精品69| 中文字幕激情综合| 99精品成人无码A片观看金桔| 久青草大香蕉| 97色在线视频| 婷婷六月色播| 99热这里是精品| 伊人激情AV一区二区三区| 九九99在线视频| 日本的α片xxxwww| 另类激情首页| 国产精品人人做人人爽人人添| 大香蕉久久伊人网| 六月丁香婷| 超碰狠狠色| 成人午夜无码视频| 久久九久久| 另类天堂| 五月婷婷欲色| 9999久久久久| 婷婷六久久| 开心婷婷五月天综合| 亚洲色在线观看| 亚洲综合九九| 丁香五月婷婷五月| 内射激情在线| 色婷五月| 欧美偷偷操| 91超级碰在线视频| 五月婷婷网站| 五月激情小说| 成人在线网站| 99热这里只有精品50| 欧美激情五月天| 色婷婷中文| 久婷婷五月激情| 久久久久丁香婷婷五月天| 99热91| 五月天婷婷激情在线色图| 久久九九99字幕| 成人在线网址| 密视AV综合在线| 深爱五月天天| 婷婷五月天伊人网| 日韩成人电泉AV| 丁香六月视频| 欧美日韩成人| 99热只有精品在线| 大香蕉院线| 99精品在线观看| 美女精品一级不卡视频| 五月婷婷综合精品| 天天射影院| 色玖玖| 97精品综合久久| 久久久久人妻精品| 婷婷九月丁香中文| 黄色99视频| 五月丁香综合激情| 91呦呦呦| 九九爱看亚洲| 五月婷在线| 亚洲操操| 五月天堂婷婷| 狠狠色综合网| 成人一级片| 色婷婷五月天无码视频| ...婷婷国产成人亚洲日韩| 99∨VTV| 玖玖@三月天天丁香婷婷| 婷婷五月天视频小说| 2018国产大陆天天弄| 伊人婷婷青青cao| 久久艹99| 大香蕉 伊人夜| 五月婷婷亚洲综合网| 色婷婷久久| 国产欧美日韩性爱| 九九九热精品| 成人五月天丁香婷| 色婷婷激情四射视频| 激情五月婷婷视频| 热久久思思热思思| 激情五月丁香五月| sesesesezonghe| 五月天激情国产综合婷婷| 亭亭五月丁香综合欧美| 色婷婷久久| 天天看A片| 婷婷伊人綜合中文字幕小说| 亚洲第一黄网| 久/久精品99看9| 久久婷婷五月综合97色一本| 99久久综合| 操操操操操操婷婷五月天| 在线观看中文字幕| 玖玖视频福利| 狠狠综合网| 五月丁香花伦理电影| 日本4399天堂中出| 天天做综合网色综合| 色五月丁香com| 亚洲综合色网站| 国产日韩精品SUV| 伊人久久婷婷| 色婷婷小说网| 激情五月天视频| 99精品在线| 色播五月丁香婷婷| 大香蕉久久青青| 思思99re这里只有| 九月丁香婷婷网| 91精品综合久久久久久五月丁香 | 丁香婷婷深情五月亚洲| 久久五月天丁香| 五月丁香婷婷综合网| 大香伊人久色| 午夜色丁香| 色婷婷啪啪综合网| 婷婷五月天综合网| 99久久婷| 日本三级大片| 九九热这里只有国产精品| 9色91视频| 毛片色五月| 九九色色色| 成人国产综合| 激情 五月 婷婷 丁香| 久久人妻熟女一区二区| 这里只有精彩亚洲视频推荐| 狠狠色婷婷7777久综合| 中文字幕不卡+婷婷五月| 六月婷婷狠狠| 岛囯综合激情网| 人人草人人舔| 婷婷激情五月综合| 亚洲亚洲人成综合网络| 久久久99精品免费观看| 丁香婷婷深情五月亚洲| 日韩 mm 不卡| 久久久激情视频| 人妻中文在线| 26uuu| xfplayav在线| 九九re视频在线视频| 97干在线观看视频| 91热爆在线| 777精品久无码人妻蜜桃| 欧美日韩aaaa| 99在线观看精品| 51精品国自产在线| 九九这里都是精品| 97资源碰碰在线| 五月大香蕉| 日日夜夜天天综合| 中文字幕综合色| 综合另类视频| 九九热思思热| 国产三级片91| 天天综合色| 欧美婷婷成人| 九热久| 婷婷成人基地| 欧美性丁香色色五月天干干| 天搞天天天天天| 精品99*| 免费看成人747474九号视频在线观看| 婷婷伊在线| 五月天色欧美| 久久久性爱视频| 五月丁香婷婷俺| 99ri在线视频| 久婷狼色诱惑在线| 五月天堂色| 丁香激激情网| 天天久久人人| 亚洲视频一区| 免费AV在线| 五月婷婷五月天天| 六月丁香六月婷婷欧美| 丁香五月天天久久综合小说| 丁香五月激情啪| sisi热国产| 激情亭亭五月| 屁股翘好撅高迎合跪趴| 久久婷婷色综合| 丁香五月天激情综合网| 亚洲色婷婷久久99精品91| 欧美性猛交99久久久久99按摩| 丁香五月综合图片在线观看| 精品牛仔裤超碰| 亚洲天堂青草| 久热伊人| 可以免费看的AV网站| 丁香婷婷激情五月色| 玖玖五月| 欧美成人精品A片免费一区99| 操逼三区| 天天草天天爱| 激情五月天婷婷| 九九激情视频| 午夜天堂一区人妻| 色情综合网| 99国产在线| 久久久五月激| 婷婷五月丁香基地在线视频官网| 9精品视频在线| 97综合视频在线| 26uuu欧美| 六月婷婷色| 久久五月天色婷婷|