Étape 3: Le Code !
Nous avons utilisé le capteur Adafruit bibliothèque et la bibliothèque de HMC5883 capteur pour le capteur de la boussole et la bibliothèque TinyGPS ++ pour le Module GPS NEO - 6 m.
Nous ne copiez et collez le code dans le mode d’emploi, parce que nous avons joint le fichier de code source, mais nous irons dans un couple des lignes plus intéressants dans le code.
Car le tx/rx du Module GPS doivent être inversées lorsque branché à l’Arduino, nous déclarons ces broches en ligne 14. Donc, essentiellement, que le fil TX du GPS a besoin d’aller à la RX épingle sur l’Arduino et le fil RX du GPS a besoin d’aller à la broche TX sur l’Arduino.
static const int RXPin = 8, TXPin = 9;
La valeur par défaut le taux en bauds pour NEO - 6m est 9600. Donc, nous nous sommes assurés de déclarer cela à la ligne 15.
static const uint32_t GPSBaud = 9600;
Le Module compas magnétique doit être calibré pour votre emplacement !
J’ai inclus des instructions plus détaillées sur la façon de le faire dans les commentaires de code.
// Once you have your heading, you must then add your 'Declination Angle', which is the 'Error' of the magnetic field in your location.<br> // Find yours here: <a href="http://www.magnetic-declination.com/"> http://www.magnetic-declination.com/ </a> // Now convert your degrees/minutes/seconds to decimal form. // then convert the decimal form to radians. // Mine is: 3* 18' E, which is +3.3 Degrees, or (which we need) 0.0575959 radians // If you cannot find your Declination, comment out these two lines, your compass will be slightly off. float declinationAngle = 0.0575959; heading += declinationAngle;
Pour trouver votre déclinaison magnétique vous goto à la liaison dans le code ci-dessus.
Une fois que vous avez votre déclinaison en degrés et Minutes vous devez convertir en forme décimale. Ce que vous pouvez faire ici : http://www.rapidtables.com/convert/number/degrees-...
Maintenant que vous avez votre déclinaison magnétique qui pouvant être converties en Radians la bibliothèque Adafruit requis. Cela peut être fait facilement par google : https://www.google.com/webhp?q=1%20degrees%20to%20...
Assurez-vous que vous modifiez la ligne 140 à la déclinaison correcte en radians pour votre emplacement !
Nous avons veillé à commenter que le code le meilleur pourrait afin de vous permettre de tout configurer et personnaliser votre configuration.
Je vous suggère fortement de que vous jetez un oeil à l’étape de référence de ce Instructable et lire la suite sur la rubrique localisation et la bibliothèque TinyGPS ++ !