Contrôler un moteur pas à pas avec arduino pour suivi solaire

Bonjour à vous. Je travaille sur un projet qui demande un suivi solaire automatisé mais je suis vraiment une grand débutant sur arduino. J'aimerais savoir comment contrôler la rotation de mon moteur pas à pas suivant une fonction (variation de la hauteur du soleil par exemple).

Merci

Pour connaître l'angle minimum que peut faire un moteur pas à pas il faut connaître le nombre total de pas en n'oubliant pas de prendre en compte le réducteur mécanique s'il y en a un.
angle mini = 360/ nombre total de pas.
Ensuite connaissant la position précédente il suffit d'envoyer le nombre de pas corespondant à l'angle à exécuter pour atteindre la nouvelle position. C'est des calculs simples à préparer sur le papier, arduino ou autres n'ont rien à voir dans ce calcul.

Un moteur pas à pas seul ne sera pas suffisant : il peut y avoir des glissements de pas imprévisibles et incontrolés sous l'effet d'une rafale de vent par exemple.
Il faut pouvoir récupérer la position exacte des deux axes (azimut et hauteur) avant d'envoyer un ordre de rotation.
Ce peut être fait avec un potentiomètre en bout de chaque arbre.

Tu peux aussi remplacer les moteurs "individuels" par des servomoteurs qui ont la particularité d'avoir en interne un asservissement de position.

La première solution demande un investissement dans la mécanique, la seconde risque (AMHA) de consommer davantage et de faire baisser le rendement.

Merci pour ta réponse je comprends un peu mieux. Mais je n’ai pas bien compris ce passage :

“Ce peut être fait avec un potentiomètre en bout de chaque arbre.”
C’est une sorte de boucle fermée c’est ça? Si oui, ça doit être possible avec des photorésistances non?

Oui et non

Ce que je vais exposer est mon opinion: Je suis persuadé qu'un vrai asservissement sur le soleil est inutile.

  1. un asservissement continu risque d'être un gouffre à kilowatt.
  2. Cela fait plusieurs millions d'années que la terre tourne autour du soleil et quelques centaines d'années qu'on sait calculer la position de la terre par rapport au soleil --> je ne vois pas pourquoi cela changerait maintenant.
    Comment tu fais avec les photodiode par temps de brouillard, de ciel couvert ou de pluie ?

Ma perception des choses est que l'on fixe un intervalle de temps pour le repositionnement. Par calcul on connait la position du soleil et on envoi un angle d'écart aux moteurs azimut et hauteur pour les repositionner.
Pour cela je vois deux possibilités : le servomoteur où le moteur pas à pas.

Servo moteur : on lui envoie une position absolue à tenir exemple 25°. S'il y a un gros coup de vent le panneau va bouger de quelques degrés mais l'asservissement du servo moteur va intervenir pour qu'il tienne les 25 ° de consigne.

Moteur pas à pas: on lui envoie un nombre de pas à faire. S'il y a eu un gros coup de vent le moteur va glisser d'une quantité inconnue --> le système perd sa référence.
Quand je parlais de potentiomètre en bout d'arbre c'est pour s'assurer de la position exacte avant de calculer le nombre de pas à faire.

Maintenant j'attire ton attention sur deux points.
Point n=1
A partir de quel écart par rapport à la position idéale est-il utile de repositionner ?
On part d'une surface exposée au soleil --> pour que l'efficacité soit maximale il faut qu'elle soit perpendiculaire (orthogonale) aux rayons du soleil. S'il y a un angle "a" d'écart la perte sera égale à cos(a) sur les deux axes soit cos(a)*cos(b).
Si l'écart est de 10 degrés qu'elle est la valeur de cos(10) -->0,985 soit -1,5%, si c'est sur les deux axes c'est -3 %.
Si on tient compte que le débattement principal est en azimut (max ~240 degrés) et qu'en hauteur il est 3 fois plus faible (max~60°) à quelle fréquence faut-il faire le repositionnement ?

Point 2
Il y a deux types de rayonnements : le direct et le diffus. Le diffu est provoqué par la dispersion des rayons dans l’atmosphère. Un asservissement de position sur la soleil améliorera le direct et n'aura quasiment pas d'influence sur le diffu qui par définition provient de multiples directions. Selon les auteurs le diffu est loin d'être négligeable.

Conclusion :
Si c'est un travail imposé tu n'as pas le choix il faut faire le projet qu'on te demande, si c'est un projet personnel je te conseille de bien réfléchir et de te documenter.
Je t'ai exposé ma vision mais je n'ai pas l’outrecuidance de penser que je suis infaillible dans mes raisonnements.

En cherchant 'arduino sun position', on trouve des choses :