Forum: Mikrocontroller und Digitale Elektronik Wiederstandsnetzwerk auswerten mit Attiny


von tester (Gast)


Angehängte Dateien:

Lesenswert?

Hallo, ich habe folgendes Widerstandsnetzwerk mit Tastern dazwischen.
Nun würde ich das gerne mit einem Attiny auswerten, also denke ich mal 
mit den ADC pins. Allerdings habe ich damit noch nie was angestellt.
Muss ich praktisch einen Spannungsteiler verwenden? Wie berechne ich den 
Widerstand den ich dann benötige? Es können wahlweiße 12V oder 5V 
verwendet werden. Denke das sich die 5V besser anbieten.

von Peter R. (pnu)


Lesenswert?

1.Erst einmal anhand TutoriaL und Beispiel zur Anwendung eies 
AD-Wandlers lernen, wie man so etwas programmiert.
2. Am Punkt zwischen R1 und R2 den Eingang des AD-Wandlers anschließen
3. Widerstände so berechnen, dass die 7 Spannungswerte, die die Taster 
erzeugen, in etwea gleichmäßig verteilte Stufen bilden und der Strom 
beim Drücken eines Tasters nicht zu groß wird. Die Reihenfolge der Werte 
R1 bis R7 würde ich gerade umgekehrt wählen.
4. 5V ist unbedingt nötig, Kontroller für 12V gibts eigentlich nicht. 5V 
sollte auch als Uref des AD-Wandlers verwendet werden.

btw: wieso "zum Radio"? da müsste doch stehen: zum AD-Eingang des Attiny

von tester (Gast)


Angehängte Dateien:

Lesenswert?

Oh sorry, sollte dazusagen das es sich hier um eine Lenkradfernbedienung 
handelt. Deswegen sollte man das Kabel das "zum Radio" geht verwenden.
Zwischen R1 und R2 kann also nichts geklemmt werden, zudem auch nicht 
die Widerstände verändert werden.

Müsste ich das so, wie auf dem Bild aufbauen?
Brauche ich R8 unbedingt? Und wie rechne ich diesen aus, falls ich ihn 
benötige?

von San L. (zwillingsfreunde)


Lesenswert?

tester schrieb:
> Brauche ich R8 unbedingt? Und wie rechne ich diesen aus, falls ich ihn
> benötige?

Jain. Es kommt drauf an, wie hoch dein VCC ist und mit welcher 
Referenzspannung dein uC arbeitet. Gehen wir mal von einer 
Referenzspannung von 2,5V aus. Vcc wäre 5V. Dann musst du wissen: Alles 
was über 2,5V liegt, wird für deinen Controller nichtmehr messbar sein. 
Er erkennt dies andauernd als höchstmöglichen Wert.

Also müsste man R8 so dimensionieren, dass sich beim drücken eines 
Tasters am Anschlusspunkt ADC maximal 2,5V Einstellen, bzw. maximal 
deine Referenzspannung mit welcher du arbeiten willst!

R8 wird in diesem Fall wohl eher gross sein, bzw er muss bei 2,5V ref. 
Spannung und Vcc 5V mindestens genau so gross sein, wie der 
Totalwiderstand von R1 - R7.

: Bearbeitet durch User
von tester (Gast)


Lesenswert?

Dh ich bräuchte einen Widerstand mit 3674Ohm, also in der E reihe den 
3,6Kohm 1% tolleranz?

Habe dazu: 
http://robo-tech.ch/Berechnung/Spannungsteiler/Rechner-spannungsteiler.htm
verwendet.

R2........Volt zw. R1 und R2.....ADC Wert
82 ohm       0.111352           46
164 ohm      0.21785            89
284 ohm      0.365593           150
464 ohm      0.570843           234
794 ohm      0.903447           370
1474 ohm     1.452352           595
3674 ohm     2.524974           1023

Ich habe 2,5V die den Wert maximalwert ergeben also einfach durch 1024 
geteilt. Somit habe ich herausgefunden was der wert "0" maximal sein 
kann. Hier 0,00244140625 Volt. (von der Toleranz abgesehen 
{Theoretisch})
Dann einfach die Volt die an dem Pin anliegt durch diese geteilt. Stimmt 
das so?

von San L. (zwillingsfreunde)


Lesenswert?

tester schrieb:
> Dh ich bräuchte einen Widerstand mit 3674Ohm, also in der E reihe den
> 3,6Kohm 1% tolleranz?

Widerstände sind immer ÜBER dem errechneten Wert zu wählen. Sprich, du 
müsstest du den nächsten Widerstand aufrunden.

tester schrieb:
> Ich habe 2,5V die den Wert maximalwert ergeben also einfach durch 1024
> geteilt.

Diese 1024 sind aber nur dann korrekt, wenn du mit einer Auflösung von 
10 Bit arbeitest. Hoffe, dass hast du bedacht.

Ausserdem musst du noch bedenken: So wie deine Schaltung aktuell 
Aufgebaut ist, hast du IMMER einen Analogen Wert, da bei R7 kein 
Schalter ist sondern nur ein Widerstand, wird da immer ein Strom 
fliessen. Um die Spannung in dieser Situation berechnen zu können, 
gillt:

Rges = R1 bis R7

ADC = (Rges / R8 + RGes) * VCC

von Justus S. (jussa)


Lesenswert?

