Ich würde gerne Versuchen, das die räder sich beim vorwärtsfahren anpassen, sodass er exakt geradeausfährt.
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