Sadržaj:
- Pribor
- Korak 1: Postavite hardver
- Korak 2: Prenesite kôd i testirajte
- Korak 3: Montiranje prototipa
- Korak 4: Počnite koristiti ruku kao miš
Video: Računalni miš Cyborg: 4 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
Mnoge studije ukazuju na to da položaj korištenja konvencionalnog računalnog miša može biti opasan. Miš je standardni dio računalne opreme. Korisnici računala koriste miš gotovo tri puta više od tipkovnice. Budući da su stope izloženosti velike, poboljšanje držanja gornjih ekstremiteta tijekom korištenja računalnog miša vrlo je važno.
Za ovaj apstraktni projekt napravit ćemo nosivi uređaj koji omogućuje ljudima da se kreću kroz zaslon računala bez potrebe za vanjskom tehnologijom. Na taj način bismo mogli koristiti ruke prirodnim pokretima umjesto klikanja uređaja na vodoravnoj površini. To također omogućuje korištenje zaslona dok stojite, što usmene prezentacije čini ugodnijim.
Što se tiče prototipa, indeks će se koristiti kao joystick, srednji prst za lijevi klik, prstenjak za desni klik i pinky za uključivanje i isključivanje uređaja. Palac će djelovati kao površina na kojoj se pritisnu tipke. Sve će se to dodati u rukavicu.
Pribor
- (x1) Arduino Leonardo
- (x1) Protoboard
- (x1) Modul joystick
- (x3) Tipkalo
- (x20 ±) Žicasti kratkospojnici
- (x3) Otpornici od 1KΩ
- (x1) Komplet za šivanje rukavica
- Vrući silikon na čičak
- Komplet za lemljenje žice
- 3D ispisani dio
Korak 1: Postavite hardver
Uključili smo skicu Fritzinga za bolje razumijevanje dizajna. Preporučujemo da komponente prije instalirate na protoboard. Na taj način možete provjeriti radi li sve prije lemljenja.
Korak 2: Prenesite kôd i testirajte
Nakon povezivanja spojite USB A (M) na mikro USB B (M) s računala na Arduino Leonardo i prenesite skicu. Skicu slobodno kopirajte, izmijenite i poboljšajte.
UPOZORENJE: Kada koristite naredbu Mouse.move (), Arduino preuzima vaš miš! Prije upotrebe naredbe provjerite imate li kontrolu. Radi samo za Arduino Leonardo, Micro ili Due
Evo našeg koda za ovaj projekt:
// Definiranje pinova#include; const int mouseMiddleButton = 2; // ulazni pin za sredinu miša Gumb const int startEmulation = 3; // prebacivanje za uključivanje i isključivanje emulacije miša const int mouseLeftButton = 4; // ulazni pin za miš lijevo Button const int mouseRightButton = 5; // ulazni pin za miša desno Button const int joystickX = A1; // joystick X os const int joystickY = A0; // joystick Y os
// parametri za čitanje upravljačke palice:
int cursorSpeed = 10; // izlazna brzina kretanja X ili Y int responseDelay = 5; // kašnjenje odgovora miša, u ms int prag = cursorSpeed / 4; // prag mirovanja int center = cursorSpeed / 2; // vrijednost položaja u mirovanju int mouseMiddleState = 0;
boolean mouseIsActive = false; // hoće li se upravljati mišem ili ne
int lastSwitchState = LOW; // prethodno stanje prekidača
void setup () {
pinMode (startEmulation, INPUT); // prekidač pin pinMode (mouseMiddleButton, INPUT); // srednja tipka miša pin pinMode (mouseLeftButton, INPUT); // lijeva tipka miša pin pinMode (mouseRightButton, INPUT); // pribadača desne tipke miša
Mouse.begin (); // preuzimamo kontrolu nad mišem
}
void loop () {{100} {101}
// čitanje sklopke: int switchState = digitalRead (startEmulation);
// ako je promijenjen i visok, promijenite stanje miša:
if (switchState! = lastSwitchState) {if (switchState == LOW) {mouseIsActive =! mouseIsActive; }}
// spremi stanje prekidača za sljedeću petlju:
lastSwitchState = switchState;
// očitavanje i mjerenje dviju osi:
int xReading = readAxis (A1); int yReading = readAxis (A0);
// ako je stanje kontrole miša aktivno, pomaknite miš:
if (mouseIsActive) {Mouse.move (xReading, yReading, 0); // (x, y, pomičite kotačić miša)}
//LIJEVO
// pročitajte gumb miša i kliknite ili ne kliknite: // ako je tipka miša pritisnuta: if (digitalRead (mouseLeftButton) == HIGH) {// ako miš nije pritisnut, pritisnite je: if (! Mouse.isPressed (MOUSE_LEFT)) {Mouse.press (MOUSE_LEFT); kašnjenje (100); // odgoda za omogućavanje jednog i dva klika na Mouse.release (MOUSE_LEFT); }}
// inače tipka miša nije pritisnuta:
else {// ako je miš pritisnut, otpustite ga: if (Mouse.isPressed (MOUSE_LEFT)) {Mouse.release (MOUSE_LEFT); }}
//PRAVO
// pročitajte gumb miša i kliknite ili ne kliknite: // ako je tipka miša pritisnuta: if (digitalRead (mouseRightButton) == HIGH) {// ako miš nije pritisnut, pritisnite je: if (! Mouse.isPressed (MOUSE_RIGHT)) {Mouse.press (MOUSE_RIGHT); kašnjenje (100); // odgoda za omogućavanje jednog i dva klika na Mouse.release (MOUSE_RIGHT); }}
// inače tipka miša nije pritisnuta:
else {// ako je miš pritisnut, otpustite ga: if (Mouse.isPressed (MOUSE_RIGHT)) {Mouse.release (MOUSE_RIGHT); }}
// SREDNJI
// čitajte tipku miša i kliknite ili ne kliknite: // ako je tipka miša pritisnuta: if (digitalRead (mouseMiddleButton) == HIGH) {// ako miš nije pritisnut, pritisnite je: if (! Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 0) {Mouse.press (MOUSE_MIDDLE); mouseMiddleState = 1; // aktualiziranje el estado del botón}}
// inače tipka miša nije pritisnuta:
else {// ako je miš pritisnut, otpustite ga: if (Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 1) {Mouse.release (MOUSE_MIDDLE); mouseMiddleState = 0; }}
kašnjenje (responseDelay);
}
/*
čita os (0 ili 1 za x ili y) i skalira raspon analognog ulaza u raspon od 0 do */
int readAxis (int thisAxis) {{100} {101}
// čitanje analognog ulaza: int reading = analogRead (thisAxis);
// preslikavanje očitanja iz raspona analognog ulaza u izlazni raspon:
čitanje = karta (čitanje, 0, 1023, 0, cursorSpeed);
// ako je očitavanje izlaza izvan
// prag položaja mirovanja, upotrijebite ga: int udaljenost = čitanje - središte;
if (abs (udaljenost) <prag) {udaljenost = 0; }
// vraća udaljenost za ovu os:
povratna udaljenost; }
Korak 3: Montiranje prototipa
Prvi korak je šivanje čička na rukavicu, morate prišiti četiri trake čička po jednu na svaki prst. Sašili smo mekani dio čička.
Svaki gumb ima dvije žice, jednu koja počinje od odgovarajućih pinova i povezuje se s pozitivnom nogom gumba, a druga s negativnom nogom. Na drugom kraju negativne žice lemimo otpore svakog gumba plus negativnu žicu upravljačke palice na posljednju žicu, koja se spaja na GND Arduino ploče. Ista paralelna veza radi i s pozitivne strane. (3 gumba i pozitivna noga upravljačke palice)
Nakon lemljenja kratkospojnika stavit ćemo tvrde čičak trake, tako da se žice zaglave između njih. Na kraju smo termo-lijepili modul upravljačke palice na 3D ispisani komad. Ispod možete pronaći. STL datoteku.
Korak 4: Počnite koristiti ruku kao miš
Glasajte za nas na natječaju za pomoćnu tehniku ako vam se svidio projekt.
Preporučeni:
ParaMouse računalni miš za paralizirane osobe: 5 koraka (sa slikama)
ParaMouse Računalni miš za paralizirane osobe: Pozdrav, u ovom ću vodiču opisati kako izgraditi računalni miš za osobe s invaliditetom, paralizirane ili kvadriplegičare. Ovaj je uređaj jednostavan za izradu i vrlo niske cijene, samo će mali odvijač i nož za rezanje biti više nego dovoljno za t
Pokazivač miša za prilagođeni računalni miš: 11 koraka
Prilagođeni pokazivač miša za računalo: Da li vam se ikada dosadilo da pokazivač miša uvijek izgleda isto? U ovom Instructableu naučit ćete kako izraditi vlastiti prilagođeni pokazivač miša i postaviti ga za rad na vašem računalu sa sustavom Windows 10
Računalni miš s pametnim rukavicama: 4 koraka (sa slikama)
Računalni miš Smart Glove: Ovo je " Pametna rukavica " računalni miš koji se može koristiti s bilo kojim PC, Mac ili Linux računalom. Izrađen je pomoću USB host adaptera s više protokola Binho Nova, koji vam omogućuje povezivanje senzora i drugih komponenti s računalom, a zatim upravljanje
Theremoose - Računalni miš s kontroliranim terminom: 6 koraka (sa slikama)
Theremoose - Termin kontrolirani računalni miš: Ovaj projekt napravljen je u suradnji s Randyjem Glennom, svakako ga provjerite ovdje: https://www.instructables.com/member/rglenn/ Prije otprilike tjedan dana sudjelovao sam na hackathonu za strašne ideje ovdje u Torontu (stupidhacktoronto.com). Ovo je
Računalni miš s nožnim pogonom: 7 koraka (sa slikama)
Računalni miš s nožnim upravljačem: Ugradio sam funkcije miša u naslon za noge kako bih mogao sastavljati i uređivati tekst bez da slomim tok misli i skinem ruke s tipkovnice kako bih napipao konvencionalni miš ili trackball. Komercijalni miševi s nožnim pogonom su dostupni