San Lue schrieb:
> Jain.

Erklär mir mal bitte, wie ohne R8, also wenn VCC direkt an den ADC-Pin 
geht, das Drücken eines Schalters irgendwas an der Spannung am ADC-Pin 
ändern sollte.

von San L. (zwillingsfreunde)


Lesenswert?

Justus Skorps schrieb:
> Erklär mir mal bitte, wie ohne R8, also wenn VCC direkt an den ADC-Pin
> geht, das Drücken eines Schalters irgendwas an der Spannung am ADC-Pin
> ändern sollte.

Korrekt, mein Denkfehler sorry. Nach 5 Stunden Schema zeichnen gehen 
solche logischen Dinge bei mir öfters mal vergessen.
Natürlich muss dort ein Widerstand hin.

Überrascht mich gerade selbst, dass mir das nicht direkt aufgefallen 
ist. Liegt wohl mittlerweile an der Gewohnheit, ADC immer mit 
Spannungsteiler zu betrieben (Ist ja fast ein Muss, je nach Applikation) 
und irgendwie keine Geadanken drüber gemacht, was passiert, wenn der 
Widerstand weg ist.

Der Rest meiner oben aufgeschriebenen Theorie stimmt aber. (Glaube ich 
:P)

: Bearbeitet durch User
von tester (Gast)


Lesenswert?

San Lue schrieb:
> Ausserdem musst du noch bedenken: So wie deine Schaltung aktuell
> Aufgebaut ist, hast du IMMER einen Analogen Wert, da bei R7 kein
> Schalter ist sondern nur ein Widerstand, wird da immer ein Strom
> fliessen.

Wenn kein Schalter gedrückt wird dann fließen doch
3674 ohm also wie ich geschrieben habe:
3674 ohm     2.524974           1023
Oder nicht? Da ja 2.524974V über der Referenzspannung von 2,5V liegen, 
wird immer das maximale angezeigt, also 1023?

von tester (Gast)


Lesenswert?

bzw es fließt der Strom durch 3674ohm und nicht der Widerstand

von tester (Gast)


Lesenswert?

Justus Skorps schrieb:
> Erklär mir mal bitte, wie ohne R8, also wenn VCC direkt an den ADC-Pin
> geht, das Drücken eines Schalters irgendwas an der Spannung am ADC-Pin
> ändern sollte.

Weil der Widerstand nach Masse liegt?
Wenn jetzt nicht 5V sondern 2,5V verwendet wird, dann sollte man doch R8 
nicht benötigen?

von tester (Gast)


Lesenswert?

Ich nehms zurück.
Kann mir mal jemand bestätigen das das so funktioniert wie ich 
geschrieben habe?

Wie berechne ich, wieviel Watt der Widerstand aushalten muss?

von San L. (zwillingsfreunde)


Lesenswert?

tester schrieb:
> Weil der Widerstand nach Masse liegt?
> Wenn jetzt nicht 5V sondern 2,5V verwendet wird, dann sollte man doch R8
> nicht benötigen?

Falsch. Wenn du R8 weglässt, kann die Spannung niergends mehr abfallen. 
Drückst zu z.B. SW1 dann bleiben die ganzen 5V über R1, sprich du wirst 
am ADC Pin IMMER 5V bzw. VCC messen. R8 ist nötig, damit sich die 
Spannung aufteilen kann.

tester schrieb:
> bzw es fließt der Strom durch 3674ohm und nicht der Widerstand

Korrekt, ein Widerstand kann nicht fliessen :P

tester schrieb:
> Wie berechne ich, wieviel Watt der Widerstand aushalten muss?

Also, der Widerstand der am meisten Vertragen muss ist wohl R8 und zwar 
dann, wenn du SW1 drückst. Dann fliesst der höchstmögliche Strom. Gehen 
wir von einem VCC von 5V aus und einem R8 von 3k9. Drückst du R1, hast 
du also einen gesamtwiderstand von 3982 Ohm.
Daraus ergibt sich folgendes:

I = U / R
I = 5V / 3982 Ohm = 1,25 mA
Damit hätten wir auch schon den maximalen Strom, der durch diese 
Schaltung fliessen kann!

Berechnet man nun die Spannung, die über R8 in diesem Fall abfällt:
UR8 = (R1 / (R1 + R8)) * VCC
UR8 = (3900 / (82 + 3900)) * 5V = 4.89V

Daraus lässt sich die Leistung des Widerstands berechnen:
P = U * I
P = 4.89V * 1.25mA = 6mW

Also, du kannst so ziemlich jeden beliebigen Widerstand nehmen, die 
Schaltung zieht sogut wie kein Strom, daher ist auch die Leistung nur im 
mW bereich. Kannst also Sorgenlos drauflos arbeiten ;)

von Justus S. (jussa)


Lesenswert?

San Lue schrieb:
> Korrekt, mein Denkfehler sorry.

Zum Glück! Ich dachte schon, ich überseh selber was ganz einfaches ;c)

von tester (Gast)


Lesenswert?

San Lue schrieb:
> Also, du kannst so ziemlich jeden beliebigen Widerstand nehmen, die
> Schaltung zieht sogut wie kein Strom, daher ist auch die Leistung nur im
> mW bereich. Kannst also Sorgenlos drauflos arbeiten ;)

Vielen dank für die detaillierte Rechenwege. Dankeschön ;)

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.