Een aanpasbare ponsbare toetsenbordknop maken
Componenten en benodigdheden
![]() |
| × | 1 | |||
| × | 1 | ||||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
Benodigde gereedschappen en machines
| ||||
|
Apps en online services
![]() |
|
Over dit project
Heb je niet vaak de neiging om op je toetsenbord te slaan terwijl je aan het werk bent of je verveelt met het spelen van games?
Raak deze aanpasbare toets aan! Laat je ongeluk van je afglijden!
In dit project heb ik een aanpasbare ponsbare toetsenbordknop gemaakt die bestaat uit een piëzo-element, een op ATmega32U4 gebaseerd bord, een hoogwaardige weerstand (1 Mega ohm) en enkele sponzen.
Om te typen, slaan of trappen gebruikers gewoon op de toets die ze willen.
Benodigde hardware:
- Arduino Pro Micro
De Micro is gebaseerd op de ATmega32U4-microcontroller met ingebouwde USB waardoor de Micro herkenbaar is als muis of toetsenbord.
U kunt elke microcontroller gebruiken die een ATmega32U4-chip gebruikt.

- Piëzo-elektrische schijf
Een piëzo is een elektronisch apparaat dat een spanning genereert wanneer het fysiek wordt vervormd door trillingen, geluid of mechanische belasting.
Piëzo-elektrische schijf is te vinden in de luidsprekers in een of andere muzikale cadeaubon. Als je er een hebt, hoef je geen piëzo-element in de winkel te kopen. Gebruik een schroevendraaier en/of mes om de luidsprekerbehuizing uit elkaar te wrikken. Verwijder vervolgens de metalen plaat en til de printplaat op (ze kunnen stevig vastzitten), zodat je kunt pak de piëzo-elektrische schijf eronder.

- 1 Mega Ohm weerstand
Deze hoogwaardige weerstand beperkt de spanning en stroom die door de piëzo worden geproduceerd en om de analoge ingang te beschermen.

- Sponzen
Wanneer kracht op de spons wordt uitgeoefend, vervormt deze en wanneer kracht wordt losgelaten, krijgt deze zijn oorspronkelijke vorm. Het piëzo-element wordt tussen sponzen geplaatst en wanneer iemand er ooit op slaat, wordt de gegenereerde spanning door de analoge pin van arduino micro gestuurd.

Schakelschema:
Werkend:
Piëzo's zijn gepolariseerd, wat betekent dat er spanning doorheen gaat (of eruit) in een specifieke richting. Sluit de zwarte draad (de lagere spanning) aan op aarde en de rode draad (de hogere spanning) op analoge pin 0. Sluit daarnaast een weerstand van 1 mega ohm parallel aan het piëzo-element aan om de spanning en stroom geproduceerd door de piëzo te beperken en om de analoge ingang te beschermen.
Als de uitvoer van de piëzo (werkt als klopsensor) sterker is dan een bepaalde drempel, zal uw bord toetsenbordbediening uitvoeren op basis van een programma.

Maak een omhulsel om sponzen te bedekken:

Pak een doek en maak met naald en draad een omhulsel voor sponzen. Ik zei tegen mijn moeder dat ze er een moest maken en ze maakte een omheining om het circuit en de sponzen te bedekken.
Steek het piëzo-element in de spons:

Code:
#include const int knockSensor =A0; // de piëzo is verbonden met analoge pin 0const int drempel =100; // drempelwaarde // deze variabelen veranderen:int sensorReading =0; // variabele om de waarde op te slaan die is gelezen van de sensor pinvoid setup () { Keyboard.begin ();} void loop () { // lees de sensor en sla deze op in de variabele sensorReading:sensorReading =analogRead (knockSensor); // als de sensorwaarde groter is dan de drempel:if (sensorReading>=drempel) {// om de ASCII-waarden van de sleutelfunctie aan te passen, raadpleegt u https://www.arduino.cc/en/Reference/ASCIIchart Keyboard.write (32); //ASCII-waarde van de spatiebalk is 32, vertraging (150); Toetsenbord.releaseAll(); }}
- Verbind volgens het circuit en upload de code
- Sluit het gewoon aan op de USB-poort van uw computer en dit kan verschillende toetsenbordfuncties uitvoeren op basis van het programma.
Vergeet niet de code aan te passen als u een andere toetsenbordactie wilt uitvoeren.
Wijzig alleen de volgende regel code voor wijziging
Keyboard.write("ASCII-waarde");
Waarom is dit gaaf? Denk na over de gebruiksmogelijkheden:
- Spelsnelkoppelingen of bedieningselementen
- Open een veelgebruikte applicatie
- Ga naar een veelgebruikte website
- Windows-snelkoppelingen zoals een document opslaan of alle vensters verkleinen
- Voer uw e-mailadres of algemene tekenreeks in
- Voer uw complexe wachtwoord in
- Paniekknop op het werk
Heel erg bedankt voor het lezen als je meer informatie nodig hebt, voel je vrij om te vragen in opmerkingen, en ik zal mijn best doen om je te beantwoorden.
Veel plezier met maken!
Code
- customizable_punchable_keyboard_button.ino
customizable_punchable_keyboard_button.inoArduino
#includeconst int knockSensor =A0; // de piëzo is verbonden met analoge pin 0const int drempel =100; // drempelwaarde // deze variabelen veranderen:int sensorReading =0; // variabele om de waarde op te slaan die is gelezen van de sensor pinvoid setup () { Keyboard.begin ();} void loop () { // lees de sensor en sla deze op in de variabele sensorReading:sensorReading =analogRead (knockSensor); // als de sensorwaarde groter is dan de drempel:if (sensorReading>=drempel) {// om de ASCII-waarden hieronder aan te passen, raadpleeg https://www.arduino.cc/en/Reference/ASCIIchart Keyboard.write (32); //ASCII-waarde van de spatiebalk is 32, vertraging (150); Toetsenbord.releaseAll(); }}
Schema's
circuit_diagram_dCHo19d2OK.fzzProductieproces
- Hoe de luchtkwaliteit op OpenSensors te meten
- Hoe maak je een Arduino+Raspberry Pi-robotplatform
- Maak Monitor Ambilight met Arduino
- IR-afstandsbedieningen hacken
- Hoe lang ben je?
- Hoe maak je een NeoPixel-matrix
- Aanpasbare Geiger Muller-teller
- Hoe gemakkelijk is het om een thermistor te gebruiken?!
- 64-Key Prototyping Keyboard Matrix voor Arduino
- Muziek maken met een Arduino
- Hoe maak je een kompas met Arduino en Processing IDE?