Mit den Ultraschallsensoren (engl. ultrasonic sensors) kann der Roboter Entfernungen einschätzen. Sie imitieren die „Augen“ des Roboters. Der Roboter kann damit erkennen, wo sich Gegenstände befinden. Die Abstände kann der Ultraschallsensor in Zentimetern messen.
Listing 1: HalloSonicSensor
import lejos.nxt.*; public class HalloSonicSensor { public static void main(String[] args) throws Exception { UltrasonicSensor sonic = new UltrasonicSensor(SensorPort.S1); while (!Button.ESCAPE.isPressed()) { LCD.clear(); int distance = sonic.getDistance(); LCD.drawInt( distance, 0, 3); Thread.sleep(30); } } }
In Zeile 5 wird ein Objekt sonic
der Klasse UltrasonicSensor
erstellt. Dieses Objekt repräsentiert von nun an den Entfernungsmesser.
In Zeile 7 bis 13 wird die while-„Schleife“ betreten und erst wieder verlassen, wenn der Escape-Button
gedrückt wird.
Das Programm löscht den Bildschirm (Zeile 8).
In Zeile 10 wird die Entfernung ermittelt und in der Variablen distance gespeichert.
In Zeile 11 wird der Wert ausgegeben. LCD.drawInt(WERT, X Position , Y-Position )
.