- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 7 von 7

Thema: RP6 Servo-Programm

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    Hi,
    das sind nur zwei teilweise zusammen kopierte Einzelprogramme.
    Dein Ziel, bestimmte Bewegungen mit dem RP6 auszuführen, kannst du z.B. durch Änderung des RP6Base_Move_02 Beispiels schaffen.
    Die Funktionen zur Servo-Ansteuerung brauchst du dazu nicht.
    Gruß
    Dirk

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    24.02.2013
    Beiträge
    9
    Erstmal Danke für die Antwort.
    Doch eine Frage habe ich noch. Es ist doch möglich, mithilfe einer Schleife, dass der Robby immer geradeaus fährt, bis beide Bumper angeschlagen sind oder?
    Dies hab ich schon versucht, doch irgendwie bereitet diese Stelle im Programm dem Robby Schwierigkeiten, da Frage ich mich, wo ich den Denkfehler mache, oder ob man es überhaupt so schreiben kann.
    Der Roboter führt die ersten Fahrmanöver aus, und dann überspringt er den Schleifenpart. Ich habe daran schon lange rumprobiert, und im Internet fand ich auch nichts.
    Also das Programm lautet so:

    Code:
    #include "RP6RobotBaseLib.h"
    
    int main (void)
    {
    	initRobotBase();
    
    	mSleep(2500);
    	
    	powerON();
    	
    	move(70, FWD, DIST_MM(200), true);
    	
    	rotate(60, LEFT, 90, true);
    	
    	task_Bumpers();
    	
    	while(bumper_left && bumper_right == false)
    	{
    		move(70,FWD, DIST_MM(10), true);
    	}
    	
    	move(70,BWD, DIST_MM(100), true);
    	
    	while(true)
    	{
    		task_RP6System();
    	}
    	return 0;
    
    }
    Was muss ich anders machen?

    Danke im Voraus.

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    1. Du must das ganze Fahren und Stoppen bei einem Hindernis in die Hauptschleife:
    while(true)
    {
    task_RP6System();
    }
    ... packen.

    2. Die Abfrage while(bumper_left && bumper_right == false) macht nicht das, was du willst.
    So sollte es gehen: while(!bumper_left && !bumper_right).

    3. Wenn du ein Hindernis gemerkt hast (mit einem Bumper), must du den RP6 auch noch Stoppen.
    Gruß
    Dirk

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    24.02.2013
    Beiträge
    9
    Vielen vielen Dank Dirk, es hat funktioniert. Danke das du einem so schnell bei seinen Problemen hilfst.

    ich hab die while Schleife jetzt so geschrieben:

    Code:
    while(!bumper_left && !bumper_right != false)
    und es funktioniert gut jetzt muss ich noch den Servo einbringen und hab die Funktion fertig Danke

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    Hi,
    Code:
    while(!bumper_left && !bumper_right != false)
    Erklärung zu deinem Code:
    Deine while-Schleife läuft, solange ...
    - der linke Bumper nicht gedrückt ist (!bumper_left) UND (&&) ...
    - der Wert für den nicht gedrückten rechten Bumper (!bumper_right) UNGLEICH (!=) false
    ... ist.
    Der letzte Teil (!bumper_right != false) ist identisch mit: (bumper_right == false) wegen der doppelten Verneinung und das ist identisch mit: (!bumper_right).

    Also: Dein Code macht zwar alles richtig, ist aber so nicht nötig,- das: while(!bumper_left && !bumper_right) reicht.

    Übrigens:
    (!bumper_left && !bumper_right) kann man auch so schreiben: (bumper_left == false && bumper_right == false)

    Verwirrung komplett?
    Gruß
    Dirk

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    24.02.2013
    Beiträge
    9
    Nein, alles Super verstanden. Hab mir das schon gedacht, da ich auch die doppelte Verneinung gesehen hab, aber danke für die Information

Ähnliche Themen

  1. RP6 Servo Ansteuerung
    Von Robotoni im Forum Robby RP6
    Antworten: 109
    Letzter Beitrag: 04.04.2011, 16:50
  2. RP6 Servo ansteuern
    Von RP6-Besitzer im Forum Robby RP6
    Antworten: 8
    Letzter Beitrag: 11.10.2010, 19:26
  3. unbekannter Fehler in RP6 Programm
    Von Virus im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 07.01.2010, 16:39
  4. RP6 Selftest Programm errors.
    Von fischer-max im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 2
    Letzter Beitrag: 24.02.2008, 18:09
  5. Servo Programm
    Von cbr600 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 0
    Letzter Beitrag: 03.11.2007, 16:45

Stichworte

Berechtigungen

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

Solar Speicher und Akkus Tests