Calcul complexe pour servo moteur

Salut.
J'ai un projet à finir la semaine prochaine et j'ai un calcul compliqué à mettre dans mon programme. Le problème c'est que je m'initie seulement récemment au langage C sur Arduino. Donc je ne comprend pas tout.
Voilà... Je dois programmer un servomoteur... Quand on appuie sur un bouton, le moteur doit tourner de 0 à 90° et s'arrêter. Quand on rappuie sur le bouton le moteur doit tourner de 90 à 0°. Cependant, ce servomoteur sera placé devant un système optique, un polariseur. En sortie du polariseur, on obtient une courbe du type I = Io x cos ² (alpha). Mais on souhaite obtenir une droite linéaire du type Y=(yx/(cos ² (alpha))). Donc en réalité, quand je demande au servomoteur de tourner de 50° par exemple, il doit tourner de 45° par exemple. Mon prof m'a dit qu'il fallait insérer une boucle FOR, insérer la formule de Y, ainsi que les valeurs de mes courbes mais je ne sais pas comment m'y prendre.
Est ce que quelqu'un peut m'aider ? Je sais qu'il est compliqué mais j'ai simplement besoin de quelques exemples...

Merci d'avance. :blush:

Pas besoin de mémoriser en tableau tous les points de ta fonction.

Tu peux calculer l'angle de rotation du moteur en fonction de l'angle retourné par le capteur lorsque tu en as besoin, avec une formule définissant la conversion à faire.