Der Temperatursensor wird an einen Sensorport des EV3-Bricks angeschlossen. Mit der Methode getTemperature() gibt er Temperaturwerte im Bereich -20° bis 128°C zurück. Mit der wasserdichten Sonde können auch die Temperaturen in den Flüssigkeiten gemessen werden. Für die Messung der Lufttemperatur können auch andere Sensoren verwendet werden (siehe unter Hochpräzise Sensoren). |
Beispiel 1: Temperatur messen und die Werte anzeigen (nur Realmodus) |
# Ro13a.py from ev3robot import * robot = LegoRobot() temp = TemperatureSensor(SensorPort.S1) robot.addPart(temp) while not robot.isEscapeHit(): T = temp.getTemperature() robot.drawString("T = " + str(T) + " deg.", 0, 1) print "T =", T, "degrees" Tools.delay(1000) robot.exit() |
Programmcode markieren
|
Erklärungen zum Programmcode:
TemperatureSensor(SensorPort.S1): erzeugt ein Temeratursensorobjekt | |
.getTemperature(): liefert die Temperatrur in Grad Celsius |
Beispiel 2: Temperatur-Logger (nur Remote-Modus) |
# Ro13b.py from ev3robot import * from gpanel import * def init(tstart): tend = tstart + 1000 window(tstart - 100, tend + 100, -5, 55) clear() setColor("gray") drawGrid(tstart, tend, 0, 50) text(tstart - 100, 52, "deg") text(tend, -4, "sec") setColor("black") lineWidth(2) robot = LegoRobot() temp = TemperatureSensor(SensorPort.S1) robot.addPart(temp) makeGPanel() title("Temperature Logger") addStatusBar(20) t = 0 while robot.isConnected() and not isDisposed(): T = temp.getTemperature() if t % 1000 == 0: init(t) move(t, T) else: draw(t, T) setStatusText("Time: %5d s. Temperature: %5.2f °C" %(t, T)) Tools.delay(1000) t = t + 1 dispose() robot.exit() |
Programmcode markieren
|
Erklärungen zum Programmcode:
window(tstart - 100, tend + 100, -5, 55): erzeugt ein GPanel-Fenster | |
drawGrid(tstart, tend, 0, 50): zeichnet ein Koordinatengitter | |
while robot.isConnected() and not isDisposed(): misst so lange bis das Programm beendet oder das Grafikfenster geschlossen wird | |
if t % 1000 == 0: wenn das Ende der Zeitachse erreicht wird, beginnt die Darstellung wieder bei Zeit 0 | |
draw(t, T): zeichnet die Verbindungslinie zum neu gemessenenen Temperaturwert |