Willkommen auf unserer neuen Forenplattform für das Bus-Profi Forum

Neue Felder für die persönlichen Daten
Man kann jetzt seine öffentlich einsehbare Daten genau bestimmen. Details findet ihr in in diesem Beitrag.

Durch die neue Forensoftware und die Portierung der Daten konnten die Passwörter aus dem alten Forum nicht übernommen werden, bitte lassen Sie sich ein neues Passwort über die Passwort vergessen Funktion zusenden. Sollte es zu Problemen kommen kontaktieren Sie das Bus-Profi Team per E-Mail.

Wert für einen Regler (Heizung) anzeigen

OpenHAB

Themenersteller
rayb
Schon länger hier...
Schon länger hier...
Beiträge: 51
Registriert: Di 9. Apr 2013, 21:15
Kontaktdaten:
Status: Offline

#1 Wert für einen Regler (Heizung) anzeigen

Beitrag von rayb »

Hallo Zusammen,

ich versuche den Sollwert für die Heizung, also einen (Regler) auszulesen. Dabei orientiere ich mich an dem Demo. Leider funktioniert das bei mir. Ich habe gleich verschiedene Varianten ausprobiert.
Hat jemand eine Idee oder besser noch ein funktionierendes Beispiel?

Viele Grüße
Ralf

DEMO:
https://github.com/openhab/openhab/wiki ... ng#lcndemo

DEMO - Items

Code: Alles auswählen

String lcnSetPoint "Set-point [%s °C]" {lcn="[lcndemo:SETPOINT_VALUE.0.5.1.°C]"}
  Number lcnSetPointDim "Set-point (10-23°C) [%f °C]" {lcn="[lcndemo:SETPOINT_VALUE.0.5.1.°C], [%i:lcndemo:SETPOINT.0.5.1.%i°C]"}
DEMO - Sitemap

Code: Alles auswählen

  Text item=lcnSetPoint
  Setpoint item=lcnSetPointDim step=0.5 minValue=10 maxValue=23
Meine Umsetzung dafür
Items

Code: Alles auswählen

