Dies ist eine alte Version des Dokuments!


MEXLE2020 Modul : DummyName

Ersteller ???
letzte ÄnderungSommersemester 2019
KurzbeschreibungIn der Kurzbeschreibung soll
die wesentliche Funktion des Projekts in
einem Satz zusammengefasst werden

ACHTUNG! Für die Niederschrift bietet sich folgendes Vorgehen an:

  1. erst Bilder, Diagramme und Tabellen erstellen und den Kapiteln zuordnen
  2. dann mit dem Text beginnen!
  3. Auch Fehler dürfen beschrieben werden
  4. Es sollte soviel beschrieben werden, dass nachfolgende Studierende ohne Rückfragen Ihren Weg und Ziel nachvollziehen können.
  5. Keine Ich-Form, Emotionen vermeiden!

Hardwareübersicht

Sensor Platine DRV8835 MMC 32U4 MMC 328PB Power Supply Basisboard 3×2

Softwareübersicht

In diesem Projekt wurde die Platine mmc_1x1_328pb verwendet und programmiert.

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/

  1. void main () {
  2. printf ("Hello World!");
  3. exit 0;
  4. }

Erklärung zum Code:

  • exit 0; kann weggelassen werden.

Projektübersicht

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.

Nummer Projektziel Beschreibung Status Priorität
PH-01Platine herstellenSchaltplanerledigtmuss
PH-02Platine herstellenLayouterledigtmuss
PH-03Bewegungsmelder (PIR)Auslösesignal erhalten / Beschaffungerledigtmuss
PH-04Interne KameraKamera auslösenoffenKann
PH-05Speicherung der BilderSlot mit SD-Karte offenKann
PH-06Beleuchtung für NachtbilderIR Belechtungerledigtmuss
PH-07Anschluss SpiegelreflexkameraSelbstauslösererledigtmuss
PH-08Solarzellezusätl. Energieversorgungnicht mehr relevantausgenommen
PH-09DisplayAngabe der Auslöseanzahlnicht mehr relevantausgenommen
PH-10Zeitgesteuertes auslösenIm Programmcodeerledigtmuss
PH-11DokumentationHookup und gesamt Projekt auf Mexleerledigtmuss
PH-12LichtsteuerungErkennung von Tag und Nacht → Blitz / IR-Leuchtensteuerungerledigtmuss
PH-13Mikro-USBEnergieversorgung, μKontroller, IR-Beleuchtung, PIRerledigtmuss
PH-14Debugger LEDLED die auf der Platine verbaut ist und später beim Debuggen genutzt werden kannerledigt muss
PH-15Power LEDLED die Leuchtet, sobald die Powerversorgung stehterledigtmuss
  1. Wie wurde das Problem angegangen?
  2. Wieso wurden die genutzten Bauteile und Platinen (z.B. MMC_328PB) verwendet?
  1. hier nicht Schaltplan / Board darstellen, sondern in den Unterseiten.
  2. Auf was wurde bei der Systemauswahl Wert gelegt?
    Welche Hürden wurden genommen?
  1. Auf was wurde Wert gelegt?
    Welche Hürden wurden genommen?
  2. 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.
  1. Gab es Zwischenschritte / Zwischenergebnisse?
  2. Wurden Testplatinen und/oder Testkonzepte erstellt?

Kurzanleitung zu WaveDrom: https://observablehq.com/@drom/wavedrom-ark?collection=@drom/wavedrom

  1. Fazit für das gesamte System
  2. Verbesserungsvorschläge (Ausblick): Was könnte im Gesamtsystem noch umgesetzt werden?