Proiectul acesta se vrea a fi o implementare simpla de mouse. Scopul lui este de a misca pointerul mouse-ului prin simpla miscare a placutei. Ideea de la care am pornit a fost urmatoarea: ce ar fi daca am putea sa miscam pointerul mouse-ului fara sa ne folosim degetele? Motivul implementarii acestei solutii hardware este de acela ca vine in ajutorul persoanelor cu disfunctionalitati fizice: nu au degete sau palme.
Componente:
Denumirea piesei | Proveniență | |
---|---|---|
Plăcuța de la etapa 1 | Placutiada 2012+ ore de proiect | |
Accelerometru MMA7361 | http://www.robofun.ro/index.php?route=product/search&keyword=mma7361&category_id=0 | |
Fire izolate pentru conexiune | Cablu UTP | |
Pini tata | http://syscom.ro/produse.asp | - |
Programul de pe microcontroller are la baza exemplul HID-mouse pus la dispozitie alaturi de driverul USB VUSB. Programul foloseste Timer1 pentru a citi la 20 ms acceleratiile pe cele trei axe. Vitezele pe x si pe y sunt tranmise ca deplasamentul pe x si y din pachetul de mouse USB. Viteza pe z este transmisa ca deplasamentul mouse wheel-ului din acel pachet. Codul a fost dezvoltat cu ajutorul WinAvr.
MagicMouse poate functiona ca mouse, nefiind nevoie de a-l tine efectiv in mana. Atat timp cat este legat de obiect si miscat, pointerul mouse-ului se va deplasa.
Pentru a obtine acuratete, este nevoie de multe teste pentru a stabili valorile care fac mouse-ul sa functioneze optim.
Sursele dezvoltate pentru produs:
Datasheet-ul accelerometrului MMA7361: http://www.alldatasheet.com/view.jsp?Searchword=MMA7361
Driver USB: http://www.obdev.at/products/vusb/download.html
Datasheet-ul procesorului AtMega16: http://www.atmel.com/dyn/resources/prod_documents/doc2466.pdf