Raspberry Pi und Python – Workshop 2017/19

Raspberry-  und Python-Workshop für Anfänger

Am 11. November 2017 haben wir mit unserem neuen Workshop im Wasserhaus begonnen.
Wir lernen in kooperativer Atmosphäre, was man derzeit mit dem Raspberry Pi so alles machen kann.
Hierbei steigen wir praxisorientiert in die angewandte Informatik mit der Programmiersprache Python ein.
Wir beschäftigen uns dabei mit Fragestellungen aus dem MINT-Bereich und speziell aus dem Amateurfunk.

Wir sind ein gemischtes Team aus jungen und älteren Technikbegeisterten.

Bild DM4ZZ: Jung und Alt in konstruktiver Atmosphäre.

Die vorläufige Planung sieht die unten aufgeführten Themen vor.

Der Plan wird sich im Fortgang noch ändern.

Termin Lerninhalte
2017
11.11.
  • Zusammenbau vom Raspberry Pi
  • Installation des Betriebssystems Raspbian
  • Die in Raspbian vorinstallierten Anwendungen erkunden
  • Umgang mit der Büroanwendung
  • Weitere wichtige Anwendungen – Dateimanager, Internet-Explorer, Editor, Kommandofenster etc.
  • Die integrierte Entwicklungsumgebung für Pythonprogramme (IDLE)
18.11.
  • Installation von Python auf Laptop.
  • Die Entwicklungsumgebung für Pythonprogramme.
  • Die Entwicklungsumgebung als einfacher Taschenrechner.
  • Erste kleine Pythonprogramme schreiben und ausführen.
  • Die sklaren Datentypen von Python
  • Datenausgabe in die Konsole
25.11.
  • Operatoren für Arithmetik, Addition, Subtraktion, Multiplikation, Division
  • Computeranwendungen Apps
  • Das Ohmsche Gesetz – Spannung, Widerstand, Strom
  • Serienschaltung von Widerstände
  • MINT-Themen: Ohm’sches Gesetz
02.12
  • Leitfähigkeit
  • Parallelschaltung von Widerständen
  • MINT-Themen: Ohm’sches Gesetz
09.12.
  • Parallelschaltung von Widerständen
  • Das Leistungsgesetz
16.12.
  • Das Leistungsgesetz
  • Potenzierung
  • MINT-Themen: Geometrie (Rechteck, Quadrat, Kreis, Kugel), lineare Gleichung, quadratische Gleichung, Zinseszins,  Verzinsungsplan, Tilgungsplan, Rentenberechnung
23.12.
  • Potenzierung – vertiefen
  • MINT-Themen: Geometrie (Rechteck, Quadrat, Kreis, Kugel), lineare Gleichung, quadratische Gleichung, Zinseszins,  Verzinsungsplan, Tilgungsplan, Rentenberechnung
30.12.
  • Operatoren für Vergleiche.
  • Operatoren für logische Verknüpfungen.
  • Die Ablaufkonstrukte von Python
  • Verarbeitung
  • Folge
  • Bedingte Verarbeitung
  • Einfache Alternative
  • Mehrfachalternative
  • Zählende Wiederholung – geschlossene Wiederholung
  • Offene Wiederholung
  • MINT-Themen: Geometrie (Rechteck, Quadrat, Kreis, Kugel), lineare Gleichung, quadratische Gleichung, Zinseszins,  Verzinsungsplan, Tilgungsplan, Rentenberechnung
2018
27.01
Wiederholung des bisher Gerlernten

  • Formatieren der Konsolausgabe
  • Zeitmessung bei der Programmausführung
  • MINT-Themen:  Sparplan, Tilgungsplan, Rentenberechnung
03.02
  • Lokale und globale Variablen
  • Unterprogramme, Methoden, Prozeduren, Funktionen
  • Eingabe über Konsole
  • Textdatei schreiben und lesen
  • Ausnahmen und Unterbrechungsbehandlung
  • MINT-Themen: Zinsberechnung, Zinseszins
