Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

ventilateur régulé



  1. #1
    ftrap

    ventilateur régulé

    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 normalement . J'ai essayé de faire un programme qui traite l'acceleration du moteur en fonction de la temperature. J'aimerais savoir ce que vous en pensez ? Si je suis sur la bonne piste ou pas.

    Voici 2 programmes ( ils ne sont pas long, c'est toujours les memes instructions)

    Premier programme sans acceleration du moteur entre deux intervalles de temperatures

    // ventilo

    int x;
    int motorPin=10;
    int resistance=0;

    void setup()


    {
    pinMode (resistance,INPUT);
    pinMode (motorPin,OUTPUT);
    }

    void loop()
    {

    x=analogRead(resistance); Mesure de la tension a l 'entree qui varie en fonction de la temperature. x prend les valeur 0 à 1023


    //Température moins de 15 degrees
    if(x<311 && x>0) // x=311 correspond a T=15°C
    {
    analogWrite(motorPin,0);
    }


    //Température entre 15 et 20 degrees
    if(x>=312 && x<368 )
    {
    analogWrite(motorPin,78);
    }


    //Température entre 20 et 25 degrees
    if(x>369 && x<450 )
    {
    analogWrite(motorPin,92);
    }


    //Température entre 25 et 30 degrees

    if(x>451 && x<579 )
    {
    analogWrite(motorPin,112);
    }


    //Température entre 30 et 37 degrees
    if(x>580 && x<970 )
    {
    analogWrite(motorPin,144);
    }


    //Température plus de 37 degrees
    if(x>971 )
    {
    analogWrite(motorPin,242);
    }

    }


    Deuxieme programme avec acceleration du moteur entre deux intervalles de temperatures

    // ventilo

    int x;
    int motorPin=10;
    int resistance=0;

    void setup()


    {
    pinMode (resistance,INPUT);
    pinMode (motorPin,OUTPUT);
    }

    void loop()
    {

    x=analogRead(resistance); // Mesure de la tension a l 'entree qui varie en fonction de la temperature. x prend les valeur 0 à 1023

    //Température moins de 15 degrees
    if(x<311 && x>0)
    {
    analogWrite(motorPin,0);
    }


    // acceleration quand température est de 15 degrees

    if(x>300 && x<320) //x=311 correspond a une temperature de 15°C. J'ai pris un intervalle de valeurs qui englobe 311.
    {
    for (int i=0;i<=78;i++)
    {
    analogWrite(motorPin,i);
    delay(10);
    }
    }

    //Température entre 15 et 20 degrees
    if(x>=320 && x<368 ) // x=368 correspond à 20°C
    {
    analogWrite(motorPin,78); // 78 est la valeur correspondand a x=368. Vitesse constante ici.
    }


    if(x>368 && x<375 )
    {
    for (int i=78;i<=92;i++)
    {
    analogWrite(motorPin,i);
    delay(10);
    }
    }

    //Température entre 20 et 25 degrees
    if(x>375 && x<450 )
    {
    analogWrite(motorPin,92);
    }

    if(x>450 && x<480 )
    {
    for (int i=92;i<=112;i++)
    {
    analogWrite(motorPin,i);
    delay(10);
    }
    }

    //Température entre 25 et 30 degrees
    if(x>480 && x<579 )
    {
    analogWrite(motorPin,112);
    }

    if(x>579 && x<590 )
    {
    for (int i=112.53;i<=145;i++)
    {
    analogWrite(motorPin,i);
    delay(10);
    }
    }

    //Température entre 30 et 37 degrees
    if(x>590 && x<970 )
    {
    analogWrite(motorPin,144);
    }

    if(x>970 && x<990)
    {
    for (int i=144;i<=242;i++)
    {
    analogWrite(motorPin,i);
    delay(10);
    }
    }

    //Température plus de 37 degrees
    if(x>990 )
    {
    analogWrite(motorPin,242);
    }

    }


    Merci d'avance,

    -----


  2. #2
    Forhorse

    Re : ventilateur régulé

    C'est du bon code de poney !
    Tu as essayé ? ça donne le resultat attendu ?

  3. #3
    ftrap

    Re : ventilateur régulé

    Non, je n'ai pas encore essaye car pour le moment je n ai pas le materiel sous la main. Cependant, ca me semble un peu trop simpliste ce que j'ai fait.

  4. #4
    ftrap

    Re : ventilateur régulé

    Qu'envisage tu alors ? As tu une idee a me proposer.

Sur le même thème :

Discussions similaires

  1. [Blanc] Réfrigérateur Gaggenau : ne régule plus !
    Par villafilao dans le forum Dépannage
    Réponses: 10
    Dernier message: 26/05/2010, 15h17
  2. regule pour panneau PV
    Par gennyF dans le forum Électronique
    Réponses: 3
    Dernier message: 15/09/2009, 18h07
  3. transfo régulé ou non ?
    Par Fistos dans le forum Électronique
    Réponses: 15
    Dernier message: 25/11/2008, 14h13
  4. 40V -> 5V régulé ???
    Par LTHOMAS dans le forum Électronique
    Réponses: 7
    Dernier message: 01/05/2008, 21h51
  5. convertir +12v continu régulé en -15v continu régulé?
    Par iceblue dans le forum Électronique
    Réponses: 5
    Dernier message: 01/09/2005, 21h46