Jump to content

[PHP] getState() beim DualRelay


Recommended Posts

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!

Link to comment
Share on other sites

<?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 :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...