Forum: Mikrocontroller und Digitale Elektronik Mit Arduino 12V Widerstand mit 0-500Ohm einstellen


von Sebastian S. (sschaffrath)


Lesenswert?

Hallo,

ich möchte gerne bei einem Kombiinstrument das ich mir für den PC 
umbaue, den Tankfüllstand und die Temperatur simulieren.

Diese werden mit Widerstandsbereichen gesteuert.

Tank: ~0-500 Ohm
Temperatur: ~22-140 Ohm

Nun wir dies mit 12V betrieben.
Das hieße ich muss diese Widerstandsbereiche in 12V steuern können.
Leider sind alle bisher gefundenen Digitalen Potentiometer nur für 5V 
ausgelegt, oder geben zu wenig Strom.

Gesteuert werden soll das ganze mit einem Arduino.

Hoffe ihr könnte mir da weiterhelfen.

von Mike (Gast)


Lesenswert?

Sebastian Schaffrath schrieb:
> Diese werden mit Widerstandsbereichen gesteuert.

Bist du sicher?

Oft bildet der Sensorwiderstand nur einen Spannungsteiler mit einem fest 
eingebauten Widerstand, d.h. eine Steuerspannung erfüllt den gleichen 
Zweck.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sebastian Schaffrath schrieb:
> Leider sind alle bisher gefundenen Digitalen Potentiometer nur für 5V
> ausgelegt
So ist es. Deshalb solltest du schauen, was dieser Widerstand 
bewirkt hat, und das dann nachbilden. Es wird auf eine variable 
Spannung oder einen Strom rauslaufen...

von Sebastian S. (sschaffrath)


Angehängte Dateien:

Lesenswert?

Im Originalen werden sie definitiv so gesteuert.
Da bilden die Sensoren je nach Füllstand oder Wärme Widerstand oder 
haben weniger Widerstand.

Laut BMW Schaltplan sieht dieser bereich so aus:
Anhang


Sieht also nach Spannungsteiler aus. Allerdings ist trotzdem auf dem 
Rest 12V im System.

Edit: nun ist die Frage, ich weiß nicht wie der Intern eingebaute 
Widerstand ist und werde es auch nicht umbauen, da ich das 
Kombiinstrument Original belassen möchte.

: Bearbeitet durch User
von Mike (Gast)


Lesenswert?

Sebastian Schaffrath schrieb:
> Edit: nun ist die Frage, ich weiß nicht wie der Intern eingebaute
> Widerstand ist

Dann hänge z.B. 100Ω an Stelle des Temperatursensors ran und miss die 
Spannung (zur Kontrolle vielleicht auch noch mal bei ein paar anderen 
Widerständen). Dann kannst du den internen Widerstand ausrechnen, wenn 
du die "12V" auch noch misst.

von MaWin (Gast)


Lesenswert?

Nimm jeweils ein Stereo-Motorpoti, den anderen Kanal verwendet du zur 
Rückmeldung.

Denn wie du zu recht erkannt ast, vertragen digitale Potis zu wenig 
Strom und Spannnung.

Alternative wäre PWM, also schnelles ein- und ausschalte eines 
(Kurzschlusses vs. Maximalwiderstandswertes) denn die 
Empfängerschaltungen werden Filter enthalten.

von Sebastian S. (sschaffrath)


Lesenswert?

So habe mal ein paar Messungen gemacht:

Bei Spannung anliegend von 12,09V

Wurden folgende Spannungsabfälle mit verschiedenen Widerständen 
erreicht:

Tank Voll: 3,1V
Halb Voll: 2,05V
1/4 Voll: 1,2V
leer: ~0,35V

von Mike (Gast)


Lesenswert?

Sebastian Schaffrath schrieb:
> Wurden folgende Spannungsabfälle mit verschiedenen Widerständen
> erreicht:

Und wie war der Wert der Widerstände?

von Sebastian S. (sschaffrath)


Lesenswert?

Wollte es gerade bearbeiten:

So habe mal ein paar Messungen gemacht:

Bei Spannung anliegend von 12,09V

Wurden folgende Spannungsabfälle mit verschiedenen Widerständen 
erreicht:

Tank Voll: 3,1V  mit ~430Ohm
Halb Voll: 2,05V mit ~266Ohm
1/4 Voll: 1,2V mit ~147Ohm
leer: ~0,35V mit ~60Ohm

Jeweils zusammengestellt aus Normalen E12 Metallschichtwiderständen

von Mike (Gast)


Lesenswert?

Sebastian Schaffrath schrieb:
> leer: ~0,35V mit ~60Ohm

Bist du sicher, dass das nicht 0,53V waren?

von Sebastian S. (sschaffrath)


Lesenswert?

Sry, ja habe die absolute Nullstellung angegeben...

: Bearbeitet durch User
von Mike (Gast)


Lesenswert?

Sebastian Schaffrath schrieb:
> Sry, ja habe die absolute Nullstellung angegeben...

Dann wird der Wert von dem oberen Spannungsteilerwiderstand bei 1300Ω 
liegen, d.h. es fließen um die 10mA. Mit einem OP, der als nicht 
invertierender Verstärker geschaltet ist und vom µC z.B. per PWM und 
Tiefpassfilter den simulierten Wert bekommt, sollte sich das realisieren 
lassen. Bei der Auswahl des OP muss man drauf achten, dass er auf 0,5V 
runter kommt, d.h. z.B. ein Rail-to-Rail Typ.

von Andreas D. (rackandboneman)


Lesenswert?

Ganz, ganz oldschool: Einen Fotowiderstand (LDR) und eine steuerbare 
Lichtquelle in ein lichtdichtes Gehäuse bauen. Vorsicht: sollte das eine 
Geschichte werden die produziert und verkauft werden soll, muss man mit 
dem RoHS-Status von LDRs aufpassen!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sebastian Schaffrath schrieb:
> So habe mal ein paar Messungen gemacht:
Mal kurz nachgerechnet: es fließt also ein fast konstanter Strom von ca. 
8 mA...
> Tank Voll: 3,1V
> Halb Voll: 2,05V
> 1/4 Voll: 1,2V
> leer: ~0,53V
So, und ich würde da jetzt mal aktiv diese Spannung an den Pin 
anlegen und schauen, was passiert. Aktiv bedeutet, dass die Quelle auch 
Strom senken können muss (ein übliches Labornetzteil hat damit evtl. 
Probleme, weil es nur für einen Quadranten ausgelegt ist). Da mürde ich 
zum Test dann einfach einen 47 Ohm Widerstand als "Grundlast" 
anschließen, damit die 7 mA auch tatsächlich fließen können...

Heraus kommt dann letztendlich eine Schaltung, die die nötige Spannung 
ausgibt und direkt an den X17 angeschlossen werden kann.

von Sebastian S. (sschaffrath)


Angehängte Dateien:

Lesenswert?

Hallo nochmal,

aus diversen gründen habe ich damals das Projekt erst einmal auf Pause 
gelegt.
Nun möchte ich mich wieder damit beschädtigen und habe einiges über der 
von Mike vorgeschlagenen Schaltung gelesen.

Das Problem ist, dass beim Tanksensor vom Kombiinstrument, ein Ausgang 
über den Widerstand auf GND geschaltet werden muss. Damit es 
funktioniert.

Zu erst habe ich es rein mit einem Transistor probiert, dies schwankt 
allerdings ziemlich, und manchmal scheint es so als ob er das nicht mag.
Heißt die Füllstandsanzeige springt dann einmal auf leer und geht nach 
ein paar Sekunden wieder in den Schwankungsbereich.

Daraufhin habe ich es mit ein paar Variationen von RC-Filtern auf 
Transistor versucht, dass hat auch nicht zufriendenstellend funkioniert.

Nun würde ich es aber gerne, mit der Variante von Mike ausprobieren, 
allerdings habe ich derzeit noch keinen R2R-OpAmp und würde deshalb 
gerne Fragen welches Modell für meinen Anwendungsfall zu empfehlen wäre?

Im Anhang außerdem noch ein Bild von der Tankschaltung:

Vielleicht verstehe ich die Schaltung im Schaltplan auch einfach falsch,
aber Funktionieren tut es wenn X271 - 3 auf GND gelegt wird, X271 - 1 
mit Widerstand auf GND gelegt wird und fürs Tachosignal x271 - 4 
Rechtecksignal direkt vom Arduino.

von Wolfgang (Gast)


Lesenswert?

Sebastian Schaffrath schrieb:
> Zu erst habe ich es rein mit einem Transistor probiert, dies schwankt
> allerdings ziemlich, und manchmal scheint es so als ob er das nicht mag.
> Heißt die Füllstandsanzeige springt dann einmal auf leer und geht nach
> ein paar Sekunden wieder in den Schwankungsbereich.
>
> Daraufhin habe ich es mit ein paar Variationen von RC-Filtern auf
> Transistor versucht, dass hat auch nicht zufriendenstellend funkioniert.

Der Unterschied zwischen einem OP, geschaltet als nichtinvertierender 
Verstärker, und einem Transistor ist dir klar?

