Test du gyroscope MPU-6050
Le gyroscope est indispensable pour la réalisation d'un robot plus ou moins humanoïde... Il permet de connaître l'inclinaison du robot ou n'importe laquelle de ses parties, en réponse à une commande, ou sous l'effet d'une poussée extérieure.
Après avoir commandé et reçu ce composant (il n'est pas présent dans les kits Arduino), on vérifiera qu'il fonctionne parfaitement...
Composants
- MPU-6050.
- Fils de connexion.
- Broches reliées par paires. Découpez une barrette pour obtenir 4 paires de 2 broches solidaires.
Concernant le gyroscope et accéléromètre, quatre ports nous intéressent pour l'instant:
- VCC: Relié à l'alimentation.
- GND: Relié au sol.
- SCL (Serial Clock): Vitesse, relié à un port analogique.
- SDA (Serial Data): Données, relié à un port analogique.
SCL et SDA combinés envoient un signal représentant l'inclinaison horizontale et verticale et la vitesse.
Assemblage du circuit
Code source JavaScript
var five = require("johnny-five");
var board = new five.Board();
console.log("start...")
board.on("ready", function() {
console.log("ready...")
var gyro = new five.Gyro({
pins: ["I0", "I1"],
sensitivity: 0.67
});
gyro.on("change", function(err, data) {
console.log("X raw: %d rate: %d Y raw: %d rate: %d", this.x, this.rate.x, this.y, this.rate.y);
});
});
Les valeurs I0 et I1 représentent les ports digitaux A0 et A1, pour des raisons internes au framework JF.
Ce programme affiche des valeurs brutes sans intérêt en elles-mêmes, mais le but ici est juste d'obtenir ces valeurs. il faudra plus de code pour les interpréter... Le sujet d'un autre article.
Télécharger le code source. C'est le fichier gyro.js.
Dépannage
Une interruption est déclenchée dans le framework et il affiche un message d'erreur
Cela vient certainement d'une mauvaise connexion des fils qui font que le composant MPU-6050 n'est pas reconnu par le matériel, et donc l'objet five.gyro ne peut pas être créé.
Essayez de réaliser un montage plus solide en utilisant les broches pour mieux fixer le MPU-6050 sur la carte de prototype. Ce composant est destiné à être soudé, ce problème va alors disparaitre...
Rien ne se passe
Après l'affichage du message "Ready...", il ne se passe rien. C'est en fait plutôt un bon signe, il ne vous reste plus qu'à incliner la carte de prototype dans un sens ou dans l'autre pour activer le gyroscope et voir s'afficher après un délai des valeurs (autour de 170)...