Table des matières:
- Étape 1: Matériel requis:
- Étape 2: connexion matérielle:
- Étape 3: Code pour le suivi des mouvements:
- Étape 4: Candidatures:
Vidéo: Suivi de mouvement avec MPU-6000 et Raspberry Pi : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Le MPU-6000 est un capteur de suivi de mouvement à 6 axes qui intègre un accéléromètre à 3 axes et un gyroscope à 3 axes. Ce capteur est capable de suivre efficacement la position et l'emplacement exacts d'un objet dans le plan tridimensionnel. Il peut être utilisé dans les systèmes qui nécessitent une analyse de position avec la plus haute précision.
Dans ce tutoriel, l'interfaçage du module capteur MPU-6000 avec raspberry pi a été illustré. Pour lire les valeurs d'accélération et d'angle de rotation, nous avons utilisé raspberry pi avec un adaptateur I2c. Cet adaptateur I2C rend la connexion au module capteur facile et plus fiable.
Étape 1: Matériel requis:
Les matériaux dont nous avons besoin pour atteindre notre objectif comprennent les composants matériels suivants:
1. MPU-6000
2. Framboise Pi
3. Câble I2C
4. Bouclier I2C pour framboise pi
5. Câble Ethernet
Étape 2: connexion matérielle:
La section de raccordement matériel explique essentiellement les connexions de câblage requises entre le capteur et le raspberry pi. Assurer des connexions correctes est la nécessité de base tout en travaillant sur n'importe quel système pour la sortie souhaitée. Ainsi, les connexions requises sont les suivantes:
Le MPU-6000 fonctionnera sur I2C. Voici l'exemple de schéma de câblage, montrant comment câbler chaque interface du capteur.
Prête à l'emploi, la carte est configurée pour une interface I2C, en tant que telle, nous vous recommandons d'utiliser cette connexion si vous êtes par ailleurs agnostique.
Tout ce dont vous avez besoin, c'est de quatre fils ! Seules quatre connexions sont nécessaires pour les broches Vcc, Gnd, SCL et SDA et celles-ci sont connectées à l'aide d'un câble I2C.
Ces connexions sont illustrées dans les images ci-dessus.
Étape 3: Code pour le suivi des mouvements:
L'avantage d'utiliser raspberry pi est qu'il vous offre la flexibilité du langage de programmation dans lequel vous souhaitez programmer la carte afin d'interfacer le capteur avec elle. Exploitant cet avantage de cette carte, nous démontrons ici sa programmation en python. Python est l'un des langages de programmation les plus simples avec la syntaxe la plus simple. Le code python pour MPU-6000 peut être téléchargé depuis notre communauté GitHub qui est Dcube Store
En plus de la facilité des utilisateurs, nous expliquons le code ici également:
Comme première étape de codage, vous devez télécharger la bibliothèque SMBus dans le cas de python car cette bibliothèque prend en charge les fonctions utilisées dans le code. Donc, pour télécharger la bibliothèque, vous pouvez visiter le lien suivant:
pypi.python.org/pypi/smbus-cffi/0.5.1
Vous pouvez également copier le code de travail à partir d'ici:
importer smbus
heure d'importation
# Obtenir le bus I2C = smbus. SMBus(1)
# Adresse MPU-6000, 0x68 (104)
# Sélectionnez le registre de configuration du gyroscope, 0x1B(27)
# 0x18(24) Plage de pleine échelle = 2000 dps
bus.write_byte_data (0x68, 0x1B, 0x18)
# Adresse MPU-6000, 0x68 (104)
# Sélectionnez le registre de configuration de l'accéléromètre, 0x1C(28)
# 0x18(24) Plage de pleine échelle = +/-16g
bus.write_byte_data (0x68, 0x1C, 0x18)
# Adresse MPU-6000, 0x68 (104)
# Sélectionnez le registre de gestion de l'alimentation 1, 0x6B (107)
# 0x01(01) PLL avec référence xGyro
bus.write_byte_data (0x68, 0x6B, 0x01)
temps.sommeil(0.8)
# Adresse MPU-6000, 0x68 (104)
# Lire les données de 0x3B (59), 6 octets
# Accéléromètre X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
données = bus.read_i2c_block_data (0x68, 0x3B, 6)
# Convertir les données
xAccl = données[0] * 256 + données[1]
si xAccl > 32767:
xAccl -= 65536
yAccl = données[2] * 256 + données[3]
si yAccl > 32767:
yAccl -= 65536
zAccl = données[4] * 256 + données[5]
si zAccl > 32767:
zAccl -= 65536
# Adresse MPU-6000, 0x68 (104)
# Lire les données à partir de 0x43 (67), 6 octets
# Gyromètre X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
données = bus.read_i2c_block_data (0x68, 0x43, 6)
# Convertir les données
xGyro = données[0] * 256 + données[1]
si xGyro > 32767:
xGyro -= 65536
yGyro = données[2] * 256 + données[3]
si yGyro > 32767:
yGyro -= 65536
zGyro = données[4] * 256 + données[5]
si zGyro > 32767:
zGyro -= 65536
# Données de sortie à l'écran
print "Accélération dans l'axe X: %d" %xAccl
print "Accélération dans l'axe Y: %d" %yAccl
print "Accélération dans l'axe Z: %d" %zAccl
print "Axe X de Rotation: %d" %xGyro
print "Axe Y de Rotation: %d" %yGyro
print "Axe Z de Rotation: %d" %zGyro
Le code est exécuté à l'aide de la commande suivante:
$> python MPU-6000.py gt; python MPU-6000.py
La sortie du capteur est indiquée dans l'image ci-dessus pour la référence de l'utilisateur.
Étape 4: Candidatures:
Le MPU-6000 est un capteur de suivi de mouvement, qui trouve son application dans l'interface de mouvement des smartphones et tablettes. Dans les smartphones, ces capteurs peuvent être utilisés dans des applications telles que les commandes gestuelles pour les applications et le contrôle du téléphone, les jeux améliorés, la réalité augmentée, la capture et la visualisation de photos panoramiques et la navigation piétonne et automobile. La technologie MotionTracking peut convertir les combinés et les tablettes en de puissants appareils intelligents 3D pouvant être utilisés dans des applications allant de la surveillance de la santé et de la condition physique aux services basés sur la localisation.
Conseillé:
Suivi du mouvement de l'œil humain : 6 étapes
Suivi du mouvement de l'œil humain : ce projet vise à capturer le mouvement de l'œil humain et affiche son mouvement sur un ensemble de lumières LED placées en forme d'œil. Ce type de projet pourrait potentiellement avoir de nombreuses utilisations dans le domaine de la robotique et plus précisément de l'humain
Moteur en mouvement avec suivi oculaire : 8 étapes
Moteur en mouvement avec suivi oculaire : Actuellement, les capteurs de suivi oculaire sont plus courants dans divers domaines, mais commercialement, ils sont plus connus pour les jeux interactifs. Ce tutoriel n'a pas la prétention d'élaborer les capteurs car il est très complexe et du fait de son utilisation de plus en plus courante le
Kits de voiture de suivi de robot intelligent bricolage Suivi de voiture photosensible: 7 étapes
DIY Smart Robot Tracking Car Kits Tracking Car Photosensible: Design by SINONING ROBOTVous pouvez acheter à partir de la puce de suivi du robot carTheoryLM393 comparer les deux photorésistances, lorsqu'il y a une LED de photorésistance latérale sur BLANC le côté du moteur s'arrêtera immédiatement, l'autre côté du moteur tourner, de sorte que
QeMotion - Suivi de mouvement pour chaque casque ! : 5 étapes (avec photos)
QeMotion - Suivi de mouvement pour chaque casque ! : Présentation : Cet appareil vous permet d'utiliser le mouvement de votre tête pour déclencher des événements dans pratiquement n'importe quel jeu vidéo. Il fonctionne en suivant le mouvement de votre tête (ou de votre casque) et en déclenchant des pressions sur le clavier pour certains mouvements. Alors votre comp
Suivi de mouvement 3D Tfcd grâce à la détection capacitive et à la sortie LED : 6 étapes (avec images)
Suivi de mouvement 3D Tfcd grâce à la détection capacitive et à la sortie LED : dans cette instruction, il est expliqué comment le mouvement d'une main peut être suivi dans un espace 3D en utilisant le principe de la détection capacitive. En changeant la distance entre une feuille d'aluminium chargée et votre main, la capacité du condensateur va varier