ASSEMBLY NOTE / BNO055 / 2026.09.16
讓小鴨知道身體往哪裡傾斜
先裝一顆 BNO055:固定在軀幹,四條線接 Raspberry Pi 的 I²C。另一顆先留作備品。此頁是安裝圖解,尚未代表實機已完成讀取或方向校準。
YOUR BOARD / 實板已核對
你的模組:20.4 × 12.1 mm,無固定螺絲孔
依實物照片 IMG_4645/4646 的游標卡尺讀值記錄;厚度與元件高度尚未量測。以下方向對應第二張照片:背面朝向自己、接點一排在上方。
接 I²C 時用 VIN、GND、SCL、SDA 四孔。Rx/Tx 是共用接腳的另一種介面標示,此處依 SCL/SDA 接。VIN 的實板供電範圍仍待模組規格核對;照片只能確認名稱,不能證明工作電壓。
固定方式改用符合板外形的絕緣托座與壓邊,避開元件及焊點;不能直接套用原版四孔板的支柱,也不靠排針卡緊承重。托座完成前先試配排針方向,勿急著焊死。
01 / LOCATION
裝在軀幹固定板,跟著身體一起動
- 斷開電池、電源供應器及 Pi 電源,打開軀幹外殼。
- 找圖中固定區,讓模組與軀幹保持剛性連接;不要裝在會轉動的頭或腿。
- 以絕緣支柱、墊片固定,讓焊點不接觸金屬、螺絲或其他電路。
- GY-BNO055 不一定與原版板孔距相同。先試配;對不上就做轉接座,勿硬鎖或在電路板上鑽孔。
- 四條線沿固定邊走,留維修餘量並固定線束,避開舵盤、軸承與大電流電源線。
先保留可拆裝狀態。實板絲印、晶片面與 XYZ 箭頭確認後,再決定最終朝向與軸映射。
02 / FOUR WIRES
四條線:3.3V、地、資料、時鐘
下圖是端子對照,不是 GY-BNO055 排針的實際順序。請依你的板上絲印辨認 VIN/VCC、GND、SDA、SCL,並核對該模組供電規格。
* 上游接的是 VIN → 3.3V。你買的 GY-BNO055 需核對實板標示;不要把 3VO(穩壓輸出)誤當 VIN。BNO055 不接 7.4V 舵機電源,也不接舵機的三線插座。
Pi 排針如何數?
先由 Pi 官方板圖或 Pin 1 方形焊盤確認起點;不要單靠整台 Pi 朝向猜。以下為排針前五排的「編號排列示意」,沒有表示 USB 在哪一邊。
| 奇數側 | 偶數側(此次不用) |
|---|---|
| ① 3V3 → VIN | ② 5V |
| ③ GPIO2 → SDA | ④ 5V |
| ⑤ GPIO3 → SCL | ⑥ GND |
| ⑦ GPIO4(不用) | ⑧ GPIO14 |
| ⑨ GND → GND | ⑩ GPIO15 |
RST、INT、ADR、PS0、PS1 先不要自行短接或更動跳帽;先確認模組原本為 I²C 模式。上游接線不使用 RST、3VO。若只有一顆,先用預設位址;常見為 0x28,也可能為 0x29。
03 / ORIENTATION
固定位置與座標方向,是兩件事
本地 runtime 使用 IMUPLUS_MODE,並依 upside_down 設定交換/反轉感測器軸向。翻面後不能只靠「重新歸零」修正。
原作者建議相對於上方 CAD 圖沿 X 軸翻轉;但你的 GY 模組外形與感測器朝向尚未核對,不能由排針朝哪邊直接推定。
驗收方式:先只讀取 IMU,手動讓軀幹前傾、左傾,再放平,核對畫面分別出現正確的俯仰、側傾與復位。確認軸、正負號及單位都吻合控制程式,才能提供給走路模型。
04 / FIRST POWER-ON
接好後先驗收讀值,再做走路測試
- 只啟動 Pi 與 IMU,保持舵機不動。確認接線無短路、Pi 的 I²C 已啟用。
- 確認位址與 BNO055 身分,持續讀取姿態、角速度與加速度;「掃到位址」不等於資料正常。
- 靜置觀察是否斷訊、跳值;若出現 I²C 錯誤,檢查接觸、線長與 clock stretching,相容性問題不能靠放寬角度門檻掩蓋。
- 完成前傾/左傾方向比對,再依實際模式做感測器校準與安裝偏差校正。感測器校準與舵機零位是不同程序。
- 重啟後再確認方向與讀值。通過後才接入姿態控制;BNO055 裝上本身不會自動讓機器人平衡。
目前缺的確認:實板厚度、元件高度及安裝區的可用空間。正反面與接腳已由照片核對;托座試配後才能把「哪一面朝上、哪一邊朝前、用哪個固定孔」標成你這一台的最終版本。