Kompass Lösung: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Zur Navigation springen Zur Suche springen
Alois.bachinger (Diskussion | Beiträge)
 
(307 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Hilfestellungen und Lösung zur Kompassaufgabe=  
=Hilfestellungen und Lösung zur Kompassaufgabe=  
Hinweise
==Wie kannst du mit dem micro:bit die aktuelle Himmelsrichtung ermitteln?== 
*Lies immer wieder die Kompassrichtung aus und weise den Wert einer Variablen zu! <spoiler text="Programmierbausteine"> [[Datei:Kompassrichtung auslesen.png|border|Lese immer wieder die Kompassrichtung aus und weise den Wert einer Variablen zu]]</spoiler>
[[Datei:Himmelsrichtung hinweis1.png|400px|right|border|CC-BY-Elisabeth Winklehner, Ermittlung der Himmelsrichtung]]
*Die 4 Himmelsrichtungen zeigst du mit deren Anfangsbuchstaben an: N, S, W, O
===Hinweis 1: Himmelsrichtung prüfen===
:: Es gibt einen Programmierbaustein zum Anzeigen von Zeichen. <spoiler text="Programmierbaustein"> [[Datei:Zeige N.png|border|Zeige ein N für die Himmelsrichtung Norden]]
*Ein Sensor misst die Ausrichtung des micro:bit in Graden (°). Der Wert liegt zwischen 0° und 360°. Um zwischen den 4 Haupthimmelsrichtungen N, S, W, O unterscheiden zu können, teilen wir die 360° in 4 gleich große Teile.
Um von der Basisversion zu einer anderen Form zu kommen verwendest du das Zahnrad auf blauem Hintergrund. Ziehe dann den Block, den du hinzufügen willst, auf die rechte Seite.
*Ist die Ausrichtung des micro:bit zwischen 0° und 45°, so handelt es sich um die Himmelsrichtung Norden.
*Ist die Ausrichtung des micro:bit zwischen 45° und 135°, so handelt es sich um die Himmelsrichtung Osten. ...
Das Flussdiagramm kann dir bei deinen Überlegungen helfen. <spoiler text="Flussdiagramm">[[Datei:Flussdiagramm kompass.jpg|border|600px |Flussdiagramm zur Bestimmung der Himmelsrichtung]]</spoiler>
===Hinweis 2: Programmblöcke===
[[Datei:qr_microbit.png|200px|right|CC-BY-Elisabeth Winklehner, QR-Code zur Programmierumgebung]]
:Bis du schon zur Programmierumgebung [https://makecode.microbit.org/_5PkYAH7HiHca] gegangen?
: Hast du schon alle Blöcke gesammelt und richtig angeordnet?
<ol>
<li>Erhebe immer wieder den Sensorwert, der die Ausrichtung des micro:bit in Grad (°) misst. Speichere den Wert in der Variablen "Ausrichtung"!
*Welche Blöcke brauchst du dazu? <spoiler text="Blöcke"> [[Datei:Kompassausrichtung speichern.png|800px|Icon|border|Lies die Ausrichtung aus und weise diesen Wert einer Variablen zu]]</spoiler>
*Hast du die erstellten Blöcke schon in der richtigen Reihenfolge zusammengesetzt? <spoiler text="Blöcke"> [[Datei:Aktuelle Kompassausrichtung speichern.png|800px|Icon|border|Lies immer wieder die Ausrichtung aus und weise diesen Wert einer Variablen zu]]</spoiler></li>
<li>Die Himmelsrichtung  zeigst du auf dem Display mit dem jeweiligen Anfangsbuchstaben N, S, W, O. <spoiler text="Blöcke"> Die Himmelsrichtung Norden wird auf dem Display angezeigt mit [[Datei:Zeige norden.png|800px|Icon|border|Zeige ein N für die Himmelsrichtung Norden]] </spoiler></li>
<li>Bestimme die Himmelsrichtung, in die dein micro:bit zeigt!</li>
*Die Himmelsrichtung kannst du mithilfe von bedingten Anweisungen ermitteln. Du hast mehrere Möglichkeiten. <spoiler text="Blöcke"> [[Datei:Verzweigungsvarianten.png|800px|Icon|border|Blöcke für Verzweigungen]]
::Mit dem Zahnrad wählst du deine gewünschte Verzweigung, indem du en gewünschten Block auf die rechte Seite ziehst.
::Statt dem Wert "wahr" musst du einen passenden logischen Ausdruck einsetzen.</spoiler>
*Welche Blöcke brauchst du zum Prüfen und Anzeigen der Himmelsrichtung Norden? <spoiler text="Blöcke"> [[Datei:Pruefe norden.png|800px|Icon|border|Prüfe
Nordern]]</spoiler>
*Hast du die erstellten Blöcke für die Himmelsrichtung Norden schon in der richtigen Reihenfolge zusammengesetzt? <spoiler text="Blöcke"> [[Datei:Pruefe norden zusammengesetzt.png|800px|Icon|Prüfe Himmelsrichtung Norden]]</spoiler>
*Verschachtelst du mehrere bedingte Anweisungen, so kannst du alle 4 Haupthimmelsrichtungen unterscheiden.
*Welche Blöcke brauchst du zum Prüfen und Anzeigen der Himmelsrichtungen Norden und Osten? <spoiler text="Blöcke"> [[Datei:Pruefe norden osten.png|800px|Icon|border|Prüfe Himmelsrichtungen Norden und Osten]]</spoiler>
*Hast du die erstellten Blöcke für die Himmelsrichtungen Norden und Osten schon in der richtigen Reihenfolge zusammengesetzt? <spoiler text="Blöcke">
<pre id="01">
 
basic.forever(function () {
    Ausrichtung = input.compassHeading()
    if (Ausrichtung < 45 || Ausrichtung >= 315) {
        basic.showString("N")
    } else {
        if (Ausrichtung < 135) {
            basic.showString("O")
        } else {
            if (Ausrichtung < 225) {
                basic.showString("S")
            } else {
                basic.showString("W")
            }
        }
    }
})
</pre>
</spoiler>
...
</ol>
 
==Wie baust du einen einfachen, analogen Kompass?==
:Im Video siehst du, wie du einen analogen Kompass bauen kannst.[https://youtu.be/jiGrvXWNotk]
 
:Wenn du mehr über die Funktionsweise der Kompassnadel wissen möchtest, kannst du in Wikipedia [http://de.wikipedia.org/wiki/Kompass#Aufbau] nachlesen.
 
==Wenn deine beiden Kompasse nicht dieselbe Himmelsrichtung anzeigen ==
:Eine möglich Ursache, wenn deine Kompasse nicht dieselbe Himmelsrichtung anzeigen, kann eine mangelhafte Kalibrierung sein. Die Kalibrierung stellt sicher, dass aufgrund des Magnetfeldes der Erde erkannt wird, in welche Richtung der mikro:bit bewegt wird. Starte die Kalibrierung z.B. durch Drücken der Taste A. <spoiler text="Blöcke"><li>Kalibrieren des Sensors
<pre id="01">
input.onButtonPressed(Button.A, function () {
})
</pre>
</spoiler>
</spoiler>
*Überprüfe die Richtung Norden!
:Hast du die Blöcke schon zusammengesetzt? <spoiler text="Blöcke"><pre id="01">
::Der Sensor für die Kompassrichtung wird in ° (Graden) ausgelesen. Der Wert liegt zwischen 0° und 360°. Norden liegt bei 0° bzw. wieder bei 360°. Wenn wir nur die 4 Haupthimmelsrichtungen anzeigen lassen, unterteilen wir die 360° in 4 gleich große Teile, wobei die Haupthimmelsrichtungen mittig liegen (siehe Kompassrose). Liegt der Wert der Kompassausrichtung irgendwo kleiner als 45° oder größer als 315°, handelt es sich um die Himmelsrichtung Norden. Die Werte kannst du mit einer Verzweigung abfragen. <spoiler text="Programmierbausteine"> [[Datei:Ueberpruefung norden.png|border|Überprüfung der Richtung Norden]]</spoiler>
input.onButtonPressed(Button.A, function () {
[[Datei:Kompassrose.png|right|Kompassrose]]
    input.calibrateCompass()
* Überprüfe die anderen Himmelsrichtungen!
})
::Es gibt bei Verzweigungen verschiedene Varianten. <spoiler text="Programmierbausteine für Verzweigungen"> [[Datei:Verzweigungsvarianten.png|border|Programmierbausteine für Verzweigungen]]
</pre>
::Um von der Basisversion zu einer anderen Form zu kommen, verwendest du das Zahnrad auf blauem Hintergrund. Ziehe den Block, den du hinzufügen möchtest, auf die rechte Seite.
</spoiler>
::Statt dem Wert "wahr" muss ein passender Ausdruck eingesetzt werden</spoiler>
 
::Durch Verschachtelung von Verzweigungen kannst du mehrere Himmelsrichtungen ausgeben. <spoiler text="Programmierbausteine"> [[Datei:Ueberpruefung_norden_osten.png|border|Überprüfe Himmelsrichtung  Norden oder Osten]]</spoiler>
==Lösung vergleichen==
:Dein Programm kannst du hier vergleichen. <spoiler text="Blöcke">
<pre id="01">
 
let Ausrichtung = 0
input.onButtonPressed(Button.A, function () {
    input.calibrateCompass()
})
basic.forever(function () {
    Ausrichtung = input.compassHeading()
    if (Ausrichtung < 45 || Ausrichtung >= 315) {
        basic.showString("N")
    } else {
        if (Ausrichtung < 135) {
            basic.showString("O")
        } else {
            if (Ausrichtung < 225) {
                basic.showString("S")
            } else {
                basic.showString("W")
            }
        }
    }
})
</pre>
 
 
 
</spoiler>
 
==Mit Karte und Kompass sicher und zeitsparend dein Ziel finden==
*Bevor du deinen Kompass zur Orientierung in unbekanntem Gelände praktisch einsetzt, musst du wissen [http://www.alpinisten.info/wissen.kartenkunde.kompass.html]
::wie du die Landkarte mit dem Kompass ausrichtest
::wie du deinen Standort auf der Landkarte bestimmst
::wie du Höhenlinien und andere Kartenzeichen liest, Ziele richtig peilst, Entfernungen bestimmst, Geländehöhen und Wegzeiten ermittelst
*Informiere dich, wie du Himmelsrichtungen auch ohne Kompass erkennst. [https://youtu.be/epJLKx2PKxo]
 


Die vollständige Lösung kannst du hier vergleichen. <spoiler text="Lösung"> [[Datei:loesung_kompass.png|border|Lösung Kompass]]</spoiler>


=Hilfestellungen und Lösungen zu den Erweiterungen =
[[Kompass|Zurück zur Aufgabe]]
*Wie du einen analogen Kompass selbst baust, kannst du dir im Video Kompass bauen [http://youtu.be/zhbGCoPAo_c|new] anschauen.




[[Kompass|zurück]]
<htmlet>makecode_embed</htmlet>

Aktuelle Version vom 7. Dezember 2021, 21:33 Uhr

Hilfestellungen und Lösung zur Kompassaufgabe

Wie kannst du mit dem micro:bit die aktuelle Himmelsrichtung ermitteln?

CC-BY-Elisabeth Winklehner, Ermittlung der Himmelsrichtung
CC-BY-Elisabeth Winklehner, Ermittlung der Himmelsrichtung

Hinweis 1: Himmelsrichtung prüfen

  • Ein Sensor misst die Ausrichtung des micro:bit in Graden (°). Der Wert liegt zwischen 0° und 360°. Um zwischen den 4 Haupthimmelsrichtungen N, S, W, O unterscheiden zu können, teilen wir die 360° in 4 gleich große Teile.
  • Ist die Ausrichtung des micro:bit zwischen 0° und 45°, so handelt es sich um die Himmelsrichtung Norden.
  • Ist die Ausrichtung des micro:bit zwischen 45° und 135°, so handelt es sich um die Himmelsrichtung Osten. ...

Das Flussdiagramm kann dir bei deinen Überlegungen helfen. <spoiler text="Flussdiagramm">Flussdiagramm zur Bestimmung der Himmelsrichtung</spoiler>

Hinweis 2: Programmblöcke

CC-BY-Elisabeth Winklehner, QR-Code zur Programmierumgebung
CC-BY-Elisabeth Winklehner, QR-Code zur Programmierumgebung
Bis du schon zur Programmierumgebung [1] gegangen?
Hast du schon alle Blöcke gesammelt und richtig angeordnet?
  1. Erhebe immer wieder den Sensorwert, der die Ausrichtung des micro:bit in Grad (°) misst. Speichere den Wert in der Variablen "Ausrichtung"!
    • Welche Blöcke brauchst du dazu? <spoiler text="Blöcke"> Lies die Ausrichtung aus und weise diesen Wert einer Variablen zu</spoiler>
    • Hast du die erstellten Blöcke schon in der richtigen Reihenfolge zusammengesetzt? <spoiler text="Blöcke"> Lies immer wieder die Ausrichtung aus und weise diesen Wert einer Variablen zu</spoiler>
  2. Die Himmelsrichtung zeigst du auf dem Display mit dem jeweiligen Anfangsbuchstaben N, S, W, O. <spoiler text="Blöcke"> Die Himmelsrichtung Norden wird auf dem Display angezeigt mit Zeige ein N für die Himmelsrichtung Norden </spoiler>
  3. Bestimme die Himmelsrichtung, in die dein micro:bit zeigt!
    • Die Himmelsrichtung kannst du mithilfe von bedingten Anweisungen ermitteln. Du hast mehrere Möglichkeiten. <spoiler text="Blöcke"> Blöcke für Verzweigungen
    Mit dem Zahnrad wählst du deine gewünschte Verzweigung, indem du en gewünschten Block auf die rechte Seite ziehst.
    Statt dem Wert "wahr" musst du einen passenden logischen Ausdruck einsetzen.</spoiler>
    • Welche Blöcke brauchst du zum Prüfen und Anzeigen der Himmelsrichtung Norden? <spoiler text="Blöcke"> Prüfe Nordern</spoiler>
    • Hast du die erstellten Blöcke für die Himmelsrichtung Norden schon in der richtigen Reihenfolge zusammengesetzt? <spoiler text="Blöcke"> Prüfe Himmelsrichtung Norden</spoiler>
    • Verschachtelst du mehrere bedingte Anweisungen, so kannst du alle 4 Haupthimmelsrichtungen unterscheiden.
    • Welche Blöcke brauchst du zum Prüfen und Anzeigen der Himmelsrichtungen Norden und Osten? <spoiler text="Blöcke"> Prüfe Himmelsrichtungen Norden und Osten</spoiler>
    • Hast du die erstellten Blöcke für die Himmelsrichtungen Norden und Osten schon in der richtigen Reihenfolge zusammengesetzt? <spoiler text="Blöcke">
    
    basic.forever(function () {
        Ausrichtung = input.compassHeading()
        if (Ausrichtung < 45 || Ausrichtung >= 315) {
            basic.showString("N")
        } else {
            if (Ausrichtung < 135) {
                basic.showString("O")
            } else {
                if (Ausrichtung < 225) {
                    basic.showString("S")
                } else {
                    basic.showString("W")
                }
            }
        }
    })
    

    </spoiler> ...

Wie baust du einen einfachen, analogen Kompass?

Im Video siehst du, wie du einen analogen Kompass bauen kannst.[2]
Wenn du mehr über die Funktionsweise der Kompassnadel wissen möchtest, kannst du in Wikipedia [3] nachlesen.

Wenn deine beiden Kompasse nicht dieselbe Himmelsrichtung anzeigen

Eine möglich Ursache, wenn deine Kompasse nicht dieselbe Himmelsrichtung anzeigen, kann eine mangelhafte Kalibrierung sein. Die Kalibrierung stellt sicher, dass aufgrund des Magnetfeldes der Erde erkannt wird, in welche Richtung der mikro:bit bewegt wird. Starte die Kalibrierung z.B. durch Drücken der Taste A. <spoiler text="Blöcke">
  • Kalibrieren des Sensors
  • input.onButtonPressed(Button.A, function () {
    })
    

    </spoiler>

    Hast du die Blöcke schon zusammengesetzt? <spoiler text="Blöcke">

    input.onButtonPressed(Button.A, function () {

       input.calibrateCompass()
    

    })

    </spoiler>

    Lösung vergleichen

    Dein Programm kannst du hier vergleichen. <spoiler text="Blöcke">
    
    let Ausrichtung = 0
    input.onButtonPressed(Button.A, function () {
        input.calibrateCompass()
    })
    basic.forever(function () {
        Ausrichtung = input.compassHeading()
        if (Ausrichtung < 45 || Ausrichtung >= 315) {
            basic.showString("N")
        } else {
            if (Ausrichtung < 135) {
                basic.showString("O")
            } else {
                if (Ausrichtung < 225) {
                    basic.showString("S")
                } else {
                    basic.showString("W")
                }
            }
        }
    })
    


    </spoiler>

    Mit Karte und Kompass sicher und zeitsparend dein Ziel finden

    • Bevor du deinen Kompass zur Orientierung in unbekanntem Gelände praktisch einsetzt, musst du wissen [4]
    wie du die Landkarte mit dem Kompass ausrichtest
    wie du deinen Standort auf der Landkarte bestimmst
    wie du Höhenlinien und andere Kartenzeichen liest, Ziele richtig peilst, Entfernungen bestimmst, Geländehöhen und Wegzeiten ermittelst
    • Informiere dich, wie du Himmelsrichtungen auch ohne Kompass erkennst. [5]


    Zurück zur Aufgabe