Number TempOGKind         "OG Kind [%.1f °C]"             <temperature>   (OG_Temperaturen)       {lcn="[lcn_pi:VAR_VALUE.0.210.3.Celsius]"}
Number TempSollOGKindN    "OG Kind Soll N [%f °C]"        <temperature>   (OG_Temperaturen)       {lcn="[lcn_pi:SETPOINT_VALUE.0.210.1.Celsius]"}
String TempSollOGKindS    "OG Kind Soll S [%s °C]"        <temperature>   (OG_Temperaturen)       {lcn="[lcn_pi:SETPOINT_VALUE.0.210.1.Celsius]"}
Number TempSollOGKind1N   "OG Kind Soll 1N [%f °C]"       <temperature>   (OG_Temperaturen)       {lcn="[lcn_pi:SETPOINT_VALUE.0.210.1.°C]"}
String TempSollOGKind1S   "OG Kind Soll 1S [%s °C]"       <temperature>   (OG_Temperaturen)       {lcn="[lcn_pi:SETPOINT_VALUE.0.210.1.°C]"}
String lcnSetPoint        "Set-point [%s °C]"             <temperature>   (OG_Temperaturen)       {lcn="[lcn_pi:SETPOINT_VALUE.0.210.1.°C]"}
Number lcnSetPointDim     "Set-point (10-23°C) [%f °C]"   <temperature>   (OG_Temperaturen)       {lcn="[lcn_pi:SETPOINT_VALUE.0.210.1.°C], [%i:lcn_pi:SETPOINT.0.210.1.%i°C]“}
Sitemap

Code: Alles auswählen

 Text item=TempOGKind
  Text item=lcnSetPoint
  Setpoint item=lcnSetPointDim step=0.5 minValue=16 maxValue=23
  Text item=TempSollOGKindS
  Text item=TempSollOGKind1S
  Text item=TempSollOGKindN
  Text item=TempSollOGKind1N
So siehts im Browser aus
Darstellung im Browser
Darstellung im Browser
LCN Bus sowie LinHK@PI, OpenHab@PI usw....

oliwel
Lord Forum
Lord Forum
Beiträge: 1384
Registriert: So 8. Jul 2012, 00:59
Status: Offline

#2 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von oliwel »

Hi Ralf,

benutzt du zum Koppeln die Issendorfsche PCHK oder die LinHK vom Busprofi? Falls du die LinHK nutzt, schau mal ob du Meldungen zu ungültigen Telegrammen im LinHK Logfile hast. Ich habe mit der LinHK aktuell ein Problem Variablen zu SETZEN, weil das OpenHAB Binding anders mit Zahlenwerten umgeht wie die LinHK. Niko ist da gerade an einer Lösung.

Oli

Themenersteller
rayb
Schon länger hier...
Schon länger hier...
Beiträge: 51
Registriert: Di 9. Apr 2013, 21:15
Kontaktdaten:
Status: Offline

#3 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von rayb »

Hi Oli,
ich benutzte eine LinHK auf einer Raspberry P2. Dort finde ich im aktuellen /var/log/linhk-running-dir/linhk-...log zwar solche diese beiden Typen von fehlerhaften Einträge:

Code: Alles auswählen

[20161029 16:45:00.917978]  [error] invalid PCK command: >M000235.MWT003
[20161030 15:34:54.918876]  [notice] error ratio 3 [35591/3123938]
Die kommen aber ständig und waren auch schon da, bevor ich diese Abfragen für den Regler eingerichtet habe.

Leider sind diese Meldungen wenig aussagekräftig.

Gruß
Ralf
LCN Bus sowie LinHK@PI, OpenHab@PI usw....

mr_claus
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 488
Registriert: Do 29. Dez 2011, 21:47
Status: Offline

#4 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von mr_claus »

Anbei meine Umsetzung per PCHK, die funktioniert einwandfrei.

Code: Alles auswählen

Number  Regulator_OG_Buero_2            "Temperatur Einstellung Büro 2 [%.1f °C]"
                <heating>
                (gTemperatur, gOG_Buero_2)
                {lcn="[LCN:SETPOINT_VALUE.0.100.1.CELSIUS], [%i:LCN:SETPOINT.0.100.1.%iCELSIUS]"}

Themenersteller
rayb
Schon länger hier...
Schon länger hier...
Beiträge: 51
Registriert: Di 9. Apr 2013, 21:15
Kontaktdaten:
Status: Offline

#5 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von rayb »

Hallo mr_claus,

ich hab mir das Beispiel von Dir direkt übernommen. Funktioniert jedoch nicht. Sowohl im Browser als auch in der App passiert nix. Ob die Ursache am linhk liegt... könnte schon sein. Hab die leider nicht herum fliegen um es ausprobieren zu können :rolleyes:

Welchen Mode hast Du für das Binding eingestellt?

lcn:mode1=native50

Danke & Gruß
Ralf
LCN Bus sowie LinHK@PI, OpenHab@PI usw....

mr_claus
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 488
Registriert: Do 29. Dez 2011, 21:47
Status: Offline

#6 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von mr_claus »

Genau, ich verwende

Code: Alles auswählen

lcn:mode1=native50
Ich habe immer mehr den Eindruck man ist mit PCHK besser dran, da funktioniert wenigstens alles.
@Oli: Funktioniert es bei Dir und der LinHK?

Viele Grüße
Claus

Themenersteller
rayb
Schon länger hier...
Schon länger hier...
Beiträge: 51
Registriert: Di 9. Apr 2013, 21:15
Kontaktdaten:
Status: Offline

#7 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von rayb »

Moin Claus,

wie "... da funktioniert wenigstens alles."

Hast Du noch andere Bespiele/Themen wo es Probleme gibt :confused:

Gruß
Ralf
LCN Bus sowie LinHK@PI, OpenHab@PI usw....
Benutzeravatar

Thomas
Alleswisser
Alleswisser
Beiträge: 5752
Registriert: Mo 21. Apr 2008, 20:03
Status: Offline

#8 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von Thomas »

Moin Ralf,

Ja, es gibt noch mehr Beispiele...
Aber die kann ich hier nicht bringen.

Mal sehen wie weit Claus mit dem OpenHab Binding zur PCHK weiter kommt, dann könnte man mehr "vergleichen". (Oder jemand anders, der LinHk und PCHK im Einsatz hat...)
Ich nutze OpneHab nicht, habe aber viele Dinge im IPS gelöst, die jetzt über die PCHK gehen, da ich die LinHk nicht mehr nutzen kann.
lg Thomas

oliwel
Lord Forum
Lord Forum
Beiträge: 1384
Registriert: So 8. Jul 2012, 00:59
Status: Offline

#9 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von oliwel »

Hallo Claus, Ralf,

ich hab den Schnipsel mal probiert und erhalte dann:

Code: Alles auswählen

invalid PCK command: >M000035!
- Niko meinte in dem anderen Thread das dieses Kommando nicht in der PCHK Spec steht, wenn ich den Quelllcode richtig interpretiere handelt es sich hier um eine Bestätigung der letzten Aktion:

Code: Alles auswählen

    /** Pattern to parse positive acknowledges. */
    public static final Pattern PATTERN_ACK_POS = Pattern.compile("-M(?<segId>\\d{3})(?<modId>\\d{3})!");
Das Kommando das Ralf als ungültig gemeldet bekommt ist m.E. die Messwert-Abfrage von Var 3 in Modul 235 mit dem bereits mit Niko diskutierten Problem das die Variablen-Nummer nun dreitstellig daher kommt. Das deckt sich auch mit Beobachtungen an meiner Anlage.

Oli

oliwel
Lord Forum
Lord Forum
Beiträge: 1384
Registriert: So 8. Jul 2012, 00:59
Status: Offline

#10 Re: Wert für einen Regler (Heizung) anzeigen

Beitrag von oliwel »

Vergesst den letzten Beitrag - ich glaube das Problem liegt in der X2 Erweiterung von Claus.

Ich hab mal die Netzwerkverbindung zwischen OpenHAB und der LinHK abgehört und bekomme beim Setzen des Reglers mit dem o.g. Code folgendes Kommando X2030032215, das kann m.E. nicht funktionieren. Erst danach kommt das "kaputte" M000035! - da hat Niko wohl in der Tat Recht und das Binding schickt ein unvollständiges Kommando.

Oli

Nachtrag: Dieser X2 Code ist wohl nicht von Claus sondern von Issendorf - und das Binding ist voller X2 Code-Teile die nie erreicht werden. Ich steig da grad nicht mehr durch...
Antworten