So verwenden Sie einen kapazitiven Touchscreen ohne menschliche Hand

25

Ich bin ein Programmierer und habe normalerweise einen Stapelüberlauf, aber ich habe eine Stromfrage.

Ich versuche, mit einer APP auf meinem Telefon zu interagieren, indem ich indirekt den Bildschirm berühre. Moderne Touchscreens sind, wie jeder hier sicher weiß, eher kapazitiv als resistiv. Das bedeutet, dass ich in der Lage sein sollte, mit ihnen zu interagieren, solange ich einen kleinen Strom auf den Bildschirm bringen kann, den ich berühren möchte.

Ich experimentiere mit Lautsprecherkabeln und ein paar anderen Kabeln, die ich im Haus verlegt habe, um zu sehen, wie weit ich entfernt sein kann, und leite immer noch genug Strom durch das Kabel, um eine Berührung auf dem Bildschirm zu registrieren, basierend auf meiner Entfernung und der Größe und Qualität des Drahtes.

Was ich jedoch finde, ist, dass das Berühren des Bildschirms mit dem Draht eine Berührung zu registrieren scheint, auch ohne dass ich den Draht berühre. Gibt es also schon einen Strom im Kabel? Ist es die Art von Draht, die ich verwende? Ich hatte den Eindruck, dass ein Draht alleine keinen Strom hat und nur dann Strom durchlässt, wenn es eine externe Quelle gibt.

Kann ich irgendetwas tun, um den Draht zu entladen oder ihn irgendwie zu blockieren?


Vielen Dank an alle, die mich wissen ließen, wie genau kapazitive Touchscreens funktionieren. Ich hatte es falsch im Kopf.

Das Problem, das ich zu lösen versuche, ist, dass ich über den Touchscreen aus der Ferne mit meinem Telefon interagieren möchte. Gibt es Material, das ich zum Anhängen an den Bildschirm meines Telefons verwenden kann, um den Touchscreen so zu erweitern, dass er meinen Standort erreicht? Ich werde nur ein paar Meter außerhalb der Reichweite sein, und es muss nicht ausgefallen sein, einfach nur ein Berührungsereignis erkennen.

Mir ist klar, dass es eine seltsame Frage sein könnte. Wenn ich darauf keine Antwort bekomme, wähle ich unten immer noch eine Antwort aus. Aus dieser Frage habe ich bereits viel gelernt.

Jeff Ryan
quelle
Ich persönlich mochte dieses Dokument, um ein bisschen mehr über kapazitive Touch-Technologie zu verstehen: ti.com/lit/an/slaa363a/slaa363a.pdf
jippie
Vielen Dank. Das hilft sehr. Wenn ich es richtig verstehe, hat das Gerät ein elektrisches Feld um die verschiedenen Sensorpads und erkennt Störungen. Die Störung tritt auf, wenn sich ein Objekt in das Feld bewegt und nimmt einen Teil der Ladung auf, weil es leitend ist. Das Gerät hat eine geringere Strommenge erkannt, sodass es weiß, dass es von etwas berührt wird. Ist das so richtig?
Jeff Ryan
Nein, nicht wirklich, das ist eher so wie ein Theremin funktioniert. Vielleicht sehen Sie youtube.com/watch?v=JVRuDY4X88M&sns=em
Grady Player
Vielen Dank für Ihre Hilfe. Jede Antwort war super hilfreich für mich. Ich bin mit Olin am meisten hin und her gegangen, also habe ich seine Antwort gewählt, aber auch danke an alle anderen.
Jeff Ryan
Die Interaktion mit Computern aus der Ferne wird durch die Bildverarbeitung von Echtzeitvideos gelöst, um die Position des menschlichen Körpers und der Gliedmaßen abzulesen. Sie können die Position eines Cursors auf dem Bildschirm mit Gesten steuern und Ereignisse wie Mausklicks generieren. Siehe zum Beispiel Microsoft's Kinect.
Kaz

Antworten:

8

Das bedeutet, dass ich in der Lage sein sollte, mit ihm zu interagieren, solange ich einen kleinen Strom auf den Bildschirm bringen kann, den ich berühren möchte.

Nein, Sie "bringen" keinen Strom zum Gerät. Diese Geräte messen die Kapazität, nicht den Strom oder die Spannung. Die zusätzliche Kapazität durch Ihren Körper zurück zur Umgebungs- oder Schaltungsmasse wird ermittelt, indem untersucht wird, wie das kapazitive Pad auf einige speziell ausgewählte Signale reagiert.

