Offline
Newbie
Karma: 0
Posts: 5
|
 |
« on: April 06, 2011, 12:21:48 pm » |
Bonjour,
Je suis entrain de faire un ventilateur qui puisse réguler automatiquement sa vitesse en fonction de la température du milieu. Pour cela, une thermistance CTN détermine la température qui correspond à une certaine valeur de résistance. Les températures extrêmes que je me suis fixées sont 15 et 35 °C. Pour cette plage de température j'ai en entrée de la arduino sur une broche analogique une tension Ue qui varie entre entre 1.52 et 4.7 V . Plus la température sera elevée, plus la tension Ue sera grande donc plus le ventilateur tournera vite. J'ai essayé de faire un programme qui traite l'acceleration du moteur en fonction de la temperature. Le moteur tourne mais ne sa vitesse ne varie pas en fonction je la temperature.
Voici le programme
float r; int rth=0 ; //broche analogique sur laquelle est branchée la thermistance int mot10=10 ; int mot9=9; int mot3=3; //broche sur laquelle est branché le moteur
void setup() { pinMode(rth,INPUT) ; pinMode(mot10,OUTPUT) ; pinMode(mot9,OUTPUT); pinMode(mot3,OUTPUT); }
void loop() { r=analogRead(rth) ; //Capte la valeur de la thermistance
//Pour une température inférieure à 15°C if(r<311) { analogWrite(mot10,0) ; //le moteur ne tourne pas analogWrite(mot9,0); analogWrite(mot3,0); }
//Pour une température comprise entre 15 et 20°C if (r<368 &&r>311) { analogWrite(mot10,64) ; //le moteur tourne à 25% analogWrite(mot9,0); analogWrite(mot3,255); }
//Pour une température comprise entre 20 et 25°C if (r>368 && r<450) { analogWrite(mot10,127) ; //le moteur tourne à 50% analogWrite(mot9,0); analogWrite(mot3,255); }
//Pour une température comprise entre 25 et 30°C if (r>450 && r<579) { analogWrite(mot10, 191) ; //le moteur tourne à 75% analogWrite(mot9,0); analogWrite(mot3,255); }
//Pour une température supérieure à 30°C if(r>579) { analogWrite(mot10,255) ; //le moteur tourne à pleine vitesse analogWrite(mot9,0); analogWrite(mot3,255); } }
Merci de votre aide
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 3
|
 |
« Reply #1 on: April 06, 2011, 01:02:42 pm » |
Ce sujet n'a pas déjà été posté ?
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 5
|
 |
« Reply #2 on: April 06, 2011, 03:28:45 pm » |
Oui je l'ai deja posé mais il était bloqué. Personne ne pouvait repondre.
|
|
|
|
|
Logged
|
|
|
|
|
France
Offline
Edison Member
Karma: 12
Posts: 1800
There is an Arduino for that
|
 |
« Reply #3 on: April 07, 2011, 01:35:41 am » |
int mot10=10 ; int mot9=9; int mot3=3; //broche sur laquelle est branché le moteur
....
analogWrite(mot10,64) ; //le moteur tourne à 25% analogWrite(mot9,0); analogWrite(mot3,255);
....
Peut être ai-je raté quelque chose mais là je ne comprends pas comment est piloté le moteur. Un petit bout de schéma (ou un lien vers un schéma) pour expliquer comment est câblé l'étage de commande du moteur.
|
|
|
|
|
Logged
|
|
|
|
|
bussy st george
Offline
Jr. Member
Karma: 0
Posts: 65
|
 |
« Reply #4 on: April 07, 2011, 06:02:23 am » |
|
|
|
|
|
Logged
|
Windows Certif MCSA. Electronicien. Arduino Mega 2560. 68hc11F1, 68705U3, 68705P3. Perl,Java,ABAP,VB,VBS,VBnet,Php,Asp,Css,C,C++,C#,MySql,SQL.
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 5
|
 |
« Reply #5 on: April 07, 2011, 07:12:04 am » |
Bonjour,
J' ai 3 broches de sortie vers le pont H. Une qui renvoie des valeurs analogwrite variables, une autre qui envoie analogwrite(0) , et la derniere analogwrite(255). J'utilise seulement un sens de rotation du moteur.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 0
Posts: 73
|
 |
« Reply #6 on: May 18, 2011, 01:08:40 pm » |
Attention quand même, la temperture derriere un ventilo est la même que dans la piece. Il ne brasse que la même air, en revanche si tu veux refroidir une piece qui est plus chaude que l ambiant ça marche.
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Newbie
Karma: 0
Posts: 25
Arduino rocks
|
 |
« Reply #7 on: June 10, 2011, 04:26:44 am » |
Bonjour, Je me greffe sur le poste pour savoir si il était possible de réguler la vitesse de rotation de deux ventilateurs ou de brasseur d'air du commerce (220-240V~~50Hz/45W) en fonction de la température ambiante avec une carte arduino? Merci pour votre aide
|
|
|
|
|
Logged
|
|
|
|
|
|
|
|