Auteur Sujet: PMW et timers ... pour débutant  (Lu 18198 fois)

simontpellier

  • Full Member
  • ***
  • Messages: 115
    • Voir le profil
PMW et timers ... pour débutant
« le: mai 31, 2019, 09:42:45 pm »
Bonsoir,

Ce site est décidément une mine ! Les perspectives que j'y ai entrevues sont... exaltantes ! Merci d'avance à tous les auteurs. Et à ceux des fils et articles que j'ai déjà exploités.

Pour l'instant, mon préalable à tout projet est de disposer d'une alimentation fiable et agréable.
Et j'y suis... presque. Par la grâce de la PWM.
Ayant compris pourquoi nos motrices n'aiment pas trop le 490Hz standard des cartes Arduino, j'ai plongé dans la littérature sur les timer. Assez pour comprendre les tenants et aboutissants... mais sans aller jusqu'à ouvrir le datasheet du processeur (comme parfois recommandé) !

Je suis sur un Arduino Mega. Pour obtenir une PWM à 4Mz ou 31 Kz, j'ai donc intégré à mon code l'une OU l'autre des deux commandes suivantes, opérant sur le timer 3 :   
TCCR3B = TCCR3B & B11111000 | B00000010;
TCCR3B = TCCR3B & B11111000 | B00000001;   

et j'aimerais une explication de ce que je constate, sur une motrice Jouef HO (+/- 1990)

- par rapport à la PWM 490 hz, pas de différence d'un point de vue sonore. (mais j'entends mal les aigus)
- pas de différence non plus en ce qui concerne la capacité à tenir un ralenti très lent.
- mais la grosse différence par rapport au 490 (que ce soit en 4 Mz ou 31kHz) est que la motrice "décolle" beaucoup plus tard : avec un rapport cyclique autour de 30% dans le premier cas, plus ou moins le double pour les hautes fréquences de PWM.

J'imagine que cela tient aux fronts de montée/extinction du signal ? Mais au delà de l'explication théorique j'aimerais savoir si c'est "normal" et surtout, s'il y a une solution car dans l'état, la plage d'utilisation des 256 valeurs de PWM devient fort réduite et la conduite moins agréable.

J'espère ne pas avoir ouvert un sujet intempestivement mais une recherche consciencieuse ne m'a pas permis de trouver une discussion traitant de cette question.
Merci par avance de vos commentaires !

Philippe


trimarco232

  • Sr. Member
  • ****
  • Messages: 345
    • Voir le profil
Re : PMW et timers ... pour débutant
« Réponse #1 le: septembre 05, 2019, 09:05:39 am »
Bonjour,
réponse un peu tardive ...
front montant, très certainement. A haute fréquence le moindre retard peut avoir un impact important sur la durée active de la période. Cela dépend de 2 facteurs :
- la vitesse de commutation de l'amplificateur (c'est quoi ?)
- des déformations en ligne : câbles, rails, nature selfique du moteur

selon les mécaniques, les problèmes de bruit et de ralenti ne peuvent pas être éliminés magiquemet par le pwm

aux faibles allures, une technique consiste à élever la tension (->18v) pour débloquer les rotors récalcitrants (c'est d'ailleurs pour ça que les ralentis sont meilleurs en dcc)

le timer3, de mémoire, est un timer 16 bits : on peut aller au-delà de 256 valeurs

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2217
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : PMW et timers ... pour débutant
« Réponse #2 le: septembre 05, 2019, 10:15:37 am »
Un moteur est une self, son impédance augmente avec la fréquence et le courant diminue en rapport.

Un exemple de réalisation par Thierry est disponible dans :

http://locoduino.org/spip.php?article224

Les fréquences disponibles sont de 30, 122, 244, 488, 976, 3906 et 31250 Hertz. Ce qui permet de tester la valeur la plus appropriée.

Le 4Mz me laisse dubitatif.
Cordialement