Dies ist eine alte Version des Dokuments!
MEXLE2020 Modul : DummyName
Dummy-Bild
Source: Moyan Brenn @ Wikimedia.org
(CC BY 2.0 Lizenz)
Ersteller | ??? |
---|---|
letzte Änderung | Sommersemester 2019 |
Kurzbeschreibung | In der Kurzbeschreibung soll die wesentliche Funktion des Projekts in einem Satz zusammengefasst werden |
ACHTUNG! Für die Niederschrift bietet sich folgendes Vorgehen an:
- erst Bilder, Diagramme und Tabellen erstellen und den Kapiteln zuordnen
- dann mit dem Text beginnen!
- Auch Fehler dürfen beschrieben werden
- Es sollte soviel beschrieben werden, dass nachfolgende Studierende ohne Rückfragen Ihren Weg und Ziel nachvollziehen können.
- Keine Ich-Form, Emotionen vermeiden!
Hardwareübersicht
Neu erstellte Module
Softwareübersicht
In diesem Projekt wurde die Platine mmc_1x1_328pb verwendet und programmiert.
Blockbilder
Modulblockbild
<uml> [*] -right-> main
state „void main(void)“ as main {
state "Initialisierung" as main_Init main_Init -right-> Programmschleife : Wenn kein Fehler, dann state "Programmschleife" as Programmschleife { 10ms : springe zu input 100ms : springe zu calculate\nspringe zu was anderem 10ms -down-> input 100ms -down-> calculate }
}
state „void input(void)“ as input {
state "ADC initialisieren" as input1 state "irgendwas einlesen" as input2 input1 --> input2 input1 -left-> ADC_init
}
state „void ADC_init(void)“ as ADC_init { }
state „void calculate(void)“ as calculate { }
state „void init_calculate(void)“ as init_calculate { } calculate-->init_calculate </uml> <uml>
state „ISR(TWI_vect)“ as TWI_Interrupt {
state "I2C Status auslesen" as TWI1 state "Abhängig vom Status Dinge tun" as TWI2 TWI1 --> TWI2
}
</uml>
Tipps zum Chart-Plugin: http://plantuml.com/de/
Statemachine
<uml> [*] --> Init Init --> [*] State1 : this is a string State1 : this is another string
State1 --> State2 State2 --> [*] </uml>
Tipps zum Chart-Plugin: http://plantuml.com/de/
Erklärung zum Code:
exit 0;
kann weggelassen werden.
Projektübersicht
Aufgabenstellung/Problemstellung
Die Aufgabenstellung war eine kompakte Controllerplatine zu erstellen, welche als Basis für unterschiedlichste Projekte genutzt werden kann. Dabei sollte Wert auf Kompatibilität und größtmögliche Ausnutzung des verwendeten Microcontrollers werden.
Pflichtenheft
rowsheadersource_1_rowsvisible_1_float_right_tablesearch_1_tablesort_1
Nr. | Projektziel | Beschreibung | Status | Priorität |
---|---|---|---|---|
PH-01 | Motor wird angesteuert | Code implementiert, Elektronik funktionsfähig | erledigt | muss |
PH-02 | Joystick wird eingelesen | Layout | offen | soll |
PH-03 | Bewegungsablauf wird abgerufen | statt Joystick soll ein gespeicherter Bewegungsablauf auswählbar sein | erledigt | muss |
PH-04 | Kamera erzeugt Bilder | Kamera auslösen | offen | kann |
PH-05 | Speicherung der Bilder | Slot mit SD-Karte | nicht mehr relevant | ausgenommen |
Lösungsansatz
- Wie wurde das Problem angegangen?
- Wieso wurden die genutzten Bauteile und Platinen (z.B. MMC_328PB) verwendet?
Erstellung der Hardware
- hier nicht Schaltplan / Board darstellen, sondern in den Unterseiten.
- Auf was wurde bei der Systemauswahl Wert gelegt?
Welche Hürden wurden genommen?
Erstellung der Software
- Auf was wurde Wert gelegt?
Welche Hürden wurden genommen? - hier sollte auch der Code beschrieben werden, welcher nicht explizit für die genutzte Hardware notwendig ist. Also zum Beispiel bei Spielen, die Spielmechanik oder bei einer Wetterstation die Aufteilung auf dem Display. In beiden Beispielen wäre die Beschreibung der Bibliothek der Anzeige nicht hier, sondern im Software-Kapitel der Anzeigehardware zu beschreiben.
Überprüfung/Test
- Gab es Zwischenschritte / Zwischenergebnisse?
- Wurden Testplatinen und/oder Testkonzepte erstellt?
Kurzanleitung zu WaveDrom: https://observablehq.com/@drom/wavedrom-ark?collection=@drom/wavedrom
Resumee
- Fazit für das gesamte System
- Verbesserungsvorschläge (Ausblick): Was könnte im Gesamtsystem noch umgesetzt werden?