[gefixt] 1-Wire Modul 'FAULTY'?

Folks,

ich war sehr glücklich, als es bekannt wurde, dass IPS auch 1-Wire unterstützt - so sollten weitere Funktionen in unserem ‚Altbau‘ realisiert werden.

Letzte Woche dann, konnte ich stolz berichten, dass es mir gelungen ist 1-Wire mittels XPORT über das Ethernet zu ‚redirecten‘.

Was war mein Ziel:
Ich wollte anfänglich lediglich Kessel Vor- und Rücklauf aufzeichnen und dann die Werte und das Delta visualisieren - also erst mal nur 2 Temperatursensoren im 1-Wire Netz nutzen.

Da mich auch interessiert hat, inwieweit die individuellen Sensoren streuen habe ich auf meinem Schreibtisch einfach die beiden Elemente mit einer amerikanischen Dokumentemetallklammer fixiert, um eine Temperaturgleichverteilung sicherzustellen. Die mittlere Temperatur in meinem Büro ist um die 22 Gard C.

Das Ergenbins sah erst ganz gut aus, doch plötzlich wurden Temperatursprünge aufgezeichnet, die nicht der Realität entsprachen.

Mein Verdacht fiel natürlich sofort auf die COM-Ethernet Umsetzung und ich realisierte das 1-Wire netz dann nach 18:00 wieder ganz normal an der seriellen Schnittstelle meines Servers (COM1) - dies lief dann gestern ab 19:00 Uhr - nur war die angezeigte Temperatur ca. 1,5 Grad zu niedrig.

Doch auch hier nach 21:00 Temperatursprünge - interessant ist, dass sich beide Sensoren dabei weitestgehend synchron verhalten.

Bei genauer Betrachtung scheint es so, dass bei bestimmten Temperaturen (und damit serielle Bitmuster vom OW-Device) falsche Werte errechnet und ausgegeben werden.

Maine Frage an paresy: Was genau macht dein Onewire Modul? Bekommt es bereits einen fertigen Wert von TMEX oder modelt es erst einen Wert zusammen? Hast du eine Idee?

Hat jemand von Euch auch schon dieses Verhalten beobachtet?

Seltsam, seltsam :confused:

Gruss
Dieter

Hallo Dieter,

das IP-Symcon Modul verwendet TMEX und prüft die Übertragung per CRC (Cyclic Redundancy Check).
Ich werde gleich mal ein 1-Wire Thermometer in unseren „Klimaofen“ legen zwecks 24h Test – Ergebnis folgt morgen.

MST

Hallo steiner,

mach auch mal das Doppel, also zwei bei gleichen Verhaeltnissen. Normalerweise sollte das Ergebnis dann ja anders wie bei Dieter ausfallen.

Gruss Torro

Der Ablauf sieht folgendermaßen aus:

-Bus nach eDevice suchen
-Device ansprechen
-Device in „konvertier“ Modus versetzten
-1s warten
-Device prüfen, ob konvertierung OK
-Device auslesen (hier -> 8 Bytes)
-7Bytes + 1CRC Byte durch die CRC Routine schicken und wenn OK, dann Wert an IPS weitergeben.

Ich wüsste nicht, wie bei einem per Hardware generierten CRC Check, der in IPS richtig verifiziert wird Fehler auftauchen können :confused:
Aber wird werden uns das auf jedenfall ansehen. Welcher Sendor ist das? Der normale oder der höchauflösende?

Grüße, paresy

paresy - es sind die Sensoren aus dem Kit von Euch

Gruss Dieter

Wir bieten den DS18S20 http://www.maxim-ic.com/getds.cfm?qv_pk=2815&ln=en an.
Der hält auch die Temperaturen in unserer Sauna aus, die IP-Symcon regelt: http://farbsauna.de/

MST

Ich habe noch einmal eine Verständnisfrage in Bezug des Datenblattes zum DS18S20. Dort ist erklärt, dass der Temperaturwert mit 9 Bit repräsentiert ist, damit ergibt sich 0,5degC pro Bit.

Schaut man sich aber die angezeigten Werte in IPS und/oder auch die Aufzeichnung über Torro’s RRD GraphBuilder an, so sind die Abstufungen zwischen den einzelnen Messwerten (oder Aufzeichnungen) wesentlich feiner als 0,5degC.

Kann das jemand erklären? Ich hätte eindeutige Ergebnisse erwartet wie z.B. 20,0 - 20,5 - 21,0 - 21,5 usw.

