Arduino Forum

International => Deutsch => Topic started by: hoer173 on Mar 29, 2018, 08:25 pm

Title: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 29, 2018, 08:25 pm
hey!

kurze geschichte!

ich hab hier ein steuergerät welches per hexadecimal einen widerstandswert ausgibt!
nach komma 3 stellen!
das steuergerät überwacht einen flammenwächter!
die orginal windowssoftware arbeitet per k line adapter.. definitiv ist das der ohm wert des flammenwächters!
per ohmmeter parallel zur ausgabe dee software abgeglichen und den hexcode abgefangen!
mehrfach durchgespielt!

hier meine tabelle...

HEX DEC OHM     DEC/OHM
3b    59    0,405  0,0068644068
3c    60    0,414  0,0069
3d    61    0,424  0,00695
40    64    0,455  0,007109375
42    66    0,476  0,0072121212
48    72    0,542  0,0075277778
4b    75    0,578  0,0077066667
4c    76    0,59    0,0077631579
4d    77    0,603  0,0078311688
4e    78    0,615  0,0078846154
5a    90    0,784  0,0087111111
5f    95    0,865  0,0091052632
61   97    0,9      0,0092783505

Leider finde ich nicht den richtigen rechenweg um in meinem arduino programm den widerstandswert weiter zu benutzen:(


ich wäre sehr dankbar wenn ihr mir dabei helfen könntet! danke!
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: postmaster-ino on Mar 29, 2018, 09:06 pm
Hi

Wer ist DEC/OHM?
Alle 0,01Ω (ungefähr ein Schritt des Eingangswert) erhöht sich DEC/OHM um ~0,00005

Die Werte laufen aber gut auseinander.
Um von 60 auf 90 zu kommen, wäre
Differenz 30 x 0,00005 = 0,0015
Zuzüglich des Wertes bei 60, Welcher 0,0069 ist, kämst Du auf 0,0084, statt auf Deine gemessenen(??) 0,008711111

MfG
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Thorsten4171 on Mar 29, 2018, 10:04 pm
Quote
Wer ist DEC/OHM?
Denke soll OHM/DEC heißen. Dann ist es kein linearer Widerstand sondern log denke ich. Und da fangen
die Probleme an 30 Jahre aus der Schule und der Gehirnkasten ist leer. :)
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 29, 2018, 10:18 pm
genau das iat mein problem!

ich weis nicht mehr weiter..

ich weis 3a ist der kleinste hex und 6f der höchste.. 6x16=96... fest definiert.. aber das doch scheisse
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: HotSystems on Mar 29, 2018, 10:21 pm
..... aber das doch scheisse
Kannst du dich auch gewählter ausdrücken ?
Oder ist das deine übliche Umgangssprache ?
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Thorsten4171 on Mar 29, 2018, 10:33 pm
@hoer173


Komme auch nicht weiter. Werde mit deinem Einverständnis die Zahlen dem Mathegenie in der Fam. beim morgigen K-Essen vorlegen vielleicht springt ja eine Formel bei raus.


mfG
Thorsten
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Doc_Arduino on Mar 30, 2018, 12:43 am
Hallo,

in der Regel misst man mit einem Ohmmeter nicht in einer Schaltung die unter Spannung steht. Da kommt nur Müll raus. Im dümmsten Fall gehts Messgerät kaputt. Weil das Messgerät selbst dafür eine Spannung ausgibt/anlegt.

Was ich nicht verstehe, wenn der hex Wert der Widerstandswert ist, was möchtest du daran noch umrechnen?
Wenn du 0x3B ausgelesen bekommst, dann hast du einen dezimalen Wert von 59 Ohm. Warum weiter umrechnen?

Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 30, 2018, 10:19 am
weil der dec wert nicht stimmt zum realen ohm wert..

da steckt irgendeine umrechnung drin.


der flammenwächter hat kalt 0.3ohm und heiss max. 1.3ohm



wäre einverstanden  wenn du die daten weiter gibst thorsten!
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 30, 2018, 10:34 am
ich hab bri laufendem betrieb der heizung per diagnosesoftware die telegramme gelogt..

also das was ich hier weitergebe an zahlen und werten stimmt 100%

