Gebruik een versnellingsmeter en de gyroscoop met Arduino


ik kocht onlangs een combinatie 3 axis versnellingsmeter en 2 as gyroscoop van Sparkfun en ik wilde na een aantal van de code die ik gebruikt om het up and running.  Ik ben van plan gebruik ervan in een Arduino-gebaseerde MIDI controller die ik binnenkort posten zal (video hieronder, code op de bodem van de pagina), wil ik het gebruik van de analoge knoppen van de tilt en de roterende beweging waarmee de uitgaande MIDI.  Versnellingsmeters en gyrokompassen worden ook vaak gebruikt op robots voor het uitbalanceren en andersoortige van feedback.

Eerst een beetje basisgegevens:
Gyrokompassen maatregel roterende beweging in graden per seconde.  Ze zullen niet direct vertellen u informatie over tilt, enige beweging rond een as.  Versnellingsmeters maatregel versnelling, gemakkelijk kunt u deze informatie voor de berekening van de schuine stand van een object door de huidige versnellingsmeter-gegevens uit een waarde die u zeker weet nul tilt af te trekken.

Voor dit project gebruikte ik de 5 graden van vrijheid IDG500/ADXL335 bord van Sparkfun.  Ik houd dit board omdat het de versnellingsmeter en gyroscoop gegevens output als 5 analoge spanningen die gemakkelijk kunnen worden gelezen met behulp van vijf van de analoge input pinnen van de Arduino.  Sommige versnellingsmeters en gyrokompassen output gegevens digitaal door het coderen in een pulsbreedte gemoduleerd (PWM) signaal.  Als u kort op de analoge input pinnen op je Arduino, het wellicht een goed idee om één van deze digitale chips te gebruiken, maar de analoge chips zijn leuk omdat ze vereist minimale inspanning om te werken.

Onderdelenlijst:
IMU Analog Combo bestuur - 5 graden van vrijheid IDG500/ADXL335 Sparkfun SEN-11072
Arduino Uno Sparkfun DEV-11021
mannelijke kop spelden Sparkfun PRT-00116
22 gauge draad
breadboard

Stappen:

Soldeer kop pinnen aan de versnellingsmeter/gyro-bestuur.  Op een breadboard verbinden met 5V van de Arduino Arduino aan grond, pin "RAW" en sluit de pin label X-Acc tot A0 en Y-Acc a1, Z-Acc a2

De onderstaande code verschijnt de X, Y, en Z versnelling fro uw bord in de seriële monitor (ctrl/command + shift + M).  Ik probeerde te centreren de waarden rond een nulpunt door de invoering van de variabele "nul" in mijn code en vervolgens af te trekken van al mijn inkomende gegevens van dit nummer.  Deze manier wanneer de Raad van bestuur wordt gehouden parallel aan de grond, lezen de versnelling X en Y beide 0.  Als de Raad van bestuur is getipt om positieve X een positief getal wordt weergegeven, en wanneer het is getipt om negatieve X een negatief getal (hetzelfde geldt voor Y) zal tonen.  Deze code versnellingsmeter kunt u bij het vaststellen van de richting van je board in 3D-ruimte.

 //Analog Accerometer w Serial //by Amanda Ghassaei 

Soms wilt u gebruiken een gyroscoop in de vruchtwisseling opgenomen informatie krijgen over je board die niet kan worden berekend met een versnellingsmeter.  Sluit de pin label Vref tot A0, yRate a1, a2 xRate, y4.5 tot A3 en x4.5 tot A4 op een breadboard.
U kunt benieuwd zijn over het verschil tussen de X / YRate en X / Y4.5 uitgangen.  Gyrokompassen maatregel graden per seconde, deze gyroscoop uitgangen een spanning op basis van de mate van beweging per seconde, zodat we zeggen kunnen dat het is outputten volt per graden per seconde (V / ° /s).  Vanuit het gegevensblad van de gyroscoop kunnen we zien dat de X / YRate is de uitvoer van gegevens met 2.0mV/°/s gevoeligheid en de X / Y4.5 is de uitvoer van gegevens met ongeveer 4.5 keer de gevoeligheid, of 9.1mV/°/s.
Upload de volgende code om de output van elk van deze (fig 6) weer te geven.

 //Analog Gyro w Serial //by Amanda Ghassaei 

Ik wilde deze code nul als ik deed met de bovenstaande code van de versnellingsmeter. Ik had verwacht dat de output van de x- en y gyro op de uitvoer van Vref gelijke terwijl het apparaat stationaire wordt gehouden, maar zoals u in fig 6 zien kunt, dit is niet het geval (als iedereen heeft een verklaring hiervoor zou ik graag horen!). Aangezien Vref was niet een verwijzing van de god voor mij op mijn output naar nul, ik gebruikte sommige vooraf ingestelde waarden op basis van de gegevens van de fig 6, je kunt ze vinden in mijn print verklaringen in de onderstaande code. Ik verwijderde ook het toezicht op Vref omdat het leek te zijn stabiel maakt niet uit hoeveel ik het apparaat verhuisde, zulks uitgezonderd mij ook een analoge input pin op de Arduino.

 //Analog Gyro w Serial //by Amanda Ghassaei 

De resultaten van deze code worden weergegeven in figuur 7.  Rotatie rond de x- en y assen zal veranderen de waarden van xRate, x4.5, yRate en y4.5.
Ik gebruikte deze versnellingsmeter/gyro in een Arduino gebaseerde MIDI-controller die ik heb gewerkt. Hieronder is de code voor de twee toepassingen die ik in de video bij de bovenkant van dit demoed instructable.  Ik heb verbonden alle drie assen van de versnellingsmeter en de twee 4.5gyro-uitgangen voor dit project.

één pixel verplaatsen, MIDI triggering (gebruikt alleen x en y versnellingsmeter):

 //accelerometer test- single pixel //by Amanda Ghassaei 2012 

vier pixels stuiteren (gebruikt alleen x versnellingsmeter, gebruik x gyro wissen pixels):

 //accelerometer test- bounce //by Amanda Ghassaei 2012 

Gerelateerde Artikelen

Een Networked LED Strip Controller met Arduino en Android

Een Networked LED Strip Controller met Arduino en Android

ik ben fascinerende van verlichting effect sinds kind en eenmaal gevonden op Ebay een goedkope multicolor LED strip ik ben begonnen op zoek hoe besturingselement het, op zoek naar een Ethernet ingeschakeld besturingselement dat maakt de strips een se
Hoe maak je een remote controlled Robotic Hand met Arduino

Hoe maak je een remote controlled Robotic Hand met Arduino

Dit is mijn schoolproject voor het 5de jaar van de middelbare school (ik ben Italiaans, we hebben 5 jaar van de middelbare school).Het bestaat uit een kunstmatige hand gecontroleerd door een handschoen met flex sensoren. De kunstmatige hand reproduce
Maak een ThinkPad toetsenbord USB-adapter met Arduino

Maak een ThinkPad toetsenbord USB-adapter met Arduino

Onder de business klasse laptops hebben ThinkPads de beste toetsenborden. Zelfs met de wijziging eiland stijl toetsenborden, zou ik zeggen dat ThinkPad toetsenborden nog verslaan alle haar laptop concurrenten handen naar beneden in de afdeling van he
Hoe maak je een LED 7-segment display met Arduino

Hoe maak je een LED 7-segment display met Arduino

Ik ga u tonen hoe te maken van een 7 segment display met LED's. Combineren met Arduino aftelproceduretijdopnemers, eenvoudige tekst, en meer te maken. Ik willen maken van de oorspronkelijke projecten. Ik zocht de hele instructables en als dit niet vi
Een ATtiny44/45/84/85 met Arduino Program

Een ATtiny44/45/84/85 met Arduino Program

Deze tutorial geeft stapsgewijze instructies instellen, program en testen van een ATtiny44/45/84/85 met een Arduino. Het is ook verstrekt sommige uitleg de binnenwerkingen van AVR chips in het algemeen.Stap 1: AVR en ISP uitgelegd Veel tutorials kunn
Een 15-LED RGB klok met Arduino kern

Een 15-LED RGB klok met Arduino kern

De RGB-klok maakt gebruik van het RGB-kleur samenstelling model gebruikt in alle kleur toont. Dit model maakt gebruik van drie 'basic' kleuren, namelijk rood, groen en blauw, om te bouwen van een andere 'composiet' kleur van het spectrum. Met RGB-klo
Het bouwen van een halve Smart, DIY boot met Arduino en sommige andere sensoren

Het bouwen van een halve Smart, DIY boot met Arduino en sommige andere sensoren

ik dit off van voor de bouw van een waterfles boot, met sommige toevoegingen voor het obstakel te vermijden en licht-geleide controle gebaseerd. Ik gebruikte Arduino als een microcontroller, een ultrasone sensor op de voorzijde, een paar eenvoudige s
Bouwen van een kat strooisel vak ventilator met Arduino

Bouwen van een kat strooisel vak ventilator met Arduino

een schuilplaats kat kattenbak is een geweldige manier om uw appartement eruit een verblijfsvergunning voor volwassenen in plaats van crazy cat dames. Een verborgen strooisel vak in een kast, onder een gootsteen, of ingebouwd in sommige andere meubel
Met behulp van een NES-controller voor emulators met Arduino en Processing

Met behulp van een NES-controller voor emulators met Arduino en Processing

Ik heb verschillende manieren om een NES-controller aansluiten op uw computer voor gebruik als een emulator gamepad, maar geen leek eenvoudig en compatibel met wat ik had bij de hand.Zulks men werken alleen met Arduino Leonardo, Micro en vervaldatum:
Gebruik van playstation remote op pc met arduino

Gebruik van playstation remote op pc met arduino

ik heb begaafd een oude playstation 1 externe één dag en wilde het gebruiken op computer en vervolgens kocht een adapter op ebay wich gebrekkig was. Dus besloten ik uiteindelijk om mijn eigen met een arduino duemilanove. Ik voor het eerst geprobeerd
Hoe te programmeren een PIC 18F2550 of 18f4550 met Arduino UNO

Hoe te programmeren een PIC 18F2550 of 18f4550 met Arduino UNO

Hier is onze onze eerste tutorial over Instructable worden zo toegeeflijk. Deze zelfstudie toont de methode van het gebruik van een Arduino UNO-board als een PIC microcontroller programmeur. Deze methode is getest met de PIC 18F2550 en 18f4550, maar
Gebruik een 1602-LCD display - hoe te Arduino #2

Gebruik een 1602-LCD display - hoe te Arduino #2

het gebruik van een standaard 16 X 2 LCD met de Arduino
Een schattige Kids speelgoed dat met Arduino en eenheid spreekt :)

Een schattige Kids speelgoed dat met Arduino en eenheid spreekt :)

Bekijk de video voor een demonstratie.Dit project is puur uit verveling, was ik experimenteren met een flex-sensor wanneer het idee kwam bij me, oorspronkelijk was bedoeld om het gebruik van een flex-sensor, maar na een tweede gedachte die dezelfde r
Maken van een weerstand gebaseerd toetsenbord & Interface met Arduino!

Maken van een weerstand gebaseerd toetsenbord & Interface met Arduino!

Hoi allemaal!Ik voorkeur altijd weerstand scheidingslijn/ladder gebaseerd toetsenborden over matrix toetsenborden. Als je slim, alles wat je nodig hebt is een analoge poort van uw microcontroller met zoveel knoppen als u wilt. Tuurlijk, het vereist e