Lambda sensor controlled blower

I have a big wood burning boiler and I want a lambda controlled fan. There is no automation in the boiler.

When there is little oxygen in the exhaust, the fan speed will increase. When there is a lot of oxygen in the exhaust, the fan speed drops.

Perhaps there might be a temperature sensor that will lower the blow speed if the temperature rises too high.

Something like this:

What is the easiest way to accomplish this with Arduino? How would you do this?

Thanks for help!

:blush:

Split your project into the basic building blocks:

  • read oxygen sensor
  • read temperature
  • control fan by PWM
  • repeated sensor input at some defined rate
  • decide what to do, based on the readings
  • log readings and fan speed

Reading the sensors depends heavily on the sensor interface (analog/digital...), see the Arduino libraries and examples for the sensors.

A bimetal temperature sensor can be used to cut the power to the fan. That's quite safe but the on/off switching may not be what you want to hear all the time.

Precise control of the fan speed requires feedback from a rotary encoder, but it may be sufficient to only control the PWM duty cycle for more or less air flow.

Read the sensors at fixed time intervals, eventually the temperature sensor more often than the oxygen sensor - see the BlinkWithoutDelay example.

If the temperature is too high then reduce the fan speed, else adjust the fan speed according to the oxygen concentration.

Add logging of the state to Serial or to a LCD display, eventually also operator input of the set points.
Later on a PID regulator may be desirable for the PWM adjustment.

Thanks for the comprehensive answer. I am a beginner with Arduino. :blush:

I have not yet bought any sensors. They could be anything if it made it easier to connect.

The boiler is not in the residential building. So it does not matter, even if the fan goes out / starts often.

Could it be easier to adjust the air channel?
Like here: luniks.net
Then the fan always rotates at the same speed.

"If the temperature is too high then reduce the fan speed, else adjust the fan speed according to the oxygen concentration." If this is difficult, overheat protection could be implemented with a separate temperature relay.

I'm familiar with the Arduino, not with heating and lambda sensors.

Control of the fan speed does not require a mechanism, so it will be more robust and less expensive.

Is this a modified repeat of the flue controller if a month or so back. ???
To my mind you should not do this :

  1. Itโ€™s a safety critical
    Operation - if the fan stops or Arduino falls over, you could force CO into the room .
  2. Log burners operate with a lot of excess air . You can be producing CO at still significant levels of Oxygen .

Please donโ€™t do it !

I have not asked this before. Sorry if this is a replay.

The wood boiler works well without a blower.

The fan is designed to increase the efficiency. Added air increases the temperature. This could still be optimized with lambda sensor and Arduino.

High carbon dioxide content is not a problem in the room even if the blower stops completely. Heating is also in a separate building. There is no one living there. :grin:

"Control of the fan speed does not require a mechanism, so it will be more robust and less expensive." Maybe you are right.

At this time I have an old oil burner that blows air into a wood boiler. :smiley: