[phpBB Debug] PHP Warning: in file [ROOT]/ext/kinerity/bestanswer/event/main_listener.php on line 514: Undefined array key "poster_answers"
The Industrial Raspberry Pi Forum • Auflösung PT100
Page 1 of 2

Auflösung PT100

Posted: 20 Mar 2021, 00:41
by matzeb
Hallo,

Bei einem RevPi Compact
verwende ich Codesys 3.5 SP16 in verbindung mit der RevPiBridge-Bibliothek
Eigentlich sollten die analogen Eingänge doch eine bessere Auflösung haben bei 16bit und einer Temperaturmessung mit einen PT100.
0,1 Grad sollte da doch möglich sein?!
PT100 Messung ist am Eingang eingestellt
pt100.PNG
pt100.PNG (46.71 KiB) Viewed 5865 times
Bei mir macht der Wert aber bei Temperaturänderung immer ziemlich große Sprünge. Aktuell bei Raumtemperatur im Ruhezustand immer zwischen 22,5 und 23,6 Grad.
Dazwischen gibts nichts und immer die gleichen Werte. Also kein 22,6 oder 22,8 oder 23,5 usw...
Immer ca. 1,1 Grad Sprünge. Bei Temperaturänderung gehts dann weiter mit 24,6 25,6 26,7 27,7 usw...
236.PNG
236.PNG (90.59 KiB) Viewed 5865 times
225.PNG
225.PNG (103.46 KiB) Viewed 5865 times

Re: Auflösung PT100

Posted: 29 Mar 2021, 23:06
by matzeb
Weis denn niemand eine Lösung? Nicht mal der Hersteller? Wenigstens eine kleine Status Antwort, falls das Problem in bearbeitung ist..?
Grüße Matze

Re: Auflösung PT100

Posted: 31 Mar 2021, 20:22
by lukas
matzeb wrote: 29 Mar 2021, 23:06 Weis denn niemand eine Lösung? Nicht mal der Hersteller? Wenigstens eine kleine Status Antwort, falls das Problem in bearbeitung ist..?
Das wissen offenbar höchstens ehemalige Mitarbeiter. ;)

Im piControl Quelltext findest du die Datei pt100_table.inc. Da ist eine Tabelle drin, über die eine binäre Suche gemacht wird, um den Wert vom ADC in eine Temperatur umzurechnen. Ich vermute die Sprünge, die du siehst, kommen einfach daher, dass die Werte in der Tabelle nicht fein-granular genug sind: Zwischen zehn Grad Celsius sind immer nur 10 Schritte in der Tabelle. Eventuell ist es möglich, diese Tabelle um zusätzliche Werte zu ergänzen und damit exaktere Messungen durchzuführen. Der ADC im Compact hat übrigens 21-Bit Auflösung + 12% Overrange/Underrange (MCP3550-50), allerdings geht in der komplizierten Schaltung mit Booster usw. ein Teil der Genauigkeit verloren.

Re: Auflösung PT100

Posted: 03 Apr 2021, 09:43
by matzeb
oh man... warum macht man das so umständlich... :roll:
Ok.. Muss ich mal suchen. Oder wo finde ich diese Tabelle auf den RevPi Compact genau?

Re: Auflösung PT100

Posted: 16 Apr 2021, 16:28
by dirk
Hi wir sind auch etwas verwundert darüber und am Recherchieren. Allerdings gibt es auch eine Idee für einen Workaround für Dich.
Du kannst die Rohwerte auch direkt über das SysFS auslesen. Codesys hat eine Character-Device-Node-Schnittstelle sowie ein GPIO-SysFS.
Das Lesen von RAW-Worten aus /sys/bus/iio/devices könnte mit der IoDrvGPIOSysfs-Bibliothek in Codesys möglich sein.
Du kannst diesen Weg gehen und schauen, ob es Besserung bringt und auch verlässlich funktioniert.
Wir prüfen derweil alle möglichen Optionen einen passenden Fix für dieses Problem zu finden.

