Ce poți face cu mouse-ul? Primirea unei imagini de la senzorul optic al unui mouse de calculator folosind Arduino

Te-ai întrebat vreodată cum funcționează lucrurile, ce cale parcurg de la idee la implementare, cât de simple sunt lucrurile? Cât de ușor este să faci un pieptene? Dar un mouse de calculator? Ce zici de un mouse de calculator din lemn dintr-un singur bloc de mahon cu ecran LCD, cu umplutura electronica proprie si cablu facut si impletit special pentru el? Cred că veți fi interesat de călătoria mea prin care am trecut în cei 2,5 ani de creare a mouse-ului meu.

Proiectare, construcție, modelare

Deoarece eram un zero complet în design, am abordat problema ca pe un profan complet. Am cumpărat plastilină și am început să sculpt șoarecele visurilor mele.

În primul rând, am construit un mouse care este ideal pentru mine să îl folosesc pe un desktop. Ea este mare și gri închis în fotografie. Apoi am făcut un mouse care să mi se potrivească ca mouse mobil (mic gri închis). Și apoi am dus la serviciu bucata de plastilină pe care o furasem de la copii, iar colegii mei au sculptat un șoarece care pretindea a fi „șoarecele popular”. Se potrivește perfect în mâinile majorității populației masculine a echipei noastre (multicolor în fotografie). Si ce? Rezultatul sunt forme banale și plictisitoare pe care le zvâcnim cu mâinile în orice mod posibil zi și noapte. Aparent, printre cei trei șoareci standard, orice utilizator va găsi unul confortabil. Triumful idealului?

Drept urmare, în spatele computerului a fost modelat un mouse care, din punctul meu de vedere, se prefăcea a fi elegant și frumos.

În acel moment mi-a plăcut foarte mult de ea. Și fără să mă gândesc de două ori, am împărțit modelul computerului în părți. Au fost gândite elemente de prindere și interfață cu umplutura electronică. Sună simplu, dar în realitate s-au cheltuit sute de ore de muncă minuțioasă.

După aceasta, piesele rezultate au fost crescute pe o mașină 3D pentru a testa asamblarea.

Material - poliamida. Se potrivește bine în mână, ca o mănușă. Toate piesele se potrivesc, asamblarea tehnologică a mers și el fără probleme

Următoarea etapă este măcinarea în lemn. Probabil că am achiziționat o duzină de specii diferite de arbori de mahon, dar am început cu arborele de sapele, restul speciilor așteaptă în aripi.

Nu mi-a plăcut designul în viața reală. Decalajele verticale dintre butoane și carcasă arătau rău și neîngrijite. „Rănile” tehnologice atunci când lucrați cu lemn sunt vizibile - ciobirea și îndepărtarea lemnului. Ei bine, și cel mai important, cheile nu s-au îndoit, nu a fost niciun clic.

M-am gândit mult timp la design. Ceva era confuz și nu era nici un sentiment de satisfacție. Atunci mi-am dat seama că mouse-ului îi lipsește soliditatea. Am decis să revin la versiunea originală a mouse-ului, pe care l-am sculptat de la bun început, doar la nivel profesional și folosind plastilină sculpturală. Există două opțiuni de design într-un singur mouse. Convenabil pentru comparație și luarea deciziilor.

După primirea versiunii finale, s-a făcut scanarea 3D și suprafețele au fost transferate pe SolidWorks.

Al doilea model nu s-a dovedit cu mult mai de succes decât primul. Butoanele nu erau apăsate și nu exista nicio modalitate de a remedia acest lucru în modelul actual. Căsătoria modelului a fost stabilită la nivel de ADN. Avem nevoie de o abordare mai cuprinzătoare, cu control simultan atât al designului, cât și al tehnologiei. Altfel nimic nu va funcționa. Va fi fie perfecțiunea tehnologică, fie design bun, dar nu toate deodată. Aceste caracteristici se află pe părțile opuse ale balansoarului. Așa că arunc totul la gunoi și o iau de la capăt. Schiță-design-sculptură-testare-creștere și așa mai departe, dar cu control tehnologic al parametrilor critici pe de o parte și design pe de altă parte. Căutăm o cale de mijloc.

Al treilea model a fost realizat în cadrul ciclului clasic de proiectare a produsului. Am început cu o schiță.

Contururile sunt desenate.

Și în sfârșit, designul aprobat.

Model din plastilină.

Scanner 3D, achiziție de suprafață.

Model de calculator.

Apoi a început procesul de finisare a corpului. Corpul a fost decupat pe o mașină CNC, testat, modificat și apoi tăiat din nou. Drept urmare, doar a zecea versiune a carcasei s-a dovedit a fi funcțională. Cea mai mare problemă a fost să facem tastele confortabil de apăsat. Ca urmare, pe alocuri grosimea lemnului a scăzut la 0,7 mm! Mi-a luat un an pentru a rafina corpul.

Roata și conectorul au fost, de asemenea, din lemn.

L-am aplicat pe roată gravare cu laser cu marca Clickwood.

Urmează a unsprezecea versiune a cazului, la care voi face modificări minore. De asemenea, am început să dezvolt o versiune wireless a mouse-ului. Modulul wireless este bazat pe tehnologia Bluetooth, optosenzorul este laser. Baterii de dimensiune AAA, 2 bucăți, înlocuibile. La reîncărcare, mouse-ul va continua să funcționeze. Toate elementele sunt aranjate foarte strâns și a trebuit să-mi trezesc creierul destul de mult când le-am asamblat. O cavitate special tăiată în corpul de lemn al mouse-ului servește drept recipient pentru baterii.

Piese din lemn

Lucrul cu lemnul începe cu selecția lemnului. Plăcile trebuie să aibă geometria corectă, să aibă un minim de noduri și defecte și să aibă conținutul de umiditate necesar.

În primul rând, plăcile sunt uscate acasă. Cel puțin șase luni.

După aceasta, placa este tăiată în bare mărime mică, care sunt uscate timp de câteva săptămâni la locul prelucrării lor ulterioare. În toate etapele, umiditatea este controlată de un dispozitiv special. Dacă procesul de uscare este neglijat, lemnul își pierde stabilitatea geometrică, iar fabricarea și funcționarea șoarecelui devine imposibilă.

Barele pregătite sunt prelucrate pe o mașină CNC folosind un program special creat.

