Eingangswert umrechnen hilfe!!!!!

Kabellose und kabelgebundene Sender und Empfänger der klassischen Homematic-Serie

Moderator: Co-Administratoren

Tank
Beiträge: 60
Registriert: 20.11.2011, 12:08

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von Tank » 19.12.2011, 17:23

DrTob hat geschrieben:Das ist aber weit von linear entfernt. Hast du eine Kennlinie? Ansonsten wird's sehr ungenau.
... oder vieleicht noch ein paar Werte.
Wenn Du mir noch die Codezeile gibst wie Du die Sensorwerte ausliest und den Namen einer Systemvariable in die Du die Temperatur abgelegt haben willst, dann pass ich Dir das Skript gerne an.

stephanflug
Beiträge: 10
Registriert: 12.12.2011, 13:40

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von stephanflug » 19.12.2011, 20:54

Tank hat geschrieben:
DrTob hat geschrieben:Das ist aber weit von linear entfernt. Hast du eine Kennlinie? Ansonsten wird's sehr ungenau.
... oder vieleicht noch ein paar Werte.
Wenn Du mir noch die Codezeile gibst wie Du die Sensorwerte ausliest und den Namen einer Systemvariable in die Du die Temperatur abgelegt haben willst, dann pass ich Dir das Skript gerne an.
Danke erstmal das du dich so bemühst um mein kleines Problem.

Meherer Werte bekommt man indem man wie eine Gleichung rechnet.Und immer von den 0 Grad ausgeht.(Des passt immer genau.)
Ich hoffe du kannst damit was anfangen.

245.........0 Grad
300..........x

x=300:245= 1,22x10= 12,2 Grad

oder

245...........0 Grad
500............x

X=500:245= 2,04x 10= 20,4 Grad


Der sensor heit bei mir außen_temp

Die systemvariable hät ich mir gedacht under den Namen: außentemperatur(oder einen andern Namen nicht so schlimm)

danke daweil bist der beste.

DrTob
Beiträge: 3426
Registriert: 29.10.2010, 08:24
Danksagung erhalten: 5 Mal

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von DrTob » 19.12.2011, 21:51

stephanflug hat geschrieben:
Tank hat geschrieben:
DrTob hat geschrieben:Das ist aber weit von linear entfernt. Hast du eine Kennlinie? Ansonsten wird's sehr ungenau.
... oder vieleicht noch ein paar Werte.
Wenn Du mir noch die Codezeile gibst wie Du die Sensorwerte ausliest und den Namen einer Systemvariable in die Du die Temperatur abgelegt haben willst, dann pass ich Dir das Skript gerne an.
Danke erstmal das du dich so bemühst um mein kleines Problem.

Meherer Werte bekommt man indem man wie eine Gleichung rechnet.Und immer von den 0 Grad ausgeht.(Des passt immer genau.)
Ich hoffe du kannst damit was anfangen.

245.........0 Grad
300..........x

x=300:245= 1,22x10= 12,2 Grad

oder

245...........0 Grad
500............x

X=500:245= 2,04x 10= 20,4 Grad


Der sensor heit bei mir außen_temp

Die systemvariable hät ich mir gedacht under den Namen: außentemperatur(oder einen andern Namen nicht so schlimm)

danke daweil bist der beste.
was ist denn das für eine Rechnung??

die kann nicht richtig sein:

245.........0 Grad
245..........x

x=245:245= 1x10= 10Grad

also 0 Grad = 10 Grad :D

Tank
Beiträge: 60
Registriert: 20.11.2011, 12:08

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von Tank » 19.12.2011, 23:42

... oder
245.........0 Grad
125..........x
X=125:245=0,51*10= 5,1 Grad -----> Du hattest in der ersten Liste aber -20 Grad angegeben

Kuck doch mal, ob Du genauere Infos für uns hast ...
Gruss Josef

