ich würde gerne mit Hilfe von Elektromagneten einige Tasten einer PC-Tastatur kurz drücken.
Ich habe mir das so vorgestellt, das ich auf die Tasten Permanentmagneten klebe und mit einem Gestell platziere ich die Elektromagneten darüber.
Die Elektromagneten möchte ich per VB.NET und einer Arduino Uno an-/ausschalten. Es reicht aus, wenn immer nur eine Taste gleichzeitig gedrückt wird. So wie ich das verstehe kann ich mit einer Arduino Uno 14 Elektromagnete unabhängig voneinander an-/ausschalten.
Ich habe mir gedacht, dass ich mir einen Stromkreislauf mit einer Spannungsquelle und den Elektromagneten aufbaue. Vor jedem Elektromagnet befindet sich ein Schalter den ich mithilfe der Arduino Uno an-/ausschalten kann. Eigentlich analog dazu, nur eben mit Schaltern.
Meine Fragen:
Ist das so möglich oder gibt es eine bessere Lösung?
Welche Schalter benötige ich?
In welcher Größenordnung müssen die Permanent/Elektromagnete liegen?
Die Arduino Uno kann ich per USB versorgen, kann ich darüber auch gleich die Befehle für an-/aus übertragen oder benötige ich noch ein weiteres Kabel?
Danke für eure Hilfe, ich bin Maschinenbauer und auf dem Gebiet der Elektrotechnik ziemlich verloren
nahibi:
ich würde gerne mit Hilfe von Elektromagneten einige Tasten einer PC-Tastatur kurz drücken.
Warum?
Mit einem Arduino LEONARDO, der über USB mit einem PC verbunden ist, könntest Du direkt über das USB-Kabel Tastencodes an den PC senden, ohne Tasten drücken zu müssen (also der LEONARDO agiert dann wie eine USB-Tastatur).
Hmm. Dein Ansatz riecht irgendwie nach Holzhammermethode, und einer tiefen Abneigung gegen alles, was nicht mechanisch ist
Je nach Tastenhub und Druckpunkt müssen die Elektromagnete recht stark sein. Besser wären vielleicht je 2 Magnete, von denen einer gekippt wird, um den anderen abzustoßen. Aber dann kann man ja gleich einen Winkelhebel die Taste drücken lassen.
Etwas elektrischer wäre es, die Tastatur aufzuschrauben und an jeden Tastenkontakt ein Relais anzuschließen, das den Kontakt kurzschließt. Statt mechanischer Relais können dafür auch FETs verwendet werden, das spart zumindest Platz (und Geld). Das geht natürlich schlecht wenn die Tastaur fest in ein Notebook eingebaut ist.
Noch elektronischer wäre es, die Tastencodes direkt an den PC zu schicken - was für einen Anschluß hat denn Deine Tastatur?
Für eine USB Tastatur käme auch ein Arduino in Frage, der vom PC direkt als Tastatur erkannt wird (Due, Leonardo...).
Jurs Ausführungen zum Leonardo kamen mir auch in den Sinn, wenn es denn aber -aus welchem Grund auch immer- die beschriebene mechanische Ausführung sein soll, schlage ich die Ansteuerung des Elektromagneten über einen Transistor vor. Dies kann ein "normaler" bipolarer NPN-Transistor oder eben ein N-Channel-FET sein. Keine Angst vor den Bezeichnungen, es gibt sehr schön ausgearbeitete Standardbeschaltungen mit Bauteilvorschlägen: http://www.pighixxx.com/test/abc/
Wichtig bei der Ansteuerung von induktiven Bauteilen (Relais, Motoren, E-Magnet) ist eine sogenannte Löschdiode, die Induktionsspannungen quasi kurzschließt. Andernfalls könnten diverse Halbleiter Schaden nehmen, also der angesprochene Transistor bis hin zum Mikrocontroller. Aber auch das ergibt sich aus den Schaltungen im Link. Für alles was unklar blieb - du weißt, wo du uns findest.
Ich habe mich jetzt informiert, wie eine Tastatur eigentlich funktioniert und in der Tat sind eure Lösungen viel besser.
Ich verwende eine USB Tastatur und es ist auch kein Problem die Tastatur aufzuschrauben um daran zu basteln. Möchte auch erstmal diese Methode der "Tastencodes direkt senden" vorziehen.
Was brauche ich jetzt dafür alles:
welches board reicht aus?
ein USB-Kabel für die Versorgung des boards (kann ich damit jetzt auch direkt das Signal für an/aus von VB.NET an das board übertragen, oder brauch ich noch ein weiteres Kabel)
welche FETs brauch ich denn, bei conrad gibt es ja massig
Noch elektronischer wäre es, die Tastencodes direkt an den PC zu schicken - was für einen Anschluß hat denn Deine Tastatur?
Die meisten PC haben noch eine PS/2 Buchse für eine entsprechende Tastatur.
Das könnte auch ein Uno emulieren. Aber hier geht es bestimmt um eine mechanische Lösung a la "useless machine". Sonst könnte man das auch direkt mit VB machen, ganz ohne Arduino.
Die Arduino Uno kann ich per USB versorgen, kann ich darüber auch gleich die Befehle für an-/aus übertragen oder benötige ich noch ein weiteres Kabel
Na klar, das macht doch der Beispielsketch, den du schon gefunden hast. Da sendet das VB Programm über das gleiche Kabel mit dem der Uno geladen wurde und über das er mit Strom versorgt wird, eine '0' oder eine '1' um die Led ein oder auszuschalten.
Habe ich das richtig verstanden, dass du nun direkt an einer zweiten Basteltastatur Tastendrücke simulieren möchtest? Ich könnte mir in dem Fall vorstellen, ein paar billige CMOS-ICs vom Typ 4066 (4fach bilaterale Schalter) zu nehmen und mit diesen an die entsprechenden Leiterbahnen der Tastatur zu gehen.
Hat jemand diesbezüglich Einwände bzw. bessere Vorschläge?
sth77:
Habe ich das richtig verstanden, dass du nun direkt an einer zweiten Basteltastatur Tastendrücke simulieren möchtest? Ich könnte mir in dem Fall vorstellen, ein paar billige CMOS-ICs vom Typ 4066 (4fach bilaterale Schalter) zu nehmen und mit diesen an die entsprechenden Leiterbahnen der Tastatur zu gehen.
Hat jemand diesbezüglich Einwände bzw. bessere Vorschläge?
genau das ist quasi wie michael_x schon geschrieben hat eine "useless machine".
Nur als Beispiel, such mal bei ebay nach Dupont Male Kabeln u.ä.
Schade: Eine elektromechanische Lösung wo echte Tasten echt bewegt werden, hätte ich witziger gefunden.
So ist das ganze doch total sinnlos: um Tastenbetätigung per Software simulieren, braucht man gar keine Hardware.
michael_x:
Schade: Eine elektromechanische Lösung wo echte Tasten echt bewegt werden, hätte ich witziger gefunden.
Ich würde dann eher eine pneumatische Lösung favorisieren, statt elektromagnetischer Betätigung. Die wäre von einem Maschinenbauer auch leichter nachzuvollziehen - Pumpe, Ventile, Schläuche und Kolben kann man noch anfassen, ohne Lötkolben zusammenstöpseln, und ohne DVM überprüfen. Und ob der Controller das richtige Ventil ansteuert, läßt sich auch ohne Meßgerät feststellen.
Bei den Spulen hätte ich selbst als Elektroniker Probleme, die richtige Auslegung für die notwendige Kraft und den Betätigungsweg zu finden. Dann lieber noch ein Servo pro Taste, oder eine Mimik die so einen "Finger" zu der zu betätigenden Taste fährt.