De la începutul creării unei piese până la Asamblarea finala Piesele sunt fixate rigid de echipamentul metalic, astfel încât în ​​niciun moment piesa să nu-și schimbe forma și dimensiunile geometrice.

Procesarea părții superioare a mouse-ului trebuie făcută cu o precizie maximă, deoarece profilul său este proiectat pentru un clic ușor și este foarte subțire în unele locuri. Controlez forța de presare cu un grammetru. La șoarecii normali, acesta variază de la 50 la 75 GS. Încerc să ating 50 GS.

Lemnul este cea mai mare provocare din proiectul meu. Nu numai că aceasta este cea mai importantă parte a costului, dar procentul de defecte aici este foarte mare. Lemnul este un material anizotrop. Poate eșua, pot exista defecte, pot apărea cipuri și, pur și simplu, o eroare în tehnologia de finisare poate duce la aruncarea corpului mouse-ului la coșul de gunoi. Recunosc că încă îmbunătățesc tehnologia de procesare și nu sunt complet sigur că am găsit-o pe cea potrivită. Pentru statistică: în primul lot de zece cazuri, doar trei au ajuns la produsul finit. Prin urmare, partea din lanțul tehnologic legată de lemn este extrem de importantă pentru costul și calitatea produsului finit. Se lucrează constant la el.

Pe viitor am de gând să lucrez cu os. În special, creez deja o roată din os.

Partea electronica

Primul design de mouse l-am dezvoltat eu. Senzorul era un senzor optic de top ADNS-3090 de la Avago, creierul era un controler Atmel, iar restul erau componente de la companii de marcă precum Murata, Yageo, Geyer, Omron și Molex.

A acordat o atenție deosebită alimentatie de calitate soareci, aici, dupa parerea mea, am ajuns la absolut cu perfectionismul meu

Prima placă de lucru.

In varianta neagra, finala.

Au fost și experimente cu diferite butoane. Am încercat întotdeauna să aleg un mouse liniștit printre altele. Ei bine, din moment ce îl fac eu, am decis să fac un experiment și să fac un astfel de mouse și să-l încerc. Pentru a face acest lucru, am înlocuit „micrics” de clic din stânga și din dreapta cu unele moi și silențioase folosite pentru butonul central (ați observat că butonul central face întotdeauna clic mai silențios?). A fost creată o versiune specială a plăcii, pe care au fost montate toate cele trei „micric” identice.

Am selectat și cumpărat un lot de conectori placați cu aur pentru mouse. Ca de obicei, în China. Nu știu despre „un contact mai bun”, dar se armonizează perfect cu lemnul.

Ecran, firmware

Fascinat de ideea de a plasa un display într-un mouse, am început să-l caut printre sute de furnizori. Cerințele erau simple: restricții dimensionale stricte și capacitatea de a afișa cel puțin în mod simbolic cel puțin opt locuri familiare. În timp ce îl selectam, am învățat aproape totul despre afișaje. Ele diferă după tip: simbolic și grafic, după tehnologie: TAB, COG, TFT, OLED, LCD, E-Paper și altele. Fiecare tip sau tehnologie are o mulțime de soiuri, dimensiuni, culori, iluminare etc. În general, au fost multe de săpat.

După ce am navigat pe jumătate pe internet, am aflat că dimensiunea de care aveam nevoie a fost făcută de o singură companie din întreaga lume. Toate celelalte opțiuni sunt cu siguranță mai mari ca dimensiune. Și chiar și afișajul pe care l-am găsit abia se potrivește în interiorul mouse-ului. Opțional, a fost luat în considerare un afișaj personalizat, care ar putea fi făcut pentru mine în funcție de cerințele mele, dar aceasta este o opțiune foarte scumpă pentru mine (aproximativ o sută de mii de ruble). Pentru primul model este destul de potrivit un display grafic cu o rezoluție de 128 pe 64 pixeli, ceea ce am ales.

Pentru a-mi da seama cum arată de fapt ecranul și cum se potrivește cu mouse-ul meu, a trebuit să comand de la producători toate soiurile acestui afișaj. Ce înseamnă aceste soiuri? Numele modelului constă din combinații alfanumerice nepronunțate precum FP12P629AU12. Toate sunt asamblate din diverse blocuri și sunt descifrate clar în caietul de sarcini. De exemplu, exemplul dat poate fi asamblat din blocurile FP.12.P.629A.U12, unde sunt criptate tipul, dimensiunea, tensiunea, controlerul, intervalul de temperatură de funcționare și alte informații despre model. Iar ultimul bloc este cel mai complicat. Poate avea câteva zeci de valori, fiecare dintre acestea înseamnă una sau alta combinație de caracteristici precum prezența și culoarea luminii de fundal, culoarea de fundal, culoarea simbolului și intervalul de grade de la care informațiile pot fi citite clar. Aceștia sunt parametrii care au fost interesanți pentru mine.

Drept urmare, „pentru testare” am comandat 18 modificări diferite. Producătorul a fost de acord, dar a spus că comanda minimă a fost de 5 afișaje pentru fiecare modificare. Nu era încotro, și trebuia să fiu de acord, știind că 90% vor merge la coșul de gunoi. Și apoi, într-o zi înnorată, serviciul de livrare rapidă mi-a adus acasă o cutie uriașă în care ar putea locui o persoană fără adăpost de complexitate medie. Cutia conținea 18 cutii mai mici, fiecare dintre ele adăpostind confortabil 5 afișaje, fixate în siguranță pentru o călătorie lungă în Rusia rece. Erau atât de multe ambalaje însoțitoare încât a fost suficient ca soacra mea să acopere mai multe paturi pentru iarnă.

Ca urmare, după teste amănunțite pe un stand special asamblat, două afișaje s-au dovedit a fi potrivite pentru serie. Diferă doar în fundal: gri și galben-verde. Acestea sunt cele pe care le voi oferi pentru a completa mouse-ul. În mod implicit, plănuiesc să-l setez pe galben-verde, dar vor fi disponibile încă două opțiuni: un afișaj cu fundal gri și un mouse fără afișaj.

Dar principala intriga a fost ce informații pot fi afișate pe ecran? mi s-a oferit idei diferite: temperatura mediului ambiant, indicarea sosirii literelor, altceva nu foarte original.