h4zz
Beiträge: 130
Registriert: 11.09.2011, 17:13
Wohnort: Rheinland-Pfalz, Kreis Bad Kreuznach

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von h4zz » 25.12.2011, 16:03

stephanflug hat geschrieben:Hallo ihr lieben,

habe bei meinen I/O-Modul 12 Eingänge 14 Schaltausgänge Hutschienenmontage (drahtgebunden) mit analogeingange ein Problem
und zwar ist es mir noch nicht gelungen den Eingangswert in einen Temperaturwert umzuschreiben.Hab nämlich einen Temperatur Außensensor mit 0-10v angeschlossen.Und es zeigt mir nur einen Eingangswert an den ich gerne in einer Temperatur hät.

Darum frag ich euch ob es da einen scrip gibt oder das anders lösen kann.

Hi, was für ein Sensor hast du denn in Gebrauch?

Gruß
Fabian
Gruß
Fabian

------------------------------------------
299 Kanäle in 85 Geräten
CUNO,CCU Historian, Webmatic...
--------------------------------------------

Berla
Beiträge: 32
Registriert: 30.12.2007, 11:35

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von Berla » 01.01.2012, 15:01

Hallo,
Ich Klinke mich mal hier ein.Ich habe ebenfalls Probleme mit der Eingangswert Umrechnung.Für einige hier,da gehöre ich auch dazu,sind Skriptprogramierung ein fast unüberwindliches Hindernis.Es wäre schön wenn im Forum bei HomeMatic Tipps
und Tricks einige Beispiele aufgeführt wären.Ich habe mir das Beispiel von Josef mal angeschaut.

Code: Alles auswählen

    real Takt;
    real Tstart;
    real Tend;
    real Sstart;
    real Send;
    real Sakt;
    real Wasserstand;


    !-----------------------------
    ! Potistellung einlesen
    !-----------------------------
    Takt = dom.GetObject("Zisterne:1").DPByHssDP("TEMPERATURE").Value();

    !-----------------------------------------------------------------
    ! Tabelle mit Verhältnissen Potistellung/Seillänge
    !-----------------------------------------------------------------
    if ((Takt >=-11.8) && (Takt <-8.2)) {
       Tstart = -11.8;Tend=-8.2; Sstart=1.5 ; Send=50.0;
    } else {
    if ((Takt >=-8.2) && (Takt <-3.1)) {
      Tstart = -8.2; Tend=-3.1; Sstart=50.0;Send=100.0;
    } else {
      if ((Takt >=-3.1 ) && ( Takt <5.1))
      {
       Tstart = -3.1; Tend=5.1; Sstart=100.0;Send=150.0;
      } else {
       if ((Takt >=5.1 ) && ( Takt <10.4)) {
        Tstart = 5.1; Tend=10.4; Sstart=150.0;Send=175.0;
       } else {
        if ((Takt >=10.4 ) && ( Takt <15.0)) {
         Tstart = 10.4; Tend=15.0; Sstart=175.0;Send=200.0;
        } else {
         if ((Takt >=15.0 ) && ( Takt <23.6)) {
          Tstart = 15.0; Tend=23.6; Sstart=200.0;Send=225.0;
         } else {
          if ((Takt >=23.6 ) && ( Takt <39.8)) {
           Tstart = 23.6; Tend=39.8; Sstart=225.0;Send=250.0;
          } else {
           if ((Takt >=39.8 ) && ( Takt <55.4)) {
             Tstart = 39.8; Tend=55.4; Sstart=250.0;Send=269.0;
           } else {
             Tstart = 0.0; Tend=0.0; Sstart=0.0;Send=0.0;
           }
          }
         }
        }
       }
      }
    }
    }

    !-----------------------------
    ! Wasserstand berechnen
    !-----------------------------
    Wasserstand = (((Send -Sstart) / (Tend - Tstart)) * (Takt - Tstart) )+ Sstart;

    !-----------------------------
    ! Wasserstand setzen
    !-----------------------------
    dom.GetObject("Zisterne Fuellstand").State(Wasserstand);
