
Мазмұны:
2025 Автор: John Day | [email protected]. Соңғы өзгертілген: 2025-01-23 14:51

Көптеген зерттеулер кәдімгі компьютерлік тінтуірдің позасы қауіпті болуы мүмкін екенін көрсетеді. Компьютер қолданушылары тышқанды пернетақтадан үш есе көп пайдаланады. Экспозиция жылдамдығы жоғары болғандықтан, компьютерлік тінтуірді пайдалану кезінде жоғарғы аяқтың қалпын жақсарту өте маңызды.
Бұл дерексіз жоба үшін біз адамдарға сыртқы технологияны қажет етпестен компьютердің экраны арқылы өтуге мүмкіндік беретін киінетін құрылғы жасаймыз. Осылайша біз көлденең бетке құрылғыны басудың орнына қолды табиғи қозғалыстармен қолдана аламыз. Бұл сонымен қатар экрандарды тұру кезінде қолдануға мүмкіндік береді, бұл ауызша презентацияны жағымды етеді.
Прототипке келетін болсақ, индексті джойстик ретінде, ортаңғы саусақты сол жақ шерту үшін, саусақты оң жақ шерту үшін және құрылғыны қосу мен өшіру үшін қызғылт түсті етіп қолдану керек. Бас бармақ батырмалар басылатын бет ретінде әрекет етеді. Мұның бәрі қолғапқа қосылады.
Жабдықтар
- (x1) Ардуино Леонардо
- (x1) Protoboard
- (x1) джойстик модулі
- (x3) батырмасы
- (x20 ±) Сым секіргіштері
- (x3) 1KΩ резисторлары
- (x1) Қолғап тігуге арналған жинақ
- Velcro ыстық силикон
- Сымдарды дәнекерлеу жиынтығы
- 3D басып шығарылған бөлік
1 -қадам: Жабдықты орнатыңыз

