LCD/Taster

LCD/Taster

Abildung 1: Das Blockschaltbild für die LCD/Taster Gruppe

Bei der Abbildung 1 kann man das Blockschaltbild für die LCD/Taster Gruppe betrachten. Dabei wird ersichtlich, dass wir als Eingang zum Mikrocontroller mehrere Taster verwenden, welche das Menü ansteuern und damit auch grundsätzlich den Synthesizer. Zur Ausgabe nutzen wir ein LCD.

Das LCD kann unseres Erachtens nach als Schmuckstück des Synthesizers betrachtet werden. Für die Visualisierung der Funktionen haben wir uns für die Verwendung eines LCDs entschieden. Als Grundfundament, um mit der Materie direkt vertraut zu werden haben wir uns Internetseiten wie https://www.mikrocontroller.net angeschaut, damit uns das Programmieren des ATmega32 einfacher fällt.
Als LCD haben wir das LCD-PM 2×16-6 D benutzt:

Abbildung 2: Das LCD 16×2, das wir als Kleingruppe benutzt haben

Unsere Aufgabe war es mittels des ATmega32 das LCD anzusteuern. Direkt am Anfang musste man sich mit der Pinbelegung des ATmega32 vertraut machen. Daraufhin konnte mit dem Steckbrett die Verbindung (unten zu sehen) nachgebaut werden.
Zudem ist noch hinzuzufügen, dass wir ausschließlich mit 5V am Mikrocontroller arbeiten.

Abbildung 3: Schaltplan inklusive Pinbelegung mit dem ATmega32 und das LCD 16×2 im 4-Bit Modus

Mittels der IDE Atmel Studio 7.0 wurde der ATmega32 programmiert. Unsere Aufgabe als Kleingruppe war es zunächst auf dem LCD „Hello ProLab“ anzeigen zu lassen. Der Code, den wir erstellt haben, wurde nach dem Hinzufügen zusätzlicher Bibliotheken mehrmals ausgeführt, jedoch kam es bis zum 10.05.2019 noch zu keiner erfolgreichen Anzeige. Bei den Zusatzterminen am 14.05.2019 und am 15.05.2019 kamen wir zu einem Erfolg und konnten das LCD erfolgreich ansteuern (durch Veränderungen im Code und der Bibliothek). Schlussendlich konnten wir auch 6 Taster realisieren, welche vom Mikrocontroller beim draufdrücken erkannt wurden. Um zu sehen ob die Taster funktionieren haben wir zusätzlich 6 Dioden verschaltet.

Abbildung 4: Taster Test-Schaltung

Nachfolgend werden wir im folgenden Text den Ablauf der Schaltungsrealisierung und des Menüs beschreiben. Beim dritten Labortermin erfolgte die Gruppeneinteilung, sodass jede Kleingruppe eine bestimmte Aufgabe zum Lösen hatte. Die Aufgabe der Gruppe LCD/Taster, die aus Oumaima, Dogan und Shorif, mit freundlicher Unterstützung von Felix, besteht, ist es mit Hilfe des Mikrocontrollers das LCD zu steuern, sowie ein Menü mit Tastern zu realisieren. Als nächstes wurde beim vierten Labortermin (13.5) die Schaltung bestehend aus LCD/ Mikrocontroller/ Potentiometer und Drahtbrücken auf dem Steckbrett aufgebaut. Um die Schaltung zu testen, wurde ein Code implementiert, der „Hello Prolab“ auf dem LCD angezeigt hat. Beim fünften und sechsten Labortermin (14.5 und 15.5) wurde die schon aufgebaute Schaltung erweitert. 6 Taster wurden hinzugefügt, damit man ein Menü auf dem LCD realisieren kann. Beim siebten Labortermin (20.5) wurde die Schaltung mittels Eagle erstellt. Auch wurde die Grundstruktur des Menüs programmiert. Ab dem darauffolgenden Termin bis einschließlich dem letzten Termin am 8.7. wurden Optimierungsmaßnahmen durchgeführt.
Ein Plan für die Grundstruktur des Menüs ist in der folgenden Abbildung zu sehen:

Abbildung 5: Plan und Funktionsweise der Grundstruktur des Menüs