Trenul meu de gândire a urmat o altă cale. Să începem cu faptul că există două restricții semnificative privind afișarea informațiilor operaționale: prezența în fața utilizatorului a unei surse uriașe și de înaltă calitate a oricărei informații (monitor) și nevoia de a întoarce mouse-ul pentru a obține informații. În plus, ecranul este mic, rezoluția este scăzută, iar LED-ul interferează cu citirea normală. Prin urmare, am ajuns la o singură concluzie: informațiile ar trebui să fie doar de natură distractivă, a căror valoare practică tinde spre zero, dar în același timp efectul WOW! ar trebui să fie ucigaș.

Ce fel de informații pot avea astfel de proprietăți într-un dispozitiv de complexitate mediocră? Nu există prea mult: kilometraj, timpul de utilizare, viteza de mișcare, numărul de clicuri și derularea roții. Am decis să renunț la ultimul parametru, deoarece mi se părea neinteresant. Toți ceilalți parametri sunt legați de sesiune (ultima dată când mouse-ul a fost folosit din momentul în care i-a fost alimentat, adică conectarea la computer sau pornirea computerului în sine) și întreaga durată de viață a mouse-ului. De exemplu, utilizatorul poate afla în orice moment de câte ori a apăsat butonul stâng al mouse-ului sau câți metri a parcurs mouse-ul în metri astăzi sau de la momentul achiziționării acestuia. Informația este absolut inutilă, dar îi va ajuta pe cei curioși în mod deosebit să înțeleagă cât de mult chinuiește șoarecele. Dacă apar alții idei interesante, apoi pot fi implementate cu firmware nou.

De asemenea, adăugat Informații generale prin mouse (model, număr mouse și firmware, luna de fabricație) și ecranul de setări. Puteți alege limba și sistemul de măsuri (engleză sau metrică). Pentru a stoca toate aceste informații, a trebuit să adăugăm în circuit o memorie flash de stocare permanentă.

Pentru a se potrivi cu această cantitate de informații, a trebuit să descompun totul în ecrane. Fiecare ecran afișează un tip de informații și arată valorile parametrilor de sesiune și de toate timpurile. Există în total șase ecrane, care pot fi modificate folosind rotița mouse-ului.

Prima opțiune a fost implementată într-o manieră pur textuală, pentru care au fost chiar dezvoltate mai multe opțiuni de font.

Am realizat un firmware pentru a evalua cum arată textul folosind fontul creat pe ecranul mouse-ului. Arată groaznic, ce să spun.

Acum a devenit evident că ecranul are nevoie de grafică, și nu de un set de informații simbolice. Prin urmare, am adus în muncă un designer și am pregătit împreună trei opțiuni grafice; în cele din urmă, a doua opțiune a fost recunoscută ca fiind cea mai de succes.

Desigur, acest design necesita o rezoluție mai mare, așa că a trebuit adaptat.

Dar acesta nu este sfârșitul poveștii. După ce am selectat un ecran pentru mouse, am comandat un lot de probă pentru panouri. Ca urmare, au sosit ecrane, dar din anumite motive numărul de pini a fost diferit de ceea ce era indicat în specificație (fișa de date). Ca răspuns la cerere, producătorul a primit un răspuns că totul a fost în regulă, aceasta a fost o modificare minoră și nu ar afecta în niciun fel performanța. Între timp, cele două fire lipsă erau responsabile pentru luminozitatea graficii afișate.

Totul a fost foarte suspect. Și exact cum se uita în apă. Am refăcut placa pentru un ecran modificat, am lipit-o și apoi s-a dovedit că ecranul era complet slab. Este ca și cum bateriile dispozitivului sunt uzate. Și acest lucru a devenit clar după o muncă lungă și minuțioasă de căutare și selectare a ecranelor, achiziționarea unui lot de probă cu toate modificările și testarea acestora. Timp, bani și așa mai departe.

Dar povestea s-a dovedit a avea un final bun. După corespondența cu chinezii, s-a dovedit că ecranul își poate regla acum contrastul direct din firmware. Am reparat firmware-ul și totul a început să se arate bine!

Totul este afișat conform planificării: kilometraj, viteză, număr de clicuri etc.

Ulterior, firmware-ul s-a schimbat de mai multe ori: a apărut o setare pentru schimbarea limbii. Două limbi pe un ecran sunt proaste - lizibilitatea se deteriorează, abracadabra chirilică va irita doar un utilizator vorbitor de limba engleză, iar suportul pentru alte limbi poate fi necesar în viitor. Dificultățile au început când am încercat să ajustez cursa mouse-ului. Se pare că este ceva complicat: senzorul optic transmite incrementul în două coordonate, care trebuie convertite într-un sistem de măsuri și adăugate modulo la valoarea curentă. Asta e tot kilometrajul.

Dar, după cum sa dovedit, nu totul este atât de simplu. Două persoane cu șoareci cu același senzor instalat pot obține rezultate radical diferite! Chestia este că rezoluția senzorului (sensibilitatea) depinde foarte mult de suprafața pe care se rostogolește mouse-ul. Cele mai bune rezultate se obțin atunci când mouse-ul se rostogolește pe hârtie albă. Puțin mai rău pe lemn și țesătură. Este foarte rău pentru laminat și film. Sensibilitatea declarată se realizează numai pe suprafețe ideale, din punct de vedere al senzorului.

Acest lucru nu face nicio diferență pentru utilizatorul final. El conectează mouse-ul și, prin încercări și erori, setează sistemul de operare la o viteză confortabilă a cursorului. Sistemul își amintește acest coeficient și îl folosește pentru a crește sau a micșora valorile de creștere a coordonatelor de mișcare.

Dar este o problemă complet diferită dacă intenționați să citiți acești parametri direct de pe mouse. Mouse-ul pe o suprafață va afișa rezultatul alergării cu un metru, pe cealaltă - un metru și jumătate. Viteza va minți și ea. Și trebuie făcut ceva în privința asta.

Pentru a rezolva această problemă, a trebuit să introducem parametrul „Sensibilitate”, care vă permite să selectați individual coeficientul pentru fiecare suprafață. În mod implicit, este egal cu unu, care corespunde suprafeței hârtiei albe. Acesta poate fi mărit sau micșorat în setări. Nu trebuie să îl atingeți deloc, totul va funcționa bine așa cum este. Dar pentru adevărații perfecționiști, prospectul inclus cu mouse-ul va conține un tabel din care puteți selecta un coeficient pentru suprafața existentă și instrucțiuni despre cum puteți configura în mod independent mouse-ul pentru a afișa kilometrajul exact.