10.02.
  • Unterprogramme, Methoden, Prozeduren, Funktionen
  • Argument-/Parameter-Mechanismen
  • MINT-Themen:  Zinsberechnung, Zinseszins, Inflation
17.02.
  • Unterprogramme, Methoden, Prozeduren, Funktionen
  • Globale und lokale Variablen, Namensräume
  • Systematische Entwicklung komplexerer Programme
  • MINT-Themen:  Zinsberechnung, Zinseszins, Inflation, Lebensstandard, Sparplan, Auszahlungsplan
24.02.
  • Optimal strukturierte Programme – schmale Schnittstellen
  • Datentypen: Skalar, Liste, Tupel, Dictionary
  • MINT-Themen:  Zinsberechnung, Serienschaltung und Parallelschaltung von Widerständen
10.03.
  • Datentypen: Skalar, Liste, Tupel, Dictionary
  • MINT-Themen:  Ohm’scher Widerstand, Leitwert, Serienschaltung und Parallelschaltung von Widerständen
17.03.
  • Datentypen: Skalar, Liste, Tupel, Dictionary
  • MINT-Themen:  Ohm’scher Widerstand, Leitwert, Serienschaltung und Parallelschaltung von Widerständen
24.03.
  • Objektorientierung – Objekt, Klasse, Methode, Attribut
  • Interne Klasse
  • Modul
  • Externe Klasse
  • Unified Modeling Language (UML)
  • MINT-Themen:  Ohmsches Gesetz, Induktivitätsberechnung, Resonanzfrequenz, Thomsonsche Schwingungsformel
07.04.
  • Objektorientierung – Objekt, Klasse, Methode, Attribut
  • Objektattribut und Objektmethode
  • Klassenattribut, Klassenmethode, statische Methode
  • Unified Modeling Language (UML)
  • MINT-Themen:  Ohmsches Gesetz, Induktivitätsberechnung, Resonanzfrequenz, Thomsonsche Schwingungsformel
14.04.
  • Objektorientierung
  • Vererbung, einfache und mehrfache
  • Modul als Paket für externe Klassen
  • Externe Klasse
  • Überschreiben und überladen von Methoden
  • Unified Modeling Language (UML)
  • MINT-Themen:  Die Miniwelt Schule:  Schüler, Lehrer, Fach
21.04.
  • Grafische Benutzeroberfläche – GUI – Einführung
  • Softwareergonomie und Benutzerfreundlichkeit
  • GUI – Oberflächengestaltungselemente
  • Fenster, Label, Entry, Button, Checkbox, Radiobutton
28.04.
  • Vererbung
  • Module als Pakete für externe Klassen
  • MINT-Themen:  Die Miniwelt Schule:  Schüler, Lehrer, Fach
05.05.
  • Mehrfachvererbung
  • Mehrstufige Vererbung
  • Generalisierung, Spezialisierung
  • Modellierung von Modulen, Klassen und Vererbung mit UML (Unified Modeling Language)
  • Zugriffspfade des import-Befehls
  • Überladen und überschreiben von Methoden, Polymorphie
12.05.
  • GUI – Vertiefung
  • GUI – Oberflächengestaltungselemente
19.05.
  • GUI – Vertiefung
  • GUI – Oberflächengestaltungselemente
  • Geometrie-Manager pack und grid
  • MINT-Themen:  Ohm’sches Gesetz
26.05.
  • GUI – Vertiefung
  • GUI – Oberflächengestaltungselemente
  • Geometrie-Manager pack, grid und place
  • Ereignisse und deren Behandlung
  • Schieberegler und Meldungsfenster
  • MINT-Themen:  Bildausgabe
02.06.
  • GUI – Vertiefung
  • GUI – Oberflächengestaltungselemente
  • Geometrie-Manager pack, grid und place
  • Ereignisse und deren Behandlung
23.06.
  • GUI – Vertiefung
  • Ereignisse und deren Behandlung
  • Schieberegler und Meldungsfenster
  • MINT-Themen:  Bildausgabe
30.06.
  • GUI – Vertiefung
  • Große Text mit Schieberegler
  • Große Bilder mit Schieberegler
  • MINT-Themen:  Bildausgabe
