Përmbajtje:
- Furnizimet
- Hapi 1: Konfiguroni pajisjen
- Hapi 2: Ngarko kodin dhe provën
- Hapi 3: Montimi i Prototipit
- Hapi 4: Filloni të përdorni dorën tuaj si mi
Video: Miu kompjuterik Cyborg: 4 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:17
Shumë studime sugjerojnë se qëndrimi i përdorimit të një miu kompjuterik konvencional mund të jetë i rrezikshëm. Miu është një pjesë standarde e pajisjeve kompjuterike. Përdoruesit e kompjuterit përdorin miun pothuajse tre herë më shumë se tastiera. Meqenëse normat e ekspozimit janë të larta, përmirësimi i qëndrimit të ekstremiteteve të sipërme gjatë përdorimit të miut kompjuterik është shumë i rëndësishëm.
Për këtë projekt abstrakt ne do të bëjmë një pajisje të veshshme që i lejon njerëzit të lëvizin nëpër ekranin e kompjuterit pa qenë e nevojshme teknologjia e jashtme. Në atë mënyrë ne mund të përdorim lëvizjet natyrale të duarve në vend që të klikojmë një pajisje në një sipërfaqe horizontale. Kjo gjithashtu ju lejon të përdorni ekranet në këmbë, duke i bërë prezantimet gojore më të këndshme.
Sa i përket prototipit do të jetë përdorimi i indeksit si një levë, gishti i mesëm për klikimin majtas, gishti unazor për klikimin e djathtë dhe rozë për ndezjen dhe fikjen e pajisjes. Gishti i madh do të veprojë si sipërfaqja ku shtypen butonat. Të gjitha do të shtohen në një dorezë.
Furnizimet
- (x1) Arduino Leonardo
- (x1) Protoboard
- (x1) Moduli i xhojstikut
- (x3) Butoni i butonit
- (x20 ±) Kërcyesit me tela
- (x3) Rezistorët 1KΩ
- (x1) Komplet qepjeje me doreza
- Silkoni i nxehtë Velcro
- Kompleti i saldimit me tela
- Pjesë e printuar 3D
Hapi 1: Konfiguroni pajisjen
Ne kemi përfshirë një skicë Fritzing për një kuptim më të mirë të modelit. Ne rekomandojmë montimin e përbërësve në një protoboard së pari. Në atë mënyrë ju mund të kontrolloni që gjithçka po funksionon para bashkimit.
Hapi 2: Ngarko kodin dhe provën
Pasi të bëhen lidhjet, lidhni USB A (M) me mikro USB B (M) nga kompjuteri në Arduino Leonardo dhe ngarkoni skicën. Mos ngurroni të kopjoni, modifikoni dhe përmirësoni skicën.
KUJDES: Kur përdorni komandën Mouse.move (), Arduino merr miun tuaj! Sigurohuni që keni kontroll para se të përdorni komandën. Punon vetëm për Arduino Leonardo, Micro ose Due
Këtu është kodi ynë për këtë projekt:
// Përcaktoni kunjat#përfshijnë; const int mouseMiddleButton = 2; // pin pin për butonin e mesit të miut const int startEmulation = 3; // kaloni për të ndezur dhe fikur emulimin e miut const int mouseLeftButton = 4; // pin hyrës për miun majtas Button const int mouseRightButton = 5; // pin futës për miun djathtas Button const int joystickX = A1; // levë X boshtin const int joystickY = A0; // aksi i levës Y
// parametrat për leximin e levës:
int cursorSpeed = 10; // shpejtësia e daljes së lëvizjes X ose Y int respondDelay = 5; // vonesa e përgjigjes së miut, në ms int pragu = cursorSpeed / 4; // pragu i pushimit int center = cursorSpeed / 2; // vlera e pozicionit të pushimit në mouseMiddleState = 0;
boolean mouseIsActive = false; // nëse duhet kontrolluar apo jo miun
int lastSwitchState = LOW; // gjendja e kalimit të mëparshëm
void setup () {
pinMode (startEmulation, INPUT); // kaloni pinMode pin (mouseMiddleButton, INPUT); // butoni i mesit i miut pin pinMode (mouseLeftButton, INPUT); // butoni i majtë i miut pin pinMode (mouseRightButton, INPUT); // kunja e butonit të djathtë të miut
Mouse.filloj (); // marr kontrollin e miut
}
lak void () {
// lexoni çelësin: int switchState = digitalRead (startEmulation);
// nëse është ndryshuar dhe është e lartë, kaloni gjendjen e miut:
if (switchState! = lastSwitchState) {if (switchState == LOW) {mouseIsActive =! mouseIsActive; }}
// ruani gjendjen e kalimit për lakin tjetër:
lastSwitchState = switchState;
// lexoni dhe shkallëzoni dy akset:
int xLeading = readAxis (A1); int yReading = readAxis (A0);
// nëse gjendja e kontrollit të miut është aktive, lëvizeni miun:
if (mouseIsActive) {Mouse.move (xReading, yReading, 0); // (x, y, rrotulloni rrotën e miut)}
// Majtas
// lexoni butonin e miut dhe klikoni ose mos klikoni: // nëse butoni i miut shtypet: nëse (digitalRead (mouseLeftButton) == LART) {// nëse miu nuk shtypet, shtypeni atë nëse (! Mouse.isPressed (MOUSE_LEFT)) {Mouse.press (MOUSE_LEFT); vonesë (100); // vonesë për të aktivizuar një dhe klikim të dyfishtë Mouse.release (MOUSE_LEFT); }}
// përndryshe butoni i miut nuk shtypet:
else {// nëse miu shtypet, lëshojeni: if (Mouse.isPressed (MOUSE_LEFT)) {Mouse.release (MOUSE_LEFT); }}
// E DREJTA
// lexoni butonin e miut dhe klikoni ose mos klikoni: // nëse butoni i miut shtypet: nëse (digitalRead (mouseRightButton) == LART) {// nëse miu nuk shtypet, shtypeni atë nëse (! Mouse.isPressed (MOUSE_RIGHT)) {Mouse.press (MOUSE_RIGHT); vonesë (100); // vonesë për të aktivizuar lëshimin e vetëm dhe të dyfishtë të Mouse.release (MOUSE_RIGHT); }}
// përndryshe butoni i miut nuk shtypet:
else {// nëse miu shtypet, lëshojeni: if (Mouse.isPressed (MOUSE_RIGHT)) {Mouse.release (MOUSE_RIGHT); }}
// E MESME
// lexoni butonin e miut dhe klikoni ose mos klikoni: // nëse butoni i miut shtypet: nëse (digitalRead (mouseMiddleButton) == HIGH) {// nëse miu nuk shtypet, shtypeni atë nëse (! Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 0) {Mouse.press (MOUSE_MIDDLE); mouseMiddleState = 1; // actualiza el estado del botón}}
// përndryshe butoni i miut nuk shtypet:
else {// nëse miu shtypet, lëshojeni atë: nëse (Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 1) {Mouse.release (MOUSE_MIDDLE); mouseMiddleState = 0; }}
vonesë (Vonesa në përgjigje);
}
/*
lexon një bosht (0 ose 1 për x ose y) dhe shkallëzon gamën e hyrjes analoge në një interval nga 0 në */
int readAxis (int thisAxis) {
// lexoni hyrjen analoge: int reading = analogRead (thisAxis);
// hartoni leximin nga diapazoni i hyrjes analoge në gamën e daljes:
leximi = harta (leximi, 0, 1023, 0, cursorSpeed);
// nëse leximi i daljes është jashtë nga
// pragu i pozicionit të pushimit, përdoreni atë: int distance = lexim - qendër;
nëse (abs (distanca) <pragu) {distanca = 0; }
// ktheni distancën për këtë aks:
distanca e kthimit; }
Hapi 3: Montimi i Prototipit
Hapi i parë është qepja e velcro në dorezë, ju duhet të qepni katër shirita velcro një në secilin gisht. Ne qepëm pjesën e butë të velcro.
Çdo buton ka dy tela, njëra që fillon në kunjat përkatëse dhe lidhet me këmbën pozitive të butonit dhe një tjetër në këmbën negative. Në skajin tjetër të telit negativ ne lidhim rezistencat e secilit buton plus tela negative të levës në një tel të fundit, i cili lidhet me GND të bordit Arduino. E njëjta lidhje paralele funksionon për anën pozitive. (3 butona dhe këmbë pozitive me levë)
Pas bashkimit të kërcyesve do të vendosim shirita të fortë velcro, në mënyrë që telat të mbërthehen në mes. Së fundmi, ne termo-ngjitëm modulin e levës në një pjesë të printuar 3D. Më poshtë mund të gjeni skedarin. STL.
Hapi 4: Filloni të përdorni dorën tuaj si mi
Votoni për ne në Konkursin Teknik Ndihmës nëse ju pëlqeu projekti.
Recommended:
ParaMouse miu kompjuterik për njerëzit e paralizuar: 5 hapa (me fotografi)
ParaMouse miu kompjuterik për njerëzit e paralizuar: Përshëndetje, në këtë tutorial do të përshkruaj se si të ndërtoj një mi kompjuterik për njerëzit me aftësi të kufizuara, të paralizuar ose katërkëndësh. Kjo pajisje e veçantë është e lehtë për tu ndërtuar dhe me kosto shumë të ulët, vetëm një kaçavidë e vogël dhe thikë prerëse të jetë më se e mjaftueshme për t
Njohja e yjeve duke përdorur vizionin kompjuterik (OpenCV): 11 hapa (me fotografi)
Njohja e yjeve duke përdorur vizionin kompjuterik (OpenCV): Ky udhëzues do t'ju përshkruajë se si të krijoni një program vizioni kompjuterik për të identifikuar automatikisht modelet e yjeve në një imazh. Metoda përdor bibliotekën OpenCV (Open-Source Computer Vision) për të krijuar një grup kaskadash të trajnuara HAAR që mund të jenë
Shkopi Harry Potter që punon vërtet duke përdorur vizionin kompjuterik: 8 hapa (me fotografi)
Shkopi Harry Potter që Punon Real Duke Përdorur Vizionin Kompjuterik: " Çdo Teknologji mjaft e Avancuar Nuk Dallohet nga Magjia " - Arthur C. Clarke Disa muaj më parë vëllai im vizitoi Japoninë dhe kishte përvojë të vërtetë magjistare në Botën e Magjistarëve të Harry Potter në Studiot Universale të bëra të mundshme
Theremoose - miu kompjuterik i kontrolluar nga Theremin: 6 hapa (me fotografi)
Theremoose - miu kompjuterik i kontrolluar Theremin: Ky projekt u bë në bashkëpunim me Randy Glenn, sigurohuni që ta kontrolloni këtu: https://www.instructables.com/member/rglenn/Rreth një javë më parë mora pjesë në një hackathon për ide të tmerrshme këtu në Toronto (stupidhacktoronto.com). Kjo është e
Miu kompjuterik i përdorur me këmbë: 7 hapa (me fotografi)
Miu kompjuterik i operuar me këmbë: Unë i ndërtova funksionet e një miu në një mbështetëse për këmbët, në mënyrë që të kompozoja dhe të redaktoja tekstin pa e prishur trenin tim të mendimit dhe duke hequr duart nga tastiera për të gabuar me një miun ose topin konvencional. Minjtë komercialë të operuar me këmbë janë në dispozicion