- 3D-Druck Einstieg und Tipps         
Seite 5 von 9 ErsteErste ... 34567 ... LetzteLetzte
Ergebnis 41 bis 50 von 89

Thema: Zwei Arduino´s drahtlos verbinden ??

  1. #41
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Ein int besteht aus 4 byte. Du willst zwei int senden, also 8 Byte.
    Jetzt sendest du allerdings einen Haufen Nullen durch die Gegend.
    Nicht schlimm, aber leicht zu optimieren.
    Kannst ja selber mal versuchen.
    ( statt int byte benutzen, mit map() den analogRead-Wert auf 8Bit begrenzen).

  2. #42
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.04.2011
    Ort
    Heilbronn
    Alter
    35
    Beiträge
    180
    okay das kann ich gerne mal probieren kann dann berichten obs geklappt hat.

    eine andre frage, wenn ich jetzt die poti Bewegung rumdrehen möchte, also wenn er
    Vorwärts fährt statt Rückwärts oder umgedreht.

    Muss ich dann einfach aus:
    data[0] = map(analogRead(xPot1Pin), 0, 1023, 0, 179);

    das hier machen ?
    data[0] = map(analogRead(xPot1Pin), 179, 1023, 0, 0);

    oder wie kann man so etwas herum drehen ?

  3. #43
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    data[0] = map(analogRead(xPot1Pin), 0, 1023, 179, 0);

    Kannst du hier nachlesen.

  4. #44
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.04.2011
    Ort
    Heilbronn
    Alter
    35
    Beiträge
    180
    ah okay, danke für den Link ...

    eine Frage noch zu eben, wenn ich jetzt 4 Servos hätte also alle 4 Bewegungen der Potis benutzen,
    hab ich ja 4 int´s sprich 16 Byte.

    muss ich dann die beiden Werte 8 auf 16 setzten? also den wert wo wir aus 2, 8 gemacht haben?

  5. #45
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Code:
    void loop (void)
    {
      byte data[4]; 
      data[0] = map(analogRead(xPotPin), 0, 1023, 0, 255); 
      data[1] = map(analogRead(yPotPin), 0, 1023, 0, 255); 
      data[2] = map(analogRead(aPotPin), 0, 1023, 0, 255); 
      data[3] = map(analogRead(bPotPin), 0, 1023, 0, 255); 
    
      radio.write(data, 4);       // Adresse (data) und Länge (4) der zu sendenden Daten
    }

  6. #46
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.04.2011
    Ort
    Heilbronn
    Alter
    35
    Beiträge
    180
    achso okay?
    so wie du ja letzt schon geschrieben hast, mit (data, 4);

    dachte eben nur weil wir das ja grad geändert hatten, das dass dann damit zusammen hängt das man das immer er weigern muss.

    Hast du das nur so geschrieben? oder wieso steht in deinem Code 255 ? - ich verwende ja 179!
    Das hart nichts zur Folge?, frage lieber nach

  7. #47
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Gegenfrage: Warum hast du denn an besagter Stelle 179 geschrieben?

  8. #48
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.04.2011
    Ort
    Heilbronn
    Alter
    35
    Beiträge
    180
    grins

    weil damals in dem Beispiel, Servos anzusteuern ...

    val = map(val, 0, 1023, 0, 179);

    ... stand,

    deswegen
    und
    weil das doch die Grad Zahlen sind von den Servos, 0 und 180 Grad.

  9. #49
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Also:
    Ein AnalogIn liefert Werte zwischen 0 und 1023 (10 Bit).
    Aber ein PWM-Ausgang kann nur Werte zwischen 0 und 255 ausgeben (8 Bit).
    Der Befehl
    byte wert = map(analogRead(Pin), 0, 1023, 0, 255);
    dient im einfachten Fall als Umrechner zwischen beiden Werten.


    Soweit die Theorie. In der Praxis muss man halt gucken, ob die Poti-Schaltung tatsächlich den ganzen Bereich von 0 bis 5V abbildet.

    Und welche Werte dann am Ausgang tatsächlich gebraucht werden. Wenn dein Servo-MaxWert 179 sein soll, dann setzt du natürlich den ein.

  10. #50
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.04.2011
    Ort
    Heilbronn
    Alter
    35
    Beiträge
    180
    okay, danke für deine Erklärung, lieb von dir =)
    Dient also als Umrechner.

    Ich wollte e schauen den wert morgen am Roboter auszuprobieren, also 255 zu verwenden.

    Weil bei dem Wert 179 für die servos, regieren die Potis was ich habe nur fast nichts oder fast alles.
    Also, garnicht fahren oder Vollgas und das is ja nicht so schön.
    Sollte schon etwas geschmeidiger sein, das hab ich grad eben bei den Servos gesehen.

    Kann es sein, das es mit "255" besser ist? bzw sensibler ist was die potis angeht ?

Seite 5 von 9 ErsteErste ... 34567 ... LetzteLetzte

Ähnliche Themen

  1. Antworten: 16
    Letzter Beitrag: 01.12.2011, 18:12
  2. Verbinden von zwei Schrittmotoren mit RN-Control
    Von mklayton im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 3
    Letzter Beitrag: 13.01.2010, 21:38
  3. Mit Rs 232 zwei avr verbinden
    Von fofi1 im Forum AVR Hardwarethemen
    Antworten: 14
    Letzter Beitrag: 16.08.2009, 12:53
  4. Zwei PIC über CAN verbinden
    Von Tonelli im Forum PIC Controller
    Antworten: 6
    Letzter Beitrag: 17.11.2007, 16:10
  5. Signale von zwei Encodern verbinden neue frage!
    Von sdz55 im Forum Elektronik
    Antworten: 68
    Letzter Beitrag: 21.03.2006, 19:31

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests