Auflösung PT100

Rund um die Software von Revolution Pi
matzeb
Posts: 10
Joined: 19 Mar 2021, 23:56

Auflösung PT100

Post 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 11329 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 11329 times
225.PNG
225.PNG (103.46 KiB) Viewed 11329 times
matzeb
Posts: 10
Joined: 19 Mar 2021, 23:56

Re: Auflösung PT100

Post 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
User avatar
lukas
Expert
Posts: 186
Joined: 13 Feb 2017, 10:29

Re: Auflösung PT100

Post 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.
matzeb
Posts: 10
Joined: 19 Mar 2021, 23:56

Re: Auflösung PT100

Post 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?
User avatar
dirk
KUNBUS
Posts: 2174
Joined: 15 Dec 2016, 13:19

Re: Auflösung PT100

Post 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.
matzeb
Posts: 10
Joined: 19 Mar 2021, 23:56

Re: Auflösung PT100

Post 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?
matzeb
Posts: 10
Joined: 19 Mar 2021, 23:56

Re: Auflösung PT100

Post 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
->Johannes<-

Re: Auflösung PT100

Post 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
matzeb
Posts: 10
Joined: 19 Mar 2021, 23:56

Re: Auflösung PT100

Post 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....
Attachments
temp02.PNG
temp02.PNG (28.03 KiB) Viewed 9419 times
Temp01.PNG
Temp01.PNG (34.21 KiB) Viewed 9419 times
matzeb
Posts: 10
Joined: 19 Mar 2021, 23:56

Re: Auflösung PT100

Post by matzeb »

und in eurem Code wird der Ohm-Wert aber dann mit 100 multipliziert..
Attachments
code.PNG
code.PNG (7.53 KiB) Viewed 9417 times
Post Reply