13.4. OpenMV Arduino RPC 函式庫¶
openmv-arduino-rpc 函式庫是相機 rpc 模組在 Arduino 端的對應物。相機註冊 Python 可呼叫物件;Arduino 則透過 UART、SPI、I2C 或 CAN,彷彿它們是本地函式般地呼叫它們。中間沒有 PC。
這個模式是對稱的。Arduino 草稿碼挑選與線路相符的傳輸類別,依名稱呼叫相機上的函式,並取回其回傳值。相機端則加以鏡映:註冊 Python 可呼叫物件、執行函式庫的輪詢迴圈。框架化、分段以及在嘈雜匯流排上的重試都由雙方在底層處理,因此應用程式碼看到的只是「呼叫另一塊開發板上的函式,取回一個結果」。
此儲存庫的 範例 涵蓋了大多數專案所需的兩種樣態:簡短的遠端控制呼叫(讀取感測器、驅動接腳、執行偵測器並讀回結果),以及從相機向 Arduino 串流 JPEG 影像以便進一步轉發。配對的相機端指令碼隨附在 openmv 樹中的 08-RPC-Library/ 之下。
儲存庫的 README 涵蓋各傳輸方式的接線;rpc --- rpc 函式庫 參考資料則完整涵蓋相機端的 API。