Skocz do zawartości

Arduino i aplikacja bluetooth


komo23

Pomocna odpowiedź

1 godzinę temu, komo23 napisał:

Myślałem żeby zrobić kilka przycisków w aplikacji, wybranie powodowałoby ustawienie danej prędkości. 

Dobrze myślisz 🙂 Możesz również zrobić suwak, którym będziesz płynnie regulował prędkości.

Z czym dokładnie masz problem?

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Myślałem o App Inventor. 

Suwak będzie pewnie najlepszym rozwiązanie.

Tylko jak w kodzie programu sterowania uwzględnić zmienną odpowiadająca za prędkość ? 

Zrobić różne przedziały liczbowe i na tej podstawie sterować prędkością ? 

Link do komentarza
Share on other sites

17 minut temu, komo23 napisał:

Suwak będzie pewnie najlepszym rozwiązanie.

To pewnie będziesz miał virtualny joystick jako jeden z widgetów/widoków.

 

18 minut temu, komo23 napisał:

Tylko jak w kodzie programu sterowania uwzględnić zmienną odpowiadająca za prędkość ? 

Zrobić różne przedziały liczbowe i na tej podstawie sterować prędkością ? 

Z aplikacji wysyłasz wartości jak piszesz - w danym przedziale. Np -100 to max wychylenie do tyłu, +100 to max do przodu. 0 to stój w miejscu.

Po stronie sterownika interpetujesz to jako wartość PWM ale z uwaględnieniem budowy robota. Jak masz 2 silniki (sterowanie różnicowe) to jak z aplikacji wyślesz +100 to ma to oznaczać, że oba silniki kręcą się na maxa do przodu, czyli oba mają PWM na max i kierunek obrotów do przodu, który ustawiasz mostkiem H (steronikiem silników).

Jak będziesz chciał skręcać to możesz dodać drugi suwak i analogiczna metoda tylko przy skręcie zamieniasz kierunek obrotów.

Aby ruch był płynny możesz użyć funkcji 'map' Arduino, która służy do liniowej interpolacji wartości - czyli będziesz miał wartości pośrednie PWM, zaś aby określić kierunek obrotu silników sprawdzasz czy wartość wysłana z aplikacji jest > 0 czy < 0. Myślę, że więcej znajdziesz w kursie budowy robotów na blogu.

Link do komentarza
Share on other sites

31 minut temu, komo23 napisał:

Zrobić różne przedziały liczbowe i na tej podstawie sterować prędkością ? 

Zapoznaj się z funkcją Arduino, która nazywa się map() - powinna rozwiązać Twój problem.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.