Nachfolgend werden im folgenden Text zunächst das Menü bzw. der Ablauf der Anzeige an das LCD erläutert, welche in der Abbildung 5 dargestellt wird. Anfangs kommt es zu einem Einführungssatz, welcher „Hallo Prolab!“ lautet. Daraufhin wechselt das LCD direkt automatisch in das Menü, welches zuerst in der ersten Zeile „Demo“ und in der zweiten Zeile „Komposition“ anzeigt. Leider konnte zunächst nur auf den Punkt „Demo“ zugegriffen werden.
Mit der untersten Kreuztaste gelangt man auf die Komposition und beim erneuten Drücken auf das Spiel. Zusätzlich kann mit der obersten Kreuztaste das Menü in Umgekehrter Reihenfolge durchlaufen werden. Anschließend wird auf die weiteren Unterpunkte eingegangen. Von der Demo aus, mit der Taste zum Bestätigen, kann auf 4 fest definierte Lieder mit jeweils 8 Tönen zugegriffen werden.
Unter dem Menüpunkt Komposition gelangt man auf 4 weitere Auswahlmöglichkeiten. Diese sind benannt als Komposition 1-4. Hier können Lieder komponiert und abgespeichert werden. Der Unterschied zur Demo ist auch, dass die 4 Kompositionen jederzeit mit neuen Liedern überschrieben werden können.
Die Komposition selbst erfolgt folgendermaßen: Nachdem man beispielsweise „Komp. 1“ bestätigt hat, kommt man auf eine Anzeige bei der die 4 ersten Noten der Komposition verändert werden können. Zudem ist immer ein Ausrufezeichen zu sehen, welches kennzeichnen soll, dass die auserwählte Note veränderbar ist. Dieses Ausrufezeichen kann von 1 bis 8 variiert werden. Aus Platzgründen konnten jedoch nicht alle 8 möglichen veränderbaren Noten angezeigt werden. Daher wurde das Problem mit einer Aufteilung der Noten gelöst. Als erstes sieht man die Noten 1-4, wird die rechte Kreuztaste gedrückt, gelangt man zu den Noten 5-8. Mit der linken Kreuztaste kommt man erneut zu den Noten 1-4. Soll eine Note geändert werden, geschieht es mit der oberen und unteren Kreuztaste.
Der letzte Menüpunkt ist das Spiel. Hier kann ganz einfach mit den Noten gespielt werden und dies geschieht folgendermaßen: In dem Synthesizer ist ein Infrarotsensor integriert, der abhängig von der Entfernung der Hand zum Infrarotsensor diese Entfernung in eine bestimmte Note übersetzt und diese anschließend auf das LCD ausgibt und speichert. Die gesamte Tonfolge wird zum Ende des Spiels in den Buffer eingereiht.

Die Taster, welche oben links in der Abbildung 5 dargestellt werden, wurden über die Verschaltungsmethode Active Low verschaltet, bei der, der mechanische Kontakt bzw. der Taster zwischen der Masse und dem Mikrocontroller liegt und der Widerstand zwischen der Versorgungsspannung und dem Mikrocontroller. Zudem ist es mit einem Pull-High Widerstand versehen, wie man beim folgenden Bild sehen kann:

Abbildung 6: Verschaltungsweise des Tasters

Nachdem die Versuchsschaltung bezüglich des Tasters und des LCDs nun funktioniert hat, wurde das Layout für die endgültige Schaltung erstellt. Davor musste aber noch das Eagle Schematic fertig gestellt werden, welches folgendermaßen aussah:

Abbildung 6: Eagle Schematic Abbildung

Abbildung 7: Front-Platine Eagle Board Top

Abbildung 8: Front-Platine Eagle Board Bottom

Hier sehen wir die komplette Schaltung für das Menü und den Taster:

Abbildung 9: Finale Front-Platine

Bauteilwerte:

  • Widerstände an der LED-Simulation: 680 Ω
  • Widerstände an den Tastern: 10 kΩ
  • Entkoppelkondensator: 100 nF
  • Potentiometer: 10 kΩ

Wir kamen dadurch auf folgende Abmessungen die für das Organisationsamt „Gehäuse“ von Relevanz waren:

Ablldung 10: Die Abmessungen der Platine

Nachdem die Platine von der Werkstatt bei uns eingereicht wurde und wir alle benötigten geplanten Bauteile auf die Platine aufgelötet haben, ergaben sich einige Komplikationen, wie beispielsweise die selbst verbauten Kurzschlüsse beim Löten und kalte Lötstellen. Auch das Setzen von Programmierschnittstellen an falschen Leiterbahnen hat dazu geführt, dass die Schaltungen anfangs nicht funktionierten und diverse Fehler beziehungsweise keine Reaktionen vorwiesen. Diese konnten anschließend jedoch noch durch erneutes Löten behoben werden, da es an einigen Stellen zu Kurzschlüssen kam.

