Hallo,
kürzlich hab ich mir Philips Hue LED-Leuchten zugelegt.
Die Steuerbarkeit über App ist ganz nett - nun würde ich gern die Teile über die SPS ansteuern können - Das API ist Dokumentiert http://www.developers.meethue.com/documentation/getting-started
So wie ich das lese geht der Zugriff über HTTP Aufrufe, die Vorgaben und Antworten sind XML formatiert.
Jetzt hab ich versucht, die notwendigen Bausteine zusammenzuklauben, scheitere allerdings bereits daran, dass ich in der OSCAT nur ein HTTP_GET finde, nicht allerdings das notwendige HTTP_PUT (und das wohl weniger notwendige HTTP_POST und HTTP_DELETE)
Jetzt frage ich, ob es hier im Forum jemanden gibt, der die Hues an der SPS am Laufen hat.
Mit meinen Kenntnissen ist der Weg zu weit - wenn ich nichts finde , muss ich an einem Plan B tüfteln - irgendwas das auf eine der auf der Hue Developer Seite als Library angegebenen Libraries aufbaut und als unabhängiges EXE mit den Hues "redet" und der SPS über einen TCP Port oder ADS zur Verfügung steht....
Bin gespannt .....
Danke einstweilen!
Hallo stm,
bist Du bezüglich der Anbindung von Hue an die Wago schon ein bisschen weiter gekommen?
Ich habe zwar noch die Möglichkeit über Xsolution, aber würde auch gerne den Weg über die Wago nehmen.
Gruß
Schwenn
Leider ist das schon ein etwas älteres Thema. Hat jemand schon etwas in dieser Richtung mit HUE gemacht oder schon einen Ansatz.
Ich würde gerne mithelfen etwas zu entwickeln, wenn interesse vorhanden ist.
du kannst dich ja mal etwas ernster damit auseinander setzen
mach mal eine grundsatzanalyse
was kann man damit machen
was wäre für oscat machbar bzw. sinnvoll
sammle möglichst jegliche dokummentation
sammle code-beispiele von anderen programmiersprachen (javascript, vb etc...)
hast du eine philips hue ?
kannst du von verschiedenen befehlen einen wireshark aufzeichnung machen
denn fehlenden HTTP_PUT Befehl können wir ja nachrüsten......
Hallo peewit
Toll dass sich jemand meldet!!
Ich werde mich zuerst einlesen wie das gehen soll und was von "extern" gesteuert werden kann.
Ich würde den Fokus auf Szenen sowie heller und dunkler setzen. Die Bedienung soll im Raum mit Wandtastern erfolgen. Nicht dass die von Phillips Hue genutzt werden müssen. Das Zieh von mir ist es dass im Haus alle Schalter gleich sind und nicht die "speziellen" von Philips Hue verwendet werden müssen.
Unter http://www.developers.meethue.com/documentation/getting-started denke ich, dass alle Infos zu finden sind. (Anmeldung erforderlich).
melde mich
PS: Hue Set ist bestellt :)
Stelle die gesamte dokumenation die die findest hier online
Hallo,
ich habe das Thema seinerzeit nicht weiter verfolgen können, kann evtl. noch von damals beitragen:
Die Hue Steuerung funktioniert über HTTP Kommandos an die Bridge:
HTTP_GET für Stati
HTTP_PUT für Aktionen
und für Nebenfunktionen (Konfigurationsänderungen und andere "Nebenfunktionen" HTTP_POST, HTTP_DELETE).
Die Messages von und zu Bridge sind JSON Format.
Für Ein/Aus, Heller/Dunkler, und Szenenaufrufe sollten es HTTP_GET und HTTP_PUT tun.
Die Bridge hat ein Web-Interface mittels dem die Kommandos getestet werden können.
Von OSCAT Seite hatte mir seinerzeit ein HTTP_PUT Baustein gefehlt .....
Hallo!
Die möglichkeite die Phillips Hue Lampen über die SPS zu steuern würde mich auch dringend interessieren.
Nur leider habe ich die notwendigen Kenntnisse sowas selbst zu programieren nicht, aber ich bin lernwillig und würde natürlich bei der Entwicklung so gut wie möglich mithelfen.
Derzeit versuche ich das ganze mit einem Umweg über Modbus und FHEM zu lösen, aber da muss ich mich auch erst mal in MODBUS und FHEM einarbeiten.
Hat eventuell schon jemand HUE via SPS zum laufen gebracht?
Lg
Alex
Moin,
ja mein Beckhoff kann die HUE Bridge ansprechen :)
Benötigte LIB: Oscat Basic 333; Oscat Network 1.21; TcpIpServer;
die Struktur 'URL' von Oscat Network braucht noch ein: "COMMAND : STRING(STRING_LENGTH);"
Der rest ist als *.exp vorhanden.
-> PN an mich :)
Grüße
Hallo, kannst Du bitte den Export zur Verfügung stellen?
I have solution. Its not the best thing can be don but best i have made.
Using this batch and NT_StartProcess you can change on/off, hue, saturation, brightness, and temperature color.
It suport some other things but its not working i my PLC
https://github.com/Lanjelin/hue-batch (https://github.com/Lanjelin/hue-batch)
In 'KEY' you need input your oun hue key.
In PATHSTR and DIRNAME input your dir of bath files.
PROGRAM HUE_bat
VAR_INPUT
lamp2: BOOL;
lamp3: BOOL;
on: BOOL;
hue: DINT;
saturation: INT;
brightness: INT;
color: INT;
END_VAR
VAR
Key: STRING := 'key'; (*Insert Hue Key*)
Start_Process : NT_StartProcess :=( NETID:='',
PATHSTR:='C:\TwinCAT\PLC\Program\BOX\Bat\hue.bat',
DIRNAME:='C:\TwinCAT\PLC\Program\BOX\Bat',
TMOUT:=t#2s);
Pause : TOF:=( PT:=t#1s); (*Wait to execute bat.*)
Trig: R_TRIG;
bStart: BOOL;
CMD: STRING(MAX_STRING_LENGTH);
CMD_Old: STRING(MAX_STRING_LENGTH);
END_VAR
Start_Process(START:=bStart,
COMNDLINE:=CMD);
Pause(IN:=Trig.Q);
Trig;
CMD:=CONCAT('-k ',key);
CMD:=CONCAT(CMD, ' -l "');
IF lamp2 THEN
CMD:=CONCAT(CMD, '2');
END_IF
IF lamp3 THEN
CMD:=CONCAT(CMD, ' 3');
END_IF
CMD:=CONCAT(CMD, '" ');
CMD:=CONCAT(CMD, '-on ');
IF on=TRUE THEN
CMD:=CONCAT(CMD, 'true');
ELSIF on=FALSE THEN
CMD:=CONCAT(CMD, 'false');
END_IF
IF hue>0 THEN
CMD:=CONCAT(CMD, ' -h ');
CMD:=CONCAT(CMD,DINT_TO_STRING(hue));
END_IF
IF saturation>0 THEN
CMD:=CONCAT(CMD, ' -s ');
CMD:=CONCAT(CMD,INT_TO_STRING(saturation));
END_IF
IF brightness>0 THEN
CMD:=CONCAT(CMD, ' -b ');
CMD:=CONCAT(CMD,INT_TO_STRING(brightness));
END_IF
IF color>0 THEN
CMD:=CONCAT(CMD, ' -c ');
CMD:=CONCAT(CMD,INT_TO_STRING(color));
END_IF
Hallo Leute,
da ich keine Bibliothek gefunden habe, mit der ich die HUE-Leuchten direkt ansteuern kann, habe ich mit meinen begrenzten Mitteln und meinem begrenztem Wissen eine HUE Bibliotheke gebaut. Damit kannn man ziemlich einfach HUE Lampen steuern. Wer interesse an der Bibliothek hat bitte was schreiben.
hallo
interesse besteht prinzipiell immer
kannst du bitte deine bauteine online stellen und soweit möglich eine beschreibung machen
oder beispielprojekte...
Hallo,
anbei habe ich die Bibliothek hochgeladen.
In Bildern ist ein Funktionierendes Beispiel dargestellt. Es wird ein HUE-GW Baustein gebraucht pro Gateway.
Pro Lampe muss ein HUE_Lampe Baustein indiziert werden.
Über HUE_IO werden alle Bausteine miteinander verbunden.
Bei einer Änderung der Eingänge "bHelligkeit","wFarbe","wFarbtemperatur"an HUE_Lampe wird der entsprechende Wert ins Gateway gesendet (nur bei Änderung).
Eine steigende Flanke an "xImpuls_EIN" sendet einen Einschaltbefehl;
Eine steigende Flanke an "xImpuls_AUS" sendet einen Ausschaltbefehl;
Eine Statusänderung am "xStatus_EIN_AUS" sendet den Aktuellen Zustand des Eingangs. (0-> 1 EIN | 1-> 0 AUS)
Am Eingang "bLampe" soll die Nummer der Gewünschten Lampe eingestellt werden. (Nummer der Lampe im Gateway)
Wenn mehrere Lampen gleichzeitig geschaltet werden sollen, dann kommt es leider zu einer Verzögerung von mindestens 100 ms.
Die Bibliothek habe ich für mich geschrieben (für meine Bedürfnisse). Wenn jemand eine Funktion vermisst, oder Fehler finden oder insgesamt Fragen hat, dann bitte schreiben.
Die Ausgänge am Baustein "HUE_GW" waren für mich zum Testzweck und brauchen nicht beachtet werden. Es erfolgt im Moment noch keinerlei Rückmeldung ob die Befehle erfolgreich waren oder irgendwelche Fehler aufgetretten sind. Das werde ich irgendwann nachpflegen.
Ansonsten viel Spass damit.
Hallo Sergej,
vielen Dank für deine Hue.lib.
Kannst du eventuell auch das PW für die lib bereitstellen?
Das wäre super von Dir!!
Gruß
Alex
probier mal "sergej123456g" ohne anführungszeichen.. Wenn jemand eine Verbesserung einbaut, würde ich um eine Rückmeldung bitten. Es funktioniert, damit ist es nicht mehr dringend für mich und ich komme wegen Zeitmangel nicht mehr dazu die Bibliothek weiter zu entwickeln.
Hello,
I've tried to use the library of Sergej, sadly it is only for Wago.
Any support for Beckhoff?
Or can anyone give me an example how the string should look in the http-get demo?
Hello bartmarchand
Unfortunately, I have no idea what the difference between Wago and Beckhoff is. I have never done anything with Beckhoff.
My library definitely needs the Ethernet.lib.
You can open my library with CodeSys. Password is here in the Thead.
Can you then look at how I did it. Maybe it will help you.
Hi Sergej,
Thank you for the response.
ethernet.lib does not exists in Twincat. I'm stuck I think...
Hi Sergej,
Can You Upload Ethernet.lib.
This will not work. You cannot use a standard CODESYS Ethernet.lib on a Beckhoff PLC since Beckhoff implemented own mechanisms for hardware and communication. That's why there is a special version of the OSCAT network library.
Ja, ich weiß auch nicht ob ich die Bibliothek einfach so hochladen darf. Ich weiß nicht wie da die Copyright sind. Deswegen mache ich es auch nicht.
Was allerdings bald kommt, ist eine neue Version von meine Hue.lib
Es wird dann möglich sein ein paar Parameter der Lampen auszulesen wie Name und Status. Und kann man dann ganze Räume schalten. (Raumbaustein)
Sollte jemand wünsche haben, bitte hier schreiben. Ich werde versuchen diese einzubringen, wenn es möglich ist.
Kann allerdings nicht viel Verprechen, da ich mich nur selten mit dem Thema beschäftigen kann. Zumindest arbeite ich dran und bin schon relativ weit.
Gibt es eine Network.lib die sowohl mit Wago (CodeSys) als auch mit Beckhoff geht?? Ich könnte ja versuchen meine Bibliothek darauf aufzubauen.
Nein. Die unterlagerten Systembibliotheken z. B. für den Zugriff auf die Ethernet-Schnittstelle unterscheiden sich.
Die OSCAT_NETWORK für CODESYS und Beckhoff TwinCAT stellt nach oben hin jedoch identische Schnittstellen zur Verfügung. Wenn du also nicht direkt auf die CODESYS-Systembibliotheken zugreifst, sondern über Bausteine aus der OSCAT_NETWORK.lib gehst, dann kann ein Beckhoff-Anwender deine Lib statt mit der OSCAT_NETWORK.lib für CODESYS mit der für TwinCAT betreiben, ohne deine Bibliothek ändern zu müssen.
Ich wollte hier gerade meine neue Version der Bibliothek hochladen.. Kriege leider eine Fehlermeldung das das Uploadverzeichnis voll ist. Meine Datei hat eine Größe von nur 21 KB. Was kann ich da machen?
Also wenn jemand interesse. Nachricht an mich. Verschicke dann mit Mail.
Diese Funktionier nicht mit Beckhoff, die Portierung der OSCAT_NETWORK ist mir nicht gelungen. Bei erster Durchsicht habe keinen Baustein gefunden der für meine Zwecke geeignet ist.
I think it is great what you guys are doing!
Looking out for the final result.
Sergej,
Unterstützt deine Lib auch Szenen ? Ich möchte von der SPS nur Szenen aufrufen. Diese passe ich mit der Hue-App an.
Hallo Sergej,
der Thread ist zwar schon alt, aber ich wollte einfach nur kurz DANKE sagen :)
Ich habe mich extra vorhin hier im Forum registriert, nur um deine Wago Hue-Lib runterzuladen.
10min später -> Eingespielt und funktioniert :D :D :D
Vielen, vielen Dank für deine Zeit, die du in die Entwicklung der Lib gesteckt hast und dafür, sie hier zu veröffentlichen.
Du hattest in deinem letzten Post (vor 2 Jahren :o) was von einer neuen Version geschrieben. Was ist da im Vgl. zur hier im Thread verfügbaren geändert/erweitert?
Viele Grüße.