von Sebastian S. (sschaffrath)


Lesenswert?

Theoretisch schon, worauf genau möchtest du mich hinweisen?

von Sebastian S. (sschaffrath)


Angehängte Dateien:

Lesenswert?

So, habe nochmals rumprobiert nachdem ich etwas gelesen habe und naja 
wer sagt es denn.

Zur veranschaulichung Schaltplan mit Bemerkungen im Anhang.

Jemand Tipps dazu?

Edit: Von X271 - 1 kommt 12V

: Bearbeitet durch User
von Tooph (Gast)


Lesenswert?

Dein kleinster Widerstand ist 60Ohm.
Also kannst Du einen Mosfet nehmen, 60Ohm Widerstand an Drain und Mosfet 
einschalten.
Dann hast Du 60Ohm.

Wenn Du jetzt den mit 10% PWM taktest, hast Du im Mittel 600Ohm.

Elko noch zwischen Ausgang und Masse.

Über 1/PWM kannst Du den Widerstandswert einstellen.

von Wolfgang (Gast)


Lesenswert?

Sebastian Schaffrath schrieb:
> Theoretisch schon, worauf genau möchtest du mich hinweisen?

Dass du mit einem einzelnen Transistor wohl kaum eine vernünftig 
geregelte Spannung zur Simulation einer bestimmten Stellung des 
Tankgebers hinkriegen wirst. Die von Mike vorgeschlagenen Schaltung mit 
einem nichtinvertierenden OP sollte das dagegen gut hinbekommen.

von Sebastian S. (sschaffrath)


Lesenswert?

Welcher Mosfet wäre dafür gut geeignet und wie groß sollte der Elko 
sein?
Der Elko soll also zwichen Source und Masse?

Wolfgang schrieb:
>Die von Mike vorgeschlagenen Schaltung mit
> einem nichtinvertierenden OP sollte das dagegen gut hinbekommen.


Wo soll denn dann in dieser Schaltung der X271 - 1 angeklemmt werden? 
Als Vcc des OP?

: Bearbeitet durch User
von Tooph (Gast)


Lesenswert?

>Welcher Mosfet wäre dafür gut geeignet
Ich würde einen kleinen mit 100mR .. 1R RDSon nehmen. LogicLevel. Den 
kannst Du dann ohne Treiber direkt an den Ausgang des Mikrocontrollers 
hängen.

> und wie groß sollte der Elko sein?
Hängt von der Frequenz ab. Wenn Du 10kHz nimmst, dann wäre 10uF schon 
ausreichend.

>Der Elko soll also zwichen Source und Masse?
Source auf Masse. Gate am PMW Ausgang µC. Drain am 60R Widerstand. 
Anderer Anschluss des Widerstandes ist gleichzeitig der Ausgang und von 
da mit dem Kondensator nach Masse.

von Thomas E. (picalic)


Lesenswert?

Servus,

ich würde es erstmal weiter mit dem BC337 versuchen, aber einen 
Widerstand (z.B. 47 Ohm) in die Emitterleitung legen. Der 1k5 Widerstand 
zwischen Kondensator und Basis kann dann auch entfallen.

: Bearbeitet durch User
von Klaus (Gast)


Lesenswert?

Hallo,

habe das gleiche an einem E46 Kombi vor.

Hast Du denn schon eine funktionierende Schaltung?

Gruß

Klaus

von Uwe S. (willythecat)


Lesenswert?

ERFOLG, allerdings mit einem etwas anderen Weg.

Ich habe das Eingangssignal der beiden Tanks (0-60 Ohm) über einen 
Spannungsteiler auf die Analog-Eingänge des Arduino gelegt und der 
erzeugt mir dann nach einer Formel einen 4bit Code als Ausgang - also 16 
verschiedene Zustände.
Die gebe ich auf einen 4 bit De/Multiplexer mit 16 Ausgängen (und der 
auch noch 30 mA Strom abkann).
Damit wird eine Widerstandskette von 16 x 27 Ohm Widerständen 
geschaltet.
Damit bleibt das Tacho ruhig und habe jetzt eine perfekte Ansteuerung 
mit 32 Werten aufs Tacho.
Hab das zuerst im Labor und jetzt im Fahrzeug verbaut.
Dazu hab ich mir ein PCB machen lassen und das ganze in einem passenden 
Gehäuse verbaut. Die Widerstandketten und De-Muxer sind alle SMD 
Bausteine.
Falls nach weitere Fragen da sind, beantworte ich die gerne.
Nochmals vielen Dank für die vielen guten Ideen.

willythecat

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.