Hallo Leute, wir haben in der Schule einen Asuro gebaut und wolln jetzt, das er vernünftig geradeaus fährt. Kann man die Motoren nicht irgendwie auf einander abstimmen.
Und wenn ihr schon dabei seit wie kann ich bei mir einbauen, das er einem Licht oder einer Linie folgt?
Code:#include "asuro.h" int main(void){ Init(); int zeit; while(1) { MotorDir(FWD,FWD); // Beiden Motoren auf Vorwärts MotorSpeed(120,150); // Die Motoren arbeiten ungleichmäßig stark, so gehts geradeaus StatusLED(GREEN); // Status-Leuchtdiode auf grün schalten while (PollSwitch()==0) { // Kollisionskontakte prüfen und solange keine Kollision erfolgt... SerWrite("Los gehts!\n",9); // ...weiterfahren } MotorSpeed(0,0); // Kollision! sofort anhalten! StatusLED(RED); // Status-Leuchtdiode auf rot schalten for(zeit=0;zeit<1000;zeit++){ // Ne pause von 1000 millisekunden Sleep(72);} BackLED(ON,ON); // Rückleuchten anschalten MotorDir(RWD,RWD); // Rückwärtsgang einlegen MotorSpeed(120,150); // losfahren SerWrite("Wech hier!\n",10); // "Wech hier!" schicken for(zeit=0;zeit<1000;zeit++){ // wieder Pause Sleep(72);} MotorSpeed(0,0); // Motoren ausschalten SerWrite("Uff! Das war knapp.\n",16); StatusLED(GREEN); // StatusLED wieder grün schalten BackLED(OFF,OFF); // und Rückleuchten wieder aus for(zeit=0;zeit<1000;zeit++){ // schon wieder Pause Sleep(72);} MotorDir(FWD,RWD); // Den linken Motor vorwärts und den rechten Rückwärts schalten, StatusLED(YELLOW); // StatusLED gelb schalten, MotorSpeed(100,129); // Beide Motoren einschalten SerWrite("Drehn! Drehn! Drehn!\n",18); // und sich drehen for(zeit=0;zeit<1000;zeit++){ // wieder kurz warten... Sleep(72);} MotorSpeed(0,0); for(zeit=0;zeit<1000;zeit++){ Sleep(72);} // ...und dann alles von vorne } }







					
					
					
						
Zitieren

Lesezeichen