Servus, der Idiot bin ich. Ich bin kein Elektronikier und werde es sobald auch nicht. Aber vielleicht mögt ihr mir bei diesen für euch bestimmt super einfachem Problem helfen: Ich habe eine ständig verändernde Spannung eines Sensors zwischen u_ein = 0-5V. Diese Eingangsspannung möchte ich über eine Funktion in eine Ausgangsspannung u_aus (zw. 0-5V) ausgeben. Die Funktion ist ein Polynom 4ten Grades, also u_aus = p0 + p1 u_ein + p2 u_ein^2 + ... etc. Das ist auch schon alles. Randbedingung wäre dann nur dass das temperaturspabil bis 100°C funktioniert. Wie würdet ihr das kostengünstig und platzsparend (soll in den Motorraum) lösen? Hintergrund: Ich möchte bei einem alten Auto einen Sensor durch eine moderne/zuverlässigere Variante ersetzen. Der neue Sensor hat aber eine andere Kennlinie (Messwert zu Volt). Also muss ich, beim einsetzen des neuen Sensors, dessen Ausgangswert so umrechnen, dass das Steuergerät genkt, es wäre der alte Sensor dran. Vielen Dank im Voraus - und ihr dürft gern lachen.. aber ich weiß echt nicht wie's geht! Gruß.
Ja was Du machen willst ist auf einem Mikrocontroller ziemlich einfach umzusetzen, sofern man sich bereits damit auskennt. Da Du mit 5V arbeiten möchtest, sollte der Mikrocontroller am besten auch gleich mit 5V arbeiten, das vereinfacht die Schaltung. Du hängst also den Sensor (falls nötig mit dessen Beschaltung) an den Mikrocontroller, dieser wandelt kontinuierlich (per Timerinterrupt beispielsweise) und gibt das Resultat kontinuierlich als PWM Signal (auch mit einem Timer realisiert) aus, welches dann allenfalls noch mit einem RC-Glied geglättet wird.
Hallo fuzzifikation, Du schriebst ueber eine Temperaturmessung mit einem ominoesen Sensor... > Die Funktion ist ein Polynom 4ten Grades... ...was sich für mich bis hierher nach Platinsensor angehorcht hatte. > Das ist auch schon alles. Randbedingung wäre dann nur dass das > temperaturspabil bis 100°C funktioniert. Wie würdet ihr das kostengünstig > und platzsparend (soll in den Motorraum) lösen? Hier wird es etwas abstrakter, denn du schreibst vom Motorraum. In diesem Bereich betragen die Temperaturen selten unter Null Grad Celsius, in diesen seltenen Faellen jedoch sind die Temperaturwerte irrelevant. Fuer den Platinsensor gaebe es naemlich ein Polynom ersten Grades fuer Temperaturen zwischen Null und Hundert Grad Celsius, bzw. eine quadratische Funktion fuer erhoehte Genauigkeit in diesem gewuenschtem Temperaturintervall. > Hintergrund: So hintergruendig wie sie sein koennten sind deine Hintergruende nicht... > Ich möchte bei einem alten Auto einen Sensor durch eine > moderne/zuverlässigere Variante ersetzen. Der neue Sensor hat aber eine > andere Kennlinie (Messwert zu Volt). ..., denn um welchen Wundersensor es sich denn nun konkret handelt laesst Du auch hier im spekulativen Raum des Moeglichen offen. > Also muss ich, beim einsetzen des neuen Sensors, dessen Ausgangswert so > umrechnen, dass das Steuergerät genkt, es wäre der alte Sensor dran. Leyder kann der geneigte Leser auch hier nur ueber die Funktionsweise des zu ersetzenden, hier als "alt" betitelten Sensors mutmaßen. > ...ich weiß echt nicht wie's geht! Ich wuerde folgenden Aufbau Vorschlagen: Sensor -> MCU -> Steuergeraet. Dazu zwei moegliche Behandlungsweysen des technischen Problems: a) Deine MCU ist rechentechnisch fit im Schritt: Direkte Berechnung des Ausgabepegels aus den eingelesenen Sensordaten mit anschließender Spannungsausgabe an das Steuergeraet. b) Dein Kontrolleur verfügt nicht über die entsprechden mathematischen Fähigkeiten bzw. deine Kuenste der Programmierung erlauben nicht die Implementation der fortlaufenden Berechnung aus den Sensordaten: Einmalige Vorberechnung und Speicherung der Ausgangsspannung fuer plausible Sensordaten unter Zuhilfenahme einer elektronischen DV-Anlage. Kontrolleur liest Sensordatum ein und vergleicht mit gespeycherten Werten. Passendes Ausgabedatum finden. Sodann Ausgabe an das Steuergeraet. Beide Behandlungsweysen lassen sich einfachst auf verschiedensten Controllerfamilien implementieren, sowohl a) als auch b) ist z.ß. auf den PMS/MSP430 von TI moeglich und wurde von mir auch schon gemacht. > Gruß. Selbiges zurueck, hth, Иван
Ivan, Klasse Text. in Foren liest man selten so komplizierte Texte **kicher** Anselm p.S.: Tolle Sprache ;)
Zu den Hintergründen (wenn's denn hylft).. Die Hintergründe dachte ich als ausreichend, da damit die Specs geklärt wurden. Aber gut: Es handelt sich um sog. Luftmassenmesser, in beiden Fällen (alt wie neu). Beide liefern einen Spannungswert von 0V-5V in Abhängigkeit des Luftmassenstroms (kg/h). Der alte wird nur nicht mehr gefertigt und ist als aufbereitete Variante selten und dann teuer (wir sprechen von 800EUR alt gegen 400EUR neu). Zu mir: ich kann durchaus programmieren. Das sollte die Schwachstelle nicht sein. Mein fehlendes Wissen dreht sich um Platinenentwicklung. D.h.: Hätte ich eine Platine mit DAC, Mikrocontroller und ADC, die mit BAtteriespannung (zw. 10-15V, schwankend) auskommt, dann ist die Programmierung kein Problem mehr. Zu der Hilfe: Gibt es denn solch fertige Platinen (mit Betriebstemp von -10°C..+100°C) und solcher Bestückung? Die würde ich sofort kaufen!
Klugscheißmodus an Nur so zur Info: im automotiv-Bereich ist die Temperturanforderung im Motorraum -45°C bis +150°C spezifiziert. Klugscheißmodus aus Was mich nun stutzig macht ist 1. dass der LMM nicht mehr gefertigt wird. Mein Auto wird jetzt 18 Jahre und das Teil ist nach wie vor erhältlich. 2. wieso der LMM so teuer ist. Meiner kostet bei Audi als Neutteil 230€ und der ist schätzungsweise sogar größer wie dein Luftmassenmesser Was immer noch sehr hilfreich wäre ist, wie du an dein Polynom 4. Grades gekommen bist. Darüberhinaus kann ich mir nicht vorstellen dass das wirklch stimmen kann
Nur eine kurze Bemerkung zur Berechnung: Wie schon erwähnt wurde, würde ich auch zu einer Look-Up-Table raten. Also passende Ausgangswerte zu den entsprechenden Eingangsdaten zuvor berechnen und dann ggf. inter- bzw. extrapolieren. Von Polynomfunktionen (4. Grades) während des Betriebs zu berechnen würde ich aus Performanz-technischen Gründen abraten, wenn nicht ein entsprechend schneller DSP eingesetzt wird. Zum Controller, würde auch nach einem Controller mit der passenden Eingangsspannung und DAC / ADC als Peripherie suchen. Auf Auflösung und Wandlungsgeschwindigkeit achten. MFG
Zusatz: Manche Controller bezeichnen sich als automotive-tauglich. (kleiner tipp)
Ich habe so eine Schaltung fertig hier. Die Eingangsspannung 0-5V wird mit einem OP gepuffert, von einem PIC gelesen, die 5V Versorgung können auch aus der Bordspannung generiert werden, eine 2,5V-Referenz wird für Vergleichsmessungen herangezogen und ein 10-Bit-DA-Wandler ist auch drauf, dessen Wert dann über einen OP gepuffert ausgegeben wird. Der PIC (28 Pin) kann einfach sein (16F872) oder rattenschnell (18F2431). Die Schaltung wird schon hundertfach in Fahrzeugen/Maschinen eingesetzt und sollte die Temperaturen abkönnen. Mail mich mal an !
>Manche Controller bezeichnen sich als automotive-tauglich.
Das würden vernünftige Controller nie von sich selbst behaupten...;-)
Sie können sich selbst besser einschätzen als ihre
Entwicklungs-Ingenieure.
MfG Paul
Hallo fuzzifikation, Du schriebst: > Es handelt sich um sog. Luftmassenmesser, in beiden Fällen (alt wie > neu). > Beide liefern einen Spannungswert von 0V-5V in Abhängigkeit des > Luftmassenstroms (kg/h). Ich kenn mich mit der Autoelektronik nicht so aus, aber irgendwo im Luftmassennmesser muesste doch die Kennlinie (eventuell in einem EPROM) gespeychert sein. Sind die verschiedenen LMM kompatibel koennte man sich den ganzen Aufwand durch Kopieren dieses Speychers ersparen. Inwieweyt dies moeglich ist entzieht sich jedoch meyner Kenntnis. > Zu mir: ich kann durchaus programmieren. Das sollte die Schwachstelle > nicht sein. Wunderbar, das sind die besten Voraussetzungen zum basteln :-) > Mein fehlendes Wissen dreht sich um Platinenentwicklung. Das soll Dir keyn Hinderungsgrund seyn. > D.h.: Hätte ich eine Platine mit DAC, Mikrocontroller und ADC, die mit > Batteriespannung (zw. 10-15V, schwankend) auskommt, dann ist die > Programmierung kein Problem mehr. Welchen Controller wuerdest Du denn gerne verwenden? Traust Du Dir zu, die Platine zumindest in einem dafuer phorgesehenen Programm zu "layouten"? > Zu der Hilfe: Gibt es denn solch fertige Platinen (mit Betriebstemp von > -10°C..+100°C) und solcher Bestückung? Die würde ich sofort kaufen! Klar gibts sowas, jedes beliebige Demoboard eines Controllers mit integriertem ADC/DAC und einer halbwegs brauchbaren Spannungsregelung sollte das eigentlich hinbekommen. Die Platine selbst wuerde ich Dir sogar machen wenn mein Equiptment nicht die nächsten Wochen nicht erreichbar für mich waere. Ich bin mir sicher, daß sich hier in Forum/Platinen eventuell jemand findet, der Dir solch eine Platine belichtet und aetzt. Falls Du Glueck haben solltest findet sich vielleicht sogar jemand, der Dir dein Einzelstueck bestueckt, falls er die notwendigen Bauteile hat. Irgendwie kriegen wir das schon gedeichselt, viel Glueck wuenscht Иван
Vielen Dank Iwan und Bernd, und die anderen hier, ich hab mich jetzt mal angemeldet und werde mich dann per mail an Bernd wenden. Wäre super, wenn eine fertige Platine da wäre, denn ich traue mir nicht zu, eine vernünftige Platine selbst zu layouten! Der Controller wäre mir - insofern ich ihn mit C per PC (Windows - leider) programmieren kann - egal. Das Programmiergerät kann ich mir kaufen.. Zum HFM: meine Angaben zu Preisen und keine Neuteilfertigung stimmen so schon. Das Polynom habe ich per pseudoinverse Alte/Neue Kennlinie gefittet. Ein Lookup-Table ist natürlich auch kein Problem! Danke erstmal - schön, dass ihr ein Herz für Nicht-Elektroniker habt ;-) Gruß
Hi, leider hat Bernd bisher keine Zeit dafür gefunden.. ich stehe noch immer vor dem Problem. Jederlei Hilfe ist nach wie vor sehr willkommen..! Gerne übrigens auch Buchvorschläge, damit ich mich selbst einlernen versuchen könnte.. Vielen Dank!!
Wenn der eingebaute 10 Bit AD-Wandler reicht, die Ausgabe auch per PWM erfolgen kann, dann würde ein AVR mit Ausgangstiefpass reichen. 10 Bit sind nur 1024 Tabellenwerte, die könnten im Flash stehen, für eine höhere Auflösung ist ein ATMega mit Multiplizierer sinnvoll um die Kurve zu berechnen. Das wären dann 16-Bit-Multiplikationen, dazu gibts Applikationen von Atmel.
10 Bit würden mir schon reichen! Welches Board würdes Du vorschlagen? Gibt es eines mit Tiefpass schon drangebaut? Wenn ja, dann isses die Lösung für mein Problem!
Bedenke bei der Schaltung dass 9..15V zwar der Betriebsbereich ist, aber bis 40V möglich sind und (schnelle) Spitzen bis 400V auch schon gesehen wurden. Also ist auch eine vernünftige Spannungsstabilisierung/filterung nötig! Beim Starten gehts dann zeitweise auch auch 6V bzw. 4V runter (OK dann gehts starten auch nicht mehr). JL P.S. mir wärs persönlich zuviel Aufwand, es sei denn es fänden sich mehr Betroffene die diese Bastellösung wollen.
es gibt auf jeden Fall mehr Betroffene! Wieviel brauchst Du denn? Und wievel Aufwand wäre es denn (in Stunden).. oder anders gesagt: Wieviel Geld möchtest Du? Zu den Spannungsspitzen: Du hast vollkommen Recht! Normalerweise benötigt man eine sog. "Loaddump Diode" um die Schaltung gegen diese Spannungsspitzen zu schützen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.