Forum Members section DIY Ferduino controller Problem with fan

Problem with fan  [SOLVED]

Ask here about your controller made with pieces purchased in other shops.

Post Number:#1 Post Fri Jan 16, 2015 2:14 pm
Posts: 20
Topics: 6
Solve rating: 0
Joined: Wed Oct 22, 2014 1:10 pm
Topics: 6
Age: 50
Gender: Male
National Flag:
Italy
Hi Fernando, I have a problem with my fans .
As you explain in your website, I have connect two fans F12 Arctic Cooling at one transistor ULN2003A using the blu wire, but I have a problem: If the tempetarure of led is low under 35C the fans run at maximum and if the temperature is hight over 45 C the fans stopped. What is wrong?

Thank you

Post Number:#2 Post Fri Jan 16, 2015 2:38 pm
Posts: 1699
Topics: 38
Images: 301
Solve rating: 233
Joined: Mon Mar 03, 2014 5:59 pm
Topics: 38
Age: 39
Location: São Paulo
Gender: Male
National Flag:
Brazil

Hi!

Which arduino pin is connected on ULN?

In the tab Ferduino change:

byte fanSpeed = 0;         // PWM dos coolers


To:

int fanSpeed = 0;         // PWM dos coolers


Best regards.
Post your doubts on forum because it can help another user too. Just PM me for support if it's absolutely necessary.

Post Number:#3 Post Fri Jan 16, 2015 2:41 pm
Posts: 20
Topics: 6
Solve rating: 0
Joined: Wed Oct 22, 2014 1:10 pm
Topics: 6
Age: 50
Gender: Male
National Flag:
Italy
I use pin 1 And pin 13

Post Number:#4 Post Fri Jan 16, 2015 2:45 pm
Posts: 1699
Topics: 38
Images: 301
Solve rating: 233
Joined: Mon Mar 03, 2014 5:59 pm
Topics: 38
Age: 39
Location: São Paulo
Gender: Male
National Flag:
Brazil

Pin 1 to ULN and pin 13 to blue wire?

What's settings for fans (min. and max)?

Have you removed Serial.begin(38400) on setup()?
Post your doubts on forum because it can help another user too. Just PM me for support if it's absolutely necessary.

Post Number:#5 Post Fri Jan 16, 2015 4:14 pm
Posts: 20
Topics: 6
Solve rating: 0
Joined: Wed Oct 22, 2014 1:10 pm
Topics: 6
Age: 50
Gender: Male
National Flag:
Italy
Yes pin 1 ULN and pin 13 blu wire of fan.
Setting 30.5 and 40.5
I have not the Serial.begin(38400) on Setup

In my tab there are not :
byte fanSpeed = 0;         // PWM dos coolers

Or
int fanSpeed = 0;         // PWM dos coolers

But only these:

//*****************************************************************************************
//************************ Variáveis de controle de velocidade dos coolers ****************
//*****************************************************************************************
float HtempMin = 30.5;    // Declara a temperatura para iniciar o funcionamento das ventoinhas do dissipador
float HtempMax = 40.5;    // Declara que as ventoinhas devem estar em sua velocidade máxima quando o dissipador estiver com 40°c

//*****************************************************************************************
//************** Variáveis temperárias de controle de velocidade dos coolers **************
//*****************************************************************************************
float HtempMin_temp = 0;    // Declara a temperatura para iniciar o funcionamento das ventoinhas do dissipador
float HtempMax_temp = 0;    // Declara que as ventoinhas devem estar em sua velocidade máxima quando o dissipador estiver com 40°c

//*****************************************************************************************


I must write it?
Last edited by Fernando Garcia on Fri Jan 16, 2015 4:45 pm, edited 1 time in total.
Reason: Please use tags [code] [/code] to post any code here.

Post Number:#6 Post Fri Jan 16, 2015 4:58 pm
Posts: 1699
Topics: 38
Images: 301
Solve rating: 233
Joined: Mon Mar 03, 2014 5:59 pm
Topics: 38
Age: 39
Location: São Paulo
Gender: Male
National Flag:
Brazil

So you haven't the latest version.
No need add this variable.

You did some change in the tab "parametros"?

Check if is of this way:

  int tempval = int(tempH * 10);
  int fanSpeed = map(tempval, (HtempMin * 10), (HtempMax * 10), 0, 255);       // Controle de velocidade das ventoinhas do dissipador
  if (fanSpeed < 0)
  { 
    fanSpeed = 0;
  }   
  if (fanSpeed > 255)
  {
    fanSpeed = 255;
  }
  analogWrite(fanPin, fanSpeed);

  if(tempH < HtempMin) // Desativa os coolers se a temperatura estive abaixo da mínima definida.
  {
    digitalWrite(desativarFanPin, LOW);
  }
  else
  {
    digitalWrite(desativarFanPin, HIGH);
  }


You need check the behaviour of your fan manually, connecting directly on 12V and see what's the speed when blue wire is connected on 5V and GND.
Post your doubts on forum because it can help another user too. Just PM me for support if it's absolutely necessary.

Post Number:#7 Post Sat Jan 17, 2015 4:37 pm
Posts: 20
Topics: 6
Solve rating: 0
Joined: Wed Oct 22, 2014 1:10 pm
Topics: 6
Age: 50
Gender: Male
National Flag:
Italy
Solved, i have changed as the following:

  int tempval = int(tempH * 10);
  int fanSpeed = map(tempval, (HtempMin * 10), (HtempMax * 10), 0, 255);       // Controle de velocidade das ventoinhas do dissipador
  if (fanSpeed < 0)
  { 
    fanSpeed = 255; //it Was 0
  }   
  if (fanSpeed > 255)
  {
    fanSpeed = 0; //it Was 255
  }
  analogWrite(fanPin, fanSpeed);

  if(tempH < HtempMin) // Desativa os coolers se a temperatura estive abaixo da mínima definida.
  {
    digitalWrite(desativarFanPin, LOW);
  }
  else
  {
    digitalWrite(desativarFanPin, HIGH);
  }

Post Number:#8 Post Sat Jan 17, 2015 5:37 pm
Posts: 1699
Topics: 38
Images: 301
Solve rating: 233
Joined: Mon Mar 03, 2014 5:59 pm
Topics: 38
Age: 39
Location: São Paulo
Gender: Male
National Flag:
Brazil

Thank you very much for your help.

[Ironic mode]
Post your doubts on forum because it can help another user too. Just PM me for support if it's absolutely necessary.




Return to DIY Ferduino controller





Who is online

Users viewing this topic: No registered users and 1 guest