**Dies ist eine alte Version des Dokuments!**
Arduino Projekte
- selbst gewähltes Arduino Projekt
- in 1-2er Gruppen, keine 3er Gruppen
Timeline
- Projekt finden: mit LP besprechen und absegnen lassen
- GitHub
- neues Repo erstellen für Projekt …
- … mit passendem Namen
- LP freigeben (anschae)
- Zwei Markdown-Dokumente (siehe unten) darin erstellen: projektbeschreibung.md und dokumentation.md
- Projektbeschreibung:
- siehe Details unten
- Abgabe ASAP: schicke Link zu Dokument per Teams an sca)
- muss von LP abgesegnet werden für weiteres Arbeiten
- Umsetzung Projekt:
- Planen, Hardware bestellen, Coden, …
- Mit Dokumentation beginnen, v.a.
- Regelmässige Commits & Pushes, Fortschritt auf hardwareebene mit Fotos auf GitHub dokumentieren → fliesst in Bewertung der Dokumentation ein
- Dokumentation finalisieren
- Abgabe:
- Dokumentation (Link zu Dokument und Abgabebestätigung per Teams an sca) und Hardware (an sca persönlich) …
- bis spätestens zur angegebenen Deadline
- Verspätete Abgaben: -0.25 Note pro angebrochene 24h Verspätung
- Gut begründet ist auch eine spätere Abgabe möglich. Dies muss bis spätestens zwei Wochen vor der Deadline mit sca abgesprochen werden.
Bestellungen
Von folgenden Anbietern kann über Herr Philippe Mussoi bestellt werden:
- https://jlcpcb.com/ (Printplatten)
Fülle dazu die folgende Excel-Tabelle aus und schicke diese komplett ausgefüllt an krmsp@ksr.ch
Dokumente
- Dokumente im Markdown-Format (.md), ordentlich formatiert und direkt im GitHub-Repo
- Erstelle dazu drei Dokumente:
- projektbeschreibung.md
- dokumentation.md
- Markdown:
- Dokumente aufs Wesentlichste reduzieren („So kurz wie möglich, so lang wie nötig.“).
Dok 1: Projektbeschreibung
- Inhalt:
- Abstract (das wichtigste in wenigen Sätzen)
- Projekt im Detail:
- Beschreibung des Projekts in mehr Detail
- Muss: Welche Features müssen zwingend umgesetzt werden?
- Optional: Welche Features sind optional falls gut in Zeit?
- Zeitplan:
- Tabelle
- Bis wann soll was erledigt sein
- Skizze:
- Skizze der Hardware, am einfachsten von Hand, binde Bild im .md-File ein
- Kostenabschätzung:
- Zusammenstellung der ungefähren Kosten
- Auflistung der speziellen Komponenten mit Preis und Link
- Günstige Standard-Komponenten (Widerstände, Drähte, LED,…) können vernachlässigt werden
Dok 2: Dokumentation
- Inhalt von Projektbeschreibung kann schamlos kopiert und angepasst werden.
- Inhalt:
- Abstract (das wichtigste in wenigen Sätzen)
- Projekt im Detail:
- Beschreibung des Projekts in mehr Detail
- Welche Features wurden umgesetzt?
- Hardware: Beschreibung der wichtigsten Hardware inkl. Fotos
- Software: Wichtigste Überlegungen hinter Code; wie ist er strukturiert? (kurz und bündig)
- Entwicklung Hardware:
- Dokumentiere Entwicklungsprozess der Hardware fortlaufend
- Füge Bilder hinzu, Text optional
- allfällige Pläne, CAD-Designs usw. müssen ebenfalls hier dokumentiert werden.
- muss in real time upgedated werden
- auch Fehlversuche müssen dokumentiert werden
- Diskussion & Reflexion:
- Was hat gut geklappt, was weniger?
- Was würdest du anders machen?
- Wie könnte erweitern?
- Code: gesamter Code
Hardware & Kosten
- Es muss nicht zwingend ein Arduino Uno verwendet werden. Alternativen: Arduino Micro, ESP, … Es muss einfach mit der Arduino IDE und C++ programmiert werden.
- Bestellungen müssen mit sca abgesprochen und dann bei Philippe Mussoi aufgegeben werden.
- Jede:r Schüler:in hat im Normalfall ein Budget von 50 Fr. (100 Fr. TALITs).
- Zusätzliche Kosten müssen selbst übernommen werden, falls Projekte nachhause genommen werden wollen.
- Projekte, die für die Schule entwickelt werden, werden vollumfänglich übernommen.
Bewertung
max. Punkte | |
---|---|
Dok 1: Projektdokumenation (Inhalt, Formales, Sprache) | 3 |
Umsetzung Hardware (†) - Funktionstüchtigkeit - Selbständigkeit - sauberes Arbeiten - Schwierigkeitsgrad & Umfang - Design & Ästhetik | 10 |
Umsetzung Software - Funktionstüchtigkeit - Selbständigkeit - Programmierstil - Schwierigkeitsgrad & Umfang - Merkpunkte guter Code (siehe unten) | 10 |
Dok 2: Dokumentation (Inhalt, Formales, Sprache, Prozess) | 7 |
- †: Für längere Projektarbeiten (typischerweise für TALITs) wird im Normalfall (Ausnahmen mit LP besprechen) erwartet, dass das Produkt nicht als Prototyp, sondern fest verdrahtet und verlötet abgegeben wird.
- Max. Punktzahl: 30
- 6er ab 28 Punkten
- unterhalb lineare Notenskala
- Punkte für Umsetzung Hardware & Software auch anders möglich (insg. 20 Pkt), spreche im Vorfeld mit sca ab.
Merkpunkte guter Code
- Lesbarkeit
- Kommentare (alles was nicht offensichtlich ist kurz kommentieren, aber keine offensichtlichen Kommentare a la „This is a for-loop.“)
- sinnvolle & einheitliche Benennung Variablen, Funktionen, Klassen, …
- Einhalten der wichtigsten Stylevorschriften:
- Gross vs. Klein: lowerCamelCase, CamelCase, CONSTANTS, …
- Komplexere Funktionen müssen kommentiert werden: Was macht sie? Welche Parameter verlangt sie? Was gibt sie zurück?
- OOP (falls sinnvoll, nur TALITs)