Kazalo:
- Zaloge
- 1. korak: Nastavite strojno opremo
- 2. korak: Naložite kodo in preizkusite
- 3. korak: Namestitev prototipa
- 4. korak: Začnite uporabljati roko kot miško
Video: Računalniška miška Cyborg: 4 koraki (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Številne študije kažejo, da je drža običajne računalniške miške lahko nevarna. Miška je standardni kos računalniške opreme. Uporabniki računalnikov uporabljajo miško skoraj trikrat toliko kot tipkovnico. Ker so stopnje izpostavljenosti visoke, je izboljšanje drže zgornjih okončin med uporabo računalniške miške zelo pomembno.
Za ta abstraktni projekt bomo izdelali nosilo, ki bo ljudem omogočalo premikanje po računalniškem zaslonu brez potrebe po zunanji tehnologiji. Tako bi lahko z rokami uporabljali naravne gibe, namesto da bi kliknili napravo na vodoravni površini. To omogoča tudi uporabo zaslonov stoje, zaradi česar so ustne predstavitve prijetnejše.
Kar zadeva prototip, bo indeks uporabljal kot krmilno palčko, srednji prst za levi klik, prstan za desni klik in roza za vklop in izklop naprave. Palec bo deloval kot površina, na kateri pritisnete gumbe. Vse to bo dodano v rokavico.
Zaloge
- (x1) Arduino Leonardo
- (x1) Protoboard
- (x1) Modul krmilne ročice
- (x3) Gumb
- (x20 ±) Žični mostički
- (x3) Upori 1KΩ
- (x1) Komplet za šivanje rokavic
- Velcro vroči silikon
- Komplet za spajkanje žice
- 3D natisnjeni del
1. korak: Nastavite strojno opremo
Za boljše razumevanje zasnove smo vključili skico Fritzing. Priporočamo, da komponente najprej namestite na protoboard. Tako lahko pred spajkanjem preverite, ali vse deluje.
2. korak: Naložite kodo in preizkusite
Ko so povezave vzpostavljene, priključite USB A (M) na mikro USB B (M) iz računalnika v Arduino Leonardo in naložite skico. Skico lahko kopirate, spreminjate in izboljšujete.
OPOZORILO: Ko uporabite ukaz Mouse.move (), Arduino prevzame vašo miško! Pred uporabo ukaza se prepričajte, da imate nadzor. Deluje samo za Arduino Leonardo, Micro ali Due
Tu je naša koda za ta projekt:
// Definiraj nožice#include; const int mouseMiddleButton = 2; // vhodni pin za sredino miške Button const int startEmulation = 3; // preklop za vklop in izklop emulacije miške const int mouseLeftButton = 4; // vhodni pin za miško levo Button const int mouseRightButton = 5; // vhodni pin za miško desno Gumb const int joystickX = A1; // krmilna palica osi X const int krmilna palicaY = A0; // krmilna palica os Y
// parametri za branje krmilne palice:
int cursorSpeed = 10; // izhodna hitrost gibanja X ali Y int responseDelay = 5; // odziv miške, v ms int prag = cursorSpeed / 4; // prag mirovanja int center = cursorSpeed / 2; // vrednost položaja v mirovanju int mouseMiddleState = 0;
boolean mouseIsActive = false; // ali naj upravljamo miško ali ne
int lastSwitchState = NIZKO; // prejšnje stanje stikala
void setup () {
pinMode (startEmulation, INPUT); // stikalni pin pinMode (mouseMiddleButton, INPUT); // pin pin mode srednjega gumba miške (mouseLeftButton, INPUT); // pin pin Mode leve tipke miške (mouseRightButton, INPUT); // desni gumb miške
Mouse.begin (); // prevzame nadzor nad miško
}
void loop () {
// preberite stikalo: int switchState = digitalRead (startEmulation);
// če je spremenjeno in je visoko, preklopite stanje miške:
if (switchState! = lastSwitchState) {if (switchState == LOW) {mouseIsActive =! mouseIsActive; }}
// shrani stanje stikala za naslednjo zanko:
lastSwitchState = switchState;
// beremo in merimo dve osi:
int xReading = readAxis (A1); int yReading = readAxis (A0);
// če je stanje miške aktivno, premaknite miško:
if (mouseIsActive) {Mouse.move (xReading, yReading, 0); // (x, y, pomikanje kolesca miške)}
// LEVO
// preberemo gumb miške in kliknemo ali ne kliknemo: // če pritisnemo gumb miške: if (digitalRead (mouseLeftButton) == HIGH) {// če miška ni pritisnjena, jo pritisnemo: if (! Mouse.isPressed (MOUSE_LEFT)) {Mouse.press (MOUSE_LEFT); zamuda (100); // zakasnitev za omogočanje enojnega in dvokliknite Mouse.release (MOUSE_LEFT); }}
// drugače gumb miške ni pritisnjen:
else {// če je miška pritisnjena, jo spustite: if (Mouse.isPressed (MOUSE_LEFT)) {Mouse.release (MOUSE_LEFT); }}
//PRAV
// preberite gumb miške in kliknite ali ne kliknite: // če pritisnete gumb miške: if (digitalRead (mouseRightButton) == HIGH) {// če miška ni pritisnjena, pritisnite: if (! Mouse.isPressed (MOUSE_RIGHT)) {Mouse.press (MOUSE_RIGHT); zamuda (100); // zakasnitev za omogočanje enojnega in dvojnega klika na Mouse.release (MOUSE_RIGHT); }}
// drugače gumb miške ni pritisnjen:
else {// če je miška pritisnjena, jo spustite: if (Mouse.isPressed (MOUSE_RIGHT)) {Mouse.release (MOUSE_RIGHT); }}
// SREDNJI
// preberemo gumb miške in kliknemo ali ne kliknemo: // če pritisnemo gumb miške: if (digitalRead (mouseMiddleButton) == HIGH) {// če miška ni pritisnjena, jo pritisnemo: if (! Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 0) {Mouse.press (MOUSE_MIDDLE); mouseMiddleState = 1; // aktualizacija el estado del botón}}
// drugače gumb miške ni pritisnjen:
else {// če je miška pritisnjena, jo spustite: if (Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 1) {Mouse.release (MOUSE_MIDDLE); mouseMiddleState = 0; }}
zamuda (responseDelay);
}
/*
bere os (0 ali 1 za x ali y) in poveča obseg analognega vhoda na območje od 0 do */
int readAxis (int thisAxis) {
// beremo analogni vhod: int reading = analogRead (thisAxis);
// preslikava odčitke iz analognega vhodnega območja v izhodno območje:
branje = zemljevid (branje, 0, 1023, 0, cursorSpeed);
// če je izhodni odčitek zunaj
// prag položaja mirovanja, ga uporabite: int distance = branje - center;
if (abs (razdalja) <prag) {distance = 0; }
// vrnemo razdaljo za to os:
povratna razdalja; }
3. korak: Namestitev prototipa
Prvi korak je, da velcro prišijete na rokavico, na vsak prst morate prišiti štiri trakove velcro. Mekani del velcro smo sešili.
Vsak gumb ima dve žici, eno, ki se začne pri ustreznih nožicah in se poveže s pozitivno nogo gumba, drugo pa na negativno nogo. Na drugem koncu negativne žice spajamo upornosti vsakega gumba skupaj z negativno žico krmilne palice na zadnjo žico, ki se poveže z GND plošče Arduino. Ista vzporedna povezava deluje na pozitivni strani. (3 gumbi in pozitivna noga krmilne palice)
Po spajkanju skakalcev si nataknemo trde velcro trakove, da se žice vmes zataknejo. Nazadnje smo termo lepljeni modul igralne palice na 3D natisnjen kos. Spodaj najdete datoteko. STL.
4. korak: Začnite uporabljati roko kot miško
Glasujte za nas na tekmovanju Assistive Tech Contest, če vam je bil projekt všeč.
Priporočena:
Računalniška miška ParaMouse za paralizirane ljudi: 5 korakov (s slikami)
Računalniška miška ParaMouse za paralizirane ljudi: Pozdravljeni, v tej vadnici bom opisal, kako sestaviti računalniško miško za invalide, paralizirane ali kvadriplegike. Ta naprava je enostavna za izdelavo in zelo nizka cena, le majhen izvijač in rezalni nož bo bo več kot dovolj za t
Računalniška miška Smart Glove: 4 koraki (s slikami)
Računalniška miška Smart Glove: To je " pametna rokavica " računalniško miško, ki jo lahko uporabljate s katerim koli računalnikom PC, Mac ali Linux. Narejen je z gostiteljskim vmesnikom USB za več protokolov Binho Nova, ki omogoča povezovanje senzorjev in drugih komponent z računalnikom in nato krmiljenje
Theremoose - računalniška miška, ki jo upravlja termin: 6 korakov (s slikami)
Theremoose - Themin Controlled Computer Mouse: Ta projekt je nastal v sodelovanju z Randyjem Glennom, ne pozabite ga preveriti tukaj: https://www.instructables.com/member/rglenn/ Pred približno enim tednom sem sodeloval na hackathonu za grozne ideje tukaj v Torontu (stupidhacktoronto.com). To je
Ultrazvočna miška za sledenje glavam: 4 koraki (s slikami)
Ultrazvočna miška za sledenje glavam: Pred kratkim sem obnovil slušalke za miško za sledenje glavi za paraplegičnega človeka. Ta navodila vsebujejo nekaj informacij, ki bi lahko pomagale vsem drugim, ki bi poskušali storiti enako. Enota, s katero te slušalke delujejo, je ravnatelj LRK, Prentke HM-2P
Računalniška miška z nožnim upravljanjem: 7 korakov (s slikami)
Računalniška miška z nožno tipko: Funkcije miške sem vgradil v oporo za noge, da sem lahko sestavljal in urejal besedilo, ne da bi pri tem zlomil svoj miselni tok in odmaknil roke s tipkovnice, da bi se dotaknil običajne miške ali sledilne kroglice. Komercialne miške z nožnim upravljanjem so na voljo