A ta place,
je n'achèterai jamais un émetteur à 80 euros même s'il ressemble à celui d'une caisse sachant que tu auras un émetteur également étanche à 6 euros, mais chacun se le voit ...
Comme tu le remarques il y a plein de détail que tu vas avoir à résoudre pour venir au bout de ton système, mais je ne vais pas trouver la solution à chaque problème que tu soulèves : c'est avant tout ton projet .
Les mesures de distance par ultra-sons est un problème qui a été abordé par plein de personnes, t'as moyen à coup sûr de trouver des infos détaillées en cherchant sur le net .
Perso, j'ai jamais utilisé les ultra-sons .
Pour la hauteur qui varie avec la charge, tu peux tout à fait envisager faire au démarrage de la moto une mesure de hauteur quand elle est à peu près verticale en faisant par exemple la moyenne des hauteurs relevées par les deux capteurs .
Un dernier point avant que je te laisse surfer sur le net : si tes capteurs font un angle a avec la verticale, angle qu'il te faut connaître, après l'avoir mesuré de tes petites mains , si le capteur se situe du côté du centre de la courbe la distance mesurée d sera d=ho cos(b)/ cos(a-b) où ho est la hauteur du capteur la moto étant verticale , ho pouvant être calculé au départ, l'angle a étant connu, ce qui ne donne pas une équation très simple à résoudre ( trouver b , a étant connu ) . la distance initiale est do , avec b~0 donc do=ho/cos(a)
Une façon de faire est de calculer cos (b) /cos (a-b) pour toute une série de valeur de b ( par exemple b entre 0 et 60° après attention tu vas te raper les genoux ) et les mettre en mémoire dans le microcontrôleur avant même de faire tourner ta bécane .
Si le capteur est du côté opposé à la courbe alors d>do , alors d=ho*cos(b)/cos(a+b) ,
donc il te faut une autre série de nombres inscrits dans la mémoire du micro-contrôleurs cos(b)/cos(a+b) pour b entre 0 et 60° par exemple .
Conclusion dans ton petit programme, quand tu roules le capteur US permet au microcontrôleur de mesurer d , le microcontrôleur calcule d/do, si d<do le microcontôleur cherche dans le tableau formé des valeurs cos(b)/cos(a-b) la valeur la plus proche de d/do et en déduit une valeur approchée au degré de b , ce qui est pas si mal,
si d>do le microcontrôleur doit chercher dans le tableau formé des valeurs cos(b)/cos(a+b) celle qui est la plus proche de d/do .
Après il reste à envoyer la commande au servomoteur qui gère l'orientation des phares selon l'angle de roulis ,
sans oublier l'orientation des phares selon le tangage .
YapluKa !!
-----