Taula de continguts:

Ratolí 3D AIR - Processament Arduino +: 5 passos
Ratolí 3D AIR - Processament Arduino +: 5 passos

Vídeo: Ratolí 3D AIR - Processament Arduino +: 5 passos

Vídeo: Ratolí 3D AIR - Processament Arduino +: 5 passos
Vídeo: Dust Sensor DSM501A with Arduino, PM10 & PM2.5 Air Quality Monitoring, Arduino Project 2024, De novembre
Anonim
Ratolí 3D AIR | Processament Arduino +
Ratolí 3D AIR | Processament Arduino +

Ratolí 3D AIR | Arduino + Processing: sóc estudiant de disseny industrial i l’any passat, com a part d’un curs anomenat "Tecnologia com a material RAW", vaig construir aquest projecte com a darrer treball. Treballo la majoria de les vegades amb SolidWorks, un programari CAD per al disseny i enginyeria. Girar un cos sòlid a la pantalla es fa amb el botó central del ratolí. Buscava quelcom més intuïtiu. Així és com vaig acabar fent el ratolí d’aire 3D, on la rotació real d’un objecte es fa movent el ratolí a l’aire pels 3 eixos, de la mateixa manera que giraria l’objecte si el teníeu a la mà. He utilitzat l’Arduino, un parell de sensors i un esbós de processament. NOTES: - A hores d’ara, això només és una demostració del concepte, ja que no hi ha cap complement real per treballar amb SolidWork (però, per descomptat, no dubteu a escriviu-ne un si sabeu com:) - Com que tot el maquinari no era meu, el ratolí 3D real ja ha passat, i estic fent servir algunes fotos i un vídeo per provar de tenir sentit en tot això i per donar-vos alguna idea si vols provar de construir-ne un tu mateix … Gaudeix-ne … (És el meu primer instructable) Aquí tens la demostració en vídeo del projecte acabat

Pas 1: maquinari i coses

Maquinari i coses
Maquinari i coses
Maquinari i coses
Maquinari i coses
Maquinari i coses
Maquinari i coses
Maquinari i coses
Maquinari i coses

No és l’instructible més barat, ja que es basa en un acceleròmetre de 3 eixos + sensor de brúixola. Coses que necessiteu: * Un ratolí: un de millor és millor (només perquè s’utilitza i és més barat), hauria de fer-ho qualsevol ratolí. Cal disposar d’espai per allotjar els sensors i alguns cables addicionals, de manera que no busqueu ratolins extra prims / extra. * Mòdul de brúixola amb compensació d’inclinació - HMC634: es tracta del sensor de 3 eixos comprat a SpurkFun per a ~ $ 149 * Convertidor de nivell lògic: UN MOST! Com que l’Arduino té 5V i el sensor de 3 eixos és de 3,3V, necessiteu un d’aquests per convertir el 5V en 3,3V. Té un gran nom, però només costa 1,95 dòlars a SpurkFun. * Detector òptic gran / fototransistor: es tracta d’un senzill òptic senzill que s’utilitza en aquest projecte per detectar quan s’està aixecant el ratolí de la superfície de treball. Comprat a SpurkFun per 2,25 dòlars. Si no teniu prou espai per allotjar-lo dins del ratolí escollit, podeu utilitzar-lo, més petit i més econòmic. * Un (1) LED, no importa el color, els ultra brillants funcionaran millor. * 2 resistències: un (1) x 100Ω i un (1) x 100KΩ (per al sensor òptic) * placa Arduino - DA! He utilitzat el model Diecimila. Un nou Duemilanove està disponible a SpurkFun per uns 29,95 dòlars (també hauria de funcionar) + s'ha instal·lat el programari Arduino. * S'ha instal·lat un software de processament. * El codi font del projecte (no us preocupeu, el baixareu en un segon). cola calenta (per arreglar les coses al seu lloc) Un parell de petits cargols. A uns 10cm d’una àncora de fusta de 6 mm (Diàmetre). PER FORMAR). ("D’acord, no m’odiïs per aquest pas, l’anglès és el meu segon idioma; si m’equivoco, ho sento. Estic segur que entendràs què estic tractant en un segon. ho veuràs en imatges ")

Pas 2: electrònica

Electrònica
Electrònica
Electrònica
Electrònica

Cal soldar-se tot junt … En certa manera … NOTA: El sensor de 3 eixos és una cosa petita i caro, comproveu el cablejat abans d’engegar tot … Consulteu els esquemes adjunts de tots els cables utilitzats en aquest projecte. només pot funcionar si feu servir els mateixos números de pin que he fet, però no dubteu a canviar-los quan us connecteu sempre que canvieu els números adequats del codi. Connexió del sensor de 3 eixos al convertidor de nivell lògic: sensor VCC -> Arduino 3V3Sensor GND -> Arduino GndSensor SDA -> convertidor TXI (Chan1) convertidor TXO (Chan1) -> Arduino ANALOG IN 4Sensor SCL -> convertidor TXI (Chan2) convertidor TXO (Chan2) -> Arduino ANALOG IN 5Converter GND (almenys un d’ells) -> Arduino GndConverter HV -> Arduino 5VConverter LV -> Arduino 3V3 Sensor òptic a Arduino: vegeu la imatge adjunta Digital a = Pin 11 de l’ArduinoLED: GND a alguns GND (he utilitzat un dels sensors òptics) + a Arduino PIN 13 (Això es va fer ja que aquest pin ja té una resistència incorporada, si n'utilitzeu una de diferent, assegureu-vos d'utilitzar una resistència per no cremar el LED)

Pas 3: Preparació del ratolí

Preparació del ratolí
Preparació del ratolí
Preparació del ratolí
Preparació del ratolí
Preparant el ratolí
Preparant el ratolí

Aquí és on els sensors troben el seu lloc dins de la carcassa del ratolí. Trobeu el millor lloc per fixar el sensor de 3 eixos. Assegureu-vos que està anivellat i tingueu en compte l’orientació (sabreu quan tindreu el sensor a la mà) Podeu arreglar-lo com vulgueu, he utilitzat 2 peces curtes de l’ancoratge de fusta, perforades per acceptar els 2 cargols petits i enganxat en calent a la placa principal del ratolí. Per al sensor òptic, donar forma a un forat rectangular a la part inferior del ratolí, la idea és que el sensor "vegi" la taula tot el temps. Quan el ratolí s’aixeca i l’estat del sensor està "obert" (no hi ha taula per veure), el ratolí canvia al mode 3D (executa l'esbós de processament) Formeu un altre forat per encaminar els cables addicionals (des dels sensors a l'Arduino) fora del carcassa de plàstic. La meva estava situada a la part dreta del ratolí. Fixeu el LED on apareixerà. En aquest projecte, el LED és l’indicador del mode 3D. Poso la meva al costat de la roda de ratolí de silicona. Quan s’aixeca el ratolí, la roda tenia un bonic resplendor blau.

Pas 4: el codi font

El codi de l’Arduino l’he escrit Shachar Geiger, el meu professor, i el vaig modificar per a aquest projecte. El codi cub 3D és el codi bàsic que es troba al lloc web Processing. El vaig modificar una mica. Al codi, aquest fragment converteix la informació bruta que prové del sensor (normalment -180 a 180 x 10) a 0-255 getHeading (); Serial.write ('x'); x = (x +1800) / 14; Serial.write (x); Serial.write ('y'); y = (y + 1800) / 14; Serial.write (y); Serial.write ('z'); z = (z + 1800) / 14; Serial.write (z); La informació del sensor i l’Arduino va a l’esbós de processament de cada eix separat, però amb una lletra d’eix anterior (per a exp. X12 Y200 Z130), el codi següent deixa caure la lletra i deixa només els valors que s’enviaran a la COM port while (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 = port.read (); while (reading! = 'z') {while (port.available () == 0) {} reading = (char) port.read ();} Z = port.read (); Aquest fragment de codi deixa caure tots els valors negatius … if ((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);} El fitxer ZIP adjunt contenia tant Arduino com codi de processament

Pas 5: vídeo

Això és tot … Aquest és el projecte acabat en un vídeo. Hi ha un problema menor (podeu veure que el cub de vegades "salta" al vídeo), això és degut a l'eix Z, potser no us passarà …

Recomanat: