Hallo Kenner des Faches !
Ich möchte einen Roboter bauen der sich per US-Sensor den freien Weg sucht, der als weitesten befahrbarer freier Weg durch den Ultraschall-Sensor idendifiziert wird.
So habe ich nun erst mal zur Messung/Speicherung der Werte folgendes geschrieben (Arduino-IDE):
Nun kann ja der Zustand kommen, wo alles ringsrum frei ist....wie soll das Programm da reagieren bzw. der Roboter.Code:/* ========================================================================== */ /* In der Suchfunktion dreht das Servo von der Mitte nach links dann nach */ /* rechts und wieder nach links es werden die Entfernungen und Positionen */ /* gemessen und gespeichert, anschliessend dreht das Servo auf Mitte So kann */ /* der darauf positionierte US-Sensor um 180° alle Objekte erfassen */ /* ========================================================================== */ void suche() { int pos; { for ( pos = 1; pos <=179;pos++ ) { us_servo.write(pos); if(entfernung()<= obj_min)obj_min = entfernung(); // else ??? if(entfernung()>= obj_max)obj_max = entfernung(); // else ??? } for (pos = 179;pos >=1;pos--) { us_servo.write(pos); if( entfernung() <= obj_min ) { obj_min = entfernung(); // speicher min. Enfernung pos_min = pos; // speicher pos bei min. Entfernung } // else ??? if(entfernung()>= obj_max) { obj_max = entfernung(); // speicher max. Enfernung pos_max = pos; // speicher pos bei max. Entfernung } // else ??? } us_servo.write(servcenter); } }
da bin ich dort angekommen, wo ich selber "vor einer Wand stehe" und nicht weiter weiss, in Sachen code wie auch Auswertung.
Der aber noch nicht ganz vollständige Code :HIER
Hat da vielleicht Jemand einen Hinweis für mich??
Ich bedanke mich schon mal für event. Hilfe !!
Gruss
Gerhard
Lesezeichen