I když oba motory JGA25-370 mají katalogově stejné vlastnosti, tak ve skutečném provozu zcela stejné vlastnosti, jako jsou např. otáčky a výkon, samozřejmě nemají. To způsobuje, spolu s nerovnostmi na dráze pohybu, že jimi poháněný Kamil nejede zcela rovně, a je třeba stranové výchylky jeho pohybu nějakým způsobem vyrovnávat. To lze udělat několika způsoby, ne všechny budou vhodné v dané situaci:
Nyní se budeme věnovat způsobu č. 3:
Na základě znalosti skutečného počtu otáček kol, nebo ještě lépe podle počtu impulzů, které představují jen zlomky otáček, můžeme vyrovnávat odchylky v přímé dráze robota. U Kamila jsou použity infračervené reflexní snímače s příslušným elektrickým obvodem. Impulzy vznikají snímáním přechodů na devíti černo-bílých polích papírového pásku, který je vlepen dovnitř disku kola. Metody vyhodnocování změn pak jsou dvě. Při snímání můžeme zpracovávat jen vzestupné nebo jen sestupné hrany výstupního digitálního signálu, v tom případě jeden impulz odpovídá, při vnějším obvodu kola 22cm, jedné devítině, tedy 2,44cm ujeté vzdálenosti. Pokud budeme zpracovávat vzestupné i sestupné hrany signálu, bude jeden impulz odpovídat jedné osmnáctině vnějšího obvodu kola, tedy 1,22cm ujeté vzdálenosti.
Detail hřídele motoru se snímačem a černo-bílým páskem uvnitř disku kola Motor se snímačem otáček a deska elektroniky pro obě kola
Schema zapojení:
Výstup OUT připojíme k některému GPIO pinu.
Pouzdro komparátoru LM393 obsahuje dva shodné obvody, takže ho využijeme pro obě kola.