13.4. OpenMV Arduino RPC biblioteka¶
Biblioteka openmv-arduino-rpc je Arduino pandan modulu rpc na kameri. Kamera registrira pozive funkcija u Pythonu; Arduino ih poziva kao da su lokalne funkcije, preko UART, SPI, I2C ili CAN. Nijedno računalo ne stoji u sredini.
Uzorak je simetričan. Arduino skica bira prijenosnu klasu koja odgovara žici, poziva funkciju na kameri po imenu i dobiva povratnu vrijednost natrag. Strana kamere to zrcali: registrira pozive funkcija u Pythonu i pokreće biblioteknu petlju ispitivanja. Uokvirivanje, fragmentacija i ponovni pokušaji na bučnoj sabirnici obrađuju se na obje strane ispod, pa aplikacijski kod vidi samo „pozovi funkciju na drugoj ploči, dobij rezultat natrag.”
Primjeri iz repozitorija pokrivaju dva oblika koja je potrebno većini projekata: kratke pozive daljinskog upravljanja (čitanje senzora, upravljanje pinom, pokretanje detektora i čitanje rezultata natrag) i prijenos JPEG slika s kamere na Arduino radi daljnjeg prosljeđivanja. Uparene skripte na strani kamere isporučuju se u openmv stablu pod 08-RPC-Library/.
README repozitorija pokriva ožičenje po pojedinom prijenosu; referenca rpc — rpc biblioteka pokriva API na strani kamere u cijelosti.