Étape 5: Axe Simple suivi : logiciel
J’ai été heureux de trouver une solution toute faite pour déterminer l’altitude/azimut de latitude/longitude sur les forums de l’Arduino. Si vous êtes intéressés par le fonctionnement du code, je recommande la lecture du fil, je tiens juste à préciser quelques points saillants.
Déterminer l’heure/lieu de GPS
J’ai écrit à ce sujet quelques fois maintenant à autres Instructables, donc pour ma propre santé mentale je vais juste vous diriger pour mon capteur de proximité GSM, l’étape 2 pour plus de détails.
J’ai juste eu à convertir la latitude et la longitude au type de données approprié et voila, code mowcius' cracha une élévation et azimut
Vérifier le logiciel
Vous souhaitez vérifier que les valeurs d’élévation et azimut que vous obtenez sont corrects, je recommande de timeanddateoutil pratique, voici un lien pour le Cap, mais vous serez en mesure de trouver votre propre ville.
Conversion d’élévation en Position du Servo
Si vous examinez de parcelle ci-dessus, vous verrez que l’altitude varie de 0° à environ 78° et puis de nouveau à 0°. Cet angle représente la « hauteur » du soleil au-dessus de l’horizon.
Puisque mon axe trackers de rotation est incliné nord-sud le servo doit passer de 0° (lever) à 90° (midi) et plus de 180° (coucher du soleil).
J’ai décidé que la meilleure façon d’y parvenir était à l’échelle de l’angle d’élévation (à l’aide de la fonction map()), ce qui signifiait que j’ai besoin calculer l’élévation de midi avance. Je fais ça en parcourant les heures décimales à intervalles de 6 minutes et en calculant la position du soleil pour chacun d’eux.
La seule question qui reste est de convertir le mouvement de 0°-90°-0 ° du soleil en mouvement de 0° à 180° pour le servo. Cependant, c’est facile, nous il suffit de diviser le jour à midi et faire deux mappages distincts.
Afficher l’état de charge
Il est utile de savoir si l’appareil est en charge ou non, heureusement, il y a une bibliothèque pour cela inclus. Ci-dessous un exemple de comment l’utiliser pour définir la variable d’État pour mon amber est dirigé
Voyants lumineux clignotant
J’ai utilisé mon code de mon précédent projet gérer clignotant/mettre à jour les LEDS