Serial Communication Raspi <--> Arduino .. RC Signal priorisieren

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Leute,

    dies ist mein erstes Post also bitte nicht schlagen wenn ich dumme Fragen stelle :shy:

    Mein Projekt ist ein Kettenfahrzeug welches im Turm Kamera, Abstandssensor, GPS, Accelerometer, Winkelmesser usw. drin haben sollte.

    Dies ist aber eher das wenigste Problem Das Fahrgestell ist schon gedruckt (Muss jetzt nur noch den Kettenspanner konstruieren.

    Mir geht es um folgendes:
    Ich hab eine 8 Kanal RC-Anlage welche direkt angeschlossen so eigentlich funktioniert.
    Später soll das dann auch per Tablet steuerbar sein.
    Zur Verfügung stehen mir ein Raspberry PI ein Arduino Mega 2650 und das andere Gedöns.

    Der Arduino soll die Servos ansteuern und der Raspi quasi als Master fungieren.

    Also mir schwebt das so vor:


    Raspi sendet per Serial z.B 123,GO_FORWARD,100,20#124,TURN_LEFT,90,20#125,GO_FORWARD,50,70#

    Das Bedeuted: Fortlaufende ID, 100 cm vorwärts, Geschwindigkeit 20 % # ID, Drehe nach links um 90 grad, Geschwindigkeit 20 Prozent # ID, Vorwärts 50cm, Geschwindigkeit 70% usw. usw.

    Antwort vom Arduino: ID 123 OK#ID 124 OK#ID 125 OK#

    1. Frage der Fragen ;) Wie bekomme ich mit wann der jeweilige Befehl beendet wurde? ;;)) )Ich weiss das dies ziemlich schwierig ist (Habe leider keine Hallsensoren an den Motoren bzw. hatte keine gefunden die stark genug gewesen währen) (Oder ich berechne die Zeit welche die Motoren laufen müssten) Den Schlupf der Ketten lasse ich jetzt mal bewusst draussen)
    (Vielleicht liesse sich da was über die verbauten Sensoren was vernünftiges rausbringen Accelerometer bzw Kompass oder ähnliches))


    2. Frage Die serielle Kommunikation ist etwas kompliziert (Wie werte ich Arduinoseitig die Befehle bzw. die Strings bzw. Buchstaben richtig aus. Würde gerne diese in einem Array ablegen und nacheinander abarbeiten lassen. Hänge ich alles an einem String von der seriellen an einem String an und wenn das Zeichen # auftaucht lege ich den String in ein Array ab und stripe den ankommenden Rest im Puffer?

    Und zu guter letzt... Der RC Empfänger sollte ja an den Raspi angeschlossen werden damit ich den Roboter auch fernsteuern bzw. retten kann falls ein Script Amok läuft.
    Dam liegen ja dann 2 Signale auf einem Servoausgang. (Arduino und RC-Signal) Das einzige was mir dazu einfiele währe das Signal vom RC-Sender zu ignorieren solange sich dieser in Neutralstellung befindet.
    Oder bin ich da auf dem Holzweg?


    Vieln Dank fürs lesen und hoffe auf zahlreiche Lösungsvorschläge :danke_ATDE:

  • Serial Communication Raspi <--> Arduino .. RC Signal priorisieren? Schau mal ob du hier fündig wirst!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!