ich hab alles selber ausgerechnet und hinbekommen umzuschluesseln ausser den widerstand des flammenwächters!

spannung in hex nach dec und dann ist jeder schritt 1/16.

temperatur hex ist int8_t nach dec

pumpe ist hex nach dec *0.277 = freq in hz

usw.

glühstift in % ist hex nach dec

und der flammenwächter ist hex nach ????

:(

reverse eng. wäre zu kompliziert :)
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Doc_Arduino on Mar 30, 2018, 11:10 am
Hallo,

wenn das so ist, fällt mir nur ein, den Fühler ausbauen und eine Messwerttabelle aufnehmen. Meinetwegen in Eiswasser halten (0°C) und in kochendes Wasser (100°C). Dann haste eine Zweipunktkalibrierung gemacht. Wenn das ein K-Fühler ist, dann ist das kein Widerstand in dem Sinne. Er gibt je nach Temp. eine Spannung aus. Diese wird mittels MAX6675 oder neueren oder anderen aufbereitet. Vom Vorhaben Widerstand messen musst du dich trennen. Du misst die Temperatur. Deine hex Werte wird die Temperatur am Fühler sein.  https://de.wikipedia.org/wiki/Thermoelement (https://de.wikipedia.org/wiki/Thermoelement)
Ohne nähere Angaben zur Schaltung womit der hex Wert generiert wird sagt mir das jedenfalls meine Glaskugel.  ;)
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Schuppeste on Mar 30, 2018, 11:21 am
am besten mit nem Online Tool graphisch an Liniendiagrammen visualisieren.

EDIT:

Ich habe das mal versucht, an der Linie konnte ich sehen das eine Rechnung unmöglich ist, also müsste man die "fehlenden" Zeilen ergänzen.

Anbei ein Durchschnittsberechnung der einzelnen Stufenunterschiede. Jetzt könnte man die Tabelle mit fehlen DECs ergänzen um weiterzuschauen.

Eine unförmige Kurve ist meist ein z.B. -1 oder +1 in der Formel.
(https://forum.arduino.cc/index.php?action=dlattach;topic=538309.0;attach=251492)


Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Theseus on Mar 30, 2018, 11:29 am
Ich verstehe ehrlich gesagt nicht, was du machst. Woher kommen welche Werte? Während die originale Elektronik die Temperatur misst, kann man nicht gleichzeitig mit einem Ohmmeter den Widerstandswert bestimmen.
Ist das wirklich ein Widerstandswert? Es wäre auch eine Thermospannung zwischen an der Kontaktstelle zweier Metalle denkbar.

Aber allgemein: Wenn man einen Zusammenhang zwischen Werten sucht, ist eine grafische Auftragung sehr wertvoll. Oft sieht man da schon was ein passender Ansatz wäre. Z.B. kannst du die Werte mit Excel als X-Y-Diagramm auftragen. Dann kannst du in das Diagramm eine Trendlinie einfügen. Du kannst verschiedene Funktions-Ansätze für die Linie vorgeben und durchprobieren. Ich vermute mal was exponentielles. Man kann dann die Funktion der Trendlinie anzeigen lassen.

Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 30, 2018, 11:45 am
nein leute!

die temperatur wird per ntc gemessen!

die temperatur hat nix mit dem flamnenwächter zutun!

die temperatur ist im telegramm ne andere positiin!


telegramm:

sender 0x6b
länge 0x0c
empfänger 0x3f
daten temp 0x?? in c° byte nach uint_8
daten boardspannung 0x?? in volt dec×1/16
daten gebläse 0x?? in% in dec
daten flammenwächter 0x?? in ohm in????
daten gluhstift 0x?? in% in dec
daten kraftstoffpumpe 0x?? in hz in dec×0,277
daten zustände1 0x?? einzelne bits
daten zustände2 0x?? einzelne bits
checksumme 0x xor aus allem!

mir fehlt nur noch der ohmwert! die umschluesselung!

es ist nicht wie beim wbus telegramm! das hier ist ein anderes format passend zum kbus telegramm von bmw!

und dasist der knackpunkt der flammenwächter in hex wir umgerenchnet nach ohm nur...wie?!
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: noiasca on Mar 30, 2018, 11:45 am
Excel, Linienchart zeichnen, trendlienie zeichnen lassen, die exponential Linie kommt gut hin. Funktion ermitteln.

Oder halt ein Referenz-array machen und die Werte einmalig ermitteln und eintragen.
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: postmaster-ino on Mar 30, 2018, 12:51 pm
Eine kleine Bitte hätte ich: Benutze die Shift Taste - Das liest sich grauenhaft!
Hatte ja erhofft, daß sich Das bei zukünftigen Posts Deinerseits bessert - glaube halt noch an das Gute im Menschen, mein Fehler.
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 30, 2018, 12:57 pm
ich schreib nur vom handy... tut mir leid!

das mit dem array war ne idee wenn es nicht lösbar ist... ich hoffe noch immer auf eine loesung mit euch! danke
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: postmaster-ino on Mar 30, 2018, 01:08 pm
Mein Handy korrigiert alle Nase lang selbst das unnötigste Zeug - denke nicht, daß mein Handy 'handy' so durch lassen würde.

Tut mir ebenfalls leid.
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 30, 2018, 06:57 pm
ich habe bereits von 96 Werten 91 ... auch in Excel eingepflegt...

ich muss nun die letzten werte mit Eiswasser und Eisspray plus screencapture herauszwingen...

ich fand das hier noch für das wbus Protokoll

Code: [Select]
void get_status(void)
{
  message_data[0] = QUERY_SENSORS; // sensors - temperature, volts, flame detection, glow plug resistance
  message_length = 1;
  wb_io(WBUS_CMD_QUERY, 1); if (error != 0) return;
  int temp =  message_data[SEN_TEMP] - 50;
  float voltage = ((message_data[SEN_VOLT] * 256) + message_data[SEN_VOLT + 1]) ;//in millivolts
  int FlameOn = message_data[SEN_FD];
  int watts = ((message_data[SEN_HE] * 256) + message_data[SEN_HE + 1]);
  int resistance = ((message_data[SEN_GPR] * 256) + message_data[SEN_GPR + 1]);


die Reihenfolge passt nicht auf mein Protokoll!

Code: [Select]
#define QUERY_SENSORS           0x05 /*!< Assorted sensors. 8 bytes. Byte offsets below. */
#define         SEN_TEMP                0       /*!< Temperature with 50�C offset (20�C is represented by 70) */
#define         SEN_VOLT                1       /*!< 2 bytes Spannung in mili Volt, big endian */
#define         SEN_FD                  3       /*!< 1 byte Flame detector flag */
#define         SEN_HE                  4       /*!< 2 byte, heating power, in percent or watts (semantic seems wrong, heating energy?) */
#define         SEN_GPR                 6       /*!< 2 byte, glow plug resistance in mili Ohm. */



das sind die Schnipsel für  den wbus!

Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Doc_Arduino on Mar 30, 2018, 11:41 pm
Hallo,

wenn das ein NTC ist und kein K-Thermoelement, dann muss es eine Spannungsteilerschaltung geben. Der Teilerwiderstand sollte ein Festwiderstand sein. Die Gesamtspannung ist konstant vom Spannungsteiler. Kannste messen. Danach misst du nur noch den Spannungsabfall über den NTC oder über den anderen. Die ändert sich je nach Temperatur am NTC. Wenn du den Ohm Wert vom Festwiderstand kennst, kannste über die Spannungsmessung und Messwertaufnahme auf den Widerstandswert vom NTC schließen bzw. errechnen. Und wenn du den NTC Typ erkennst der verbaut ist, dann kannste auch ins Datenblatt schauen.

Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: hoer173 on Mar 31, 2018, 04:45 am
ich habs mit viel probieren und rechnen hinbekommen! vielen dank!
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: Tommy56 on Mar 31, 2018, 11:04 am
Es gehört zur Forumskultur, dass man das funktionierende Endergebnis auch im Forum veröffentlicht.

Gruß Tommy
Title: Re: an die mathe freaks:) ich finde nicht den rechenweg!
Post by: postmaster-ino on Mar 31, 2018, 04:09 pm
... auch wird man nicht dümmer, wenn man als 'nicht helfen könnender' sieht, wie man sich das Hirn hätte verknoten müssen ;)

Glückwunsch zum Erfolg und schon Mal Danke für das Feedback

MfG