Hallo Leute,
vorsicht, meine Frage ist nicht so einfach wie es auf den ersten
Augenblick aussieht (Anlage).
Ich habe durch Versuche einen Spannungsteiler laut Anlage dimensioniert.
Was mich aber interessiert, ob es dafür eine mathematisch sauberere
Lösung gebe?
Ich habe schon mit verschiedenen Funktionen versucht, Wurzel, Potenzen,
e hoch -x und so weiter und noch nicht das kristallklare getroffen.
Mathematiker, eine Idee?
Danke voraus, Grüße
Michal
Hallo,
danke für die Bemühungen, nur leider wurde meine Fragestellung nicht
verstanden bzw. Excel-Anhang nicht angeschaut...
1. Spannungsteiler berechnen kann ich doch.
2. R2R produziert bitwertige Zuwächse, MSB/2, MSB/4, MSB/8, MSB/16 usw.,
und ich will GLEICHE Zuwächse...
Weiss jemand was zur eigentlichen Frage (Anhang)?
Danke voraus, Grüße
Michal
Nurm mal als Anmerkung:
Des hat schon einen Grund, warum die Spannungsaenderung je Taster
unterschiedlich ist.
Wenn die Aenderung fuer jeden Taster gleich waere, dann koenne man nicht
unterscheiden, ob z.B. T1, T2 oder T3 gedrueckt wurde.
Nein Paul. Ich glaube er will am AD-Wandler dann gleiche
Spannungsabstände erreichen.
Alles schön und gut. Das nun aber mit einer Lösung für die
nächstliegenden Standardwerte zu finden, wird eher interessant sein.
Willst du erkennen, welcher Taster gedrückt ist, oder wieviele?
Für den ersten Fall: Man stelle sich ein Poti mit Mittelabgriff vor, 1
Pin auf GND, der andere auf Vsupply. Mit dieser Überlegung kommt man
darauf, dass einfach alle Widerstände gleich groß sein müssen.
> Ich habe schon mit verschiedenen Funktionen versucht, Wurzel, Potenzen,> e hoch -x und so weiter und noch nicht das kristallklare getroffen.
Nicht rumprobieren, sondern denken:
1.) Was willst Du überhaupt?
Einen Spannungsteiler der ein bestimmtes Teilverhältnis
hat das durch das verändern des unteren Widerstandes
eingestellt werden soll. Der obere Widerstand ist fest.
2.) Welche Werte sollen die Spannungen haben?
Linear ansteigend, mit oder ohne Offset.
3.) Wieiviel verschiede Spannungen willst Du?
Bei vier Tastern insgesammt 5 verschiedene Spannung.
Die 5. Spannung ist der Zustand, in dem kein Taster
gedrückt ist.
Also, nun ganz einfach:
a.) Oberen Widerstand wählen.
b.) Fünf normale Spannungsteiler berechnen, bei denen der obere
Widerstand immer gleich ist. Die Ausgansspannungen sollen
linear von einem bestimmten Punkt aus ansteigen.
c.) Nun die unteren Widerstände sortieren, und aus den Differenzen
der jeweiligen unteren Widerstände die Werte für die Kette
berechnen.
Fertig.
Ich seh bei gedrücktem Taster die Widerstände in Reihe, theoretisch ist
es ja nur ne Reihenschaltung. Welche Genauigkeit haben die Widerstände?
Gibt ja teilweise hohe Prozentuale Abweichung (Farbcode beachten). Bei
exakt gleichgroßen Widerständen ergibt sich hier ein linearer Verlauf.
Ich kenne keinen Verlauf von Widerstandsverschaltungen(ohmsche) die sich
nach der e-Fkt verhalten(makroskopisch), eher gehts von linear zu einer
1/x Fkt, zB der belastete Spannungsteiler.
Vllt hilfts dir.
das ist keine praktische aufgabe, das ist eine theoretische. sowas
hätten wir früher in ETechnik als hausaufgabe bekommen.
hab mal was drangehängt, das sind die widerstandswerte als graph ohne
jeden maßstab oder feste größe. schaut aus wie eine 1/x funktion.
Hallo,
@ Abdul K. (ehydra) und Ben: leider nein, e hat nicht wirklich gepasst.
Meine Überlegung ist zur Zeit rein theoretisch, Standardwert passe ich
an wenn ich den Idealverlauf kenne.
@Experte (Gast) danke für Inputs, ungefähr so würde ich auch vorgehen.
Ich dachte halt jemand weiss es einfach schon.
@ Maik F. (sabuty) und matthes (Gast) Überhaupt nicht, bei gleichen
Widerständen ergibt sich in der Ausgangsspannung ein "in Sättigung
gehender" Verlauf. 1 / x klingt interessant. Ich werde es einfach mal
ordentlich lösen.
Ich will nämlich Tastatur sparsam an einem ADC-Pin anschliessen, wie
schon viele vermuten.
Schönen Samstag noch
Michal
Hallo,
@ Ben:
Danke, es wird spannend!
Kurve schaut interresant aus, nur ist es weder ( 1 / x )
noch (1 - ( 1 / x )).
Etwas wie ( a + bx + cx^2 + dx^3...)?
Bist Du vielleicht in der Lage die Originalformel noch auszugraben?
Michal
Michal schrieb:
> Ich will nämlich Tastatur sparsam an einem ADC-Pin anschliessen, wie> schon viele vermuten.
Na dann laß es doch einfach den C-Compiler ausrechnen:
Beitrag "Tastenmatrix auslesen über nur 2 Leitungen"
Peter
Daniel schrieb:
> Wie wäre es wenn du die Ausgänge der Taster nicht auf Masse legst> sondern auf den ADC...> Dann einfach eine lineare Widerstandsänderung.
Genau von dieser Vorgehensweise bin ich ausgegangen. Und dann braucht
man auch keine Widerstandsänderung oder wie auch immer. Einfach nur x
Widerstände gleichen Wertes.
+5V ~ R - R - R - R - GND
Einfach an alle - einen Taster anschließen und alle Taster zusammen auf
den gleichen ADC-Pin.
@ Daniel:
Danke, hast mich dazu gebracht, dass ich kleinen Fehler im Schaltplan
gefunden habe:
Achtung, die Widerstände sind unten NICHT an Masse angeschlossen!
Ahso, das erklärt so einiges :-) .
Aber wenn du das ganze sehr hochohmig auslegst, dürfte das nicht so ins
Gewicht fallen. Ist die Schaltung Batterie betrieben?
@ Peter Dannegger (peda)
hier kriegt man auch sättigenden Spannungsverlauf.
Meine Überlegung ist rein theoretisch: Geht es auch so dass man gleiche
Spannungsabstände kriegt?
Rx=(U*x/n)/((U-U*x/n)/R1)
ohne versuch irgendwas zu kürzen. X ist der taster der geschlossen ist
und N die anzahl der taster.
die widerstände müssen in der luft hängen, ansonsten geht Uaus=Uein
nicht.
Michal schrieb:
> hier kriegt man auch sättigenden Spannungsverlauf.> Meine Überlegung ist rein theoretisch: Geht es auch so dass man gleiche> Spannungsabstände kriegt?
MCs programmieren heißt, das Optimum zwischen Hardware- und
Softwareaufwand zu finden.
Vergleiche sind nicht sonderlich teuer, viele verschiedene Widerstände
zu nehmen ist zumindest umständlich.
Solange die Auflösung des ADC ausreicht, bevorzuge ich wenige
verschiedene Widerstandswerte.
Man kann natürlich den Speisewiderstand sehr groß wählen und den ADC mit
Verstärkung einstellen, dann hat man quasi eine Konstantstromquelle und
ist weitgehend linear.
Peter
Ich hab ne ganze Weile gebraucht, um zu merken, daß Tasten einlesen über
den ADC des MC nicht zu MC&Elektronik gehört.
Manchmal sind die Thread-Wechsel überhaupt nicht nachvollziehbar.
Peter
> Mathematiker, eine Idee?
Dazu muss man kein Mathematiker sein :)
Sind RS (R_Supply) und R1 vorgegeben, ist
Dabei muss
sein, wobei n die Anzahl der Widerstände unterhalb von R_S ist, in
deinem Fall also 16.
Für RS=1kΩ und R1=40Ω (wie in deiner Excel-Datei) ergeben sich die
Widerstandswerte wie folgt:
1
R1 = 40.000Ω
2
R2 = 43.333Ω
3
R3 = 47.101Ω
4
R4 = 51.383Ω
5
R5 = 56.277Ω
6
R6 = 61.905Ω
7
R7 = 68.421Ω
8
R8 = 76.023Ω
9
R9 = 84.967Ω
10
R10 = 95.588Ω
11
R11 = 108.333Ω
12
R12 = 123.810Ω
13
R13 = 142.857Ω
14
R14 = 166.667Ω
15
R15 = 196.970Ω
16
R16 = 236.364Ω
Wenn man
wählt, wird der letzte Widerstand (Rn) unendlich und kann deswegen weg-
gelassen werden. Die restlichen n-1 Widerstände sind dann
Durch Drücken des Tasters i (i=1..n) erscheint am Ausgang die Spannung
U*(i-1)/n und beim Loslassen aller Taster die Spannung U. Damit hat man
U in n gleiche Schritte unterteilt.
Für RS=1kΩ sehen die Widerstandswerte nun so aus:
Ich habe einfach nur rückwärts gerechnet. Im Grunde ist es das was
Experte gesagt hat.
Und ich glaube nicht, dass es eine mathematische Funktion gibt, mit der
man die Einzelwiderstände berechnen kann.
P.S.: Ich habe kein Excel und musste die Datei umwandeln. Die Zeichnung
ist jetzt etwas verbogen.
Hallo,
danke an alle. Damit ist der Thread geschlossen.
Jetzt ist mir einfach nur peinlich ;)))
Ihr seid alle unmöglich.
Hoffe alle haben Spass dabei gehabt.
Gute Nacht
Michal
Schöne Tastatur. Sogar mit eingebautem Vorrang...
Mir wäre ja eine Lösung bei der auch alle möglichen Tasten gleichzeitig
gedrückt werden können, lieber. Zumindest 2-3 Tasten sollte man schon
gleichzeitig drücken können.
@Abdul K.:
> Mir wäre ja eine Lösung bei der auch alle möglichen Tasten> gleichzeitig gedrückt werden können, lieber.
Dann ist's halt eine R/2R-Leiter. Aber die ist eben nicht ganz so
spektakulär, weil gemeinhin bekannt :)
Oder vielleicht doch? Um damit 16 Tasten zuverlässig einzulesen, muss
man dabei immerhin auch ein wenig auf die Rauscherei achten ;-)
Wie auch immer. Wenn man sich was erarbeitet, dann achte zumindest ich
auf eine dauerhaft gute Verwertbarkeit. Die obig erarbeitete Lösung ist
es jedenfalls nicht.
Das erinnert mich an meine Solaranlage, bei der der elektronische
Wärmemengenzähler einfach stehengeblieben ist. Ich glaub, ich weiß schon
was mich beim Aufmachen erwartet... Irgendwie richtig langweilig.