3D imprimé Arduino Quadricopter (4 / 7 étapes)

Étape 4: I2C accéléromètre-Gyroscope le programme d’installation

TL; DR :

1. NE RACCORDEZ PAS DE 5V.

2. ne pas paniquer.

3. utiliser cette bibliothèque : https://github.com/jrowberg/i2cdevlib

4. ne pas souder votre planche en jusqu'à ce que vous avez exécuté un étalonnage.

Nous avons utilisé un MPU6050 de SparkFun, https://www.sparkfun.com/products/11028. Ceux-ci peuvent être trouvés sur Amazon pour seulement 10 $ et je l’ai sur la bonne parole qu’ils fonctionnent très bien, mais le câblage sera un peu différent sur les photos. Cette étape servira un fond générique et un tutoriel pour installer et utiliser un accéléromètre I2C, étant donné que la plupart de ces informations sont dispersées parmi les discussions du forum une douzaine.

Ce qui est I2C ?

Vous avez peut-être vu des conseils simples tels que des https://www.sparkfun.com/products/9269 avec des sorties analogiques pour X, Y et Z. Ceux de sens ; chaque sortie correspond à un axe de l’accéléromètre. Ensuite, vous voyez une carte I2C et paniquer un peu à l’intérieur. I2C est un standard de communication où l’Office communique beaucoup d’informations à l’aide d’impulsions logiques numériques au lieu de sorties analogiques. Le MPU6050 a 6-axes (3-gyroscope, accéléromètre 3) donc si ils étaient analogiques qu’ils utiliseraient tous les ports sur votre Arduino. La ligne du bas est l’Arduino envoie un signal de commande numérique au Conseil d’administration et se lit en informations numériquement les broches d’entrée.

Câblage :

Le câblage pour notre MPU6050 spécifique est la suivante. Notez le code de bibliothèque suppose que ce sont les intrants utilisés. Autres conseils seront similaires.

DMV -> 3.3V

GND -> sol

INT -> numérique 2

SCL -> A5

SDA -> A4

VIO -> sol

En cours d’exécution 5v à travers le Conseil peut et va casser, alors ne pas. Certains conseils de MPU6050 ont des régulateurs de tension qui devraient protéger, mais il ne vaut pas le risque. Si votre Conseil a une tige de AD0, il doit être connecté à la masse. Sur notre Conseil d’administration que du port VIO est connecté à un interne AD0, donc elle sert la broche AD0. Si le AD0/VIO est connecté au sol ou DMV détermine en fait l’adresse de mémoire que le jury est interfacé avec l’Arduino (0x68 ou 0x69). Si c’est déroutant, ne vous inquiétez pas, juste il fil à la masse. Si vous avez des problèmes, essayez VIO/AD0 de commutation du sol à la DMV.

Code :

Maintenant les choses deviennent un peu délicates. J’espère que vous avez un petit codage / jouer avec expérience de logiciel. Si vous n’avez pas, il suffit d’aller lentement et google tout ce que vous ne connaissez pas. Il y a beaucoup d’informations là-bas. Je vais essayer d’être aussi clair que possible, mais je ne peux pas couvrir tous problèmes

Une fois que vous avez votre MPU câblé à l’Arduino, allumez-le et télécharger ce code d’analyseur I2C : http://playground.arduino.cc/Main/I2cScanner#.Uxh...

Faites défiler vers le bas et copiez-collez le code dans une esquisse vide et exécutez-le. Ouvrez le moniteur série (outils -> Serial Monitor) et assurez-vous que vous êtes sur le port 9600 (en bas à gauche). C’est dans le code, mais vous n’a pas le lire quand même.

Si tout fonctionne, il doit trouver un périphérique I2C et vous donner une adresse de mémoire de 0x68 ou 0x69. Notez-le. Si vous obtenez des erreurs Vérifiez le câblage.

