Szukam informacji o tym, jak zaimplementować prawidłowe miksowanie 2 analogowych sygnałów joysticka (oś X i Y) do sterowania podwójnym napędem różnicowym (napęd „zbiornikowy”) za pomocą sterownika uC (w moim przypadku ATMega328p), ale to samo powinno dotyczyć dowolny uC z wejściami ADC i wyjściami PWM):
Mam analogowy drążek, który daje 2 wartości analogowe:
(kierunek) X: od 0 do 1023
(przepustnica) Y: od 0 do 1023
Pozycja spoczynkowa to (neutralny kierunek i przepustnica) 512,512
Przepustnica do przodu / kierunek w lewo to 0,0
Całkowite do przodu-pełne prawo to 1023,0
itp.
Silniki są sterowane przez 2 sterowniki mostka H, dla każdego z 2 pinów PWM (do przodu, do tyłu), tak:
Lewy silnik: od -255 do 255
Prawy silnik: od -255 do 255
(wartości dodatnie włączają pin PWM do przodu, ujemny włącza wsteczny Pin PWM, 0 wyłącza oba)
Celem jest zmiksowanie sygnałów analogowych joysticka w celu uzyskania następującej odpowiedzi:
a) Przepustnica do przodu, kierunek neutralny = pojazd poruszający się do przodu
b) Przepustnica do przodu, kierunek lewy = pojazd poruszający się do przodu i skręca w lewo
c) Przepustnica neutralna, kierunek lewy = pojazd skręca w lewo W MIEJSCU, który jest prawym silnikiem całkowicie do przodu, lewy silnik całkowicie do tyłu
... i podobnie w przypadku innych kombinacji. Oczywiście wyjście powinno być „analogowe”, co oznacza, że powinno umożliwiać stopniowe przejście z na przykład z opcji a) do b) do c).
Koncepcja jest następująca: