Sisällysluettelo:
- Vaihe 1: Laitteisto ja tavarat
- Vaihe 2: Elektroniikka
- Vaihe 3: Hiiren valmistelu
- Vaihe 4: Lähdekoodi
- Vaihe 5: Video
Video: 3D AIR -hiiri - Arduino + käsittely: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:04
3D AIR -hiiri | Arduino + ProcessingOlen teollisen suunnittelun opiskelija, ja viime vuonna osana kurssia nimeltä "Technology as RAW materiel" rakensin tämän projektin viimeiseksi työkseni. Työskentelen suurimman osan ajasta suunnittelun ja kehittämisen CAD -ohjelmiston SolidWorksin kanssa. Kiinteän kappaleen kääntäminen näytöllä tapahtuu hiiren keskimmäisellä painikkeella. Etsin jotain intuitiivisempaa. Näin päädyin tekemään 3D -ilmahiiren, jossa kohteen todellinen pyöriminen tapahtuu siirtämällä hiirtä ilmassa kaikilla kolmella akselilla - samalla tavalla kuin pyörittäisit objektia, jos pidät sitä kädessäsi. Käytin Arduinoa, paria anturia ja prosessiluonnosta HUOMAUTUKSIA:- Tämä on toistaiseksi vain havainnollistus konseptista, koska SolidWorkin kanssa ei ole varsinaista laajennusta (mutta tietysti voit kirjoita yksi, jos tiedät miten:) jotain ideaa, jos haluat yrittää rakentaa sellaisen itse … Nauti siitä … (Se on ensimmäinen Instructable) Tässä on videon demo valmiista projektista
Vaihe 1: Laitteisto ja tavarat
Se ei ole halvin Instructable, koska se perustuu 3 -akseliseen kiihtyvyysanturiin + kompassianturiin. Sinulla on oltava tilaa anturien ja ylimääräisten johtojen sijoittamiselle, joten älä käytä erityisen ohuita / erittäin pieniä hiiriä. 149 dollaria* Logiikan tasomuunnin - PITÄÄ! Koska Arduino on 5 V ja 3 -akselinen anturi 3,3 V. Sillä on suuri nimi, mutta se maksaa vain 1,95 dollaria SpurkFunissa.* Suuri optinen ilmaisin / valotransistori - Tämä on yksinkertainen optinen anturi, jota käytetään tässä projektissa havaitsemaan, milloin hiiri nostetaan työtasolta. Ostettu SpurkFunista hintaan 2,25 dollaria. Jos sinulla ei ole tarpeeksi tilaa tämän hiiren sijoittamiseen valitsemasi hiiren sisälle, voit käyttää tätä pienempää ja halvempaa. * Yksi (1) LED - väreistä riippumatta, erittäin kirkas toimii paremmin.* 2 vastusta - yksi (1) x 100Ω ja yksi (1) x 100KΩ (optiselle anturille)* Arduino -kortti - DA! Käytin Diecimila -mallia. Uudempi Duemilanove on saatavana SpurkFunissa noin 29,95 dollarilla (pitäisi toimia myös) + Arduino -ohjelmisto asennettuna.* Käsittelyohjelmisto asennettu.* Projektin lähdekoodi (Älä huoli, saat ladata sen sekunnissa.) Plus: Jotkut kuuma liima (tavaroiden kiinnittämiseksi paikalleen) Pari pientä ruuvia. Noin 10 cm 6 mm: n (halk.) puuankkurista, joitakin ylimääräisiä johtoja, juotin. Jotain leikkaamaan muovia, käytin leikkuuterää ja viilua (Muotoiluun). ("Ok, älä vihaa minua tässä vaiheessa, englanti on toinen kieleni, jos olen ymmärtänyt tämän väärin, olen pahoillani, ymmärrät varmasti, mitä tarkoitan hetken kuluttua näet sen kuvissa ")
Vaihe 2: Elektroniikka
Kaikki on juotettava yhteen… tavallaan… HUOMAUTUS: 3 -akselinen anturi on kallis pikkujuttu, tarkista johdotus ennen kuin kytket kaiken päälle… Katso kaikkien tässä projektissa käytettyjen johtojen kaaviot. Liitteenä oleva lähdekoodi voi toimia vain, jos käytät samoja PIN -numeroita kuin minä, mutta voit vapaasti muuttaa niitä yhdistettäessä, kunhan muutat koodin sopivia numeroita. 3 -akselisen anturin liittäminen logiikan tasomuuntimeen: Anturi VCC -> Arduino 3V3Sensor GND -> Arduino GndSensor SDA -> Muunnin TXI (Chan1) Muunnin TXO (Chan1) -> Arduino ANALOG IN 4Sensor SCL -> Muunnin TXI (Chan2) Muunnin TXO (Chan2) -> Arduino ANALOG IN 5Converter GND (ainakin yksi niistä) -> Arduino GndConverter HV -> Arduino 5VConverter LV -> Arduino 3V3 Optinen anturi Arduinoon: Katso liitteenä oleva kuva GND (käytin yhtä optisesta anturista)+ Arduino PIN 13: een (tämä tehtiin, koska tässä tapissa on jo sisäinen vastus, jos käytät toista, varmista, että käytät vastusta, jotta et polta LEDiä)
Vaihe 3: Hiiren valmistelu
Täältä anturit löytävät paikkansa hiiren kotelon sisällä. Löydä paras paikka kiinnittää 3 -akselinen anturi. Varmista, että se on vaakasuorassa ja ota huomioon suunta (tiedät, kun anturi on kädessäsi) Voit korjata sen haluamallasi tavalla. Käytin 2 lyhyttä puuankkuria, jotka porattiin hyväksymään 2 pientä ruuvia, ja liimattu kuumana hiiren emolevyyn. Muotoile optiselle anturille suorakulmainen reikä hiiren pohjalle, ajatuksena on, että anturi "näkee" pöydän koko ajan. Kun hiiri nostetaan ja anturin tila on "auki" (taulukkoa ei näy), hiiri siirtyy 3D -tilaan (suorittaa prosessiluonnoksen) Muotoile toinen reikä ylimääräisten johtojen (antureista Arduinoon) reitittämiseksi muovinen kotelo. Omani sijaitsi hiiren oikealla puolella. Tässä projektissa LED on 3D-tilan ilmaisin. Asetan omani silikonisen hiiren pyörän viereen. Kun hiirtä nostetaan, pyörässä oli kaunis sininen hehku.
Vaihe 4: Lähdekoodi
Arduinon koodin kirjoitti opettajani Shachar Geiger, ja olen muokannut tätä projektia varten. 3D -kuutiokoodi on Processing -verkkosivustolla oleva peruskoodi. Koodissa tämä osa muuntaa anturista (tyypillisesti -180: stä 180 x 10: een) saadut raakatiedot 0-255: ksi getHeading (); Serial.write ('x'); x = (x +1800) / 14; Sarja.kirjoita (x); Sarja.kirjoita ('y'); y = (y+1800) / 14; Sarja.kirjoita (y); Sarja.kirjoita ('z'); z = (z+1800) / 14; Sarja.kirjoitus (z); Anturin ja Arduinon tiedot menevät kunkin erillisen akselin käsittelyluonnokseen, mutta edellisen akselin kirjaimella (esim. X12 Y200 Z130) seuraava koodi pudottaa kirjaimen ja jättää vain arvot, jotka lähetetään COM: lle portti kun (port.available () == 0) {} char reading = 0; while (reading! = 'x') {while (port.available () == 0) {} reading = (char) port.read ();} X = port.read (); while (reading! = 'Y') {while (port.available () == 0) {} reading = (char) port.read ();} Y = portti.read (); while (reading! = 'z') {while (port.available () == 0) {} reading = (char) port.read ();} Z = port.read (); Tämä koodinpala pudottaa kaikki negatiiviset arvot… jos ((X! = -1) && (Y! = -1) && (Z! = -1)) {rotateZ (-(float) Y/25.0); rotateX ((float) X/25.0); rotateY ((float) Z/25.0); pX = X; pY = Y; pZ = Z;} else {rotateZ (-(float) pY/25.0); rotateX ((float) pX /25.0);rotateY((float)pZ/25.0);} Liitteenä oleva ZIP -tiedosto sisälsi sekä Arduino- että Processing -koodin
Vaihe 5: Video
Siinä se… Tämä on videon valmis projekti. Pieni virhe (näet, että kuutio joskus "hyppää" videossa), Tämä johtuu Z -akselista, ei ehkä tapahdu sinulle …
Suositeltava:
Flappy Bird Arduinon avulla ja käsittely: 5 vaihetta
Flappy Bird Arduinon avulla ja käsittely: Hei kaikille !!! Tervetuloa uuteen Arduino -pohjaiseen projektiin. Me kaikki olemme kerran elämässämme pelanneet flappy lintu peliä. Mitä jos pelaamme sitä tietokoneellamme ja hallitsemme sitä Arduinon avulla ?? Noudata kaikkia alla olevia ohjeita ja tämän opetusohjelman loppuun mennessä
Palautushyvityksen käsittely: 13 vaihetta
Palautusoikeuden käsittely: 123 Toimistotarvikkeiden valmistus on alan johtava toimistotarvikkeiden valmistus. Pyrimme tarjoamaan korkealaatuisia tuotteita kohtuulliseen hintaan. Kaikille jakelijoillemme tarjotaan nettohinta kaikista tuotteistamme käytettäväksi
4x4 -näppäimistö Arduinolla ja käsittely: 4 vaihetta (kuvilla)
4x4 -näppäimistö Arduinolla ja käsittely: Etkö pidä LCD -näytöistä? Haluatko saada projektisi näyttämään houkuttelevilta? No, tässä on ratkaisu. Tässä Instructable -ohjelmassa voit vapauttaa itsesi ongelmista käyttää LCD -näyttöä Arduinon sisällön näyttämiseen ja myös tehdä projektisi
Bluetooth ja IMU Tactigon Boardilla - Käsittely: 7 vaihetta
Bluetooth ja IMU Tactigon Boardilla - Käsittely: Tässä artikkelisarjassa selitetään, kuinka Tactigonin integroitujen antureiden ja viestintärajapintojen avulla luodaan yksinkertainen eleohjain.Lähdekoodi saatavilla täällä GitHubissa Tässä artikkelissa opimme käyttää simppiä
Yksinkertainen käsittely Uldar (ultraäänitunnistus ja etäisyys): 3 vaihetta
Yksinkertainen käsittely Uldar (ultraäänitunnistus ja etäisyys): Tämä on yksinkertainen projekti, joka käyttää Arduino UNO: ta ja prosessointia yksinkertaisen lidarin tekemiseen. kohde pulssilaservalolla ja mittauksella