Keyer herstellen


Granitehead

Advanced Member
Joined
Oct 16, 2009
Messages
3,011
Ich will mal versuchen einen Keyer herzustellen, mit einem Knopf für jeden Finger. Die Knöpfe an einen Arduino verkabelt, der das Ganze dann als Tastatur verkleidet (für PS2 habe ich auf die Schnelle eine Lib gefunden, über USB wäre noch besser, aber nicht sicher ob das auch so einfach geht. Ich will den Software/Elektrotechnischen Teil so einfach wie möglich halten, da ich vor allem bei letzterem schlecht bin).

Ich denke da könnte ich dann aus Stoff eine Art Handschuh machen, mit den Knöpfen unter den Fingerbeeren. Benutzen würde man es mit einer Art Ball oder sowas, das man in der Hand hält, um einen Auflagepunkt für die Knöpfe zu haben.

Mit 10 Fingern hätte man dann 1023 ("überhaupt nichts drücken" wäre ja dann die 1024., aber das sollte ja nichts eingeben) Möglichkeiten etwas einzugeben, sprich mehr als genug.

Irgendwelche hilfreichen Ideen/Vorschläge dazu?

(Mein nächster Schritt, wenn ich das Grundlegende habe, wäre Mausfunktionalität einzubauen, so dass man die Hände auf den Oberschenkeln (oder einer anderen geeigneten Oberfläche) liegen hat und in der Gegend des Handgelenks ein Sensor wäre. Keine Ahnung wie gut das machbar ist.)
 
Re: AW: Keyer herstellen

<t>Ich würde ein Gyro und oder einen G Sensor mit einbauen, dann kann man eine auflage lose Maus bauen, für das Gyro eigenen sich ein Wii Motion +.</t>
 
^ bevor Du deine Nintendo-Peripherie zerlegst, Gyros gibt's als Modul sehr günstig zu kaufen, etwa bei Pollin.
 
Hmm, an ein Gyroskop/Beschleunigungssensor habe ich gar nicht gedacht (ich dachte an einen optischen Sensor), aber das wäre wohl auch einen Versuch wert, wenn es genau genug ist wäre das sogar noch um einiges besser - gerade weil es mir ja vor allem darum geht, dass das Ding so bequem wie möglich wird. Was von beidem ist wohl besser, Gyroskop oder Beschleunigungssensor? Hmm, und relative oder absolute Steuerung? Macht das einen Unterschied bei der Hardwarewahl oder könnte man da beides mit der selben unterstützen/ausprobieren?

Ich hab noch überlegt wegen dem Tasten-Teil.

1023 Möglichkeiten bei 10 Knöpfen hat man ja, wenn man einen Wert einliest, indem man speichert, wie welche Knöpfe gedrückt sind und das Muster gedrückt/nicht gedrückt als Zahl interpretiert zu dem Zeitpunkt bevor die erste Taste wieder losgelassen wird.
Dabei ist die Reihenfolge, in der die Tasten gedrückt werden, ja egal.
Man könnte aber die Reihenfolge auch mit einbeziehen und auf eine andere Weise zu einer Zahl kommen: Wenn man n Knöpfe hat. Dann drückt man einen davon und lässt ihn los. Das wären n Möglichkeiten. Oder man drückt zwei, das wären n(n-1) Möglichkeiten zusätzlich. Oder drei, dann +n(n-1)(n-2) Möglichkeiten. Das gäbe allgemein
binReih.png

oder?

Dann vergleichen sich die beiden Systeme so:
Code:
<i>
</i> n   2^n-1   mit Reihenfolge
 1     1                   1
 2     3                   4
 3     7                  15
 4    15                  64
 5    31                 325
 6    63                1956
 7   127               13699
 8   255              109600
 9   511              986409
10  1023             9864100

Welches System soll ich wohl nehmen?

Das mit der Reihenfolge ist ein bisschen langsamer um einen Wert einzugeben (bei gleichem n). Andererseits hat man da mit 5 Schaltern (d. h. einhändig) schon genug um die grösste Tastatur zu ersetzen (325). Mal noch überlegen.
 