Folgende Methoden wurden implementiert:

  • uint8t MENU1(void)
  • uint8t MENU2(void)
  • uint8t MENU3(void)
  • void Selected(void)
  • void DEMO1(void)
  • void DEMO2(void)
  • void DEMO3(void)
  • void DEMO4(void)
  • void KOMP1(void)
  • void KOMP2(void)
  • void KOMP3(void)
  • void Umwandler(uint8t Zahl)
  • void PrintUpdatedPosition(uint8t lastPosition, uint8t actualPosition)
  • void printFirst4(uint8t zahl1, uint8t zahl2, uint8t zahl3, uint8t zahl4)
  • void ModifyKomp(uint8t Komp)
  • void PrintDistance(uint8t distance)
  • void Spiel(void)
  • void NamePrinter(char* Name1, char* Name2)
  • void InitKomp(void

Der Code ist im Codeverzeichnis zu sehen.

Zusammenfassung

Zusammenfassend, kann man sagen, dass die Teilgruppe LCD/Taster ihre Aufgabe rechtzeitig zu einem gelungenen Abschluss gebracht hat. Das LCD konnte mittels des Mikrocontrollers angesteuert werden, das Menü wurde realisiert und die Optionen darin konnten beim Drücken der verschiedenen Taster ausgewählt werden. Darüber hinaus wurden das Eagle-Schematic und das Layout für die Platine erfolgreich erstellt. Nachdem jedoch die Platine von der Werkstatt fertiggestellt wurde, traten zahlreiche Probleme auf, die auf Kurzschlüsse beim Löten zurückzuführen sind. Außerdem hat man etliche Fehler beim Code entdeckt, da Ein- und Ausgänge falsch benutzt wurden. Zudem wurde die ISP-Schnittstelle, welche zur Programmierung des Mikrocontrollers verwendet wurde intern falsch verdrahtet. Diese Fehler konnte man aber wieder korrigieren. Anschließend lässt sich also sagen, dass die Teilgruppe ihre vorgenommenen Ziele erreicht hat.

Neueste Beiträge

Projekt Synthaffäre

Was ist das Projektlabor ? 
Die Studierenden realisieren ein selbst ausgedachtes und gewähltes elektronisches Projekt. In Kleingruppen aufgeteilt bearbeiten sie selbständig Teile des Projekts unter Anleitung der Betreuer und erlernen dabei auch Grundlagen des Projektmanage-
ments.
Die einzelnen Schaltungen der Gruppen werden durch selbst definierte Schnittstellen miteinander verbunden. Diese sollen dann gemeinsam funktionieren und zusammen ein Gerät bilden. Fehlende Kenntnisse zum Bau des Geräts werden während des Semesters erworben. Außerdem können und sollen sich die Kenntnisse der TeilnehmerInnen in den Arbeitsgruppen ergänzen.
Das Projektlabor umfasst 6 SWS, in denen der Umgang mit den Programmen LTspice und Eagle, das Entwickeln von Schaltungen, das praktische Arbeiten an Schaltungen, Platinendesign und der Einsatz von Messgeräten zur Fehlerbestimmung erlernt werden sollen.

https://www.projektlabor.tu-berlin.de/menue/home/

Das Projektlabor SS2019

Herzlich willkommen auf unserer Projektlabor-Seite. In diesem Semester wird das  Projekt Synthaffäre umgesetzt . Um das zu erreichen sind wir in 4 großen Gruppen aufgeteilt und jede Gruppe in 3-6 Kleingruppen aufgeteilt.
Dabei handelt es sich um einen Synthesizer – ein Musikinstrument.
Der Synthesizer ist dazu in der Lage auf elektronischem Weg auf analoger oder digitaler Basis Klänge zu erzeugen  und diese weiterzuverarbeiten. Er ist eines der zentralen Werkzeuge in der Produktion elektronischer Musik insbesondere für Musikstile wie House, Techno oder Drum and Bass.
Hier können Sie den Verlauf der Entwicklung des Synthesizers kennenlernen. Darüber hinaus  sind hier noch  verwendete Schaltungen, Bilder des Arbeitsprozesses, Codes und Vieles mehr zu finden .

 

Wichtige Termine und Friste für das Projektlabor :

1. Abgabefrist fur den Abschlussbericht : 1.Juli

2. Abschlusspräsentation : 11.Juli um 16:00 Uhr im E020