Bonjour à tous,
je voudrais savoir s'il est possible de déterminer l'équation (ou alors le type) de la fonction f représentée sur l'image.
Il s'agit des rotations par minute d'un servomoteur à rotation continue (-47 RPM à +47 RPM) en fonction de la durée d'un signal (1.3ms à 1.7ms) qu'on lui envoie régulièrement. Pour les RPM (rotations/minutes), les valeurs positives correspondent à une rotation sens horaire et les négatives à une rotation sens antihoraire).
La seule valeur exacte est (1.5, 0), les autres sont des mesures, mais prenons (1.3, +47) ainsi que (1.7, -47) et faisons comme si le servomoteur était parfait de façon à obtenir une symétrie: f(x) = -f(1.5-x)
Merci d'avance.
On pourrait penser à utiliser la fonction th x dont la courbe représentative ressemble à la présente courbe.
En agrémentant cette fonction de divers coefficients bien choisis, peut-être serait-il possible de faire coller les deux courbes.
Merci.
Tout ça m'a l'air bien compliqué...
Est-ce que ça simplifie si on ne considère qu'un seul des deux côtés (sens antihoraire par exemple) en allant de 0 à 100 au lieu de 750 à 850?
J'ai posté sans faire exprès...
Est-ce que c'est moins compliqué comme ça?
C'est logarithmique ou pas du tout? Je suis mauvais en analyse.
Points connus: (seul le (0, 0) est exact)
0, 0
5, 5
10, 11.7
15, 18.3
20, 24.5
25, 30.5
30, 35.5
35, 38
40, 40.5
45, 42.2
50, 43.5
55, 44
60, 45
65, 45.3
70, 46
75, 46.2
80, 46.4
85, 46.7
90, 46.7
95, 47
100, 47
Tu sais qu'Excel fait des approximations sur des nuages de points par la méthode des moindre carrés ?
la fonction logarithme ne colle pas super bien :
la meilleure équation du troisième degré (avec un très bon coefficient R²) :
Merci beaucoup pour cette réponse. Ça m'a bien aidé.
Je m'aperçois que j'ai donné des valeurs x en unités de 2µs (5, 10, 15, 20 --> unité qu'on utilise pour programmer l'impulsion de mes servos)... au lieu des ms initiales, donc 0.01, 0.02, 0.03...
Ça change quelque chose à l'équation. J'obtiens y = 8692.430x3-4590.604x2+803.980x avec un R2 de 0.9939.
Si on veut revenir à la première équation, on peut le faire avec des valeurs absolues et en utilisant les symétries...
8692.430*(|x-1.5|)3 - 4590.604*(|x-1.5|)2 + 803.980*|x-1.5| --> retrouver la même courbe qu'avant, mais en prenant en compte le fait qu'on part de 1.5 et non 0. Ceci nous donnerait la valeur absolue du nombre de RPM.
On peut retrouver le signe indiquant le sens de rotation en multipliant par (-|x-1.5|)/(x-1.5) car cela donnera -1 si x>1.5 et +1 si x<1.5
Donc:
y = [8692.430*(|x-1.5|)3 - 4590.604*(|x-1.5|)2 + 803.980*|x-1.5|] * (-|x-1.5|)/(x-1.5)
Après, c'est du bricolage, mais tant que ça fonctionne... Je viens de prédire quelques RPM avec succès.
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :