Zurück   IP-Symcon Community Forum > IP-Symcon 2.x > Scripte, PHP, SQL

Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
  #1 (permalink)  
Alt 17.06.10, 22:44
Member
 
Registriert seit: Nov 2007
Ort: Hannover
Beiträge: 98
Standard Ambilight/AtmoWin mit IPS... ist IPS/DMX überfordert?

Hallo Zusammen,
ich habe mich weiter mit dem Thema Ambientlight, das man von Philips kennt, auseinandergesetzt. Warum nutze ich nicht einfach ein Gerät, dass ich direkt mit AtmoWin koppel? IPS ist die Zentrale und hier will ich entscheiden ob mein DMX-Gerät meine statischen Scenen anzeigt oder eben das Signal von AtmoWin umsetzt und das Licht um den Fernseher herum etwas dynamischer macht. So kann ich die RGB-LEDs um den Fernseher oder die Leinwand auch zur normalen Beleuchtung mit nutzen.

Was funktioniert:
Das Programm AtmoWin analysiert mein PC-Video-Signal und errechnet in welcher Farbe RGB-LED-Licht oben/unten/rechts/links angesteuert werden sollte. Das Signal wird per COM-Port an IPS übermittelt. In IPS nutze ich die Instanzen Com-Port, Cutter und Register Variable und nehme dann mit einem Script den Input aus der Registervariablen auseinander und schicke die Farbwerte an die Instanz meines DMX4ALL-Gerätes.

Jetzt habe ich folgendes Probelm:
Wenn ich einfach nur statische Werte/Farben in AtmoWin einstelle, dann geht das gut und meine DMX-Geräte schalten auf die richtige Farbe. Sobald ich aber zB einen Farbwechsel in AtmoWin einstelle und ne ganze Menge Werte an IPS übertragen werden dann schmiert mir der DMX-Controller nach kurzer Zeit ab. Das scheint IPS oder das DX-Gerät zu überfordern.
1. kann ich mein Script effizienter/schneller schreiben, so dass IPS nicht überfordert ist?
2. wie bekomme ich raus ob das Gerät oder IPS zu viel bekommt?
3. habt ihr sonst eine Idee was ich machen kann?

Hier mein Test-Script: (Später würde ich es noch so bauen wollen, dass man es etwas konfigurieren kann)
PHP-Code:
<?
 
/*Das Script empfängt über eine Registervariable, die mit einem Com-Port verbunden wird,
   die Daten von AtmoWin und übersetzt sie in Angaben für das DMX4ALL-Interface.
 Dazu wird AtmoWin, ein DMX4ALL-Interface und ein virtueller Com-Port-Verbinder benötigt.
 -AtmoWin gibt es hier: http://www.vdr-wiki.de/wiki/index.php/AtmoWin -->ganzen unten unter "Links" ist der Download.
 -virtueller COM-Port-Verbinder hier z.B.: http://www.eterlogic.com --> VSPE = Virtual Serial Ports Emulator

 1. zwei virtuelle COM-Ports mit VSPE (z.B. COM2 und COM4) erzeugen und miteinander verbinden. (Ggf. muss einer der Ports im niedrigen einstelligen Bereich liegen. Ich konnte mit AtmoWin mal einige meiner Com-Ports nicht auswählen. IPS findet sie aber alle.)
 2. In AtmoWin muss das Gerät "DMX" ausgewählt werden. Unter Geräteeigenschaften muss einer der soeben miteinander verbundenen Com-Ports für das Gerät ausgwählt werden (z.B. COM 2).
 3. In IPS wird ein COM-Port-Interface erstellt und der andere COM-Port (z.B. COM 4) ausgewählt.
 4. In IPS wird das Interface Cutter angelegt und als linkes Trennzeichen "5A A1" und als rechtes Trennzeichen "A5" eingetragen. Übergeordnete Instanz muss der COM-Port sein.
 5. In IPS werden die Scripte und Variablen angelegt wie sie im Screenshot zu sehen sind.
 6. Die Registervariable wird mit der Instanz des Cutter-Interfaces verbunden und dieses Script hier (getAtmoData) wird ausgewählt, so dass es von der Register Variablen getriggert wird.
 7. Die persönlichen IDs in beiden Scripten eintragen.
 */
 
//hier die persönlichen IDs der Instanzen eintragen:
 
$atmowin_port 36716 /*[COM-Port to AtmoWin]*/ //ID des COM-Port-Interface
 
$dmx_interface 19763 /*[Wohnzimmer\DMX_Out]*/ //ID des DMX4ALL-Gerätes

//-->Auswertung der Daten von AtmoWin<--
//Empfang der Daten aus der Registervariablen, die das Script triggert/aufruft.
$data $IPS_VALUE;

//nur um zu sehen was ankommt
setValueString(57654 /*[Wohnzimmer\AtmoWin\test2]*/,ord($data[0]));

//oben
DMX_SetValue($dmx_interface18ord($data[0]));
DMX_SetValue($dmx_interface19ord($data[1]));
DMX_SetValue($dmx_interface20ord($data[2]));
//unten
DMX_SetValue($dmx_interface1ord($data[3]));
DMX_SetValue($dmx_interface2ord($data[4]));
DMX_SetValue($dmx_interface3ord($data[5]));

?>
Ich hoffe ihr habt Ideen!!
Gruß
Matthias
__________________
----------------------------------------
FHZ1300 - 3*FHTs - 1*Funk-Dimmer - 3*Funk-Schalter
DMX4ALL - 2*4-Kanal-Dimmer - 1*RGB-LED-Controller BABY - 1*RGB-LED PAR56
Vellemann - Board, Wetterstation WMRS 200
IPS, Dashboard, DUGtool
Mit Zitat antworten
  #2 (permalink)  
Alt 18.06.10, 08:37
Benutzerbild von Tonic1024
Freak
 
Registriert seit: Sep 2005
Ort: Cuxhaven
Beiträge: 5,020
Standard

Ganz ehrlich? Das ist ne blöde Idee.

Überlege mal wie oft in der Sekunde du dieses Script ausführen müsstest, damit du ein passables Resultat erziehlst. Vermutlich startet dein script bereits erneut während es noch garnicht zu Ende durchgelaufen ist. Und damit bringst du den Controller aus dem Tritt. Schau mal wieviele Threads laufen (Ansicht PHP-Informationen) und bring dir den Umgang mit nem Semaphore bei. Vielleicht hilft das schon.

Ausserdem befürchte ich, das IPS dann so mit Fernsehflackern beschäftigt ist, dass sonst nix mehr in deinem Haus funktioniert.

Toni
__________________
www.Tonis-Welt.com
01001000 01100101 01101100 01101100 01101111
01110111 01101111 01110010 01101100 01100100
Mit Logik kommen wir hier nicht weiter...

_________________________________
Geändert von Tonic1024 (Morgen um 14:76 Uhr)
Mit Zitat antworten
  #3 (permalink)  
Alt 18.06.10, 14:26
Junior Member
 
Registriert seit: Jul 2009
Ort: Berlin
Beiträge: 24
Standard

Ich habe mir extra dafür das System von ARFX geholt. Das verrichtet seine Arbeit super und es sieht richtig genial aus
Mit Zitat antworten
  #4 (permalink)  
Alt 05.07.10, 22:35
Member
 
Registriert seit: Nov 2007
Ort: Hannover
Beiträge: 98
Standard

Vielen Dank für Eure Beiträge. Ich verstehe warum Du es eine blöde Idee findest Tonic1024 aber ich finde es eigentlich schlechter mir extra Hardware zuzulegen. Das ist doch eigentlich das gute an IPS, dass man verschiedene Hardware über eine Plattform nutzen kann. Warum sollte ich die LED-Stripes und einen Controller doppelt kaufen? (Vielleicht weil ich es nicht zum laufen bekomme :-)
Ich hab das mit dem Semaphore ausprobiert. Da hat es länger funktioniert. Dann ist das Gerät aber auch ausgestiegen. Ich muss mal mit der Zeit beim Semaphor herum probieren. Vielleicht bekomme ich es ja noch hin.
Gruß
Matthias
__________________
----------------------------------------
FHZ1300 - 3*FHTs - 1*Funk-Dimmer - 3*Funk-Schalter
DMX4ALL - 2*4-Kanal-Dimmer - 1*RGB-LED-Controller BABY - 1*RGB-LED PAR56
Vellemann - Board, Wetterstation WMRS 200
IPS, Dashboard, DUGtool
Mit Zitat antworten
  #5 (permalink)  
Alt 24.07.10, 23:46
Member
 
Registriert seit: Jan 2008
Beiträge: 77
Standard

Hallo,
ich bin auch der Meinung das du dir damit dein ganzes System lahm legst.
Du wirst wahrscheinlich (noch ) keinen VDR als Receiver nutzen. Aber vielleicht kann ich dich ja dafür begeistern. Ist nicht nur wegen dem Ambilight Plugin eine Überlegung wert.
Ich habe mir so mein Ambilight gebaut.
Atmo-plugin
4 Kanal USB PWM Led Steuergerät

Sowas gibt’s aber auch als Hardwarelösung.
Aurrora - TV Beleuchtung AurroLight 2 Komplettbausatz 100cm "KEIN LÖTEN MEHR" AurroLight 2

Ciao Severin
Mit Zitat antworten
Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Newbie hat eine Frage! Mail per IPS? Xanon Allgemeine Diskussion 7 14.10.10 19:40
IPS hängt sich auf nach SSL aktivieren pleibling Allgemeine Diskussion 2 26.10.08 20:18
IPS Web Designer Slash Projekt Showcase 10 31.05.08 17:43
IPS runterfahren während Designer noch läuft ! guyabano Dashboard 11 14.01.07 22:42


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:20 Uhr.


Powered by vBulletin® Version 3.8.4 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0