0
$\begingroup$

I am driving a fan using a micro-controller. I want to test the micro-controller code without having fans physically attached to it so I thought I would model one programmatically.

I want to model a fan where when power is applied to it it is ramping up to a certain RPM over time.

My micro-controller is adjusting the power to the fan (between 0 and 100% power let's say) and checks its rpm and makes adjustments. I must simulate the RPM over time given the % of power applied. I can have simple requirements like:

  • 0 to 2000 rpm
  • linear speed (50% power means eventually 1000 rpm)
  • when applying 100% power from 0% it takes 3 seconds for the fan to reach 2000 rpm

It's just that when you apply 50% power when already at 25% power, the speed does not ramp up instantly, that's what I have trouble calculating over time: the ramp up or ramp down from and to any given power.

The problem here is like a car with a gas pedal that you play with, the car accelerates and decelerates slowly. If you hold the pedal steady, the car keeps a constant speed. I am not sure I need to model the fact that it decelerates faster than it accelerates.

Any pointers appreciated.

$\endgroup$

1 Answer 1

2
$\begingroup$

Calculating fluid flows can be complex. However, there are some useful rules of thumb.

The first question is about the size of your system. For large systems, dynamics is governed by the amount of mass flowing, and how much energy it takes to accelerate it. For small systems, everything is near surface. Friction slows the fluid right at the surface to a stop. Friction forces dominate the dynamics. Typically, "big" means bigger than an insect. Speed also plays a part. Fast fluids tend to accelerate more, so they tend to act like big systems.

This can be made much more precise and mathematical. Google Reynolds number. But we really don't need more. A fan is big enough and blows air fast enough that it acts like a big system. Forces that accelerate air will be more important than friction. We can ignore friction, especially for the ballpark analysis I am talking about.


For your fan, air far away is still. It accelerates as it is sucked in, and slows down as it blows away. When it is far enough away, it is going so slowly that it might as well be still.

The amount of air passing through a fan in a given time is proportional to $v$, the velocity of the air. Said another way, the time it takes a given amount of air to pass through is inversely proportion to $v$.

The kinetic energy of the moving air is $E = 1/2mv^2$. Obviously, air moves at different speeds in different places. But suppose you double the air speed. The air in the fan will double its speed. As the air leaves the fan, it spreads out. But at each place, it is approximately true that it will go twice as fast as it did before. You can reasonably expect that if you double the speed through the fan, that all the moving air will double its speed, at least to some level of approximation.

This tells us something important. We can either take some sort of average $v$, or we can consider the energy of each piece of moving air. Either way, we find that

$$Power = \frac{Energy}{Time} \propto \frac{v^2}{1/v} = v^3 $$

So to double the air speed, the fan needs 8 times the power. $Power \propto v^3$ will be the most important part of your simulation.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.