Home  Service  Projekte  Software  Referenzen  Galerie  Kontakt
  Projekte

Sie finden in dieser Liste alle meine privaten Projekte mit Beschreibung und teilweise auch mit Bildern, Videos und/oder Links zu weiterführenden Seiten.

Sie haben Fragen zu einer bestimmten Projekt oder planen etwas ähnliches? - Fragen Sie mich einfach zu dem entsprechenden Projekt an mit einem Klick auf den Fragen-Button.

➥ Status: fertig (gestartet: 2020-06)
Anfertigung einer Garderobe mit LED-Beleuchtung und Bewegungsmelder

Im Zuge eines Umzuges habe ich eine neue Garderobe angefertigt. Da gängige Gaderoben für Jacken immer recht teuer sind, jedoch trotzem recht einfach gehalten sind, habe ich mich dazu entschlossen, selbst eine zu bauen. Passgenau mit einem Meter Länge wurde Buchenholze mit Kupfer kombiniert, das Kupfernveleiht dem Ganzen einen Hauch "Vintage". Hinzu kommt eine praktische LED-Beleuchtung mit einem Bewegungsmelder. Dieser lässt sich über einen Schalter ein- und ausschalten, sowie die Einstellung der Lichtempfindlichkeit und Einschaltdauer.


 59
 49
 45
 65
 87
 53
6 Bild(er) verfügbar


0 Kommentare

➥ Status: gestartet (gestartet: 2019-10)
Erweiterung LED-Bar mit NodeRed auf Basis des RaspberryPi

Da ich noch einen RaspberryPi Model B Revision 2.0 von 2011 übrig hatte, habe ich mir gedacht, man könnte diesen doch verwenden, um meine kürzlich gebaute LED-Bar zu erweitern. Ich habe mich dabei auf die IoT OpenSource-Plattform NodeRed entschieden. Diese Umgebung basiert auf der Programmiersprache NodeJS und bietet vielseitige Netzwerkschnittstellen mit Erweiterungsmöglichkeiten, siehe auch unter https://nodered.org. Programmiert wird hier grafisch mittels "Flows", der Inhalt des Nachrichtenflows kann zudem über JavaScript beliebig modifiziert werden. Zudem läuft das Ganze ziemlich zügig auf dem Pi, da die Umgebung mit mehreren Threads arbeitet. Außerdem gibt es hier schon viele Anwendungsbeispiele.

Ich musste für die ganze Aktion in der Firmware meiner LED-Bar den Remote-Modus etwas erweitern, so dass eingehende ASCII-Zeichen via UDP direkt verarbeitet werden können. Zudem lassen sich jetzt auch mehr als 10 Zeichen darstellen (max. 48), in dem der Text in einer einstellbaren Geschwindigkeit (Drehpoti) durchrollt, dann sieht's auch schöner aus :-D. Auch den ASCII-Befehlssatz der LED-Module musste ich anpassen, die ATiny-Controller sind jetzt zu 99% voll belegt ;-). Es passten leider nur Großbuchstaben + Sonderzeichen rein.

Der RasPi soll später verschiedene Informationen zyklisch aus dem Netz holen, wie z.B. lokale Wetternformationen und Top-Nachrichten (Newsticker) usw. Mit beiden Punkten habe ich schon begonnen. Das Wetter ist eine einfach Geschichte, da es dafür schon fertige Module gibt. Für die Nachrichten wollte ich eigentlich RSS Feed von beliebigen Nachrichtenprotalen einlesen, das Modul dafür ist von der Funktionalität her etwas schwach. Deswegen leses ich die XML RSS Feed direkt über ein HTTP-Request ein und Parse die Daten, mal sehen, was dabei raus kommt ;-)

 216
 234
 264
 204
4 Bild(er) verfügbar


0 Kommentare

➥ Status: fertig (gestartet: 2018-11)
LED Ansteuerung via AVR-NET-IO und TCP/IP
Ich dachte mir, es wäre wieder mal cool, etwas mit LEDs zu machen. Anspruchsvoller ist hier die Ansteuerung von LED-Matrix-Modulen, da man damit auch tolle Effekte umsetzten kann. Hier möchte ich gerne die Ansteuerung über Netzwerk (TCP/IP) umsetzen. Dafür benötigt man natürlich eine Basis mit Microcontroller + Netzwerkcontroller. Diese Basis bietet mir hier der kostengünstige Bausatz AVR-NET-IO von Pollin (www.pollin.de) mit einem ATMEGA32 Prozessor sowie ein ENC28J60 Netzwerk-Controller. Diesen Missbrauche ich als Entwicklungsumgebung.
Ich habe bereits angefangen, eine neue Firmware aufzubauen. Basis dafür fand ich auf der Homepage von Ulrich Radig (https://www.ulrichradig.de). Die Softwarestruktur bietet viele Anpassungsmöglichkeiten. Die Basisdienste TCP/IP, ICMP, DHCP, UDP, ARP und NTP laufen bereits. Eine entsprechende Client-Software muss noch aufgebaut werden sowie eine LC-Diplay wird noch eingebunden zwecks zusätzlicher Diagnose und Menüführung - Die Arbeit geht also nicht aus :-)

Die Firmware kann auch via UART kommunizieren. Dies Kommunikation wird jeodch später genutzt, um die einzelnen LED-Module als "Bus" Seriell aanzusteuern. Hier gibt es ebenfalls Anregungen von Ulrich Radig. Die Idee ist hier, einzelne Adapter-Module aufzubauen, welche jeweils einen günstigen ATiny2313 beinhalten. Die Module wurden von mir bereits etwas verbessert, neu gelayoutet und beauftragt. Das LED-Matrix Module (5x7) wird drauf aufgelötet. Wenn diese Trägermodule bei mir angekommen sind, kann ich beginnen, die Ansteuerung der LEDs zu testen :-). Geplant ist zunächst eine Laufschrift, welche mir die aktuelle Zeit via NTP ausgibt.
 92
 74
 89
 75
 78
 76
 69
 80
 78
 79
 85
 70
 82
 63
 98
 81
 67
 73
 92
 74