Olin Lathrop
quelle
Ah, ok. Meine Unkenntnis in diesen Angelegenheiten zeigt sich deutlich. Anstelle des Stroms, der in das Gerät fließt, scheinen Sie zu vermuten, dass das Gerät erkennt, wenn etwas, das es berührt, einen Strom empfangen kann. Ich weiß nicht, ob ich die Terminologie richtig verwende, aber die Idee ist, dass die Richtung vom Gerät zu mir fließt, nicht umgekehrt. Ist das korrekt?
Jeff Ryan
2
@ Jeff: Ja, irgendwie. Die logische Richtung ist, dass das Gerät aktiv nach etwas sucht. Das Etwas ist rein passiv.
Olin Lathrop
Vielleicht wäre es sinnvoller, wenn der OP die gleiche Schaltung wie ein Näherungssensor sehen würde?
Grady Player
Okay. Ich versuche das zu verstehen. Wenn ich einen Cent auf meinen Touchscreen lege und ihn mit einem Plastikstift bewege, passiert nichts. Aber wenn ich diesen Groschen mit dem Finger berühre und bewege, reagiert der Bildschirm. Bedeutet das, dass ein Cent nicht leitfähig ist, bis ich ihn anfasse?
Jeff Ryan
2
@ Jeff: Nein, es bedeutet, dass der Cent für sich nicht genug Kapazität hat, bis Sie ihn berühren. Es ist reichlich leitfähig, aber das spielt keine Rolle, da wir keine Leitfähigkeit wahrnehmen. Ihr Körper ist weniger leitfähig als der Cent, aber viel größer und daher mit größerer Wahrscheinlichkeit mit einem Mindestmaß an kapazitiver Rückkopplung zur Erdreferenz des Stromkreises verbunden. Es ist diese kapazitive Rückkopplung nach Masse, die der Stromkreis sucht.
Olin Lathrop
26

Ich lehne Analogien generell ab, aber da Sie ein reiner Software-Typ sind und alle anderen darauf bestehen, mit Ihnen über Kapazität zu sprechen, werde ich mich der Geschichte annehmen.

Stellen Sie sich vor, Sie schießen Farbkugeln an eine Wand. Überall, wo du gegen die Wand stößt, ist ein Farbklecks. Es sei denn, es gibt eine Stelle, auf die Sie schießen, und wenn die Farbe darauf trifft, macht sie eine kleine Spur, aber ansonsten verschwindet die Farbe einfach. Wenn Sie nachforschen, stellen Sie fest, dass jemand eine Absaugvorrichtung an der anderen Seite der Wand angebracht hat. Da es sich bei der Wandtafel um Papier handelt, kann er die Farbe direkt hindurchziehen.

Der Mechanismus im Telefon funktioniert ähnlich. Es treibt eine Menge Elektronen auf die Rückseite des Glases. Normalerweise ist dies dann als Spannungsanstieg zu beobachten. Aber an der Stelle, an der sich Ihr Finger berührt, wird die Ladung von Ihrem Finger absorbiert und die Spannung an dieser Stelle wird erheblich reduziert. Wie es durch das Glas geht, hat damit zu tun, dass sich Ladungen gegenseitig anziehen und abstoßen, aber Sie sind nicht hierher gekommen, um Elektronik zu lernen, also freuen wir uns nur über diese vielen Erklärungen.

Vielleicht können Sie feststellen, dass ein auf dem Bildschirm platzierter Cent nicht genug Ladung abzieht, um von den Touch-Schaltkreisen registriert zu werden. Wenn dieser Cent jedoch an etwas Größeres wie Sie angeschlossen ist, wird jetzt genug Ladung abgezogen, um erkannt zu werden. Dies ähnelt eher dem Verhalten statischer Elektrizität als den klassischen Schaltkreisen mit Batterien, Drähten, Widerständen und Glühbirnen.

[Bearbeiten, zu adressieren, "Was kann ich tun ..."] Skizze eines Telefons mit angeschlossenem Schaltkabel

Ich weiß nicht, ob so etwas funktioniert, aber das Ziel ist es, eine Berührung zu simulieren, indem das Kabel über den Bildschirm wieder in das Bodensystem des Telefons eingekoppelt wird. Die Erdung (durch Auflegen des Telefons auf eine Metallplatte oder ein Blech) ist ebenfalls kapazitiv und entspricht dem Halten des Telefons in der Hand. Die Idee ist, dass der Transistorschalter die kurze Leitung über dem Bildschirm trennen kann und dass nicht genügend kapazitive Rückkopplung zum Steuerkreis (dem Computer, von dem Sie versuchen wollten, Berührungsereignisse zu generieren) vorhanden ist, um ihn auszulösen, wenn er ausgelöst wird sollte aus sein. Das Einschalten des Transistors würde das Kabel mit der Erdungsplatte verbinden und sollte dann ein Berührungsereignis im Telefon erzeugen.

