LED Stripe Control
Moderator: Co-Administratoren
LED Stripe Control
Moin,
ich habe mir mal Gedanken über die Ansteuerung von RGB LED Stripes gemacht. Das hat hier ja schon mal jemand hier mit der Ansteuerung der Fernbedienung dieser Stripes realisiert. Ich habe jedoch den Ansatz gewählt die Stripes direkt über ein Arduino Ethernet Modul direkt anzusteuern. Die Farben und Leuchtstärken können dann direkt per HTTP und damit auch aus der CCU gesteuert werden.
Wenn Interesse besteht kann ich hier ja mal Schaltplan & Software einkippen.
Gruß Thomas
ich habe mir mal Gedanken über die Ansteuerung von RGB LED Stripes gemacht. Das hat hier ja schon mal jemand hier mit der Ansteuerung der Fernbedienung dieser Stripes realisiert. Ich habe jedoch den Ansatz gewählt die Stripes direkt über ein Arduino Ethernet Modul direkt anzusteuern. Die Farben und Leuchtstärken können dann direkt per HTTP und damit auch aus der CCU gesteuert werden.
Wenn Interesse besteht kann ich hier ja mal Schaltplan & Software einkippen.
Gruß Thomas
Gruß Thomas
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-
Re: LED Stripe Control
Interesse besteht auf jeden Fall!
CCU3 / Homeputer CL Studio / 348 Kanäle in 120 Geräten:
Re: LED Stripe Control
Hallo,
Interesse ist auf alle Fälle da, vor allem wäre eine Lösung super wo man nicht mehr unbedingt zum Lötkolben greifen muss.
Das hat nix mit Faulheit zu tun sondern einfach gibt es ein paar kleine Probleme mit den Augen die es recht schwierig machen solche Aufgaben zu erledigen.
Aber ich würde mich auf jeden Fall über den Schaltplan+Software freuen
Interesse ist auf alle Fälle da, vor allem wäre eine Lösung super wo man nicht mehr unbedingt zum Lötkolben greifen muss.
Das hat nix mit Faulheit zu tun sondern einfach gibt es ein paar kleine Probleme mit den Augen die es recht schwierig machen solche Aufgaben zu erledigen.
Aber ich würde mich auf jeden Fall über den Schaltplan+Software freuen
Re: LED Stripe Control
Ja, Interesse besteht auf jeden Fall!
150 Kanäle in 75 Geräten und 103 CUxD-Kanäle in 25 CUxD-Geräten (HomeMatic, FS20), CCU1 FW1.519, AddOns: CUxD 1.0, dropbear, E-Mail 1.2, ftp_server und regaWatchdog.
Logik und Visualisierung mit ioBroker auf Mac OS X Node.js. Eingebundene Systeme: Sonos, Rademacher Homepilot, Roomba, Network-OWL. Danke für das Homematic-Inventur-Skript von EnergyStar
Logik und Visualisierung mit ioBroker auf Mac OS X Node.js. Eingebundene Systeme: Sonos, Rademacher Homepilot, Roomba, Network-OWL. Danke für das Homematic-Inventur-Skript von EnergyStar
-
- Beiträge: 1322
- Registriert: 13.08.2008, 20:57
- Wohnort: Österreich nähe Wien
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 1 Mal
Re: LED Stripe Control
Auch ich hätte Interesse !
CCU2 mit Cuxd und HP CLX ,3 x FHZ2000,2 Funkgateway (eckig),und 2 Funkgateway (rund),RS LanGate
ca 590 Komponenten gemischt HM und FS20 90/10)`CCU auf Cubie LXCCU,CCU auf RPi3 Pivccu,Iobroker auf HPgen8,
Tinker,orangepi,Odroid .....,Sonoffs,Xiaomi und ne Menge esp8266
ca 590 Komponenten gemischt HM und FS20 90/10)`CCU auf Cubie LXCCU,CCU auf RPi3 Pivccu,Iobroker auf HPgen8,
Tinker,orangepi,Odroid .....,Sonoffs,Xiaomi und ne Menge esp8266
-
- Beiträge: 2268
- Registriert: 22.06.2012, 17:46
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Tirol/Austria
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 2 Mal
Re: LED Stripe Control
Hi,
möchte auch Interesse anmelden falls es günstiger als eine Artnetsteuerung (100 Euro) ist.
Viele Grüße
Chris
möchte auch Interesse anmelden falls es günstiger als eine Artnetsteuerung (100 Euro) ist.
Viele Grüße
Chris
System: RaspberryMatic 3.41.11.20190126 auf RPi3, ReverseProxy auf RPi3
Re: LED Stripe Control
Nabend,
so hier im Anhang der Schaltplan und die Programmierung. Letztere ist noch etwas quick and dirty aber funktioniert erstmal
Ich erklär mal das Prinzip:
Das Arduino Ethernet Board (kosten so um die 50 Eur) ist ein programmierbarter Microcontroller mit (sagt ja der Name schon) Ethernet Anschluß.
Die Programmierung erfolgt (anders als bei den üblichen Arduino Boards) nicht über eine USB Schnittstelle sondern über ein serielles USB Interface (Mal bei Amazon nach FTDI Kabel suchen (14,99 Eur). Auf dem Controller kann dann mit kleinstem Aufwand ein HTTP Server laufen. Dieser kann abhängig von den Requests die Ausgänge des Microcontrollers steuern.
Damit kommen wir zur Ansteuerung der LED Stripes. Die meissten Stripes haben eine gemeinsame +12 V Versorgung und für jede Farbe einen einzelnen Ausgang der LED Kathode. Je nachdem wie hell die jeweilige Farbe jetzt leuchtet wird eine Mischfarbe erzeugt. In meinem Fall werden die Kathoden der LED Stripes über ein MOSFET auf Masse gezogen. Gesteuert wird der jeweilige Farbkanal über die PWM (Pulsweitenmodulation) Ausgänge des Arduino. Damit kann also die
jeweilige Farbe recht einfach gedimmt werden.
Komplette Hardwarekosten belaufen sich auf um die 60 Euro (ohne das optionale Relaismodul bzw das Programmierkabel)
Der Rechte Teil der Schaltung ab J6/R5 ist optional. Da der Controller noch freie Ausgänge hat habe ich einfach diese über einen Treibertransistor noch mit einem Relais versehen man kann die also noch einzeln als geschaltete Ausgänge nutzen.(In der derzeitigen Software noch nicht implementiert).
Die Software ist so geschrieben, das das Board sich via DHCP eine IP vom Router holt. Ein Request http://ip/?r=[0-255]&g=[0-255]&b=[0-255] schaltet dann die jeweilige Farben. Die Software versucht schon die Farben beim Wechsel nicht hart zu wechseln sondern entsprechend überzublenden.
Ich hab der CCU ein Programm verpasst welches auf einen Wandtaster reagiert und den anzuzeigenden Farbwert in eine Systemvariable schreibt.
Ein zweites Script reagiert auf die Änderung der Variable und erzeugt den passenden HTTP Call. (Das habe ich deswegen getrennt, weil ich ein Script habe was alle Lichter aus schaltet und an der Stelle nur die Variable geändert werden muss)
Die Software des Boards muss sicher noch angepasst werden so ganz zufrieden bin ich noch nicht, aber make it run then make it right
Denkbar wäre hier noch eine eigene Weboberfläche für die Steuerung der LED Stripes (auf dem Ethernet Board ist noch ein SD Slot der genutzt werden kann um html Dateien zu speichern die der Webserver dann ausliefert)
so hier im Anhang der Schaltplan und die Programmierung. Letztere ist noch etwas quick and dirty aber funktioniert erstmal
Ich erklär mal das Prinzip:
Das Arduino Ethernet Board (kosten so um die 50 Eur) ist ein programmierbarter Microcontroller mit (sagt ja der Name schon) Ethernet Anschluß.
Die Programmierung erfolgt (anders als bei den üblichen Arduino Boards) nicht über eine USB Schnittstelle sondern über ein serielles USB Interface (Mal bei Amazon nach FTDI Kabel suchen (14,99 Eur). Auf dem Controller kann dann mit kleinstem Aufwand ein HTTP Server laufen. Dieser kann abhängig von den Requests die Ausgänge des Microcontrollers steuern.
Damit kommen wir zur Ansteuerung der LED Stripes. Die meissten Stripes haben eine gemeinsame +12 V Versorgung und für jede Farbe einen einzelnen Ausgang der LED Kathode. Je nachdem wie hell die jeweilige Farbe jetzt leuchtet wird eine Mischfarbe erzeugt. In meinem Fall werden die Kathoden der LED Stripes über ein MOSFET auf Masse gezogen. Gesteuert wird der jeweilige Farbkanal über die PWM (Pulsweitenmodulation) Ausgänge des Arduino. Damit kann also die
jeweilige Farbe recht einfach gedimmt werden.
Komplette Hardwarekosten belaufen sich auf um die 60 Euro (ohne das optionale Relaismodul bzw das Programmierkabel)
Der Rechte Teil der Schaltung ab J6/R5 ist optional. Da der Controller noch freie Ausgänge hat habe ich einfach diese über einen Treibertransistor noch mit einem Relais versehen man kann die also noch einzeln als geschaltete Ausgänge nutzen.(In der derzeitigen Software noch nicht implementiert).
Die Software ist so geschrieben, das das Board sich via DHCP eine IP vom Router holt. Ein Request http://ip/?r=[0-255]&g=[0-255]&b=[0-255] schaltet dann die jeweilige Farben. Die Software versucht schon die Farben beim Wechsel nicht hart zu wechseln sondern entsprechend überzublenden.
Ich hab der CCU ein Programm verpasst welches auf einen Wandtaster reagiert und den anzuzeigenden Farbwert in eine Systemvariable schreibt.
Ein zweites Script reagiert auf die Änderung der Variable und erzeugt den passenden HTTP Call. (Das habe ich deswegen getrennt, weil ich ein Script habe was alle Lichter aus schaltet und an der Stelle nur die Variable geändert werden muss)
Die Software des Boards muss sicher noch angepasst werden so ganz zufrieden bin ich noch nicht, aber make it run then make it right
Denkbar wäre hier noch eine eigene Weboberfläche für die Steuerung der LED Stripes (auf dem Ethernet Board ist noch ein SD Slot der genutzt werden kann um html Dateien zu speichern die der Webserver dann ausliefert)
- Dateianhänge
-
- WebServer.txt
- Server Software
- (6.45 KiB) 327-mal heruntergeladen
-
- Shield_Sketch_Schaltplan.pdf
- Schaltplan
- (925.93 KiB) 579-mal heruntergeladen
Zuletzt geändert von thkl am 19.09.2013, 21:16, insgesamt 1-mal geändert.
Gruß Thomas
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-
Re: LED Stripe Control
Hier noch die CCU Scripts
Es wird eine Variable vom Type String gebraucht (in meinem Fall LCD_CH_1)
Das Script hier reagiert auf den Tastendruck eines Wandschalters.
In der var Presets sind derzeit 7 voreingestellte Farben gespeichert.
Bei jedem Auslösen des Scripts wird zuerst der Inhalt der Systemvariable gelesen.
Dieser ist der aktuelle Farbwert + der Indes in der Presettabelle also bsp für die 3. Farbe aus der Tabelle: 0-0-255-2
Dieser Index wird dann um 1 erhöht und der passende Wert aus den Presets genommen.
Das ganze wird zusammengesetzt und in der Variablen gespeichert. Damit wird also bei jedem Tastendruck die nächste Farbe gewählt. (bzw Aus für 0-0-0-0)
Und hier das 2. Script welches auf die Aktualisierung der Variable reagiert um die Farben an das Modul zu senden:
Der letze Parameter &1=2 ist aktuell nötig da die Systemsoftware des Moduls einen Bug hat und den letzten Parameter nicht richtig erkennt.
Das fix ich noch
Es wird eine Variable vom Type String gebraucht (in meinem Fall LCD_CH_1)
Das Script hier reagiert auf den Tastendruck eines Wandschalters.
In der var Presets sind derzeit 7 voreingestellte Farben gespeichert.
Bei jedem Auslösen des Scripts wird zuerst der Inhalt der Systemvariable gelesen.
Dieser ist der aktuelle Farbwert + der Indes in der Presettabelle also bsp für die 3. Farbe aus der Tabelle: 0-0-255-2
Dieser Index wird dann um 1 erhöht und der passende Wert aus den Presets genommen.
Das ganze wird zusammengesetzt und in der Variablen gespeichert. Damit wird also bei jedem Tastendruck die nächste Farbe gewählt. (bzw Aus für 0-0-0-0)
Code: Alles auswählen
var ch1 = dom.GetObject("LED_CH_1").Value();
var id =ch1.StrValueByIndex("-", 3);
var presets = "0-0-0;255-0-0;0-255-0;0-0-255;255-0-235;255-255-0;0-255-255;163-232-255";
if (id){
id = id.ToInteger();
} else {
id = 0;
}
id = id+1;
if (id>7) {
id = 0;
}
var pr = presets.StrValueByIndex(";",id);
ch1 = pr + "-" + id;
dom.GetObject("LED_CH_1").State(ch1);
Code: Alles auswählen
var ch1 = dom.GetObject("LED_CH_1").Value();
if (ch1)
{
var r = ch1.StrValueByIndex("-", 0);
var g =ch1.StrValueByIndex("-", 1);
var b =ch1.StrValueByIndex("-", 2);
system.Exec("wget -q -O /dev/null http://[ip des moduls]/?&r="+r+ "&g=" + g + "&b="+b+"&1=2");
}
Das fix ich noch
Gruß Thomas
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-
Re: LED Stripe Control
So ich hab mal 2 Fotos des fertigen Moduls auf Lochrasterplatine angehangen. Es ist die Version mit 2 zusätzlichen Relais.
Die Software des Servers ist auch aktualisiert. Relais werden unterstützt und es gibt die Möglichkeit die Farbinfos an ein 2. Modul weiterzureichen.
Die Software des Servers ist auch aktualisiert. Relais werden unterstützt und es gibt die Möglichkeit die Farbinfos an ein 2. Modul weiterzureichen.
Gruß Thomas
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-
- sent from my dishwasher -
- Head of HomeControl for iOS -
- Steuerung der CCU über HomeKit (Siri) -
- Homematic Interface Layer - baut alles was HTTP kann in die CCU, ja auch Alexa-