În timpul dezvoltării firmware-ului, a fost descoperit altul prin efect funcționarea senzorului. Dacă luați mouse-ul și pur și simplu îl fluturați în aer, citirile kilometrajului se vor schimba și ele. Acest lucru se datorează faptului că senzorul detectează spațiul înconjurător ca o anumită suprafață și încearcă, de asemenea, să obțină valori de offset al mouse-ului. Prin urmare, puteți observa următorul efect: întoarceți mouse-ul, vă uitați la parametrii de kilometraj și sunteți surprins că se modifică în sus chiar în fața ochilor dumneavoastră. Desigur, puteți instala un senzor de unghi de înclinare în mouse care oprește senzorul în timp ce acesta este răsturnat, dar a face acest lucru numai pentru situația descrisă este nerezonabil. Poate că va apărea în versiunea următoare, dar nu acum. La urma urmei, mouse-ul este ridicat doar pentru a se uita la indicatori, iar 99,9% din timp este la suprafață și primește informațiile corecte.

Cablu

Am decis să fac cablul cât mai flexibil posibil, astfel încât să nu interfereze cu mișcarea mouse-ului și să fie „invizibil” pentru cinematică. Ei bine, personal nu-mi place cablul „arcuri”.

Uneori se pare că atunci când creați un produs, cablul este partea cea mai nesemnificativă a produsului. Ceea ce este mai ușor este să cumpărați cantitatea necesară de cablu din magazin și să o dezlipiți. Nu e mare lucru. Dar, din păcate, nu aici în Rusia. Uneori se pare că industria noastră nu mai este capabilă să facă ceva mai complex decât fonta. Încercările de a găsi un cablu au dus la o căutare de trei săptămâni și a zguduit sortimentul absolut al tuturor producătorilor de produse rusești de cablu. S-a dovedit că standardele noastre nu descriu un cablu potrivit pentru dispozitivele electronice moderne. De exemplu, un cablu de microfon cu patru fire cu o împletitură KMM 4x0,12 mm2 are un diametru exterior de 5 mm. Asta e mult. Mouse-urile și tastaturile mai vechi au un cablu aparent gros care are doar 3,5 mm în diametrul exterior. Cel mai apropiat analog la vânzare a fost un cablu de la compania germană Lapp Kabel, dar diametrul său exterior era de doar 3,5 mm. Acum imaginați-vă împletitura pe un astfel de cablu. Introdus? Vă spun că am văzut un cablu similar pe cablurile de alimentare pentru fiare de călcat

Deci, s-a dovedit: nu puteți cumpăra un astfel de cablu în Rusia. Punct. Ei bine, nu suntem obișnuiți să ne retragem. Intru in productie si incerc sa comand, din fericire inca fac cabluri in Rusia. Și pentru a face acest lucru, să definim cerințele mele. Deci de ce am nevoie:
Miezurile sunt din cupru, realizate din fire împletite (pentru flexibilitate).
Număr de nuclee - 4.
Ecran - da.
Flexibilitate - maximă.
Diametrul exterior al cablului nu este strict mai mare de 3 mm.
Culoare - Pantone 4625 C.
Concluzie: am încercat să contactez probabil o duzină de producători posibili de produse prin cablu; nimeni nu este interesat să-mi încurce comanda. Nici măcar nu m-au întrebat de ce kilometraj am nevoie. Concluzie: un astfel de cablu nu poate fi achiziționat sau produs în Rusia. Trist. Dar nu suntem obișnuiți să ne retragem.

Intru pe Alibaba.com. Găsesc primul producător chinez pe care îl întâlnesc, scriu o scrisoare și literalmente în câteva ore primesc un răspuns: îți vom face orice cablu! Sunt șocat. Îi trimit specificația, bani pentru livrare, iar peste o săptămână primesc o mostră. Wow! Și am pierdut aproape trei luni, încercând să plasez patriotic o comandă în Rusia. S-a dovedit că chinezii mi-ar putea face cu ușurință un cablu cu un diametru exterior de 2,5 mm.

Ca rezultat: am comandat 4 mostre diferite din China. La început nu am fost mulțumit de zgârierea și tocimea carcasei exterioare, apoi nu am fost mulțumit de flexibilitatea cablului, apoi din nou nu am fost mulțumit de flexibilitate și, în final, m-am hotărât cu ultima probă trimisă, pe care eram gata să le comand. Nu ar putea fi mai flexibili. Cablul are memorie. Drept urmare, am primit din greșeală un cablu cu memorie, deși îmi doream unul flexibil ca o frânghie

Am comandat un kilometru, două săptămâni mai târziu aveam cablul. Timp total petrecut: șase luni.

Mi-am împletit kilometrul de cablu. Au fost două variante.

Aproximativ 10% din cablu a fost respins. Acesta este începutul golfurilor, unde împletitura se desface și mașina nu a intrat încă în modul de funcționare. Și unele locuri în care, din anumite motive, s-au format bucle și noduri de fire de împletire.

Dacă capătul cablului nu este etanșat cu termocontractabil, acesta se va umfla imediat, firele sunt sintetice! Prin urmare, instalarea ansamblului de cabluri este complicată de atașarea preventivă a termocontractabilului.

Diametrul exterior al cablului împletit a fost de 3,2 mm, adică Impletitura a adaugat 0,7 mm la diametrul cablului. Nu pare mult, dar un mouse obișnuit are de obicei un cablu cu diametrul de 3,5 mm, iar în epoca șoarecilor wireless pare gros și greu. Recent, șoarecii fără buget au început să fie echipați cu cabluri cu un diametru de 3 mm și nu mai interferează atât de mult în timpul lucrului, sunt aproape invizibili. Dar cablul tastaturii poate avea un diametru exterior de 4 mm. Și încă mai mult. Dar asta nu contează pentru tastatură.

Componente de plastic

Indiferent cât de mult mi-ar plăcea să fac părțile corpului mouse-ului în întregime din lemn, nu mă pot lipsi de plastic. Ai nevoie de picioare, o axă pentru roată, un suport pentru ax și o bucată de sticlă pentru afișaj.

Prin urmare, a trebuit să comand o matriță de la chinezi.

După fiecare turnare de testare, chinezii mi-au trimis o duzină de mostre, pe care le-am testat pe mouse-ul meu.