20 Bild(er) verfügbar


➥ Kommentar [2019-07-15 12:26:42] Fertigstellung und erste Praxistauglichkeit
Ich habe wieder etwas Zeit gefunden, um an diesem Projekt weiterzuarbeiten. Ich habe das Problem mit der Mode-Umschaltung der einzelnen Segment-Einheiten gelöst, die Quelle lässt sich jetzt vom Controller auf Daten via UDP-Telegramm umschalten. Somit kann nun über AVR/UART kommuniziert werden oder von einem externen Programm via UDP/IP. Ich habe zudem noch einige Modi im AVR hinzugefügt, um einige Effekte darzustellen zu können - Problematisch war hier immer etwas die Programm-Delay-Zeit. Es wird z.B. nun auch ein Mikrofon-Signal ausgewertet. Damit lassen sich akustisch-visuelle Effekte darstellen. Auch eine LED-Beleuchtung mit externem Schalttransistor-Treiber habe ich spendiert. Die Front-Plexiglas-Scheibe ist blau-fluoreszierend, somit gibt es einen schönen Beleuchtungseffekt. Das Licht kann gedimmt werden über ein Poti (ohne Timer-ISR).
Danach habe ich mich mal an das Ansteuerungsprogramm gekümmert. Dieses habe ich in Microsoft Visual C# erstellt - es bietet einige Möglichkeiten bzgl. der Benutzeroberfläche. Im Grunde übersetzt das Programme alle Eingaben in ein 2-Dimensionales Pixel-Datenfeld und sendet die Spalteninformationen pro Zeiteinheit via UDP/IP an den AVR-Port. Der AVR verarbeitet diese Signale und sendet diese dann via UART an die Segmente. Somit lassen sich viele Effekte in einem externen Programm rechnen mit mehr Ressourcen. Es können hierbei auch veschiedene Schriftarten und Symbole in Datensätzen gespeichert werden. Zudem wertet das Programm Wetterdaten aus dem Internet aus und zeigt diese an.

Ein Video wird noch folgen...
➥ Kommentar [2019-01-20 16:41:10] Aufbau und Erstinbetirebnahme
Die Weihnachtstzeit habe ich genutzt, um auch mal an dem Projekt weiterzuarbeiten. Die Platinen sind gekommen, 11 Stück an der Zahl - eines als Reserve. Die Bestückung war nach der dritte Platine Routine. Einiges hatte ich auch vergessen, mitzubestellen :-D - also dann .. Bestellung die zweite.
Das sich die DOT-Matrix-Modul schön zusammenfügen lassen, habe ich mich entschlossen, diese horizontal zu mondtieren, damit man später das ganze in die Wohnung stellen kann. Die Platinen werden durchgänge 9VDC und mit USART RX und TX durchverbunden. Jede Platine hat dabei ihren eigenn LM7805, damit Spannungsschwankungen kompensiert werden können. Ich hatte Bedenken wegen dem GND-Potential und der ISP-Programmierung, hat aber im Nachhinein gut funktioniert. Beim ersten Anlauf habe ich nur Pixel auf den Modulen darstellen können, bis ich mal das Multiplexen verstanden habe - dank des GCC-Beispiels von Ulrich Radig. Dieses habe ich an meine Bedürfnisse angepasst bzw. erweitert. Es werden später zwei Modis unterstützt, dabei kennen die ATTinys auf den Platinen einen bestimmten Zeichensatz, somit reicht es, einen String auszugeben via UART. Das ist später wichtig für einen Stand-Alone-Betrieb ohne laufende Software auf einem PC. Weiterhin wird aber auch die Ausgabe eines Datenstreams unterstützt, welcher vom Atmega32 gesendet wird bzw. später von eine Socket-Anwendung.
Ich habe festgestellt, dass die ATTiny recht begrenzt im Speicher sind, daher kann hier nur das nötigste implementiert werden - die ISR-Routine macht mir noch etwas zu schaffen aber der erste Meilenstein ist erreicht - ich kann dank DHCP und NTP-Protokoll auf dem Atmega32 schon mal die Uhrzeit ausgeben - jedoch noch mit einem unschönen Durchlaufeffekt, welchen man dan auch sieht bei sich ändernden Ausgaben. Weiter geht es mit der Mode-Umschaltung und der Ausgabe eines Datenstreams ...

