Skocz do zawartości

Przesyłanie miedzy dwoma arduino wartości z czterech potencjometrów


koik

Pomocna odpowiedź

Witam, tak jak w temacie. Chcę na jednym arduino odczytać wartości czterech potencjometrów i przesłać do drugiego, który będzie sterował serwomechanizmami.

Pierwsze arduino:

void loop() {
 odczytADC = analogRead(SERVO_PIN);
 Serial.println(odczytADC);

Drugie:

void loop() {

if(Serial.available()>0){
 odczytADC= Serial.readStringUntil('\n');

odcz = odczytADC.toInt();
Serial.println(odcz);
kat = map(odcz,0,1023,10,170);
servo.write(kat);

To przykład wysłania jednej wartości, nie wiem czy jest ona dobra. Cztery wartości trzeba wysłać w tablicy, ale niestety nie za bardzo mogę zrozumieć przykłady. Czy mógłby mi ktoś w tym pomóc?

[ Dodano: 29-02-2016, 14:17 ]

Po uruchomieniu na szeregowym monitorze wartości joysticka to:

Pozycja Y: 0

Pozycja X: 0

Pozycja Y: 349

Pozycja X: 338

Pozycja Y: 327

Pozycja X: 321

Pozycja Y: 0

Pozycja X: 0

Pozycja Y: 349

Pozycja X: 338

Pozycja Y: 327

Pozycja X: 321

Pozycja Y: 0

Pozycja X: 0

Pozycja Y: 349

Pozycja X: 338

Pozycja Y: 327

Pozycja X: 321

Pozycja Y: 0

Pozycja X: 0

Pozycja Y: 349

Pozycja X: 338

Pozycja Y: 327

Pozycja X: 321

Pozycja Y: 0

Pozycja X: 0

Pozycja Y: 349

Pozycja X: 338

Pozycja Y: 327

Pozycja X: 321

Pozycja Y: 0

Pozycja X: 0

Czy ma ktoś pomysł dlaczego czasami odczyty są równe zero?

Link do komentarza
Share on other sites

Chcesz odczytać wartość z 4 potencjometrów ( jak rozumiem 2* joystick x/y ) a z wysyłanych danych wyraźnie widać, że robisz to z 6 potencjometrów ( powtarzają się sekwencję y/x 0/0 , y/x 349/338, y/x 327/321 ).

Czyli pewnie błąd w kodzie pętli, ale kodu w całości nie zamieściłeś, więc nie mamy o czym debatować.

Link do komentarza
Share on other sites

To kod do pracy inżynierskiej i jeżeli wrzucę go w całości to później będzie on traktowany jako plagiat :/

Czy jest możliwość, aby arduina wysyłały między sobą informacje? Np jest samochód przewodowy, sterowany po rx, a w samochodzie jest czujnik temperatury.

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

Skoro każde Arduino ma np. dwukierunkowy UART umiejący jednocześnie wysyłać i odbierać informacje szeregowo to wystarczy byś zapewnił, że gdzieś po drodze będzie się to mijało. Przecież zrobiłeś przesyłanie czegośtam z jednej płytki do drugiej. Dlaczego miałoby to samo nie zadziałać w drugą stronę?

Trochę to dziecinne pytanie jak na OMC inżyniera 😐

Link do komentarza
Share on other sites

To kod do pracy inżynierskiej i jeżeli wrzucę go w całości to później będzie on traktowany jako plagiat :/

Bzdura. Jak może być plagiatem coś tego samego autora? Czy może piszesz tą pracę komuś?

Link do komentarza
Share on other sites

To kod do pracy inżynierskiej i jeżeli wrzucę go w całości to później będzie on traktowany jako plagiat :/

Bzdura. Jak może być plagiatem coś tego samego autora? Czy może piszesz tą pracę komuś?

Jakim problemem jest udowodnienie, że to ty wrzuciłeś?

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.