Re: Auflösung PT100

Posted: 16 Apr 2021, 23:34
by matzeb
ok...
Die RAW Datei hab ich denk ich ich letztens schon gefunden, weil ich auch schon auf die Idee gekommen bin mir den Rohwert aus der Datei auszulesen (was glaub ich auch geklappt hat...) und selber zu skalieren...
Allerdings bin ich mit eurer Beschreibung dazu nicht ganz zurecht gekommen, wie ich den umrechnen soll...
Bzw. weis ich jetzt auch nicht ob das die richtige Datei ist...
Der PT100 ist bei mir am IN0 angeschlossen... Also in dem Fall müsste es ja dann die "in_voltage8_raw" Datei sein oder?

Hast du da zufällg die Formel dafür parat?

Re: Auflösung PT100

Posted: 08 Jun 2021, 20:42
by matzeb
Also, guter Support von Ihrer Seite würde anders aussehen...
Schade das man nichts mehr hört. Das macht ihre Firma nicht gerade vertrauenswürdig für eine weitere Abnahme Ihrer Steuerung.


Den Rohwert aus der RAW Datei auslesen funktioniert mitllerweile. Aber egal wie ich rechne und Formeln von Ihrere Seite einsetze...
Es kommt nie das gewünschte Ergebnis raus.
Desweiteren hab ich noch festgestellt, wenn ich den PT100 (-20 bis +150) angeschlossen hab und mit der Standardbibliothek arbeite wie vorher, funktioniert alles was unter 0°C ist überhaupt nicht.
Es wird ein Wert von "Minus 6Tausend und irgendwas" angezeigt.

MFG

Re: Auflösung PT100

Posted: 25 Jun 2021, 13:12
by ->Johannes<-
Hi Matze,
Der PT100 ist bei mir am IN0 angeschlossen... Also in dem Fall müsste es ja dann die "in_voltage8_raw" Datei sein oder?
Das stimmt soweit
Den Rohwert aus der RAW Datei auslesen funktioniert mitllerweile. Aber egal wie ich rechne und Formeln von Ihrere Seite einsetze...
Es kommt nie das gewünschte Ergebnis raus.
Kommst du mit dieser Beschreibung nicht klar?
Code Github Line 299
Letztendlich sollst du den Rohwert mir 12500 multiplizieren, das Ergebnis wir rechtgeshiftet (>>21) und dann mit 6250 addiert.
Damit hast du deine Spannung in mV.

Dieses Ergebnis wird dann mit 10 multipliziert und durch 25 dividiert, damit hast du den Widerstand in Ohm. So hat es gestern bei mir in Codesys funktioniert.

Zeig uns doch mal bitte was du versucht hast. Poste Screenshots wie es auf der Codesys-Seite aussieht.

Viele Grüße

Johannes

Re: Auflösung PT100

Posted: 04 Jul 2021, 13:59
by matzeb
Anscheinend mach ich noch was falsch...
(Programmiere in ST)
Allerdings wenn es bei dir in Codesys funktioniert hat, wäre es vielleicht auch hilfreich (nicht nur für mich)
Wenn du uns deinen Code zeigen würdest...

Wie man sieht, versuche ich ja dann in meinen Code den Widerstandswert auf den Temperaturwert zu skalieren... funktioniert aber auch nicht.. die reale Temperaur liegt bei ca. 25°C, angezeigt wird aber 57,1°C.
und springt dann auch in 1,1 Grad schritten bei Erhöhung nach oben.
Es muss doch möglich sein 0,1 Grad Schritte anzuzeigen!!

Aber auch wenn es dann so irgendwann hier funktionieren sollte, solltet Ihr trotzdem eure Codesys Bibliothek dafür überarbeiten....

Re: Auflösung PT100

Posted: 04 Jul 2021, 14:04
by matzeb
und in eurem Code wird der Ohm-Wert aber dann mit 100 multipliziert..