[Bearbeiten: Ein Mitarbeiter sagt, die Streukapazität des FET wäre immer noch zu groß, um dies funktionieren zu lassen. Kostet allerdings nichts, um es zu versuchen.]

[Bearbeiten: Dieser Teil der Antwort ist eine Antwort auf den Kommentar unten]

Es geht nicht um die Masse; Es geht um die Oberfläche. Ein Blatt Folie kann mehr Ladung aufnehmen als ein Cent, obwohl es weniger wiegt. Bei einem Stück Draht geht es eher um die Länge. Ebenso wichtig ist, ob dieser Draht an irgendetwas befestigt ist. Wenn Sie es in der Hand halten, ist der Draht plus Ihr Körper in der Gleichung. Ihr Körper ist in diesem Experiment so gut wie ein Stück Metall. Und jedes Metall, sei es Kupfer, Nickel, Aluminium oder Stahl, funktioniert. Die einzige Voraussetzung ist, dass es Strom leitet.

Im Übrigen habe ich nur ein paar Metallgegenstände auf meinem Handy ausprobiert, und ich bin überrascht, dass Sie so viele Rückmeldungen vom Kabel erhalten. Ein Cent tut nichts, wenn ich ihn nicht mit dem Finger berühre. Wenn ich ein Viertel in der Hand halte und die Kante des Bildschirms berühre, erhalte ich nichts. Zwei machen es auch nicht. Drei seitlich gestapelte Elemente bieten ausreichend Kontakt, um den Bildschirm zu beeinflussen. Als nächstes versuchte ich es mit einer Büroklammer, die ich in der Hand hielt. Es würde nicht reagieren, wenn das abgerundete Ende auf den Bildschirm berührt würde. Ich musste es lange halten und die Seite berühren, um eine Reaktion zu erhalten. Eine Metallstange am Ende hatte keinen Einfluss auf den Bildschirm, aber das Berühren des anderen Endes mit meinem Finger löste eine Reaktion aus.

[Edit: @toolbear fragt nach dem "Boden"]

Die Spannung ist die Differenz zwischen zwei Potentialen. Das Ding, das die Spannung auf dem Bildschirm misst (und letztendlich nach der Wirkung Ihres Fingers sucht), hat eine Verbindung zu diesem Bildschirm und die andere zu einer Referenz, die mit ziemlicher Sicherheit die Erdung innerhalb des Telefons sein wird. Diese "Masse" ist eine übliche Verbindung im gesamten Telefon und wahrscheinlich auch zu seinen Metallteilen. Die Idee ist, dass, wenn Sie das Telefon in der Hand halten, eine kapazitive Kopplung zwischen Ihrer Hand und dem Boden im Telefon besteht. Verschiedene Vermutungen über den Erdboden könnten funktionieren, da letztendlich alles bis zu einem gewissen Grad kapazitiv an das Telefon gekoppelt wird. Und was "ein ungeerdetes, kapazitives Objekt mit ausreichender Oberfläche" betrifft, ist genau das, was in der Abbildung als Platte unter dem Telefon dargestellt ist.

Über das Ladegerät oder den USB-Anschluss kann möglicherweise eine Erdungsverbindung zum Telefon hergestellt werden, dies kann jedoch nicht garantiert werden. Das Öffnen des Telefons würde funktionieren, was jedoch für Endbenutzeranwendungen nur eingeschränkt praktikabel wäre.

Gbarry
quelle
Hallo. Ihre Antwort ist sehr hilfreich. Wenn Sie Lust haben, dieses Phänomen weiter zu erklären, können Sie dann erklären, warum ein Cent einen größeren Boden benötigt, um genügend Ladung abzunehmen, um ein Klicken zu registrieren, aber ein dünnes Lautsprecherkabel selbst genug Ladung abzieht? Ich würde mir vorstellen, dass die gesamte Drahtmasse gleich ist. Da Groschen größtenteils aus Nickel bestehen, sollte ich dann nicht in der Lage sein, mit Nickeldraht das Telefongesicht zu befestigen und aus der Ferne mit der Hand zu berühren, um im Wesentlichen den gleichen Effekt zu erzielen wie das Berühren des Groschens auf dem Bildschirm?
Jeff Ryan
Das ist eine erstaunliche Antwort.
j03m
Diese Analogie half, die Lücke in meinem Laienverständnis zu schließen.
Toolbear
Würden Sie das "Massesystem" der Rennstrecke näher erläutern? Sie schlagen vor, eine Platte unter dem Gerät zu erden, aber man kann "erden", was ich als den Boden unter meinen Füßen interpretiere. Auch ist Boden notwendig oder hilft es nur? Funktioniert auch ein ungeerdetes, kapazitives Objekt mit ausreichender Oberfläche?
Toolbear
Sehr interessant. Angenommen, ich bringe einen 10µF-Kondensator an der Münze an, um die Kapazität zu erhöhen, und ich erde beide Seiten über den Transistor. Wäre das besser? Alternativ könnte ich die Münze auf den Touchscreen legen, ein Relais zwischen der Münze und dem Kondensator hinzufügen und dann die Kapazität über das Relais auslösen? Ich denke, es ist Zeit für ein paar Experimente :-)
Thomas Weller
4

