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

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • 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.