07.07.
  • GUI Vertiefung
  • Schieberegler und Zahlauswähler
  • GUI – Menü
  • GUI – Menüstrukturen
  • GUI – Meldungsfenster
14.07.
  • GUI – Zeichnungsfläche
  • GUI – Grafikkonstrukte in Zeichnungsfläche – Canvas
  • Linie, Rechteck, Kreis
  • MINT-Themen:  Strahlensatz
21.07.
  • GUI – Zeichnungsfläche
  • GUI – Grafikkonstrukte in Zeichnungsfläche – Canvas
  • Linie, Rechteck, Kreis
  • GUI – Sinus und Cosinus in Zeichnungsfläche
  • MINT-Themen:  Strahlensatz, Sinus, Cosinus, Grad, Rad
28.07.
  • GUI – Zeichnungsfläche
  • GUI – Grafikkonstrukte in Zeichnungsfläche – Canvas
  • Optimierte Programmstruktur
  • Bewegte Grafik
  • MINT-Themen:  Sinus, Cosinus, Grad, Rad
01.09.
  • GUI – Zeichnungsfläche – Wiederholung
  • GUI – Grafikkonstrukte in Zeichnungsfläche
15.09.
  • GUI – Bewegte Grafik – Sinus und Cosinus im Kreis
  • GUI – Turtelgrafik – Rekursion
  • MINT-Themen: Winkelfunktionen Sinus, Cosinus, Tangens, Arcussinus, Arcuscosinus, Arcustangens
22.09.
  • GUI – Zeichnungsfläche – Wiederholung
  • GUI – Sinus und Cosinus im Kreis und als Welle
  • MINT-Themen: Winkelfunktionen Sinus, Cosinus, Tangens, Arcussinus, Arcuscosinus, Arcustangens
29.09.
  • GUI – Zeichnungsfläche
  • GUI – Sinus und Cosinus im Kreis und als Welle
  • GUI – Turtelgrafik
  • GUI – Zeitausgabe – analoger Zeiger – digitale Zahl
06.10.
  • Relationales Datenbankmodell
  • Datenbankmodellierung mit UML – Schüler, Lehrer, Fach
  • SQL – Datenbank SQLite
13.10.
  • Relationales Datenbankmodell
  • Datenbankmodellierung mit UML – Schüler, Lehrer, Fach
  • Das Entitäts-Beziehungs-Modell
  • Das relationale Datenbank-Modell
  • Relatoren und bool’sche Operatoren
  • Mengenoperatoren
  • SQL – Datenbank SQLite
20.10.
  • Relationales Datenbankmodell
  • Datenbankmodellierung mit UML
  • Die dynamischen Datentypen von SQLite
  • Relatoren und bool’sche Operatoren – skalare Prädikate
  • Wörterbuch für Englisch, Deutsch, Französisch
27.10.
  • Datenbankmodellierung mit UML,  zweiseitige Beziehungen
  • Primärschlüssel und Fremdschlüssel
  • Einschränkungen – constraints  – NOT NULL
  • Mengenprädikate IN, BETWEEN, LIKE
  • Einfache Verbunde
  • Haupt- und Unteranfrage – Einführung
03.11.
  • Datenbankmodellierung mit UML, zweiseitige Beziehungen
  • Primärschlüssel und Fremdschlüssel in SQLite
  • Einschränkungen – constraints – Einführung
  • Innerer Verbund in SQLite
  • Klassen- und Schülertabelle
10.11.
  • Primärschlüssel in SQLite, RowId, AUTOINCREMENT
  • Einschränkungen – constraints – Primärschlüssel, Fremdschlüssel, nicht unbekannt, Einmaligkeit
  • Verbunde in SQLite – Eigenverbund, Kreuzprodukt, Gleichheitsverbund, innerer Verbund, linker äußerer Verbund
  • Zweiseitige Viele-zu-Viele-Beziehung
  • Wörterbuch für Englisch, und Deutsch mit Viele-zu-Viele-Beziehung