Dazu nun die Frage ,wie viel werte z.B.bei der Temperaturmessung in die Übersetzungstabelle eingefügt werden müssen,um die Umrechnung des Eingangswertes zu Temperatur Grad genau wiederzugeben.(Ich gehe mal von einem Temperaturbereich von -10Grad bis +50Grad aus.)Danke schon mal für eine Info.
Gruß
Bernd

DrTob
Beiträge: 3426
Registriert: 29.10.2010, 08:24
Danksagung erhalten: 5 Mal

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von DrTob » 01.01.2012, 15:51

Berla hat geschrieben: Dazu nun die Frage ,wie viel werte z.B.bei der Temperaturmessung in die Übersetzungstabelle eingefügt werden müssen,um die Umrechnung des Eingangswertes zu Temperatur Grad genau wiederzugeben.(Ich gehe mal von einem Temperaturbereich von -10Grad bis +50Grad aus.)Danke schon mal für eine Info.
Gruß
Bernd
Das kommt auf deinen Temperatursensor an. Wenn die Umwandlung linear erfolgt reichen zwei, ansonsten kommt es sehr stark auf die Kennlinie an. Auch hier gilt: Ohne genauere Informationen kommen wir nicht weiter.

Berla
Beiträge: 32
Registriert: 30.12.2007, 11:35

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von Berla » 01.01.2012, 16:34

Hallo,
Hier im Anhang z.B. mal Teile die jeder verbauen kann.
Danke .
Gruß
Bernd
Dateianhänge
188140-da-01-de-PT_100_im_Gehaeuse_mit_Kabel.pdf
Sensor Daten
(97.79 KiB) 111-mal heruntergeladen
502152-da-01-de-MESSUMFORMMODUL_PT1000_10V__30__70C.pdf
Modul 0-10V
(560.46 KiB) 139-mal heruntergeladen

Tank
Beiträge: 60
Registriert: 20.11.2011, 12:08

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von Tank » 01.01.2012, 20:03

Hallo Bernhard,

DrTob's Aussage mal als Graphik.
Anbei mein Graph, den ich mir in Excel gebastelt hatte, um meine "Übersetzungstabelle" von gemessener Temperatur zu Füllstand meiner Zisterne zu erzeugen.
messwerte.png
Wie Du siehst, habe ich 9 Messwerte aufgenommen. In Rot habe ich mal eingezeichnet, was passieren würde wenn Du nur 3 Messwerte nehmen würdest. Dann würde mein vorgeschlagenes Skript zwischen den drei Werten das Ergebnis linear berechnen. Du bekommst also ganz andere Werte. In Gelb habe ich die Fehler eingezeichnet, die mein Skript liefern würde.
=> Wenn Du meinen Vorschlag verwenden willst, dann musst Du wissen dass die errechneten Werte immer einen Fehler haben. Der Fehler wird umso geringer, je mehr Messwerte Du verwendest, und je flacher die Kurve ist.
(Du musst Dir das in etwa so vorstellen als würdest Du die Aufgabe bekommen, die Originalkurve mit möglichst wenigen Strichen mit dem Lineal nachzuzeichnen. Je mehr Striche Du machen darfst (also je mehr Zwischenwerte Du in der Tabelle hast), desto genauer kannst Du dich der Originallinie annähern)
Hope this helps. Gruss Josef.

Berla
Beiträge: 32
Registriert: 30.12.2007, 11:35

Re: Eingangswert umrechnen hilfe!!!!!

Beitrag von Berla » 02.01.2012, 17:26

Hallo Josef,
Danke erst mal,ich schaue mir das ganze noch mal an und teste das mit meinen Werten.
Ich melde mich dann wieder.
Gruß
Bernd

Antworten

Zurück zu „HomeMatic Aktoren und Sensoren (klassisch)“