Irgendwie fehlt mir noch das AHA-Erlebnis :confused:

Gruss Dieter

Hallo,
hab’ seit ca 1 Woche ähnliches problem, ab und zu springen die werte ganz aus dem muster. Ich bezweifle das die temperatur für ca 30 minuten von 20 auf 28 grad in meinem eingangsbereich schwanken kann. Hier und da ist es auch nur für ne minute.

Habe das immer auf meine noch sehr „offene“ test-aufstellung geschoben, die lötstellen nicht isoliert usw. Aber es verhält sich wie bei babba !!:confused:

@babba:
wenn ich nicht irre kann dir der sensor die temperatur mit 4-5 dezimalen rauswerfen, was ja eine grössere genauigkeit vorschwindelt. Meine aber das der wirkliche wert immer in dem ±0,5 grad fenster um die angezeigte temp liegt, bin da aber nicht 100% sicher

mfg
Torsten

Hallo Dieter,

das „AHA-Erlebnis“: 0,5 Grad genau und der „Rest“ wird durch wiederum 2 Byte interpoliert
(mit CRC!).

@Torsten,

„Lötstellen nicht isoliert“ ist für den Meßwert egal – da digital und CRC.

Es gibt gleich ein neues Modul. Testet mal bitte.

MST

Ich habe mal dir Interpolier Routine etwas geändert. Wenn ich mich nicht irre, hatte ich falsch gerundet gehabt, bevor ich den Wert Interpoliert habe. Dadurch auch der genau 1°C Sprung.

Anbei die geändete Fassung -> kompatibel zur aktuellen BETA

Grüße, paresy

Hallo,

nur fuer die Beta? Ich will aber noch nicht umstellen…

Gruss Torro

… Freitag (Abend) für alle und alles :slight_smile:

paresy - schon mal Danke, dass du dich der Sache angenommen hast.

Hab die neue „Device.OneWire.dll“ in den Module Ordner geworfen und dann Neustart - schaun wir mal die kommenden 12 Stunden - melde mich wieder mit dem Ergebnis.

Gruss Dieter

Ich wette auf VDD-spannung die uber phantom-power nicht stabil bleibt und dadurch die temp-werte springen.
Wenn meine 1-wires kommen mehr erfahrungsberichte :wink:

Erste Rückmeldung!!

Sieht schon wesentlich besser aus:

bleibt nur noch die leichte ‚Oszillation‘ mit der Frequenz von ca. 1 Stunde bei einer Amplitude von 0,5 Grad pp zu ergründen.

Ach ja, ich habe wieder beide Sensoren am 1-Wire Netz - ohne Probleme

Heute fühle ich mich schon besser :smiley: - Danke paresy

Gruss Dieter

So, hier wie versprochen, die Ergebnisse nach fast 12 Stunden:

Das Ergbenis ist schon viel besser, mit dem nachgearbeiteten Modul - auch entsprechen die gemessenen Werte weitestgehend der Realität (< ±0,5Grad C).

Scheinbar gibt es immer noch ab und an Wertesprünge, jetzt aber nur noch ca. 0,5 Grad C.

Ich lese die Sensoren jede Minute aus, der RRD-Poller holt den akzuellen Wert alle 5 Minuten.

Seltsam ist das ‚oszillieren‘ um den aktuellen Messwert.

Was meint Ihr dazu?

Ach ja Michael, hast du mal Euren Ofen angeworfen? Gibt es schon Ergebnisse dazu?

Gruss

Dieter

Hallo babba,

kannst Du das mal mit dem Minutenpoller machen? Dann kriegen wir realistischere Werte gegenueber den tatsaechlichen Messungen. Wenn Du nur aller 5 Minuten pollen laesst, greift die statische Berechnung bereits so, dass das den realen Messwerten im Minutenabstand nicht mehr entspricht.

Gruss Torro

Ok - mach ich gleich mal - morgen dazu mehr

Gruss Dieter

Hallo Dieter,

ich benutze den 1-Wire Bus mit einer Länge von zur Zeit über 100m – ohne Isolierung.
Es läuft bei mir alles ohne Probleme. Angeschlossen sind Termomoter, I/O sowie der
A/D-Wandler. Das Bild zeigt das Regelverhalten von meinen PID-Regler: ± 0,2 Grad genau :slight_smile:

MST

pid_1wire.jpg