Hm, Stichwort optischer sensor, Wenn du an den fingern drucktasten hast, könntest du mit nem helligkeitssensor an den fingerspitzen quasi eine zweite schalterebene mit einbauen. Der Sensor funzt bei bloßer Berührung bzw. Anheben eines Fingers von einer Oberfläche, der Schalter erst auf Druck...
 
-- Sa Jan 12, 2013 15:45 --
Die Idee ist interessant. Könnte man da eine Fotodiode in Sperrrichtung zwischen 3.3V/5V und einen Analog In des Arduinos hängen (ich sag ja ich hab in dem Bereich nicht viel Ahnung)?
Im Prinzip müsste das selbe ja auch mit einem kapazitiven Sensor gehen, aber da weiss ich noch weniger, wie es geht. Hätte das noch einen anderen Vorteil als das es auch im dunklen funktionieren würde?

Ich hatte ja die Idee, das in eine Art Handschuh einzubauen. Spontan habe ich die Idee so verstand, dass man den Finger vom Schalter hebt, auf dem noch der Lichtsensor drauf ist. Das ginge so ja nicht, dann müsste ich das Konzept verändern (auch möglich, aber ich denke weniger flexibel, wenn man mal ein bisschen abwechseln möchte, wie man die Hand hält?)
Aber es geht ja auch mit dem Handschuh, wenn man die Lichtsensoren nach aussen richtet.

Ich denke das wird Versuch 2, nachdem ich es mit den simplen Knöpfen am laufen habe.

Dazu würde ich dann verschiedene kleine Gegenstände machen, die man damit in Hand nehmen oder möglicherweise mit einer Schlaufe daran befestigen kann, um zu schauen wie es am bequemsten ist, oder ob es auf einer Oberfläche wie einem Tisch oder einem Bein oder so genauso bequem geht.

Eingabemöglichkeiten mit einer zweiten Sensorebene, die betätigt werden muss, um die erste betätigen zu können:
  • Zahlenrepräsentation, d. h. ohne beachten der Reihenfolge: Wäre dann wohl ternär. Denke ich genauso schnell wie in der binären Variante (d. h. höhere Datenrate), aber eine steilere Lernkurve, bis man es bedienen kann. Also 3^n-1 Möglichkeiten mit n Fingern.
  • mit Reihenfolge:
    • 1 Finger von n verwenden: 2n Möglichkeiten.
    • 2 Finger:
      • genau 2 Finger von n verwenden: 2n(2(n-1)) Möglichkeiten.
      • maximal 2 von n: 2n + 2n(2(n-1))
    • 3 Finger:
      • genau 3 Finger von n verwenden: 2n(2(n-1))(2(n-2)) Möglichkeiten.
      • maximal 3 von n: 2n + 2n(2(n-1)) + 2n(2(n-1))(2(n-2))
    • allgemein:
      • genau i Finger von n verwenden:
        ternReihiFinger.png
      • zwischen einem und allen n Fingern:
        ternReihMaxnFinger.png

        Hmm, sollte das Produktzeichen nicht etwas kleiner als das Summenzeichen sein, wenn man sie so verwendet? Hab die noch nie richtig gelernt...
Bin da jetzt auch wieder nicht 100% sicher, weder bei Notation noch der Logik, wenn jemand einen Fehler findet bitte melden. :)
Angenommen es stimmt wäre hier nochmal so eine Tabelle:
Code:
 n 2^n-1   binReih     3^n-1       ternReih
 1     1         1         2              2
 2     3         4         8             12
 3     7        15        26             78
 4    15        64        80            632
 5    31       325       242           6330
 6    63      1956       728          75972
 7   127     13699      2186        1063622
 8   255    109600      6560       17017968
 9   511    986409     19682      306323442
10  1023   9864100     59048     6126468860

Hab bei der Gelegenheit übrigens ein Script geschrieben, dass einem schnell und praktisch aus LaTeX .pngs macht, ka ob's sowas schon gab: http://t4b.me/posts/latex2png/

-- Mi Jan 16, 2013 21:21 --

Yay, die Hälte der Sachen, die ich bestellt habe wurde nach einer Woche verschickt... Na ja, dafür ist es billig und ich hab ja Zeit.
Will niemand kommentieren, ob meine Berechnungen stimmen? Ist doch nicht so schwierig. :p
Und es sind auch noch mindestens zwei andere Fragen in dem Post drin.
 
T4b said:
-- Sa Jan 12, 2013 15:45 --
Die Idee ist interessant. Könnte man da eine Fotodiode in Sperrrichtung zwischen 3.3V/5V und einen Analog In des Arduinos hängen (ich sag ja ich hab in dem Bereich nicht viel Ahnung)?
Im Prinzip müsste das selbe ja auch mit einem kapazitiven Sensor gehen, aber da weiss ich noch weniger, wie es geht. Hätte das noch einen anderen Vorteil als das es auch im dunklen funktionieren würde?

Für kapazitive Sensoren brauchst du ne Ladezeitmessung als Feature von deinem Controller. Man kann eine aktive LED auch als Fotodiode betreiben. Das hat den Vorteil, dass es auch im Dunkeln funktioniert.
 
Fennias Maxim said:
T4b said:
-- Sa Jan 12, 2013 15:45 --
Die Idee ist interessant. Könnte man da eine Fotodiode in Sperrrichtung zwischen 3.3V/5V und einen Analog In des Arduinos hängen (ich sag ja ich hab in dem Bereich nicht viel Ahnung)?
Im Prinzip müsste das selbe ja auch mit einem kapazitiven Sensor gehen, aber da weiss ich noch weniger, wie es geht. Hätte das noch einen anderen Vorteil als das es auch im dunklen funktionieren würde?

Für kapazitive Sensoren brauchst du ne Ladezeitmessung als Feature von deinem Controller. Man kann eine aktive LED auch als Fotodiode betreiben. Das hat den Vorteil, dass es auch im Dunkeln funktioniert.
Stimmt, das kommt mir vage bekannt vor; ist natürlich billiger als eine extra Fotodiode. Aber im Dunklen funktioniert es dann doch auch nicht "einfach so", sondern man braucht dann zwei LEDs, oder? Also eine führt ständig Messungen durch und die andere geht an, wenn die andere kein Licht abkriegt. So angeordnet, dass die messende LED indirekt Licht von der anderen abkriegt, wenn man mit der Installation nichts berührt aber nahe genug an einer Oberfläche dran ist, die das Licht reflektiert.
 
Re: AW: Keyer herstellen

<r>Oder man nimmt sowas:<br/>
<br/>
<URL url="http://www.watterott.com/de/Touch-Shield">http://www.watterott.com/de/Touch-Shield</URL><br/>
<br/>
Schönen Gruß<br/>
Rene</r>
 
Re: AW: Keyer herstellen

<r><QUOTE author="relei"><s>
relei said:
</s>Oder man nimmt sowas:<br/>
<br/>
<URL url="http://www.watterott.com/de/Touch-Shield">http://www.watterott.com/de/Touch-Shield</URL><br/>
<br/>
Schönen Gruß<br/>
Rene<e>
</e></QUOTE>
Das Problem damit, das es für diese Zwecke vollkommen nutzlos macht, ist, dass man es wohl kaum in Stücke schneiden kann. <E>;)</E></r>
 
Re: AW: Keyer herstellen

<r>Das ist mir schon klar <E>:-D</E>, aber man kann denn IC einzeln kaufen oder das dev Board auf den nur der IC ist und man die Touch-Flächen frei anschließen kann.<br/>
<br/>
Schönen Gruß<br/>
Rene</r>
 
Hmm, aber bleine glaub lieber bei Sachen, die ich zumindest halbwegs verstehe. :)

Die Schalter, die ich bestellte habe sind angekommen, hab schon ein bisschen damit gespielt:
keyer-switches.JPG

Edit: Andererseits, nach ein bisschen mehr Testen mit den Schaltern: Die gehen mir alle zu hart. Wäre eigentlich schon fantastisch, wenn es nur durch Berührung gehen würde. Muss doch dieses kapazitive Zeug nochmal genauer anschauen. Oder das mit den LEDs weiter verfolgen, was ist wohl billiger?
 
Back
Top