Forum: Mikrocontroller und Digitale Elektronik Idee für Berührungsschalter


von Flo K. (Gast)


Lesenswert?

Hallo,

ich bin zur Zeit an der Entwicklung eines Berührungstaster. Nun zu
meiner Frage. Beim googl'n hab ich schon ein paar Ideen aufgeschnappt
aber es ist noch nicht das richtige dabei. Alles was ich gefunden habe
basiert auf zwei nebeneinanderliegenden Metallflächen. Ich brauche aber
eine einzelnen Taster (bzw. Gehäusefront). Meine Idee währe jetzt den
Bediener als Antenne zu benützen und die Spannungs die von ihm ausgeht
als Schaltsignal für eine Darlingtonschaltung mit nachgeschaltetem
Komperator zu benützen. Was haltet ihr von der Idee? Oder noch besser,
wüsste jemand eine Beispielschaltung oder vielleicht auch nur die
Dimensionen der Bauteile.

von Johannes M. Richter (Gast)


Lesenswert?

Gingen zwei spiralenfoermig ineinander verlegte Draehte nicht ev. auch?
So haette man die zwei Metallflaechen quasi "vereint".

von Dingens (Gast)


Lesenswert?

das ist scheisse und unzuverlässig. ausserdem haben bei metallgehäusen
das gehäuse gefälligst auf schutzleitererde zu liegen.

in schwarzen plastikgehäusen benutzt man manchmal den trick, dass man
ein gehäuse wählt das nur dunkel, aber ir-durchlässig eingefärbt ist,
wie bei einigen fernbedienungen. sieht schwarz aus, ist aber
ir-transparent. dann können unter der gehäuseoberfläche beliebig viele
reflexlichtschranken als "taster" montiert werden

von Henning (Gast)


Lesenswert?

http://www.mikrocontroller.net/forum/read-1-49967.html
da bin ich auch grad bei. meld dich, wenn du dabei anfängst, bzw.
erfolge feiern kannst.

von thkais (Gast)


Lesenswert?

Eine Darlington-Schaltung reicht i.a. schon. Zumindest bei mir klappt
das bestens... Nur die Basis anfassen, und die Stufe schaltet durch.
Ob das aber unter allen Umständen funktioniert, weiß ich nicht.

von Ratber (Gast)


Lesenswert?

@Flo


wie wärs mit Kapazitiven Tastern ?

Die wären recht unauffällig,leicht selber zu machen und passende Chips
gibt es auch dafür.

Schau mal auf www.edisen.de nach.
Vieleicht kannste dich ja dafür erwärmen.

von Division (Gast)


Lesenswert?

Warum kaufst du nicht einfach mal einen im Baumarkt, und baust den
auseinander um zu sehen wie die das machen?

Liebe Grüsse

von Hagen (Gast)


Angehängte Dateien:

Lesenswert?

Hi

Ich habe es mit der angehängten Schaltung aufgebaut. Mit dem ATTiny15L
erzeugt man ein Rechtecksignal zwischen 10-200kHz leitet dies zur
Sensorfläche und misst per ADC und RC Glied die Spannung. Der ADC läuft
im Freerunning Mode, und die gesampleten Werte werden per Software
einigen Auswertungen unterzogen.
An die anderen ADC können mit dem gleichen Rechtecksignal von PB1 noch
mehr solcher Sensoren drangehangen werden.
Je nach Sensorfläche und Frequenz konnte ich die Annäherung der Hand
bis zu 20cm weit messen. Bei ca. 2x2cm großen Sensoren (Alu-Papier)
beträgt die Entfernung immer noch 2-4 Millimeter. Am besten die
Sensorfläche befindet sich im Gerät, hinter der nichtleitenden
Gehäusewand, als Dielektrikum.

Schwieriger ist dann die Software. Sie muß absolut störsicher, sich
periodisch selbst kalibrierend arbeiten. Meine Lösung hatte ich so
konstruiert das ich die direkte, von Vorne gerichtete Annäherung und
wieder Entfernung der Hand erkennen konnte. Dabei spielte auch die
Annäherungsgeschwindigkeit eine Rolle. D.h. nur wenn man die Hand von
Vorne auf den Sensor zu annäherte, mit einer Geschwindigkeit die nicht
zu langsam oder eben zu schnell ist, durfte die Software diese Änderung
im ADC als gültiges Sensor-Ereignis werten.
Bei meinem Aufbau hat es wunderbar funktioniert.

