首頁 / 陰天信不信天空 · 成立

陰天時還能不能信天空

雲遮住天空時,無人機怎麼知道羅盤能不能信。

起飛前校正 + 一律擋,對上切換規則(到家次數 / 300 場)

切換規則(舊)起飛前校正、校正後還剩的誤差 1°/s、有雲一律擋(新)。同一批 300 個場景,一場對一場比(切換規則的數字取自前一輪實驗)。

陀螺儀越差,校正的好處越大。舊規則在陀螺儀 10°/s 時只有約兩成場次會擋讀數(先前一批是 60 / 300 場),其餘場次誤差照樣累積;校正後只剩沒扣乾淨的那一點誤差,每一場都能擋。陀螺儀 2°/s 時兩者打平(轉角雲 106 對 113,差距離「算輸」的界線只剩 0.5 個百分點)。

校正後還剩的誤差要多小:陀螺儀 2°/s、失效雲下的到家次數

九種情況都不輸舊規則這一格輸給舊規則(失敗率多出的幅度,估計的上限 > 8 個百分點)。虛線 = 舊規則 206。圖上的「殘差」就是校正後還剩的誤差。

這一格對校正後還剩的誤差最敏感:還剩的誤差是 0 時幾乎打平,所以輸的原因是這個剩下的誤差,不是「一律擋」這個規則。還剩 1.5 以上就輸,所以上限從 2°/s 收緊到 1°/s。

一步步做了什麼

10 步的進度✓通過 5✗沒過 1·紀錄 4

點任一步,看做了什麼、結果如何。

看原始表格
步驟做什麼結果
ST1、ST2(10-14)機身傾斜時把羅盤讀數換算回水平,再用到飛行裡✓ 可用的傾斜角度 5° → 15°;航向誤差降 20–30%
ST3、ST6(10-14、10-20)用公開的真實天空資料測羅盤晴空誤差中位數 7.9°、厚雲 26°;厚雲讓羅盤有自信地錯,信心度看不出來
ST4、ST5–ST5e(10-14 – 10-20)依羅盤自己回報的信心度,調低它的份量擋得掉「感光單元失效」,擋不掉「有自信地錯」
ST6b(10-20)做一種像真實厚雲的雲(轉角雲)✓ 誤差的分布對得上真實資料
ST5f – ST5j(10-20 – 10-23)改用「差太多就先不用」,門檻在 5–45° 之間逐一試✓ 三種陀螺儀都更常到家(p 9 × 10⁻¹²,統計上很難是碰巧);15° 最好;但陀螺儀差時,在失效雲下反而有害
ST5k – ST5r(10-25 – 11-02)依陀螺儀好壞切換:靜止時多算的誤差小才擋;仔細試切換點該定在哪切換點定在誤差 3°/s;3–3.5°/s 之間,300 場分辨不出差別
ST5q(11-01)飛行中推算陀螺儀多算的誤差,看能不能取消切換規則✗ 取消不掉
ST5s(11-03)改成起飛前校正 + 一律擋,校正後還剩的誤差 0 / 1 / 2°/s✓ 還剩的誤差三種大小、九格都不輸,陀螺儀 10°/s 時到家 50 → 113–128
ST5t、ST5u(11-05、11-07)測還剩的誤差上限、還剩的誤差不固定、誤差在飛行中慢慢改變(漂移)、兩種雲混合還剩的誤差 2.5 起就輸;混合雲沒問題;飛行中漂移不是主因,還剩的誤差 2 在「陀螺儀 2°/s + 失效雲」本來就貼著界線
ST5v(11-08 – 11-09)同一批場景試校正後還剩的誤差 0 / 1 / 1.5°/s✓ 1°/s 九格都不輸、1.5 輸一格 → 上限 2 → 1°/s
這一頁能說什麼、不能說什麼

這一頁能說什麼、不能說什麼

  • 能說:在模擬裡,起飛前把陀螺儀校正到還剩的誤差 ≤ 1°/s,有雲時一律「差太多就先不用」,返航到家的次數在三種陀螺儀 × 三種天空都不比舊規則差,陀螺儀越差好處越大。
  • 能說:雲讓羅盤「有自信地錯」時,看羅盤讀數自己的信心度擋不掉,要拿它和陀螺儀推算的航向比。
  • 不能說「真機上做得到」——1°/s 是模擬定出的規格;Crazyflie(一款小型無人機)靜止校正實際能到多少、飛行中會漂多少,都還沒量。
  • 不能說「這是果蠅腦做的」——羅盤是數學模型,「差太多就先不用」是人寫的規則;果蠅腦在這架無人機裡負責的是閃避障礙物。
  • 兩種雲是我們做的模型(轉角雲照真實厚雲資料校準過,失效雲沒有);校正後還剩的誤差在模擬裡是固定值,不是實際的分布。