Maintenant, vous allez vouloir installer le code qui en réalité s’entretient avec l’accéléromètre/gyroscope. Il y a un tas de trucs là-bas mais j’ai trouvé qui fonctionne le mieux est celui https://github.com/jrowberg/i2cdevlib. Cliquez sur « Télécharger Zip », me souviens plus où vous mais il (probablement de bureau) et puis décompressez-le. Ouvrez le programme Arduino IDE. Maintenant, allez à esquisser -> Bibliothèque d’importation -> Ajout de bibliothèque. Vous devez ajouter le dossier I2Cdev et les dossiers de MPU6050 en tant que bibliothèques (ils sont sous Arduino dans le dossier).

Une fois qu’ils sont installés, vous devez ouvrir vers le haut de la MPU6050_DMP6 (il est sous MPU6050 -> exemples) fichier dans Arduino. Je suggère la lecture il (même si vous ne savez pas beaucoup de code), il est bien commenté et a une certaines options de comment elle génère les lectures de l’Office. Si vous avez obtenu à 0x69 du scanneur, vous devez décommenter une ligne en haut du code (après les #includes ; il suffit de lire les commentaires stupides) étant donné que la valeur par défaut est 0x68. Le programme devrait maintenant compiler.

Télécharger le code, ouvrir le port série (115200 cette fois) et suivez les instructions. Bravo, vous devriez faire fonctionner lectures du Conseil d’administration. S’il semble à la dérive dans un premier temps, ne vous inquiétez pas il a besoin environ 10sec d’être encore à venir à un repos. Aussi la sortie de lacet bouge (un peu), car il n’a aucun cadre de référence. La Commission utilise l’accéléromètre pour obtenir la gravité et de trouver « down » qui agissent comme une référence pour le pitch et de rouler. Certains conseils fantaisistes contiennent une boussole pour référence.

Maintenant, avant que vous bougez, vous aurez envie de calibrer votre planche. Trouver une surface plane et assurez-vous que votre Conseil est plat avec l’étiquette vers le haut.

Vous devez ensuite exécuter ce code de calibration de la main-dandy disponible en haut, grâce à Luis Ródenas. Encore une fois, la valeur par défaut il 0x68, mais vous pouvez changer cela. Assurez-vous que vous notez les valeurs de décalage qu'il vous donne. Vous pouvez et devez utiliser ceux-ci comme les offsets dans le code de MPU6050_DMP6 (et plus tard notre code quadcopter).

Vous avez maintenant un accéléromètre/gyroscope fonctionnel et utile. Je vous suggère maintenant vous passer du temps de jouer avec le code MPU6050_DMP6 et essayer les types de sorties différentes.

Articles Liés

3D imprimé Arduino Boe-Bot

3D imprimé Arduino Boe-Bot

Salut, cette instructable montre que comment construire un petit 3D imprimé Arduino Boe Bot qui est alimenté par les servos de 360 degrés. Ses inspiré par les robots Boe de parallaxe. Avec cela, vous avez deux façons de contrôler le bot soit avec un
3D imprimé Arduino réservoir

3D imprimé Arduino réservoir

Objectif et Description :Le but était de nous familiariser avec les choses contrôlés à distance et de travailler sur quelque chose que nous aimons. Richard est un grand fan des camions et des citernes, et c'était assez bien notre principale source d'
3D simple imprimé Arduino Robot

3D simple imprimé Arduino Robot

Qui ne veut pas construire un robot ? Comme un gamin, je rêvais de construire des robots. Désormais, toute personne de tout âge avec un peu de connaissances peut construire un robot simple ! Je vais vous montrer comment faire exactement cela.Le Robot
3D imprimé Arduino Robot

3D imprimé Arduino Robot

Cette instructable va vous montrer comment construire un robot autonome imprimé 3D de base pour environ 40 $.Cette instructable est principalement écrit pour mes étudiants à MakerLab NZ comme un guide pour la finition ou la réparation de leurs robots
3D imprimé Arduino de pompe seringue basé

3D imprimé Arduino de pompe seringue basé

Vous pouvez voter pour mon projet voir plus de systèmes électromécaniques DIY !J'ai eu une idée qu'il serait possible de faire une grande qualité, la pompe de seringue de précision à l'aide de pièces imprimées en 3D et divers extras hors d'eBay pour
3D imprimé Arduino Xylophone

3D imprimé Arduino Xylophone

Dans le cadre de mon projet final pour ma classe électronique, que j'ai décidé de créer un petit xylophone électronique avec l'Arduino Uno. Cette idée vient le désir d'avoir une sorte de mallet pratique définie pour percussions Maillet, comme moi.Le
Hexapoduino: 3D hexapod minuscule imprimé, Arduino contrôlée

Hexapoduino: 3D hexapod minuscule imprimé, Arduino contrôlée

il y a quelques temps j'ai découvert un Micro-hexapode imprimé 3d sur Thingiverse.J'ai commencé à travailler sur elle de la manière suivante :-créer de nouveaux accessoires/composants 3D imprimable-Explorer les possibilités de conduire ce hexapode.Ic
3D imprimé Arduino contrôlée Eggbot/Spherepot

3D imprimé Arduino contrôlée Eggbot/Spherepot

tout d'abord, ce projet était une combinaison de deux grandes ressources en ligne. Je cherchais dans la construction d'un eggbot pendant un certain temps et depuis j'ai eu beaucoup de balles de ping pong sur place après une de mes autres vidéos que l
3-d imprimé Arduino Robot Arm

3-d imprimé Arduino Robot Arm

J'ai fait ce bras parce que j'ai eu plusieurs professeurs de tige en me disant comment robotique kits étaient soit trop cher ou juste inintéressant. Alors j'ai pris un week-end et construit le premier couple d'itérations de ce projet. Je passe mon te
Machine de gravure laser CNC (production de Machine de gravure Laser de gaspillé à l’aide de CD-lecteur ou imprimante)

Machine de gravure laser CNC (production de Machine de gravure Laser de gaspillé à l’aide de CD-lecteur ou imprimante)

Etes-vous toujours inquiet au sujet quels cadeaux conviennent le mieux pour vos amis ? Vous voulez choisir quelque chose de créatif pour exprimer vos souhaits sincères ? Avec l'avancement de l'économie, des exigences plus élevées sur les cadeaux devi
TWISTER de DELTA : Une imprimante 3D bricolage n’importe qui peut faire (pour moins puis 400 dollars)

TWISTER de DELTA : Une imprimante 3D bricolage n’importe qui peut faire (pour moins puis 400 dollars)

L'imprimante 3d que je m'apprête à vous montrer comment construire n'est pas seulement une des imprimantes plus abordables, mais est également un du plus simpliste. N'importe qui peut construire le Deltatwister ! Vous n'avez pas besoin des pièces imp
Un contrôleur de bande de LED en réseau avec Arduino et Android

Un contrôleur de bande de LED en réseau avec Arduino et Android

je suis fascinant de l'effet de lumières depuis enfant et une fois trouvé sur Ebay un bon marché LED multicolore bande j'ai commencé à la recherche comment il, vous cherchez un Ethernet activé control qui fait les bandes un ensemble d'objet en réseau
Palm Arduino V3

Palm Arduino V3

j'ai concevoir et créer ce prototype de Palm Arduino V3 PCB, comme j'étais fatigué de recréer Arduino Compatible perf embarquer chaque fois j'ai prototypage un nouveau projet, surtout quand j'ai dû passer beaucoup de temps à retracer le câblage pour
Arduino DIY batterie Spot Welder

Arduino DIY batterie Spot Welder

Un Arduino Nano base Spot Welder pour le soudage de la batterieCette soudeuse Spot peut être utilisée pour souder les 18650 batteries. Il a besoin d'une source d'alimentation 7-12V (12V recommandé) et utilise une batterie de voiture 12V alimentation