Extrem interessant war der Punkt als ich meine Cola Flasche direkt auf
den Sensor stellte ;) Das Wasser in der Flasche vergrößerte, bei sehr
empfindlicher Kalibrierung des Sensor, die Empfindlichkeit derart das
selbst eine Annäherung einer Person aus 2 Meter Entfernung wahrgenommen
wurde.

Allerdings, kalibiriert man zu empfindlich entstehen zu häufige
Fehlinterpretationen.

Der Tiny15 erzeugt nun an PB1 das Rechtecksignal. Die ADC werden
einfach im Freerunning Mode mit nicht alzugroßer Abtastrate
eingestellt. In der ADC ISR wurden nun die ADC Werte eingelesen, auf 8
Bit geschnitten und zu einer Variablen, dem Durchschnitt, hinzuaddiert.
Zusätzlich werden noch die Min-Max Werte dieser Variablen gespeichert.
Nun vergleicht die Software den aktuellen Durchschnittswert der ADC's
mit deren vorher gesampelten Werten. Sollte der Wert kleiner sein so
wird eine Variable "StepDown" +1 inkrementiert und die Variable
"StopUp" auf Null gesetzt. Sollte der Wert größer sein wird jeweils
"StepUp" +1 und "StepDown = 0" gesetzt. D.h. man zählt wie oft sich
eine Änderung der ADC Werte in jeweils abwärtsd oder aufwärts Richtung
nacheinander erfolgten. Sollte einer der Werte in "StepUp" oder
"StepDown" eine Threshold übersteigen, zB. 16 dann wurde der Schalter
ausgelösst. Zusätzlich wurde per langsammen Timer die Variablen
"StepUp", "StepDown" wieder auf Null gesetzt. Somit muss per
Software am ADC eine kontinuierliche Wertänderung erfolgen, d.h. man
bewegt die Hand zum Sensor oder weg vom Sensor. Sollte diese Bewegung
zu langsam sein dann löscht der langsam laufende Timer diese Änderungen
und macht somit das Auslössen des Schalters unmöglich.


Gruß Hagen

von Hagen (Gast)


Lesenswert?

Achso, durch die Messung der zeitlichen Änderung im kapazitven Feld
erhoffte ich mir eine höhere Störsicherheit. Dies hat auch absolut gut
funktioniert. Das Problem ist ja das bei vielen kommerziellen Sensoren
immer wieder darauf hingewiesen wird das es sehr kompliziert ist die
Sensoren zu kalibrieren. Mit der obigen Logik ersparrt man sich im
Grunde diese ständige dynamische Kalibrierung. Denn man misst nur
relativ die Geschwindigkeit der zeitliche Änderung des kapazitiven
Feldes, entweder aufwärts oder abwärts -> Annäherung der Hand oder
Wegbewegen der Hand. Diese zeitliche Änderung hat kontinuierlich in
einem gewählten Zeitbereich zu erfolgen. Sind die Änderungen zu lange
oder zu schnell, oder schwingen diese Änderung, so wird das als
Störsignal interpretiert. Somit dürfte die ganze Sache relativ
unabhängig von Temperatur, Umweltveränderungen etc sein.

Gruß Hagen

von Tobias.A (Gast)


Lesenswert?

@ Hagen

Du glaubst doch nicht das in Cola noch Wasser ist oder?
:-)
LOL

von Peter D. (peda)


Lesenswert?

Die Auswertung der Kapazitätsänderung ist am sichersten.

Allerdings braucht man dazu nicht eine so umständliche Schaltung.

Man schaltet den Pin als Ausgang, um ihn zu entladen und dann als
Eingang. Über einen Widerstand wird er dann langsam wieder aufgeladen
bis zur Triggerschwelle und diese Aufladezeit mißt man einfach.

Eventuell kann man diesen Widerstand auch noch einsparen und den
internen Pullup nehmen.

Ist die Fläche direkt berührbar, sollte man noch einen
Entkopplungskondensator (1nF) dazwischen schalten.


Peter

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.