Advertisement
nikonn

LEGO NXT Ausweichen mit Ultraschallsensor

Apr 11th, 2016
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.15 KB | None | 0 0
  1. #define TURNTIME 900
  2. #define DISTANCE 20
  3.  
  4. task main()
  5.  
  6. {
  7. TextOut(0, LCD_LINE1, "Fahren bis Ultra");
  8. TextOut(0, LCD_LINE2, "schall-Sensor");
  9. TextOut(0, LCD_LINE3, "ein Hindernis");
  10. TextOut(0, LCD_LINE4, "erkennt und dann");
  11. TextOut(0, LCD_LINE5, "ausweichen.");
  12. // Variablen definieren
  13. // Integer = Ganze Zahlen
  14. int turntime;
  15. TextOut(0, LCD_LINE7,"Turntime in ms=");
  16. Wait(500);
  17. SetSensorLowspeed(IN_4); //Ultraschall-Sensor initialisieren
  18. SetSensorTouch(IN_1);    //Touch-Sensor initialisieren
  19.  
  20. // Start des Programms durch Drücken des Touch-Sensors
  21. while(SENSOR_1 == 0)
  22. {
  23. }
  24.  
  25. //jetzt beginnt die Endlosschleife
  26.  
  27. while(true)
  28.            {
  29.             OnFwd(OUT_AC, 75);
  30.             // Bei Annäherung an ein Hindernis anhalten und ausweichen
  31.             if (SensorUS(IN_4)<DISTANCE)
  32.                {
  33.                Off(OUT_AC);
  34.                Wait(500);
  35.                // Zufälliger Wert für Drehung
  36.                turntime = Random(1000);
  37.                // Ausgabe der Zufallszahl auf dem Display
  38.                NumOut(0,LCD_LINE8,turntime);
  39.                OnRev(OUT_A, 75);
  40.                Wait(turntime);
  41.                }
  42.             }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement