[Conseil] PWM et ventilateur PC 4 fils

Bonjour tout le monde,

[CONSEIL] Vérifier vos cablages et leur contacts, 3 fois n'est pas de trop dans certains cas. XD

Je viens ici a la peche aux conseils. J'ai visiblement des problemes avec le controle d'un ventilateur 4 fils et mon arduino.

En effet ca fait 2 ou 3 jours que j'essaye en vain de réguler la vitesse de mon ventilateur. Toujours sans résultat et de plus en plus, je pense que je me perds dans mes recherches. Je vous explique d'abord comment je vois la chose et si je me suis planté de route je vous fais confiance pour me le faire savoir.

Donc pour poser le probleme (j'espere clairement :sweat_smile:) :

J'ai un Arduino Uno (qui fonctionne sans soucis) avec lequel je souhaite controler 4 ventilateurs Arctic F9 PWM Rev.2 (lien Arctic) (je n'ai pas retrouvé l'information mais il respecte la norme de branchement et de fonctionnement des ventilateurs 4 fils (lien vers ces spécifications).

Ayant cela en main, je peux deja savoir plusieurs choses et préparer le terrain:

Le ventilateur:

  • Fil jaune => +12V de mon alim
  • Fil noir => GND (commun au Arduino Uno
  • Fil vert => Tachymetre vers Arduino au travers de quelques composants pour pas envoyer du +12V sur le CI, inclus PullUp sur +12V
  • Fil bleu => Signal de controle PWM (25kHz), d'apres les spécifications le signal est envoyé en +5V (pour les ventilateurs récents en +3,3V?)

Avec Arduino, je suis en mesure d'envoyer un signal PWM +5V, je me dis que je devrais donc pouvoir le controler directement sans probleme. J'ai fait mes recherches et j'ai trouvé la lib PWM pour Arduin. La recherche Google "pwm frequency library arduino" et le premier lien renvoie vers un post du forum dans lequel vous trouverez des informations concernants cette lib et vous avez son lien de téléchargement en bas du post).

Jusque la je me dis je suis la bonne voie, j'importe ma lib dans mon IDE Arduino et j'ouvre l'exemple que je modifie le code rapidement (pas de potar sous la main) et je charge le code sur mon Uno. Je connecte ma led et sa resistance sur mon pin 9, met le tout sous tension et observe la del. Je constate que la luminosité change en fonction de mon code. Donc le PWM fonctionne correctement.

Je regarde plus en details et je constate que je peux changer la fréquence du signal PWM moyennant quelques lignes de codes. Je m'exécute avec du 25kHz (tant qu'a faire au tant mettre celle pour le ventilateur), jecompile, charge le nouveau bout de code dans le Uno et relance le test avec la del. Je ne contaste pas de changement de comportement (je n'ai pas changé le signal PWM transmis, juste sa vitesse), si j'ai bien tout suivi depuis le début, tout va bien avec ce comportement.

Je me dis que maintenant que je peux changer la luminosité de la del avec PWM, si j'alimente le ventilo et que je lui balance mon signal PWM sur son fil PWM, je devrais voir le ventilateur ralentir et accélerer de la meme facon que je voyais la luminosité de del augmenté ou réduire.

Et ben rien du tout... Le ventilateur tourne a vitesse maxi en permanence, n'ayant pas d'oscilloscope, je ne peux pas vérifier le signal de sortie PWM sur le Uno, mais si je connecte la del celle-ci réponds au signal.

Et c'est la que je commence a etre perdu, je fais le tour du web et je trouve bien quelques informations. Souvent les memes, que celles que j'ai deja trouvé. Mais je suis dans l'incapacité d'en trouver plus. Pas de schema, ou des videos ou on ne voit que le ventillateur, rien du code ou du circuit mis en oeuvre. Et plus je cherche d'informations, moins j'en trouve. Sur le forum je trouve bien un résultat qui pourrait etre positif, mais sur le forum allemand. Je comprends pas un mot d'allemand donc ca ne m'aide pas beaucoup.

Si un de vous connait des éléments de réponses, trouve un grossiere erreur dans mon analyse ou a tout simplement un conseil a donner. Je prends... j'en suis a 2 jours de galeres a chercher le pourquoi du comment et sans résultat avec ces ventilateurs. Je désespererai presque :grin:

Merci d'avance a ceux qui m'auront lu, je vous ai mis un beau pavé désolé.

EDIT: Résolu a force de chercher et de tourner en rond. J'ai viré tout mon cablage. Et je suis reparti comme quand je m'y suis mit (c'est a dire de 0). Je met sous tension tout ca, et miracle ca se met a fonctionner. Je suppose je dois avoir un cable defectueux me reste plus qu'a trouver lequel est-ce. Un gros pavé pour rien... Et un :stuck_out_tongue: