3D afgedrukt Arduino Quadricopter (4 / 7 stap)

Stap 4: I2C versnellingsmeter-gyroscoop setup


TL; DR:

1. SLUIT NIET AAN 5V.

2. don't freak out.

3. deze bibliotheek gebruiken: https://github.com/jrowberg/i2cdevlib

4. geen soldeer je board in totdat u een kalibratie hebt uitgevoerd.

We gebruikten een MPU6050 van SparkFun, https://www.sparkfun.com/products/11028. Deze kunnen worden gevonden op Amazon voor slechts $10, en ik heb het op goed woord dat ze prima werken, maar de bedrading zullen een beetje afwijken van de foto's. Deze stap zal dienen als een generieke achtergrond en de handleiding voor het instellen en gebruiken van een I2C versnellingsmeter, aangezien de meeste van deze informatie is verspreid over een dozijn draden van de besprekingsgroep.

Wat is de I2C?

Je hebt misschien gezien eenvoudige planken zoals https://www.sparkfun.com/products/9269 met afzonderlijke analoge uitgangen voor X, Y en Z. Die zinvol; Iedere uitgang correlaten met een as van de versnellingsmeter. U ziet een I2C boord en freak out een beetje binnenkant. I2C is een communicatiestandaard waar het bestuur communiceert veel informatie met behulp van digitale logica pulsen in plaats van analoge uitgangen. De MPU6050 heeft 6-axises (3-gyro, 3-versnellingsmeter) dus als ze analoge waren ze alle poorten op uw Arduino zou uitputten. De bottom line is de Arduino een digitale controle-signaal naar de Raad van bestuur, en leest in informatie digitaal uit de input pinnen.

Bedrading:

De bedrading voor onze specifieke MPU6050 is als volgt. Opmerking de code bibliotheek wordt ervan uitgegaan dat deze de ingangen gebruikt. Andere platen lijken.

VDD -> 3,3 v

GND -> grond

INT -> digitale 2

SCL -> A5

SDA -> A4

VIO -> grond

Lopende 5v via de board kan en zal breken, dus niet. Sommige MPU6050 boards hebben spanningsstabilisatoren die moeten beschermen, maar het is niet het risico waard. Als je board een AD0 pin heeft, moet het worden aangesloten op de grond. Op ons board die de VIO-poort is aangesloten op een interne AD0, dus het dient als de AD0 pin. Of de AD0/VIO is verbonden met grond of VDD eigenlijk bepaalt het geheugenadres dat de Raad van bestuur interfaces met de Arduino (0x68 of 0x69). Als dit is verwarrend, niet kopzorg dienaangaande, enkel draad het tot de grond. Hebt u problemen probeer VIO/AD0 van grond VDD.

Code:

Nu krijgen de dingen een beetje lastig. Hopelijk heb je een beetje codering / knoeien met software ervaring. Als u dat niet doet, gewoon gaan langzaam en google om het even wat je niet weet. Er is een heleboel informatie die er. Ik zal proberen om zo duidelijk mogelijk, maar ik kan niet alle problemen bestrijken

Als u eenmaal uw MPU aangesloten op de Arduino, zet hem op en upload deze I2C scanner code: http://playground.arduino.cc/Main/I2cScanner#.Uxh...

Schuif naar de onderkant en de code kopiëren en plakken in een lege schets en draaien. Open de seriële monitor (Tools -> seriële Monitor) en controleer of dat u bent op poort 9600 (linksonder). Dat is in de code, maar niet u het voorlezen.

Als alles werkt moet het vinden van een I2C-apparaat en geven u een geheugenadres van 0x68 of 0x69. Schrijf het op. Als je de bedrading fouten controleren.

Nu zul je wilt installeren code die eigenlijk tegen de accelerometer/gyroscoop praat. Er is een heleboel dingen die er maar degene die ik heb ontdekt welke werkt het beste is https://github.com/jrowberg/i2cdevlib. Klik op "Download Zip," Onthoud waar u maar het (waarschijnlijk desktop) en vervolgens unzip het. Open het programma van de Arduino IDE. Nu ga naar de schets -> bibliotheek importeren -> bibliotheek toevoegen. U moet zowel de I2Cdev en de MPU6050 mappen toevoegen als bibliotheken (ze zijn onder de Arduino in de map).

Zodra deze zijn geïnstalleerd moet u de MPU6050_DMP6 (het heeft onder MPU6050 -> voorbeelden) openstellen bestand in de Arduino. Ik stel voor het lezen over (zelfs als u veel code niet weet), het is goed heeft gereageerd en heeft een aantal opties voor hoe het output van de lezingen van de Raad van bestuur. Als u op 0x69 van de scanner hebt gekregen, moet u voor ongemeen naar één lijn bij de bovenkant van de code (net na de #includes; de opmerkingen lezen dom) Aangezien de standaardwaarde 0x68 is. Het programma moet nu compileren.

Uploaden van de code, de seriële poort (115200 ditmaal) te openen en volg de instructies. Gefeliciteerd, moet u krijgen werken lezingen van de Raad van bestuur. Als het lijkt te drijven op het eerste, maak je geen zorgen het moet ongeveer 10sec van wordt nog steeds om tot rust te komen. Ook zal de yaw output drift (een beetje), aangezien er geen referentiekader. De Raad van bestuur maakt gebruik van de versnellingsmeter om zwaartekracht en vinden "down" welke daad als een referentie voor pitch en roll. Sommige liefhebber boards bevatten een kompas voor referentie.

Nu voordat u op verplaatst, zult u wilt kalibreren van je board. Vinden van een vlak oppervlak en zorg ervoor dat je board is vlak met het label naar boven.

Vervolgens moet u deze handige-dandy kalibratie code beschikbaar aan de bovenkant, dankzij Luis Ródenas uitvoeren. Opnieuw de standaard het 0x68, maar u kunt dat veranderen. Zorg ervoor dat u Noteer de verschuivingswaarden dat het geeft je. U kunt en deze als de verschuivingen in de MPU6050_DMP6-code moet gebruiken (en later onze quadcopter code).

U hebt nu een werkende en nuttige accelerometer/gyroscoop. Nu stel ik u enige tijd knoeien met de code MPU6050_DMP6 en proberen de verschillende output typen.

Gerelateerde Artikelen

3D afgedrukt Arduino Boe-Bot

3D afgedrukt Arduino Boe-Bot

Hallo, toont dit instructable dat u hoe te bouwen van een kleine 3D afgedrukt Arduino Boe-Bot dat wordt aangedreven door 360 graden servo's. Zijn geïnspireerd door de Parallax Boe Bots. Daarmee hebt u twee manieren om te bepalen van het bot met een R
Eenvoudige 3D afgedrukt Arduino Robot

Eenvoudige 3D afgedrukt Arduino Robot

Wie niet wil om een robot te bouwen? Als een kind droomde ik robots te bouwen. Nu, iedereen van elke leeftijd met slechts een beetje kennis kan bouwen met een eenvoudige robot! Ik zal u tonen hoe dat te doen.De RobotDeze robot heeft een 3D gedrukte c
3D afgedrukt Arduino gecontroleerd Eggbot/Spherepot

3D afgedrukt Arduino gecontroleerd Eggbot/Spherepot

eerst dit project was een combinatie van van twee grote online bronnen. Ik had gezocht in het opbouwen van een eggbot voor een tijdje, en aangezien ik had een heleboel ping pong ballen bij de hand na een van mijn andere video's die de tijd rijp was v
3D afgedrukt Arduino Robot

3D afgedrukt Arduino Robot

Dit instructable zal u tonen hoe te bouwen van een basis 3D gedrukte autonome robot voor ongeveer $40.Dit instructable is vooral geschreven voor mijn studenten van MakerLab NZ als een gids voor de afwerking of het herstellen van hun robots die ze geb
Hexapoduino: kleine hexapod 3D afgedrukt, Arduino gecontroleerd

Hexapoduino: kleine hexapod 3D afgedrukt, Arduino gecontroleerd

enkele tijd geleden, ik ontdekte een 3d gedrukte Micro-Hexapod op Thingiverse.Ik begon te werken op het op de volgende manieren:-nieuwe accessoires/onderdelen 3D afdrukbare maken-verkennen van de mogelijkheden om te rijden dit hexapod.Hier de resulta
3D afgedrukt Arduino xylofoon

3D afgedrukt Arduino xylofoon

Als onderdeel van mijn laatste project voor mijn klas van de elektronica die heb ik besloten om een kleine elektronische xylofoon met behulp van de Arduino Uno. Dit idee kwam van de wens om een soort praktijk mallet instellen voor hamer slagwerkers,
Hoe maak je een mobiele telefoon en Computer gecontroleerd 3D gedrukte Robot met Arduino - IoBot.

Hoe maak je een mobiele telefoon en Computer gecontroleerd 3D gedrukte Robot met Arduino - IoBot.

Als u op zoek bent naar een manier om een Arduino gebaseerde apparaten te controleren, zal deze instructie u tonen hoe om het te doen door het bouwen van eenvoudige robot.De IoBot kan worden gecontroleerd door mobiel en computer toepassing via LAN of
Onderwijs Mike to Walk

Onderwijs Mike to Walk

Dit is een 3d afgedrukt, Arduino gecontroleerd, zes graden van vrijheid, walking robot. Nou ja--soort van. Hij gooide vier wijd beter op een navelstreng dan met zijn dikke buik en grote hoofd (klinkt als sommige mensen die ik ken). Meer daarover late
CupBots - 3D afgedrukt Robotic platform voor Arduino en Raspberry Pi

CupBots - 3D afgedrukt Robotic platform voor Arduino en Raspberry Pi

Hier is een geweldig weekend robotica project uit te voeren met vrienden of mensen op uw lokale maker-ruimte. Je moet een 3D-printer handig om 3D print de STL-bestanden bijgevoegd als onderdeel van de volgende stappen en een beker, in mijn geval, ik
De Lanceerinrichting van de raket van Arduino Model voor 3D afgedrukt raketten

De Lanceerinrichting van de raket van Arduino Model voor 3D afgedrukt raketten

Toen ik een kind was, ik hield van spelen met Estes raketten, dus heb ik besloten om terug te gaan in de hobby maar met behulp van al mijn maker skizzls. Dus is hier een echt cool Arduino Rocket Launcher lancering 3D Printed raketten uit mijn MakerBo
Vloer stofzuiger robot - gecontroleerd door Arduino met motor shield, met afgedrukt motor-wielen

Vloer stofzuiger robot - gecontroleerd door Arduino met motor shield, met afgedrukt motor-wielen

vloer stofzuiger robot. Versie #17. Poging om het eenvoudiger te maken.De robot wordt verplaatst door kleine gelijkstroommotoren ingebouwde motor-wielen op de 3D-printer worden afgedrukt:http://www.thingiverse.com/Thing:225576Onderdelen:Arduino met m
3D afgedrukt modulaire ondersteuning (Case) voor de Arduino en Raspberry Pi - CustoBlocks

3D afgedrukt modulaire ondersteuning (Case) voor de Arduino en Raspberry Pi - CustoBlocks

Bij het bouwen van elektronische projecten is het belangrijk om te beschermen tegen bewegende onderdelen. Op deze manier dat ze niet kunnen glijden en raken elkaar waardoor een korte circuit of zelfs schade.Ik heb gezien veel gevallen, sommige gerech
3D afgedrukt spuit pomp Arduino gebaseerd

3D afgedrukt spuit pomp Arduino gebaseerd

Please vote voor mijn project te zien meer DIY elektromechanische systemen!Ik had een idee dat het mogelijk is om een hoge kwaliteit, precisie-spuitpomp die met behulp van 3D gedrukte delen en diverse extra's off van eBay voor veel goedkoper dan wat
3D afgedrukt TARDIS w / Arduino

3D afgedrukt TARDIS w / Arduino

Dit instructable ontstond vervulling de project-eis van de Makecourse bij de Universiteit van Zuid-Florida (www.makecourse.com).Dit project had de klasse, met geen voorafgaande ervaring, gebruik van een 3D-printer, sommige Arduino code schrijven en s