mikrolinux Geschrieben November 13, 2012 at 10:26 Geschrieben November 13, 2012 at 10:26 Hi! Ich habe ein völlig banales Problem, stehe mir aber wohl gerade selber auf den Füßen ... Habt ihr einen Tipp für mich? Ich möchte von PHP aus den Sachltzustand eines Relais ermitteln. Das sollte eigentlich ganz einfach mit getState() gehen, aber ich kriegs nicht hin. Der Code schaut eingedampft so aus: <?php require_once('Tinkerforge/IPConnection.php'); require_once('Tinkerforge/BrickletDualRelay.php'); use Tinkerforge\IPConnection; use Tinkerforge\BrickletDualRelay; $host = "IP-Nr"; $port = 4223; $drid = ID des Dual-Relay; // DualRelais-Bricklet $ipcon = new IPConnection($host, $port);// IP connection zum brickd $dr = new BrickletDualRelay($drid); // Device-Object fuer DualRelais $ipcon->addDevice($dr); // Dual Relay-Device zur IP-Connection zufuegen $dr->setState( TRUE, FALSE ); // schaltet das erste Relais $relais = $dr->getState(); // hier komme ich ins Schleudern if ( $relais[0] == true ) { $status = "Relais 1 ist geschaltet"; echo "$status \n"; } ?> Das Schalten des Relais funktioniert ganz prima, nur andersrum halt nicht. Ich hätte in der Variablen $relais ein Array mit 2 Werten erwartet, so dass mir $relais[0] den Status des ersten Relais liefern sollte - dachte ich. Wie muss ich die getState()-Abfrage formulieren, damit ich den Schaltstatus zurück bekomme ... ? Vielen Dank für eure Hilfe! Zitieren
photron Geschrieben November 13, 2012 at 11:16 Geschrieben November 13, 2012 at 11:16 <?php $relais = $dr->getState(); if ( $relais['relay1'] == true ) { $status = "Relais 1 ist geschaltet"; echo "$status \n"; } ?> Wie der Inhalt der Arrays ist wenn die Funktion mehrere Werte zurück geben steht nicht in der PHP Dokumentation. Habs mir auf die TODO Liste gesetzt, das zu verbessern Zitieren
mikrolinux Geschrieben November 13, 2012 at 11:41 Autor Geschrieben November 13, 2012 at 11:41 Perfekt, danke! Jetzt kann ich bei meiner Raumsteuerung auch den aktuellen Ventilstatus abfragen Heute abend packe ich das noch in das Steuerproggi, dann steht das auch im LCD Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.