Drept urmare, am modificat matrița de trei ori până când calitatea a început să mă mulțumească. Problemele erau diferite. De exemplu, dupa asamblare am avut o problema cu praful care s-a format intre display si sticla de protectie. Pare neîngrijit. Mai mult, mouse-ul se va zgâria la suprafață, iar praful se va acumula treptat acolo. A trebuit să transform paharul într-un recipient cu laturile pe care să fie amplasat afișajul, după care să fie sigilat conturul.

Rezultatul este ceva de genul acesta.

Rafinarea unei matrițe nu este deloc o sarcină ușoară, iar modificările pot fi făcute doar în direcția măririi piesei. Prin urmare, orice inexactitate sau eroare poate ruina întreaga lucrare. Pentru referință: fiecare revizuire înseamnă o lună și jumătate de așteptare pentru noi mostre. Și schimbarea în sine ar putea fi microscopică, dar necesară.

Nu mă voi opri asupra pieselor din plastic; această tehnologie este acum lider și nu vă pot spune nimic nou sau interesant aici. Voi spune doar despre picioare, pentru care am petrecut mult timp selectând un material cu frecare redusă, după care am efectuat teste și „curse” de șoareci pentru a determina câștigătorul cu frecare minimă.

Prelucrare și acoperire

În primul rând, se lucrează cu atenție cu îndepărtarea scamelor, șlefuirea și lustruirea suprafeței.

stătea în fața mea sarcină dificilă. A fost necesar să se stabilizeze lemnul astfel încât geometria șoricelului să nu se modifice în funcție de umiditate și să se protejeze lemnul de lucrul într-un mediu agresiv (transpirație și grăsime de la mână).

De la bun început am refuzat lacul. Lacul este o peliculă de suprafață care în cele din urmă se sparge și se descompune, lăsând lemnul gol. Transpirația și grăsimea pătrund în pori, lemnul se întunecă și începe procesul ireversibil de degradare a acestuia. Prin urmare, s-a decis să se folosească ulei ca impregnare și protecție și ceară pentru a da un aspect comercial.

Pentru a fi clar: copacul este complet saturat cu pori, care conțin fie aer, fie uleiul copacului însuși (dacă copacul este un arbore de cauciuc). Sarcina noastră este să umplem porii cât mai mult posibil cu uleiul nostru, care apoi ar trebui să polimerizeze și să protejeze lemnul.

Ca să nu prelungesc povestea, voi spune că am încercat foarte multe uleiuri: in, tec, tung, vaselină, daneză. Fiecare ulei are propriul său caracter. De exemplu, ceara este foarte greu de aplicat pe uleiul de tec, în timp ce uleiul de in are nevoie de foarte mult timp pentru a se polimeriza. Prin urmare, este necesar să se introducă un catalizator în el - un uscător.

Am ajuns să dezvolt două tehnologii. Prima este tehnologia de impregnare a lemnului în vid. Funcționează așa: creez un vid într-un mediu cu ulei și lemn. Aerul începe să iasă din pori. După îndepărtarea vidului, porii sunt umpluți cu ulei. Ca un plus, copacul este bine stabilizat. Dezavantajul este că se întunecă foarte tare. Arată bine, dar nu pentru toată lumea.

A doua tehnologie este acoperirea suprafeței cu ulei. Uleiul se aplică de 1-2 sau de mai multe ori cu o cârpă nețesută.

Aplicați ceară de carnauba.

Și frecați cu un cerc de muselină.

Apoi, folosind un uscător de păr, „dizolv” resturile de ceară uscată în locuri înguste și dificile. În cazul resturilor „insolubile”, iau o periuță de dinți cu peri rigidi, îndepărtează resturile și apoi repet procedura de epilare local din nou.

Dacă evaluăm costurile cu forța de muncă de procesare, atunci muncă manuală pentru un șoarece se dovedește a fi aproximativ patru ore.

Asamblare

Urmează operațiunea de instalare, dar înainte de aceasta mai trebuie să eliminați urmele de prelucrare din găurile tehnologice. Apoi, folosind o bandă specială 3M, reglez și lipesc picioarele (corpul se poate mișca cu o fracțiune de milimetru, iar acest lucru se va observa imediat: se va clătina ca un scaun șchiop). Apoi așez cablul, montez placa, susțin, instalez roata și, de asemenea, dacă este necesar, reglez butoanele (nu ar trebui să existe zgomot) și forța de apăsare. Această operație poate dura și până la patru ore.

Pentru a rezolva una dintre probleme, trebuia să obțin și să procesez în mod programatic imagini ale unei zone mici a suprafeței hârtiei de la o distanță foarte apropiată. Neavând o calitate decentă folosind o cameră USB obișnuită și deja la jumătatea drumului către magazin pentru un microscop electronic, mi-am amintit de una dintre prelegerile în care ni s-a spus cum funcționează diferite dispozitive, inclusiv un mouse de computer.

Pregătire și puțină teorie

Nu voi intra în detalii despre principiul de funcționare al unui mouse optic modern; despre el s-a scris în detaliu (recomand să-l citiți pentru dezvoltare generală).

După ce am căutat pe Google informații despre acest subiect și am demontat un vechi mouse PS/2 Logitech, am văzut o imagine familiară din articolele de pe Internet.

Nu este un design foarte complicat de „șoareci de primă generație”, un senzor optic în centru și un cip de interfață PS/2 puțin mai înalt. Senzorul optic pe care l-am întâlnit este un analog al modelelor „populare” ADNS2610/ADNS2620/PAN3101. Cred că ei și omologii lor au fost produse în masă în aceeași fabrică chineză, cu etichete diferite pe ieșire. Documentația pentru aceasta a fost foarte ușor de găsit, chiar și împreună cu diverse exemple de cod.

Documentația spune că acest senzor primește o imagine a unei suprafețe care măsoară 18x18 pixeli (rezoluție 400cpi) de până la 1500 de ori pe secundă, o stochează și, folosind algoritmi de comparare a imaginilor, calculează offset-ul în coordonatele X și Y față de poziția anterioară.

Implementarea

Pentru a „comunica cu senzorul” am folosit populara platformă de calcul Arduino și am decis să lipim direct pe picioarele cipului.

Conectăm 5V și GND la ieșirile Arduino corespunzătoare, iar picioarele senzorului SDIO și SCLK la pinii digitali 8 și 9.