Біз дизайнды жақсы түсіну үшін Fritzing эскизін енгіздік. Алдымен компоненттерді протон тақтасына орнатуды ұсынамыз. Осылайша сіз дәнекерлеу алдында бәрі жұмыс істейтінін тексере аласыз.
2 -қадам: кодты жүктеңіз және тест жасаңыз
Байланыс орнатылғаннан кейін USB A (M) микро USB B (M) -ге компьютерден Arduino Leonardo қосылып, эскизді жүктеңіз. Эскизді көшіруге, өзгертуге және жетілдіруге болады.
ЕСКЕРТУ: Mouse.move () пәрменін қолданғанда, Arduino тінтуірді қабылдайды! Пәрменді қолданар алдында сізде бақылау бар екеніне көз жеткізіңіз. Ол тек Arduino Leonardo, Micro немесе Due үшін жұмыс істейді
Міне, бұл жобаның коды:
// Pins#include анықтаңыз; const int mouseMiddleButton = 2; // тінтуірдің ортасына енгізу түйрегі Түймесі const int startEmulation = 3; // тінтуірдің эмуляциясын қосу және өшіру үшін ауысу const int mouseLeftButton = 4; // тінтуірдің кіріс түйрегіші сол жақ Button const int mouseRightButton = 5; // тінтуірдің оң жақ штыры үшін түйреуіш батырмасы const int joystickX = A1; // джойстик X осі const int joystickY = A0; // джойстик Y осі
// джойстикті оқу параметрлері:
int cursorSpeed = 10; // X немесе Y қозғалысының шығыс жылдамдығы int responseDelay = 5; // тінтуірдің жауап беруінің кешігуі, ms int threshold = cursorSpeed / 4; // демалыс шегі int center = cursorSpeed / 2; // демалыс орны мәні int mouseMiddleState = 0;
логикалық mouseIsActive = жалған; // тышқанды басқару керек пе, жоқ па
int lastSwitchState = LOW; // алдыңғы ауысу күйі
жарамсыз орнату () {
pinMode (startEmulation, INPUT); // pinMode коммутаторы (mouseMiddleButton, INPUT); // pinMode (mouseLeftButton, INPUT) тінтуірдің ортаңғы түйме түйрегіші; // pinMode (mouseRightButton, INPUT) тінтуірдің сол жақ батырмасы; // тінтуірдің оң жақ батырмасы
Тышқан.begin (); // тінтуірді бақылауға алыңыз
}
void loop () {
// коммутаторды оқу: int switchState = digitalRead (startEmulation);
// егер ол өзгерсе және жоғары болса, тінтуірдің күйін ауыстырыңыз:
if (switchState! = lastSwitchState) {if (switchState == LOW) {mouseIsActive =! mouseIsActive; }}
// ауыспалы күйді келесі цикл үшін сақтау:
lastSwitchState = switchState;
// екі осьті оқыңыз және масштабтаңыз:
int xReading = readAxis (A1); int yReading = readAxis (A0);
// егер тінтуірді басқару күйі белсенді болса, тышқанды жылжытыңыз:
if (mouseIsActive) {Mouse.move (xReading, yReading, 0); // (x, y, айналдыру тінтуір дөңгелегі)}
//СОЛ
// тінтуірдің батырмасын оқыңыз және шертіңіз немесе баспаңыз: // егер тышқан түймесі басылса: егер (digitalRead (mouseLeftButton) == HIGH) {// егер тышқан басылмаған болса, оны басыңыз: if (! Mouse.isPressed (MOUSE_LEFT)) {Mouse.press (MOUSE_LEFT); кешіктіру (100); // Mouse.release (MOUSE_LEFT) бір рет және екі рет шертуді қосу үшін кешігу; }}
// әйтпесе тышқан батырмасы басылмайды:
else {// егер тышқан басылса, оны жіберіңіз: if (Mouse.isPressed (MOUSE_LEFT)) {Mouse.release (MOUSE_LEFT); }}
// ДҰРЫС
// тінтуірдің батырмасын оқыңыз және басыңыз немесе баспаңыз: // егер тышқан түймесі басылса: егер (digitalRead (mouseRightButton) == HIGH) {// егер тышқан басылмаған болса, оны басыңыз: if (! Mouse.isPressed (MOUSE_RIGHT)) {Mouse.press (MOUSE_RIGHT); кешіктіру (100); // Mouse.release (MOUSE_RIGHT) бір рет және екі рет шертуді қосу үшін кешігу; }}
// әйтпесе тышқан батырмасы басылмайды:
else {// егер тышқан басылса, оны жіберіңіз: if (Mouse.isPressed (MOUSE_RIGHT)) {Mouse.release (MOUSE_RIGHT); }}
// ORDLE
// тінтуірдің батырмасын оқыңыз және шертіңіз немесе баспаңыз: // егер тышқан түймесі басылса: егер (digitalRead (mouseMiddleButton) == HIGH) {// егер тышқан басылмаса, оны басыңыз: if (! Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 0) {Mouse.press (MOUSE_MIDDLE); mouseMiddleState = 1; // актуальды эстадо дел ботон}}
// әйтпесе тышқан батырмасы басылмайды:
else {// егер тышқан басылса, оны жіберіңіз: if (Mouse.isPressed (MOUSE_MIDDLE) && mouseMiddleState == 1) {Mouse.release (MOUSE_MIDDLE); mouseMiddleState = 0; }}
кешіктіру (кешіктіру);
}
/*
осьті оқиды (x немесе y үшін 0 немесе 1) және аналогты енгізу диапазонын 0 -ден */ дейін ауқымдайды
int readAxis (int thisAxis) {
// аналогтық кірісті оқу: int reading = analogRead (thisAxis);
// оқуды аналогты енгізу диапазонынан шығыс диапазонына салыстырыңыз:
оқу = карта (оқу, 0, 1023, 0, cursorSpeed);
// егер шығыс көрсеткіші сыртында болса
// демалыс позициясының табалдырығы, оны қолданыңыз: int қашықтық = оқу - орталық;
if (abs (қашықтық) <шекті) {қашықтық = 0; }
// осы оське дейінгі қашықтықты қайтарыңыз:
қайтару қашықтығы; }
3 -қадам: прототипті орнату



Бірінші қадам - қолғапқа велкро тігу, әр саусаққа бір жолақтан төрт жолақты тігу керек. Біз велкроның жұмсақ бөлігін тіктік.
Әр түймеде екі сым бар, олардың біреуі тиісті түйреуіштерден басталып, түйменің оң аяғына, екіншісі теріс аяғына қосылады. Теріс сымның екінші жағында біз әр түйменің кедергісін плюс джойстиктің теріс сымын Arduino тақтасының GND -не қосылатын соңғы сымға қосамыз. Дәл сол параллель байланыс оң жақ үшін жұмыс істейді. (3 түйме және джойстиктің оң аяғы)
Секіргіштерді дәнекерлеп болғаннан кейін, біз сымдардың арасында тұрып қалуы үшін қатты велкополонды киеміз. Ақырында біз джойстик модулін 3D баспаға термо-желіммен жапсырдық. Төменде. STL файлын таба аласыз.
4 -қадам: Қолыңызды тышқан ретінде пайдалануды бастаңыз




Егер сізге жоба ұнаған болса, Assistive Tech байқауында бізге дауыс беріңіз.
Ұсынылған:
Vintage Mac тінтуірі сымсыз IPhone зарядтау құрылғысына: 8 қадам (суреттермен)

Винтаждық Mac тінтуірі сымсыз IPhone зарядтағышына: Бұл телефон зарядтаушысы менің әйеліме, Mac -тың құмар пайдаланушысына және барлық алмаға сыйлық ретінде винтажды алма/Mac тінтуірімен не істеу керектігін білуге тырысты. Мен сымсыз телефонды зарядтағыштан жақсы нені білдім? Бұл қазірдің өзінде керемет көрінеді
Компьютерлік құпиялылық - Arduino автоматтандырылған компьютерлік құпиялылығы: 5 қадам (суреттермен)

Компьютердің құпиялылығы - Arduino сіздің компьютеріңіздің автоматтандырылған құпиялылығы: Мәселе: Егер сіз басқа адамдармен тұрсаңыз немесе сіздің жеке кеңсеңіз болса, сіз құпия деректермен жұмыс істеп жатқанда сіздің бөлмеңізде кездейсоқ пайда болатын адамдардың мәселесімен таныс болуыңыз мүмкін. 2 -ші экранда біртүрлі заттар ашылады
Ультрадыбыстық сенсоры мен фотоэлементі бар Bluetooth тінтуірі: 10 қадам (суреттермен)

Ультрадыбыстық сенсоры мен фотоэлементі бар Bluetooth тінтуірі: Сонымен, мен бұл жобаны не үшін жасағаным туралы қысқаша мәлімет. Мен қазір жаңа үйге котенка асырауды жоспарлап отырмын. Мысықтарға арналған ойыншықтармен айналысқаннан кейін мен ойландым: неге ойыншықты өзім жасамасқа. Сонымен, мен Bluetooth тышқан жасадым. Сіз жасай аласыз
Қажет емес GREEN DIY трекбол тінтуірі: 10 қадам (суреттермен)

Қалаусыз GREEN DIY трекбол тінтуірі: Барлығына сәлем! Бүгін біз ескі қоқыс қалдықтарынан Жасыл DIY трекбол тінтуірін жасаймыз. Бұл жоба 3 себеп бойынша жасыл: ол қоқыстардан жасалған, сондықтан экологиялық таза, мен жасыл түсті жарықдиодты дизайнға енгіздім (неге
Күннің үш батырмасы RGB Light Doodler тінтуірі: 11 қадам (суреттермен)

Күннің үш батырмасы RGB Light Doodler тінтуірі: Мен Лори Стотько мен Стюарт Нафеймен http://lightdoodles.com/ осы жылы Makers Faire Auditions -те кездесемін. Оларда дудлингке арналған керемет салқын қаламдар болды. Мен үйге қайтып келгеннен кейін жасауды шештім және ескі Күннің үш түймелі тышқанын есіме алдым