還沒處理的

  1. 真機校正後還剩多少誤差:要用 Crazyflie,靜止校正多次來量。做不到 1°/s 時,下面 3–5 項都要重估。
  2. 真機飛行中的漂移(誤差在飛行中慢慢改變):要用 Crazyflie,飛 60 秒、前後各校正一次比較。
  3. 還剩的誤差 1°/s 在「陀螺儀 2°/s + 轉角雲」這一格離界線只剩 0.5 個百分點,可以換第三批場景再做一次確認(約 250 Wh 的電)。
  4. 舊規格「校正後還剩的誤差,標準差 ≤ 2°/s」是在上限 2°/s 時判的,沒有對新上限重判。
  5. 退回用的切換門檻在 3–3.5°/s 之間不穩定;只在量不到校正後還剩多少誤差時才用得到。

耗電:這一系列的飛行模擬合計約 14,700 Wh(以每個處理器核心 10 W 估)。

機身傾斜時羅盤還能用嗎
5° → 15°
把讀數換算回水平後,羅盤可用的傾斜角度上限從 5° 放寬到 15°;飛行中航向誤差降 20–30%
真實天空準不準
7.9° / 26°
用公開的真實天空資料:晴空時誤差的中位數(排在正中間的那個值)7.9°、厚雲 26°;厚雲讓羅盤「有自信地錯」,看羅盤自己回報的信心度擋不掉
「差太多就先不用」有用嗎
228 → 448
三種陀螺儀合計的到家次數(共 1,200 場):不擋 228、門檻 15° 448;門檻越小越好,15° 確認勝過 30°
陀螺儀很差時也該擋嗎
不一定
沒校正時,陀螺儀 10°/s、失效雲下,擋讀數反而少到家 67 場 → 改用切換規則:陀螺儀靜止時多算的誤差 ≤ 3°/s 才擋
起飛前校正之後
51 → 102
陀螺儀 10°/s、轉角雲下的到家次數(共 300 場):切換規則 51、校正(還剩的誤差 1°/s)+ 一律擋 102;九種情況都不輸

文字說明

這一頁在講什麼

雲遮住天空時,無人機怎麼知道羅盤能不能信。沒有 GPS 時,無人機要知道自己朝哪個方向(下面叫航向),靠兩樣東西:陀螺儀(量轉動的感測器;量轉了多少,累加起來會越來越歪)和看天空認方向的羅盤(看的是天空的偏振光,也就是太陽光在天空形成的固定圖樣,昆蟲靠它認方向;它不會越來越歪,但雲會讓它讀錯)。這一頁是這條研究線從 2026-10-14 到 11-09 的紀錄:機身傾斜、真實天空、各種雲之下,什麼時候該信羅盤、什麼時候不該信。

全部是模擬。羅盤是照 Gkanias 2019 / 2023 寫的數學模型,不是果蠅腦的神經細胞;「果蠅自己看偏振光的那條路徑能不能取代它」是另一條研究線,目前還不能。測試任務是返航:飛出 20 公尺再飛回。掉頭回家靠的是人寫的程式,一路累加自己往哪邊飛了多遠來推算家在哪,所以航向一歪,「以為的家」就跟著歪——到家的次數直接反映航向準不準。

2026-11-09 定案:起飛前先靜止不動、校正陀螺儀。校正後還剩的誤差 ≤ 1°/s 時,有雲的時候一律用下面說的「差太多就先不用」規則;做不到就退回舊規則,也就是依陀螺儀好壞來切換。真機(真的無人機)能不能校正到 1°/s 還沒量。

先看懂四個詞

先看懂四個詞

陀螺儀靜止時也會多算的誤差:陀螺儀靜止時也會讀出一點轉速(例如每秒 2°),累加一分鐘就歪 120°。這裡用三種等級:2、5、10°/s(好、中、差)。°/s 是「每秒幾度」;下面寫「陀螺儀 10°/s」就是指這個誤差有多大。

兩種雲:轉角雲——一半感光單元讀到的偏振光方向被轉了 ±60°,羅盤會「很有自信地讀錯」(照真實厚雲的資料校準過);失效雲——一部分感光單元直接沒訊號,羅盤讀數變少、變亂。

差太多就先不用(論文裡叫「創新量門控」;下面簡稱「擋」):羅盤讀數和目前推算的航向差超過 15°,就先不採用;連續約 1 秒都不採用時,強制收下一次,避免永遠不更新。

起飛前校正:起飛前靜止幾秒,量陀螺儀靜止時多算了多少,之後全程扣掉。扣不乾淨的部分就是校正後還剩的誤差(圖上標「殘差」)。

文字說明

給想查原始紀錄的人:這條線是 ST 系列,來源是 docs/DESIGN-sky-tilt.md §1–§30。成果卡依序對應 ST1、ST2;ST3、ST6;ST5f、ST5h、ST5i;ST5k–ST5r;ST5s–ST5v。轉角雲的校準是 ST6b。第一張長條圖是 ST5v §30.1,切換規則的數字讀自 ST5t;「約兩成場次會擋」那一批是 ST5s。校正後還剩的誤差上限寫在 heading_est.CALIB_RESID_TOL_DPS。羅盤的數學模型是 sky_compass.py。果蠅自己的偏振路徑是另一條線(M6)。耗電算的是 ST5 系列。