Pentru a obține o compensare prin coordonate, trebuie să citiți valoarea registrului de cip la adresele 0x02 (X) și 0x03 (Y), iar pentru a descărca imaginea, trebuie să scrieți mai întâi valoarea 0x2A la adresa 0x08, apoi să o citiți. de acolo de 18x18 ori. Aceasta va fi ultima valoare „rememorată” a matricei de luminozitate a imaginii de la senzorul optic.

Puteți vedea cum am implementat acest lucru pe Arduino aici: http://pastebin.com/YpRGbzAS (doar ~100 de linii de cod).

Și pentru a primi și afișa imaginea, a fost scris un program în Procesare.

Rezultat

După o mică „terminare” a programului pentru proiectul meu, am putut primi o imagine direct de la senzorul optic și am putut efectua toate calculele necesare asupra acesteia.

Puteți observa textura suprafeței (hârtiei) și chiar litere individuale pe ea. Trebuie remarcat faptul că o astfel de calitate clară a imaginii este obținută datorită faptului că dezvoltatorii acestui model de mouse au adăugat designului un suport special din sticlă cu o lentilă mică direct sub senzor.

Dacă începeți să ridicați mouse-ul deasupra suprafeței chiar și cu câțiva milimetri, claritatea dispare imediat.

Dacă dintr-o dată vrei să repete asta acasă, să găsești un mouse cu senzor asemănător, recomand să cauți dispozitive vechi cu interfață PS/2.

Concluzie

Deși imaginea rezultată nu este foarte mare, a fost suficient pentru a-mi rezolva problema (scanner de coduri de bare). S-a dovedit a fi foarte economic și rapid (un mouse pentru ~100 de ruble + Arduino + câteva zile pentru a scrie codul).

Voi lăsa link-uri către materiale care mi-au fost foarte utile pentru rezolvarea acestei probleme. Chiar nu a fost dificil și a fost făcut cu mare plăcere. Acum caut informații despre cipurile modelelor mai scumpe de șoareci moderni pentru a obține imagini de înaltă calitate cu rezoluție mai mare. S-ar putea chiar să pot construi ceva ca un microscop (calitatea imaginii de la senzorul de curent nu este în mod clar potrivită pentru asta). Vă mulțumim pentru atenție!

Folosești în mod constant un mouse de calculator (sau, ca să spunem „pretențios”, un manipulator mecanic care transformă mișcarea într-un semnal de control), dar te-ai gândit vreodată ce poți face cu un mouse de calculator? Se dovedește că nu atât de puțin. Selectați un obiect sau copiați-l, mutați sau ștergeți, deschideți sau închideți un fișier sau folder, totul și multe altele se pot face cu mouse-ul computerului. Despre asta vom vorbi.
În această lecție ne vom familiariza cu mouse-ul computerului, vom afla câteva dintre secretele acestuia și, de asemenea, vom afla ce puteți face cu mouse-ul în browser. Utilizând mouse-ul, puteți selecta un folder, fișier sau un program și puteți efectua unele acțiuni, vă puteți deplasa în zona desktopului, deschide un folder sau rula un program. Puteți copia sau șterge un cuvânt sau un text întreg.
Șoarecii de computer sunt disponibile în bile, laser, cu fir și fără fir. Dar principiul de funcționare este același pentru toată lumea. Când mutați mouse-ul pe suprafața mesei, cursorul se deplasează pe ecranul monitorului, duplicând acțiunile dvs. Există doar trei butoane principale necesare pentru a lucra cu un mouse de computer. Acestea sunt tastele stânga și dreapta și rotița de defilare (scroll). Folosind un mouse de computer și butoane suplimentare de la tastatură, puteți simplifica și facilita semnificativ multe operațiuni pe desktop, atunci când lucrați în programe și în browsere. Să facem cunoștință cu câteva trucuri de lucru cu mouse-ul.

Cea mai simplă operație pe care probabil ați trebuit să o efectuați este să selectați un text. Pentru a face acest lucru, adăugați pur și simplu o bară oblică verticală la începutul textului. Se mai numește și în engleză - teava(în rusă puteți pronunța în siguranță "teava") Pentru a face acest lucru, utilizați butonul stâng al mouse-ului pentru a face clic la începutul textului și țineți apăsat butonul stâng al mouse-ului și trageți (fără a elibera butonul) până la locul unde se termină textul dorit. Ce să faci dacă lungimea textului depășește dimensiunea paginii? Următoarea combinație vă va ajuta aici. Plasați cursorul la începutul textului, țineți apăsată o tastă de pe tastatură, Schimbși faceți clic pe butonul stâng al mouse-ului, fără a elibera tasta de pe tastatură, mergeți la sfârșitul textului dorit și apăsați din nou tasta din stânga. Tot textul este selectat, puteți efectua alte acțiuni cu acesta.

Copiați și lipiți textul.

Trebuie să transferați o parte sau tot textul într-o altă locație sau folder. Știm deja cum să evidențiem textul. Acum, pe textul selectat, faceți clic dreapta și în meniul contextual (derulant) găsiți „copiere” și faceți clic pe acest articol. Toate informațiile necesare sunt salvate în clipboard (clipboard-ul, dacă nu intrați în detalii, este stocare temporară în care sunt stocate fișierele, folderele și textul pe care le-ați copiat). Acum găsiți locul în care trebuie să lipiți ceea ce ați copiat, faceți clic dreapta pe el și selectați „lipire” din meniul derulant. Aceste operațiuni se pot face și în alt mod. Selectați ceea ce aveți nevoie, apoi țineți apăsate tastele de la tastatură CTRL+C. Totul a fost copiat. Selectați locul în care doriți să lipiți ceea ce ați copiat, puneți o bară oblică (un clic cu butonul stâng al mouse-ului) în locul dorit și apăsați CTRL + C. Asta este - textul este lipit.

Să schimbăm scara.

Uneori, când deschizi un site web sau o pagină, vezi că fontul este foarte mic. Nu toată lumea, în special persoanele în vârstă, are o vedere bună și le este greu să citească un astfel de font. Se pare că acest lucru poate fi rezolvat destul de simplu. Pentru a face acest lucru, țineți apăsată tasta CTRL și derulați rotița mouse-ului înainte sau înapoi. Dimensiunea fontului va crește sau scade în consecință.

Deschideți linkul într-o filă nouă.

A trebuit deja să lucrați la o pagină și să vă mutați la altă pagină sau filă fără a o închide pe prima. În același timp, ați efectuat următoarea acțiune: „Faceți clic pe link cu butonul din dreapta al mouse-ului și în meniul care se deschide, selectați - Deschideți pagina într-o fereastră nouă”. Dar tot acest proces poate fi simplificat. Țineți apăsată tasta CTRL și faceți clic pe link. Gata, linkul se va deschide într-o fereastră nouă.

Deplasați-vă folosind butonul din dreapta al mouse-ului.

Știți deja cum să mutați un folder sau o comandă rapidă pe desktop. Daca nu stii, iti spun eu. Țineți apăsat obiectul selectat cu butonul stâng al mouse-ului și, fără a elibera, mutați-l în locația selectată. Dar se dovedește că această operațiune poate fi efectuată folosind butonul din dreapta. Principiul este același. Faceți clic dreapta și trageți spre Locul potrivit. Când eliberați tasta, se va deschide un meniu în care veți fi întrebat despre următoarele acțiuni. Alege ceea ce ai nevoie.

Selectați un cuvânt sau un text.

Dacă trebuie să evidențiați un cuvânt, mutați cursorul mouse-ului peste cuvântul dorit și faceți dublu clic pe tasta din stânga. Este posibil să selectați paragraful dorit în acest fel? Cu siguranță. Plasați din nou cursorul la începutul textului și faceți clic stânga de trei ori. Paragraful necesar este evidențiat, puteți efectua acțiuni suplimentare cu acesta.

Al treilea buton.

Majoritatea utilizatorilor nu folosesc al treilea buton al mouse-ului. Puțini oameni știu despre capacitățile sale. Dar, cu toate acestea, ea poate face ceva. De exemplu, când deschideți o pagină de browser și faceți clic pe rotiță, cursorul își va schimba aspectul în rotund. Acum puteți, prin mișcarea cursorului în direcții diferite, mișcarea paginii pe ecran se va derula și în toate direcțiile, iar cu cât indicatorul de derulare se deplasează mai departe, cu atât pagina se va derula mai repede. Uneori foarte convenabil atunci când derulați pagini cu text mare.

Acestea sunt micile trucuri ale unui mouse de calculator. Ne oprim acolo. Desigur, subiectul este mult mai larg decât s-a afirmat, dar pe parcursul tuturor lecțiilor ulterioare, vom reveni la această problemă.

În lecția următoare, vom introduce conceptul de comenzi rapide de la tastatură. Acestea sunt combinații de două sau mai multe taste care pot fi apăsate pentru a efectua sarcini care necesită de obicei utilizarea unui mouse sau a unui alt dispozitiv de indicare. Comenzile rapide de la tastatură ușurează utilizarea computerului, economisind timp și efort atunci când lucrați cu Windows și alte programe...

Între timp, îmi iau rămas bun de la tine. Ca întotdeauna, aveți întrebări, recenzii și bineînțeles comentarii. Dacă nu te-ai abonat încă la știrile mele, atunci bine ai venit!

Acest robot foarte simplu poate fi realizat din materiale ieftine care pot fi achiziționate de la un magazin obișnuit. bază a acestui dispozitiv este un mouse vechi de computer.
Mousebot este un robot simplu care folosește doi „ochi” cu care vede lumina și se întoarce spre ea. O „antenă” mare este montată pe partea frontală a mouse-ului unui computer pentru a detecta coliziunile. Când lovește un perete, mouse-ul se mișcă înapoi și se întoarce în cealaltă direcție.

Acest proiect este destul de ieftin, dacă aveți un șoarece vechi întins în jurul restului pieselor, vă va costa mai puțin de zece dolari.

Pasul 1: Piese și instrumente:

Materiale:

  • 1 mouse-ul cu minge
  • 2 motoare mici DC
  • 1 comutator
  • 1 releu DPDT 5v (este potrivit și Aromat DS2YE-S-DC5V)
  • 1 cip LM386
  • 1 tranzistor NPN 2N3904 sau PN2222
  • 1 LED (orice culoare)
  • Rezistor de 1 1 KOhm
  • 1 rezistor de 10 kOhm
  • 1 condensator de 100 mF
  • 1 casetă pentru casetofon (au fost comune în anii 80-90)
  • 1 CD sau dischetă
  • 1 echipament cu baterie de 9V
  • 1 baterie de 9V
  • 2 sau 3 benzi late de cauciuc
  • 22 sau 24 de fire.
Instrumente:
  • Multimetrul
  • șurubelniță cu cruce
  • Dremel
  • Clești mici
  • Dispozitive de tăiat sârmă
  • Cuțit ascuțit
  • Ciocan de lipit
  • Orice instrument de demontare
  • Super adeziv sau rășină epoxidică
  • Lipici fierbinte și un pistol pentru el
  • Ferăstrău.


Pasul 2. Scoateți câteva părți din mouse:

Mousebot necesită un corp cu unele părți dintr-un mouse de computer, precum și ochi și mustăți suplimentari.

Deschide mouse-ul și găsește componentele pe care trebuie să le iei, și anume comutatorul și emițătorul infraroșu.

Scoateți PCB-ul comutatorului și dezlipiți-l ca emițătorii IR.

1 - emițător IR; 2 - emițător IR; 3 – comutator de moment;

1 - o șurubelniță Phillips va ușura această sarcină

Pasul 3. Pregătiți corpul:

Apoi, trebuie să vă asigurați că există suficient spațiu în interiorul carcasei, așa că utilizați un Dremel pentru a îndepărta toate structurile interne din plastic din partea de sus și de jos a mouse-ului. Dacă mouse-ul este mic, poate fi necesar să scoateți șuruburile de conectare care țin cele două părți ale mouse-ului împreună.

Acum folosește Dremel-ul pentru a tăia găurile pentru comutatorul de pe partea din față a mouse-ului și motoarele de pe laterale.

Este mai bine să folosiți un Dremel scurt cilindric; acesta va tăia eficient în unghi drept în poziție verticală.

1 - dacă acest șurub de conectare este în cale, scoateți-l

Pasul 4. Faceți roțile:

Axele acestor motoare sunt foarte mici, iar dacă dorim ca Mousebot să se miște constant la viteză mare, trebuie să-i atașăm niște roți. Casetele cu bandă au roți de dimensiuni perfecte în colțurile din dreapta și din stânga. Poate fi necesar să parcurgeți o mulțime de casete pentru a găsi roțile potrivite pentru axele dvs. Lipiți-le de osii cu superglue.

