Pflanzenbewässerung Lösung: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Wechseln zu: Navigation, Suche
Zeile 9: Zeile 9:
 
Wird ein Wert (Erfahrungsgemäß 500) unterschritten ist die Erde sozusagen trocken und die Pumpe schaltet sich aktiv.
 
Wird ein Wert (Erfahrungsgemäß 500) unterschritten ist die Erde sozusagen trocken und die Pumpe schaltet sich aktiv.
 
(Für Demonstrationen kann als Auslöser auch z.B. die Taste B programmiert werden)
 
(Für Demonstrationen kann als Auslöser auch z.B. die Taste B programmiert werden)
 +
Der Servo pumpt immer wieder bist der Schwellenwert wieder überschritten wird.
  
 
 
 
Ist die Erde zu trocken (), "pumpt" der am Servo montierte Strohhalm Wasser in den Blumentopf.
 
  
 
== Detailschritte==
 
== Detailschritte==
 
xxx
 
xxx
<pre id="pre01">
+
Die Messeinheit wurde bereits beim Pflanzenwächter entwickelt und programmiert
 +
 
 
let reading = 0
 
let reading = 0
radio.setTransmitSerialNumber(true)
 
radio.setGroup(4)
 
 
led.setBrightness(64)
 
led.setBrightness(64)
 +
 
basic.forever(function () {
 
basic.forever(function () {
 
     pins.analogWritePin(AnalogPin.P1, 1023)
 
     pins.analogWritePin(AnalogPin.P1, 1023)
 
     reading = pins.analogReadPin(AnalogPin.P0)
 
     reading = pins.analogReadPin(AnalogPin.P0)
    radio.sendNumber(reading / 4)
 
 
     pins.analogWritePin(AnalogPin.P1, 0)
 
     pins.analogWritePin(AnalogPin.P1, 0)
 
     led.plotBarGraph(
 
     led.plotBarGraph(
Zeile 31: Zeile 27:
 
     1023
 
     1023
 
     )
 
     )
 +
    if (input.buttonIsPressed(Button.A)) {
 +
        basic.showNumber(reading)
 +
    }
 +
 +
})
 +
 +
 +
 +
Für das Pumpwerk wird parallel zur Anzeige der Servo programmiert
 +
 +
</pre>
 +
 +
basic.forever(function () {
 
     if (input.buttonIsPressed(Button.A)) {
 
     if (input.buttonIsPressed(Button.A)) {
 
         basic.showNumber(reading)
 
         basic.showNumber(reading)
Zeile 46: Zeile 55:
  
 
</pre>
 
</pre>
 +
 +
 +
 
 +
  
 
== Komplettlösungen ==
 
== Komplettlösungen ==

Version vom 18. Januar 2022, 16:43 Uhr

Grundsätzliche Überlegungen

Wir wissen vom Pflanzenwächter, dass die Leitfähigkeit des Bodens von der Kombination von Wasser- und Bodennährstoffen abhängig ist. Ist die Erde zu trocken, soll ein Pumpwerk Wasser aus einem Glas in den Blumentopf pumpen. Als Pumpwerk dient ein 180 Grad Servo und z.B. ein Strohhalm.


Hilfestellung

Wenn der micro:bit mit Strom versorgt ist, wird die Feuchtigkeit der Erde gemessen. Wird ein Wert (Erfahrungsgemäß 500) unterschritten ist die Erde sozusagen trocken und die Pumpe schaltet sich aktiv. (Für Demonstrationen kann als Auslöser auch z.B. die Taste B programmiert werden) Der Servo pumpt immer wieder bist der Schwellenwert wieder überschritten wird.


Detailschritte

xxx Die Messeinheit wurde bereits beim Pflanzenwächter entwickelt und programmiert

let reading = 0 led.setBrightness(64)

basic.forever(function () {

   pins.analogWritePin(AnalogPin.P1, 1023)
   reading = pins.analogReadPin(AnalogPin.P0)
   pins.analogWritePin(AnalogPin.P1, 0)
   led.plotBarGraph(
   reading,
   1023
   )
   if (input.buttonIsPressed(Button.A)) {
       basic.showNumber(reading)
   }

})


Für das Pumpwerk wird parallel zur Anzeige der Servo programmiert

</pre>

basic.forever(function () {

   if (input.buttonIsPressed(Button.A)) {
       basic.showNumber(reading)
   }
   if (reading < 500) {
       basic.showIcon(IconNames.Umbrella)
       pins.servoWritePin(AnalogPin.P2, 0)
       basic.pause(3000)
       pins.servoWritePin(AnalogPin.P2, 80)
       basic.pause(3000)
       pins.analogWritePin(AnalogPin.P2, 0)
   }
   basic.pause(5000)

})

</pre>



Komplettlösungen

Pflanzenwächter
  • Die Pflanzenbewässerung in Aktion siehst du in diesem Video
  • Eine mögliche Lösung

Zurück zur Aufgabe