17.11.
  • Wörterbuch für Englisch, und Deutsch mit Viele-zu-Viele-Beziehung
  • Stationstagebuch eines Kurzwellenhörers
  • Synonyme-Wörterbuch
24.11.
  • Wörterbuch für Englisch, und Deutsch mit Viele-zu-Viele-Beziehung
  • Stationstagebuch eines Kurzwellenhörers
  • Synonyme-Wörterbuch
01.12.
  • Gesamtschau auf den SELECT-Befehl, Projektion, Selektion, Gruppierung, Sortierung
  • Ausdrücke in SQLite
  • Eingebaute Spalten- und Skalar-Funktionen in SQLite
  • Datums- und Zeitarithmetik
  • Mengenoperatoren Vereinigungsmenge, Schnittmenge, Differenzmenge
  • Externe Sicht auf Datenbank: VIEW
  • Miniwelt Schule – von der Idee zur Lösung
  • Vielseitige Beziehungen
08.12.
  • Drei-Ebenen-Architektur – Benutzeroberfläche, Geschäftslogik, Datenhaltung
  • Pflege des Datenbankkatalogs (Metadatenverzeichnis), DROP, CREATE, ALTER, SELECT
  • Eingebaute Funktionen für Datum und Zeit
  • Datums- und Zeitarithmetik
  • Miniwelt Schule – von der Idee zur Lösung
15.12.
  • Gesamtschau des bisher Gelernten
  • Miniwelt Schule – von der Idee zur Lösung
  • Vielseitige Beziehungen
22.12.
  • Drei-Ebenen-Architektur – Benutzeroberfläche, Geschäftslogik, Datenhaltung
  • Verbindung der drei Ebenen mit Objekten – umfangreiche Applikation
  • Miniwelt Schule – von der Idee zur Lösung
  • GUI mit Tkinter, Geschäftslogik mit Python, Datenbanklogik mit SQLite
29.12.
  • Drei-Ebenen-Architektur – Benutzeroberfläche, Geschäftslogik, Datenhaltung
  • Verbindung der drei Ebenen mit Objekten – umfangreiche Applikation
  • Gesamtschau des bisher Gelernten
  • Miniwelt Schule – von der Idee zur Lösung
  • GUI mit Tkinter, Geschäftslogik mit Python, Datenbanklogik mit SQLite
2019
26.01.
GPIO – Steuerung externer Geräte – Piface Digital 2

  • Piface Digital 2 Hardware
  • LED – elektrische Eigenschaften
  • MINT: LEDs aufbauen und testen
02.02. GPIO – Steuerung externer Geräte – Piface Digital 2

  • Piface Digital 2 Hardware – Bausteine und ihre Funktionen
  • Piface – Programmierung mit Python
  • MINT: LEDs aufbauen und testen
09.02. GPIO – Steuerung externer Geräte – Piface Digital 2

  • Piface Digital 2 Hardware – Bausteine und ihre Funktionen
  • Piface – Programmierung mit Python
  • MINT: LEDs aufbauen und testen
16.02. GPIO – Steuerung externer Geräte – Piface Digital 2

  • Piface – Programmierung mit Python
  • Ansteuerung einer Lichterkette mit Python
  • MINT: LEDs einer Lichterkette programmieren
23.02. GPIO – Steuerung externer Geräte – Piface Digital 2

  • Piface – Programmierung mit Python
  • Ansteuerung von Relais (Aktoren) mit Python
  • Ansteuerung von Elektromotoren
  • Ansteuerung von Sensoren mit Python
  • MINT: Relais schalten, Sensoren auslesen, Motoren steuern
02.03. GPIO – Steuerung externer Geräte – Gertboard
09.03. GPIO – Steuerung externer Geräte – Gertboard
16.03. GPIO – Steuerung externer Geräte – Gertboard
23.03. GPIO – Steuerung externer Geräte – Gertboard
2019
  • Neuronale Netze
2019
  • Neuronale Netze
2019
  • Neuronale Netze
2019
  • Neuronale Netze
2019
  • Neuronale Netze
2019
  • Neuronale Netze
Ende des Workshops