2 Kommentare

➥ Status: fertig (gestartet: 2013-01)
Labornetzteil 12VDC/3A einstellbar
Gestartet 01/2013, hatte ich mich ein bisschen mit Prozessoren von ATMEL und Step-Down-Konvertern beschäftigt. Daraus entstanden ist ein kleines Labornetzteil, was mir bisher gute Dienste geleistet hat.
Die meisten Sachen hatte ich da, der Rest ist einfach in Elektronik-Onlineshops wie z.B: Reichelt.de oder Pollin.de erhältlich. Die Materialkosten belaufen sich auf etwa 150 EUR. Die Platine wurde eigens für dieses Projekt entworfen, layoutet und eine Ätzung + Lackierung beauftragt.
Herzschück ist hier natürlich die Stepdown-Schaltung, welche durch eine Pulsung des Transistors erreicht wird. Dies übernimmt ein Transistor-Treiber MCP1407, angesteuert von einem Mikroprozessor. Gespeist wird die Leistung durch einen Ringkerntrafo, Netzfilter + Gleichrichter, Sicherung und Zwischenkreis-Kondensatoren. Auf eine Vorladung wurde hier aufgrund der relativ geringen Leistung verzichtet. Hauptsächlich ging es mir um das Spielen mit der Transistorsteuerung mittels einens ATMEGA16 Prozessors von ATMEL (jetzt Microchip). Praktischerweise lässt dieser sich komfortabel über die ISP-Schnittstelle programmieren. Die 6-Pin Belegung wurde auf einen Platinenstecker gelegt. Weiterhin bietet der ATEMGA einige GPIOs und "vortgeschrittenen" Speicher von 16KB. Programmiert wurde in C (GCC). Die aktuelle Firmware V1.0 des Prozessors übernimmt folgende Funktionen:

  • die Menüauswertung über Fronttaster

  • die Berechnung des Tastgrades anhand der Poti-Stellung + Transistorpulsung (8 KHz)

  • die LCD-Displayansteuerung

  • eine Temperaturüberwachung

  • eine Strommessung mittels Shunt + Überwachung

  • die Ausgabe der Strom- und Spannungswerte an die COM-Schnittstelle


Aktuell pausiert das Projekt und funktioniert sowiet ganz gut. Den einen oder anderen Bug habe ich schon gefunden. Die Firmware wird wohl demnächst nochmal etwas überarbeitet :-)
 87
 92
 92
 96
 95
 99
 96
 79
 100
 80
 67
 69
 98
 109
14 Bild(er) verfügbar


➥ Kommentar [2018-01-18 20:45:26] Überarbeitung der Firmware V2.0
Der eine oder andere Bug hat mit schon gestört und verfolgte mich als im Kopf, daher habe ich das Projekt nochmal in Angriff genommen und fertiggestellt :-). Ich habe auch wieder viele Sachen dazugelernt und werde diese für nächste Projekte berücksichtigen. Auch den Programmieradapter habe ich umgestellt von ursprünglich RS232 auf eine ISP-USB-Programmieradapter (ERFOS). Der Treiber machte etwas Probleme unter Win7 aber mit einem kleinen Workaround klappt es wunderbar. Zudem musste ich vom älteren ATMEL Studio 5.0 auf Version 7.0 wechseln, damit der ISP-Adapter läuft. Diesen gibt es in vielen Versionen bei Amazon zu kaufen (6 oder 9 Pin).
Die Überarbeitung der Firmware brachte folgende Neuheiten mit sich:

  • Temperaturregelung mittels Software-Hysterese

  • Überarbeitung der Sicherungsüberwachung, Eingangs und- Ausgangssicherung werden jetzt überwacht und. ggf. bei Defekt gemeldet

  • Zeitbasis 1 Sekunde mittels Interrupt-Routine erzeugen (ISR)

  • I*t Strom-Zeitüberwachung mit Abschaltung um Überlast zu verhindern

  • Remote-Modus überarbeitet, es werden jetzt alle verfügbaren Messwerte über RS232 zyklisch geloggt werden und mit einem Terminal Programm aufgezeichnet und ausgewertet werden (z.B. ZOC). Der Log kann jederzeit über Taster2 aktviert und deaktiviert werden.

  • Reduzierung der Menüstruktur auf drei wesentliche Seiten

  • Speicherinitialisierung vereinfacht


Funktioniert alles jetzt wunderbar, allerdings ist der Speicher jetzt auch zu 100% gefüllt :-).
1 Kommentare