Tăiați elasticul și lipiți-l de margini înfășurându-l în jurul roții de trei ori, adăugând superglue la fiecare jumătate de tură pentru a ține structura împreună. Tăiați cauciucul rămas.

Acum lipiți o altă bandă de cauciuc pe cea pe care tocmai ați finalizat-o. Faceți același lucru și tăiați excesul. Asigurați-vă că există suficient adeziv pentru a ține elasticul în siguranță. Repetați acest proces pentru cealaltă roată.

1 - adăugați încă un strat pentru a înmuia atingerea roților;

1 - banda elastica este fixata

Pasul 5. Faceți un aspect și instalați releul:

Există destul de multe modele bune de mousebot. Cel mai bine este să utilizați aspectul standard. Circuitul mouse-ului va fi simplu, din moment ce placă de circuit imprimat nu necesită mult spațiu.
Instalați releul și lipiți firele încrucișându-le cu pinii de conectare de la 8 la 11 și de la 6 la 9.

Apoi conectați pinii 1 și 8 cu sârmă de-a lungul corpului și adăugați sârmă toronată pentru pinii 8 și 9.

Lipiți colectorul tranzistorului (borna din dreapta, privind din partea plată) la pinul 16 și atașați capătul scurt. Apoi conectați firele care sunt lipite la pinul 9 (pinul din stânga, privind din partea plată), lăsând puțin spațiu.

Acum lipiți releul pe corp. Aici puteți folosi firele tăiate ca poli de tensiune pozitivă și negativă, ceea ce vă va ajuta să scăpați de problemele cu motorul. Folosiți un cuțit ascuțit pentru a îndepărta protecția firului de contact care conectează pinul 9 la emițător și lipiți-l pe firele de alimentare. Apoi conectați pinul 8 la polul de tensiune pozitivă.

1 - Acest mouse nu are suficient spatiu in spate, asa ca instalati motorul in fata pentru o operare mai libera;

pinii 1, 4, 6, 8, 9, 11, 13, 16;

1 – emițător; 2 – colector; 3 – baza

1 – nu acordați atenție acestui fir albastru, nu veți avea nevoie de el; 2- Pare o conexiune greoaie, dar te eliberează de fire suplimentare;

Pasul 6: Setați butonul radio:

Acum adăugați antena Mousebot. Faceți acest lucru prin lipirea terminalului pozitiv al condensatorului și a unui rezistor de 10K până la capăt, care este de obicei deschis. Puteți verifica care parte este partea deschisă a comutatorului cu buton folosind funcția de test de continuitate a multimetrului dumneavoastră. Nu ar trebui să existe nicio legătură între contactul de mijloc și cel normal deschis în timp ce butonul este apăsat. După aceasta, adăugați un fir torsionat pentru a împământa condensatorul și contactul central al comutatorului.

Conectați rezistorul de pe comutator la baza (pinul central) a tranzistorului și firele din exteriorul condensatorului. Apoi conectați pinul din mijloc la polul de tensiune pozitivă. Pentru a vă face conexiunile mai sigure, ar trebui să utilizați tuburi termocontractabile pentru a izola conexiunile și să îndoiți condensatorul în lateral pentru a crea spațiu.

1 – rezistor 10 KOhm; 2 – contact de obicei deschis; 3 – contact de obicei închis;

1- aceasta se conectează la capătul ghidajului

Pasul 7: Construiește creierul Mousebot-ului:

Creierul mouseboților este cipul LM386. Întoarceți-l cu pinii în sus și îndoiți pinii 1 și 8 astfel încât să se atingă și să se lipeze.

Acum așezați 386 în carcasă și conectați pinul 4 și pinul 6 la capătul + și adăugați sârmă spiralată la pinii 2, 3 și 5.

Suntem aproape gata să conectăm motoarele. Rămâne să lipiți niște fire tordante la pinii 4 și 13 ai releului. În acest moment, Mousebot-ul dvs. ar trebui să arate ca a treia imagine a acestui pas.

1 - pin1; 2 - pinul 8

Pasul 8: Construiți jumătatea superioară a Mousebot-ului:

Mai întâi, găuriți mici găuri în partea din față a mouse-ului, două pentru ochi și una pentru dioda emițătoare de lumină (LED). Apoi, găuriți o gaură mare de comutare pe spatele mouse-ului și instalați un comutator pentru a opera funcția de pornire/oprire în coada robotului.

Pentru a crea tulpinile robotului, răsuciți două bucăți de sârmă împreună și lipiți un emițător IR la un capăt. Așezați LED-ul în mijlocul găurii și conectați capătul pozitiv la un rezistor de 1K.

1 – rezistor 1 KOhm; 2 – capătul GND al LED-ului;

Pasul 9. Lipiți elementele inferioare:

Folosiți lipici fierbinte sau rășină epoxidică pentru a atașa în siguranță întrerupătorul și motoarele la șasiul mouse-ului. Asigurați-vă că unghiul motorului este aproximativ drept și apoi ridicați ușor partea din față a mouse-ului de pe sol.

Pasul 10. Apropiindu-vă de linia de sosire:

Conectați pinul releului 13 la motorul din stânga și pinul releului 4 la motorul din dreapta. Acum conectați pinul 5 al circuitului integrat la conexiunea de jos și la motoare. Dacă nu sunteți sigur ce parte este + și care este –, conectați motorul la baterie și urmăriți sensul de rotație. Motorul din dreapta ar trebui să se rotească în sensul acelor de ceasornic când se uită la roată, iar motorul din stânga ar trebui să se rotească în sens invers acelor de ceasornic.

Localizați firul care vine de la pinul 2 (verde) + până la capătul tulpinii oculare stângi și de la pinul 3 (albastru) + până la capătul tulpinii oculare drepte. Apoi conectați un rezistor de 1K la direcția de tensiune +.

Conectați bateria, lipiți firul negru de capacul bateriei la polul de tensiune negativă. Conectați firul roșu de la capacul bateriei la comutator, apoi conectați comutatorul la + tensiune.

Închideți capacul mouse-ului și apoi tăiați o bandă subțire de material de cauciuc folosind un ferăstrău. Lipiți banda pe o parte, astfel încât să aplicați presiune atunci când apăsați butoanele. Dacă aveți o dâră care „se mângâie pe spate”, atunci ați făcut-o.

Acum rotiți comutatorul și bucurați-vă!