Sie sind grundsätzlich nicht an einem Stromfluss interessiert, zumindest nicht von Ihrem tatsächlichen Körper. Deshalb funktioniert er über einen Kunststoff- oder Glasisolator. Er misst die Kapazität mehrerer Sensoren, indem er sie in der Regel mit einem konstanten Strom und einer konstanten Zeit auflädt und anschließend die resultierende Spannung misst.

Es registriert eine Kapazitätsänderung, weil Ihr Körper arbeitet, um als die Hälfte eines Kondensators zu wirken, oder einfach durch Hinzufügen von Kapazität ... Weil er in direktem Kontakt arbeiten kann, dh nicht als idealer Kondensator ...

In einem typischen Setup müssen nur einige pF hinzugefügt werden.

Grady-Spieler
quelle
Tatsächlich wären einige nF eine große Kapazität. Diese Dinge messen normalerweise ein paar pF, manchmal 100s von fF. Sie sind um mindestens drei Größenordnungen schlechter gestellt.
Olin Lathrop
@Olin Lathrop, vielleicht bin ich ... Ich muss noch einmal auf die CTMU-Dokumentation von Microchip zurückgreifen, von der ich dachte, ich hätte meine Zahlen erhalten.
Grady Player
Ja, das Beispiel, das ich gefunden habe, ergab eine Kapazität von 7 pF. Ich war weit davon entfernt.
Grady Player
3

Tatsächlich müssen kapazitive Touchscreens nicht von einem Körper berührt werden, der Strom liefern kann, sondern sie erfassen, wenn sie von einem Leiter kontaktiert werden (siehe Wikipedia-Artikel zur kapazitiven Erfassung ). Da es sich bei Draht um einen prototypischen Leiter handelt, müssen Sie ihn nicht berühren, um ihn als provisorischen Stift zu verwenden.

angelatlarge
quelle
3

Mir ist klar, dass ich zu spät dran bin, aber vielleicht kann diese Antwort für zukünftige Zuschauer nützlich sein. Dies wird auch nicht zum Thema gehören, da es sich eher um Stack-Overflow- oder Super-User-bezogene und weniger EE-bezogene Themen handelt. Es hört sich auch so an, als würde es Sie am meisten interessieren, eine Schnittstelle zum Touchscreen zu haben, und Sie sind nicht auf Ihre aktuelle Methode festgelegt.

Ich gehe auch davon aus, dass Sie ein Android-Gerät haben.

Für Sie (da Sie ein Programmierer sind) ist die Verwendung der Android Debug Bridge eine wesentlich bessere Oberfläche, um das Drücken von Touchscreens, Wischen, Zurück- und Home-Tasten zu simulieren.

Grundsätzlich besteht Ihr Hauptziel darin, ADB funktionsfähig zu machen. Es sind viele Ressourcen online, deshalb werde ich es hier nicht erklären. Sie müssen das Android SDK herunterladen , um es zu erhalten.

Verwenden Sie anschließend eine Eingabeaufforderung, um ADB-Befehle an Ihr Gerät zu senden.

Befehle wie:

adb shell input tap x y

Mit 'x' und 'y' als Pixelposition wird der Bildschirm gedrückt.

Nick Williams
quelle
1
Dies ist eine wirklich interessante Idee. Sie haben Recht, es ist ein Thema, aber es bietet eine Möglichkeit, mein Endziel zu erreichen. Übrigens habe ich Kopfhörer mit Lautstärkereglern verwendet und meine Anwendung dann auf die höhere Lautstärke reagieren lassen / Lautstärke leiser / Wiedergabe / Pause wichtige Ereignisse .. Gab mir ein paar Meter Abstand zwischen mir und dem Gerät, und gab mir mehr Optionen als nur einen einzigen Klick ...
Jeff Ryan
input tapScheint mit ADB auf Android Studio 6 nicht verfügbar zu sein.
Thomas Weller