13.4. Knihovna OpenMV Arduino RPC¶
Knihovna openmv-arduino-rpc je protějškem na straně Arduina k modulu rpc kamery. Kamera registruje pythonovské volatelné objekty; Arduino je volá, jako by to byly lokální funkce, přes UART, SPI, I2C nebo CAN. Žádné PC mezi tím není.
Vzor je symetrický. Arduino sketch zvolí přenosovou třídu odpovídající vodiči, zavolá funkci na kameře podle jména a získá zpět návratovou hodnotu. Strana kamery to zrcadlí: zaregistruje pythonovské volatelné objekty a spustí dotazovací (polling) smyčku knihovny. Rámcování, fragmentaci a opakované pokusy na zašuměné sběrnici obě strany řeší pod kapotou, takže aplikační kód vidí jen „zavolej funkci na druhé desce a dostaň zpět výsledek“.
Příklady v repozitáři pokrývají dvě podoby, které potřebuje většina projektů: krátká volání dálkového ovládání (přečíst senzor, ovládnout pin, spustit detektor a přečíst zpět výsledek) a streamování JPEG obrazu z kamery do Arduina k dalšímu přeposlání. Párové skripty na straně kamery jsou dodávány ve stromu openmv pod 08-RPC-Library/.
README repozitáře pokrývá zapojení pro jednotlivé přenosy; reference rpc — knihovna rpc pokrývá API na straně kamery v plném rozsahu.