Automatisierter Variablenaustausch zwischen zwei IPS Systemen (Windows und Raspberry)

Ich bastle gerade mit einem Rasberry PI mit angeschlossenen 1-Wire-Temperatursensoren. Ausser dem RASP, ein paar 18B20 und einem 4,7 k Widerstand ist hierzu nichts weiter notwendig, wenn man die Leitungslängen kurz hält. Die Daten lese ich direkt mit PHP aus dem RASP-1Wire-Filesystem aus und schreibe/logge sie dort mit einer globalen Variable (siehe PHP-Script).

<?php
// 1-Wire Adresse des auszulesenden Sensors
$Sensor = "28-000001c78cdc";

// Zugriff auf das 1-Wire Filesystem des PI´s
// Erwartetes Ergebis
// 49 01 4b 46 7f ff 07 10 f6 : crc=f6 YES
// 49 01 4b 46 7f ff 07 10 f6 t=20562
$temperatur = implode('', file("/sys/bus/w1/devices/".$Sensor."/w1_slave"));

// extrahieren des Temperaturwertes: erwartetes Ergebis: 20562
$temperatur = substr($temperatur, strpos($temperatur, "t=") + 2);

// Umrechnung in eine Kommazahl mit zei Stellen erwartetes Ergebis: 20.56
$temperatur =round(($temperatur/1000),2);

// Schreiben in ein globale Variable
SetValueFloat(35970 /*[GPIO\Sensor]*/,$temperatur);

// wie kriegt man am besten diese globale Variable an in zentrales IPS-System übermittelt ?
// über sockets, Fileaustausch, über ....
?>

Nun möchte ich diesen Messwert gerne auch in meinem zentralen IPS-System (Windows) zur Verfügung haben. Meine Frage ist nun, was wäre die geschickteste Lösung hierfür? Sockets, gemeinsames Filssystem, Messages, oder …

Die Temperaturen stammen von verschiedenen Heizungspunkten (Kessel, Speicher, Vorlauf, Ruecklauf, Zirkulation …), so dass die Messintervalle nicht unter 60 Sekunden liegen muessen.

Hat jemand von euch eine Empfehlung.

Gruss
Bernd

Einfach von der Quelle zum Ziel per JSON senden:
http://www.ip-symcon.de/service/dokumentation/entwicklerbereich/datenaustausch/
Michael

Lustig… bastel auch grad mit einem RPI rum, der an IPS Senden soll
Ich habe das zuerst auch mit einem Apache auf dem RPI gelöst , der per HTTP Request daten sendet.
War mir aber irgendwie zu ‚unschön‘.

Gelöst jetzt so:
Auf dem Raspi läuft ein script (bash) zb. mittels ctrontab.
in IPS habe ich einen ServerSocket und eine Registervariable mit Script.
Der Raspi sendet mittels des scripts die Daten dann direkt als TCP-Stream an IPS.

echo "IRGENDWAS was ich sendne will" > /dev/tcp/[IP-ADRESSE IPS RECHNER]/[PORT VOM SERVERSOCKET]

Funktioniert SUUPER:

Es ging aber um zwei IPS-Systeme…
Michael

mit IPS 3.0 noch besser nat. mit der JSON APi.
so wie ich verstanden habe, hat er aber einen RaspI ohne IPS – wenn ich jetzt nichts überlesen habe.

Stimmt, hatte ich dann schon damals missverstanden.
Michael

Hallo,
kannst du mir das etwas genauer erklären was du alles im Raspberry und im Windows angelegt hast?
Habe das mit dem JSON versucht aber irgendwie schnall ich das nicht und in der Dokumentation ist das auch nicht wirklich verständlich beschrieben.

Gruß Stefan

Hi,

also bei zwei IPS (auf jeweils einem PI oder auf einem Pi und einem WIN-PC) gehst Du schlicht nach dieser Anleitung:

Datenaustausch — IP-Symcon :: Automatisierungssoftware

Tücke ist nur, dass beim PI der Port 3777 ist und beim Win-PC noch irgendwas anderes (bei mir 82 (irgendwie von „früher“)).

Folgendes Beispiel liest eine Variable „vom ANDEREN IPS“:

$rpc = new JSONRPC("http://user:password@127.0.0.1:82/api/"); //Deine Daten und IP und PORT
echo $rpc->GetValueFormatted(58383);  //hier muss natürlich die Quell-IPS-ID stehen

herbertf

@Stefan:

also bei mir läuft auf dem Raspi eigentlich: nix außer ein paar scripten etc.
auf dem IPS Server (Windows) habe ich einen ServerSocket eingerichtet und dazu eine Registervariable und ein Script.
Alles natürlich verbundne per standard IPS Konfiguration

Auf dem Raspberry starte ich halt - vonwoauchimmer (bash, script, php script etc) den Shell befehl:
z.B:
echo „KOMMANDO ZURÜCK“ > /dev/tcp/[IP-ADRESSE IPS RECHNER]/[PORT VOM SERVERSOCKET]

das Registervarialbenscript wird darauf hin beim windows IPS Rechner gestartet und empfängt „KOMMANDO ZURÜCK“

soweit verständlich?

Schau dir mal mein Beispiel an.

https://www.symcon.de/forum/threads/28573-Freetz-und-owfs-empfehlenswert?p=263214#post263214

Gruss
Bernd