Konstantnu brzinu možemo održavati putem povratne sprege bazirane na jednom od enkodera pogonskim motorima. Iako bismo mogli mjeriti samo jedan motor, u drugom dijelu vježbe ćemo trebati pratiti liniju konstantnom brzinom. U tom slučaju motori neće imati iste brzine. Zato ćemo odmah mjeriti oba.
Spojimo digitalne izlaze enkodera na pinove broj 16 (lijevi) i 17 (desni) ESP32 pločice.
Podesimo softversko čitanje pulseva na pinu.
pinMode() naredba će postaviti pin kao ulazni, znači čitat će signal.
attachInterrupt() će čitati interrupte svaki put kad se promijeni stanje na pinovima.
...
pinMode(16, INPUT);
attachInterrupt(16, encoder1Increase, CHANGE);
pinMode(17, INPUT);
attachInterrupt(17, encoder1Increase, CHANGE);
...
"encoder1Reset()" i "encoder2Reset()" su funkcije koje će resetirati brojač enkodera.
Zabilježite i početno vrijeme u milisekundama.