Manipuler les données lues sur un joystick

Bonjour,

D'un côté je lis un potentiomètre d'un joystick de PS4 et de l'autre j'ai un servo perso avec comme potentiomètre de recopie un AS5600...

Le potentiomètre varie de 0 à 1024 (esp32) mais avec un neutre au dessus de 600 et la lecture de l'as5600 me donne d'un côté du manche environ 4 fois plus que de l'autre.

AS5600 mal centré avec l'aimant peut être...

Sur les émetteurs RC on a un fonction qui permet de manipuler la course avec un petit débattement vers le centre et de plus en plus en s'éloignant avec 5 points de référence.

Y a une bibliothèque quelque part pour ce genre de manip ?

J'envisage si y a pas, de définir le neutre comme référence 512 puis de mapper chaque côté et faire de même côté as5600.
Une meilleure idée ?
Comment mathématiquement faire pour que la valeur du potentiomètre varie de manière non linéaire

Multiplier par la fonction non linéaire souhaitée.

Un polynôme d'interpolation de Newton pourrait faire l'affaire

Merci pour vos deux réponses.
Faire un programme utilisant un polynôme d'interpolation de Newton me parait très au dessus de mes capacités.
Glouglou m'a donné
https://yahiko.developpez.com/tutoriels/introduction-interpolation/?page=page_7

https://python.developpez.com/actu/339756/Mathematiques-et-Python-moins-Developper-et-reduire-un-polynome-d-interpolation-de-Newton-a-l-aide-de-la-classe-Polynome-un-billet-blog-de-Denis-Hulo/ à première vue semble plus complet mais en python.

Prendre cinq points serait-il suffisant (le 3 étant le neutre) ou faudrait-il passer à 7 ?

Parce que au passage, tu aimerais que la courbe de réponse ait quelle forme?

Si vous voulez une fonction affine par morceaux (des droites entre les points) c’est beaucoup plus simple…

Pour un débattement uniforme du joystick avoir un déplacement du potentiomètre de recopie faible au voisinage du neutre et fort vers les extrémités

Oui mais moins joli et alors faudrait augmenter le nb de pts.

https://github.com/luisllamasbinaburo/Arduino-Interpolation/tree/master ne serait-ce pas ce que je cherche ?

xValues pour les valeurs du potentiomètre et yValues pour celles désirées en recopie ?

à vous de nous le dire :slight_smile:
c'est effectivement une bibliothèque d'interpolation

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.