Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| mint_wochen:raketenbau:planung [2026-01-14 13:27] – [Notizen aus der Planungsgruppe MINT-Woche 2026:] hof | mint_wochen:raketenbau:planung [2026-02-01 09:34] (aktuell) – [Begrüssungs-Email] hof | ||
|---|---|---|---|
| Zeile 4: | Zeile 4: | ||
| _Wir fliegen zum Mars!_ | _Wir fliegen zum Mars!_ | ||
| + | ### Teams | ||
| + | Die Präsentationen finden am Freitag von 10:30 bis 12 Uhr statt: | ||
| + | |||
| + | ^ Team ^ Teilnehmende | ||
| + | | Soviet MAGA | Blendi, Daniele, Mats | P1.08 | OK | | ||
| + | | Shrek-Express | ||
| + | | Kesselring Airlines | ||
| + | | Hermes 7 | Ivo, Aaron, Nicola Leban | H1.04 | OK | | ||
| + | | We know ball | Fabrice, Nicola Wartmann, Moreno | ||
| + | | Super Crocket | ||
| + | | Eventuell Defekt | ||
| + | | Nase | Leon, Sean | HR2.05 | ||
| + | |||
| ## Übersicht | ## Übersicht | ||
| Code name: < | Code name: < | ||
| Zeile 22: | Zeile 35: | ||
| * **Räume:** | * **Räume:** | ||
| * am liebsten Makerspace (zwingend) + Mehrzweckraum | * am liebsten Makerspace (zwingend) + Mehrzweckraum | ||
| + | |||
| + | ### Begrüssungs-Email | ||
| + | |||
| + | Liebe Rocketheads, | ||
| + | |||
| + | Sie haben sich für eine ambitionierte MINT-Woche angemeldet: das Ziel ist nichts Geringeres, als Elon Musk den Schneid abzukaufen und innert einer Woche den Mars zu erobern. | ||
| + | |||
| + | Den Einstieg und den Plan für den ersten Tag finden Sie im [[mint_wochen: | ||
| + | |||
| + | Wichtige Information: | ||
| + | |||
| + | Mit besten Grüssen aus dem Kontrollraum: | ||
| + | < | ||
| + | <dl> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | |||
| + | ## Notizen von 2026 für nächstes Jahr | ||
| + | * Versuchsanordnung Wassermenge / Druck / Höhenberechung | ||
| + | * funktioniert grundsätzlich, | ||
| + | * nächstes Jahr: | ||
| + | * Teil 1: mit vorgefertigtem Dataset Flug simulieren (jede:r einzeln, in Python) | ||
| + | * Ziel: Jeder kann die Formeln nachvollziehen | ||
| + | * Ziel: Jedes Team hat gute Diagramme. | ||
| + | * Teil 2: Daten sammeln, eigene Simulation | ||
| + | * mehr Wasser, weniger Druck (erste 300ms sind meist nicht erkennbar wegen des Schocks) | ||
| + | * z.B. 1-2bar atü, 1l Wasser | ||
| + | * ev. Wasser mit Lebensmittelfarbe einfärben | ||
| + | * Ziel: Datenerhebung selbst gemacht, mit allen Schwierigkeiten | ||
| + | * Ziel: Optimale Füllmenge berechnen. | ||
| + | * Idee gra@: | ||
| + | * Gamification des ganzen Prozesses: | ||
| + | * Team hat Gesamtbudget zur Verfügung. | ||
| + | * Kosten modellieren Ressourcen (Flaschen, Ducttape, Wasser, Launch) | ||
| + | * Erfolgreiche Launches erzielen Gewinn | ||
| + | * Ziele: | ||
| + | * Spass | ||
| + | * haushälterischer Umgang mit Ressourcen | ||
| + | * Project Management in Challenge integrieren | ||
| + | * 3D-Modelle von Leon Sieber & Sean Buck | ||
| + | * {{ : | ||
| + | |||
| + | |||
| ## Notizen aus der Planungsgruppe MINT-Woche 2026: | ## Notizen aus der Planungsgruppe MINT-Woche 2026: | ||
| * Wissenschaftliches Arbeiten: versuchen zu integrieren | * Wissenschaftliches Arbeiten: versuchen zu integrieren | ||
| Zeile 41: | Zeile 102: | ||
| * Formales (Text, nicht überladen, Quellen) | * Formales (Text, nicht überladen, Quellen) | ||
| * Auftritt (Haltung, Blickkontakt), | * Auftritt (Haltung, Blickkontakt), | ||
| + | |||
| Zeile 119: | Zeile 181: | ||
| ## Personen | ## Personen | ||
| * gra@, sca@, hof@, ev. sps@ | * gra@, sca@, hof@, ev. sps@ | ||
| + | |||
| ## Räume | ## Räume | ||
| * Zwei Räume (z.B. HR2.05 & HR2.06) | * Zwei Räume (z.B. HR2.05 & HR2.06) | ||
| + | |||
| ## Material | ## Material | ||
| Zeile 139: | Zeile 203: | ||
| * 8 Microbits, davon 4 mit 2*AAA-Batteriefach. | * 8 Microbits, davon 4 mit 2*AAA-Batteriefach. | ||
| * Arduino | * Arduino | ||
| + | |||
| + | |||
| + | ## Code | ||
| + | |||
| + | ### Payload | ||
| + | <code python> | ||
| + | from microbit import * | ||
| + | import log | ||
| + | |||
| + | # The standard setting only allows accelerations up to 2g, we want 8g! | ||
| + | accelerometer.set_range(8) | ||
| + | |||
| + | # Initialize Altimeter | ||
| + | import bmp280 | ||
| + | alti = bmp280.BMP280() | ||
| + | |||
| + | def read_compass(): | ||
| + | return compass.get_x(), | ||
| + | |||
| + | LOGGING = False | ||
| + | START = 0 | ||
| + | # Set the timer to log data every 20 milliseconds (50 measurements per second) | ||
| + | @run_every(ms=20) | ||
| + | def log_single_row(): | ||
| + | print(" | ||
| + | if not LOGGING: | ||
| + | return | ||
| + | print(" | ||
| + | timestamp = time.ticks_ms() - START | ||
| + | # TODO: do nothing unless countdown has started! | ||
| + | record = {' | ||
| + | accel = dict(zip((' | ||
| + | bearing = dict(zip((' | ||
| + | record.update(accel) | ||
| + | record.update(bearing) | ||
| + | altitude = {' | ||
| + | record.update(altitude) | ||
| + | print(record) | ||
| + | log.add(record) | ||
| + | |||
| + | import time | ||
| + | |||
| + | def start_countdown(): | ||
| + | global LOGGING | ||
| + | global START | ||
| + | START = time.ticks_ms() | ||
| + | print(" | ||
| + | # Delete last log | ||
| + | log.delete() | ||
| + | # Define which columns we are going to log. | ||
| + | log.set_labels(' | ||
| + | LOGGING = True | ||
| + | |||
| + | def launch_abort(): | ||
| + | global LOGGING | ||
| + | print(" | ||
| + | LOGGING = False | ||
| + | |||
| + | import radio | ||
| + | radio.config(channel=42, | ||
| + | |||
| + | while True: | ||
| + | msg = radio.receive() | ||
| + | if msg == " | ||
| + | start_countdown() | ||
| + | elif msg == " | ||
| + | launch_abort() | ||
| + | sleep(100) | ||
| + | </ | ||
| + | |||
| + | ### Base Station | ||
| + | <code python> | ||
| + | from microbit import * | ||
| + | import radio | ||
| + | radio.config(channel=42, | ||
| + | |||
| + | while True: | ||
| + | if button_a.was_pressed(): | ||
| + | radio.send(" | ||
| + | elif button_b.was_pressed(): | ||
| + | radio.send(" | ||
| + | sleep(50) | ||
| + | </ | ||