Temperatur DS18B20->LOGO8

Hallo ,

ich bin nun nach langem überlegen von Iobroker zu IPS gewechselt, bin begeistert, komme aber nun schon nach kurzer Zeit an meine Grenzen:(.
Ich habe erfolgreich u.A. 1Wire(DS18B20) und Siemens-LOGO8 am laufen. Auf der Logo habe ich meine Heizungssteuerung und möchte dort die Temperaturen von meinen DS18B20-Temperatursensoren verwenden.
Ich bekomme es nicht hin, die „Float-Werte“ in „Integer-Werte“ zu wandeln.
Versucht habe ich es über Ereignis wenn sich die Temperatur ändert, soll der Netzwerk-Analogeingang( NAI1) der LOGO mit dem Wert vom DS18B20(Heizung_Kessel) beschrieben werden.

Meine Kenntnisse mit PHP sind gleich null, und habe mit diversen Beispielen aus dem Forum auch keine Erfolg gehabt.

Es wäre schön wenn an meinen kleinen Beispiel mir jemand auf die Sprünge helfen kann:).

Du kannst das immer noch ohne PHP machen. Erstell einfach ein Ereignis direkt an der Variable von der Logo, wählen die Temperatur vom 1W Baustein aus und wähl als Aktion „Auf auslösenden Wert schalten“. Das wars :slight_smile:

paresy

Genau das habe ich gemacht:

-auslösende Variable= 51458
-Auslöser bei Änderung
-Ziel =52845
-Aktionstyp:Führe Aktion abhängig vom Ziel aus
-Auf auslösenden Wert schalten

Der Wert wird nicht erzeugt:(

Ist die Variable 52845 den schaltbar?
Kannst du die aus dem WebFront bedienen?
Michael

Ja, im WebFront kann ich den Wert einstellen und wird an die Logo übergeben.

Steve

kleiner Nachtrag-> die Variable(52845) wird aktualisiert aber der Wert von der auslösenden Variable nicht eingetragen.

Steve.

Hast du mal das Meldungsfenster geöffnet (oder Status Widget) und geschaut ob es Fehlermeldungen gibt?

paresy

Da steht, dass die Variablen-Typen nicht übereinstimmen.

Das ist der Punkt, den ich schon mal mit einem Skript lösen wollte( Float zu Integer) aber nicht funktionierte.

Steve

Auf die Schnelle fällt mir da keine skriptfreie Lösung ein. Wir sollten aber wohl mal überlegen, ob wir das Übertragen von Werten bei numerischen Variablen trotzdem erlauben. Für den Moment kannst du dir im Ereignis sonst ein eigenes kleines Skript schreiben:


RequestAction($_IPS['TARGET'], $_IPS['VALUE']);

Das sollte den Wert ungeprüft durchreichen.

Sorry, ich bin noch in der Lernphase was PHP betrifft.
Ich habe wie auf dem Bild zu erkennen das Skript auf meine Anwendung geändert, leider ohne Erfolg. Wo habe ich den Fehler eingebaut?

Steve

Du hast zu viel mitgedacht :wink: ‚TARGET‘ und ‚VALUE‘ sollten so stehen bleiben. Auch solltest du das Skript direkt beim Ereignis eintragen, damit die Variable dann auch das Ziel ist. Also ungefähr so:

Super es funktioniert:D. Danke an Alle für die Hilfestellungen. Mir fehlt zwar die Kommastelle aber damit kann ich leben.:wink:

Gut zu wissen, das Variablenspezifische Skripte gleich in das Ereignis können.

Steve