Creating a quiet and efficient room fan with an Arduino

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 พ.ค. 2024
  • Using an Arduino and a near silent PWM computer fan to create a nice breeze in your house. Compared to a normal A/C fan this barely uses up any power and at low speeds is silent.
    Source code: (Arduino IDE)
    pastebin.com/6dA4BjUx
    PWM Fan Standard:
    www.formfactors.org/developer/...
    Noctua Fan I used:
    noctua.at/en/products/fan/nf-a...

ความคิดเห็น • 114

  • @davidcourtney1398
    @davidcourtney1398 7 ปีที่แล้ว +11

    Hope you do a video showing the transfer to protoboard/veroboard and putting it all in the enclosure. I'm always interested in seeing the process people go through to find a project box of the right size, and making the cutouts to get everything to fit and look reasonable.

  • @SixWildKids
    @SixWildKids 3 ปีที่แล้ว +1

    I made something similar except I also had an LDR (Light Dependent Resistor) that would detect daytime and turn the fan on at nightfall and off at sunrise. Built it into an outlet box which I set in the window. Saved me from having to turn the fan off and on. Used a 1 wire sensor for the temperature and just shut it the fan off when it falls below 60 deg F. Controlled with an ATTiny85. Fun.

  • @seasidescott
    @seasidescott 6 ปีที่แล้ว

    good way to automate wood stove fans as well! those controllers usually start at $25 for the sensor with just on/off

  • @wvg.
    @wvg. 5 ปีที่แล้ว +1

    Most interesting aspect is storing values in the eeprom, never seen someone do that in an arduino tutorial!

  • @clambert2020
    @clambert2020 5 ปีที่แล้ว

    You really did a fine job with this. Very nice. Thanks for sharing!!!

  • @DavideSchiavoni
    @DavideSchiavoni 6 ปีที่แล้ว

    Good job Adrian!! Very interesting project!

  • @claudiuoctavian1972
    @claudiuoctavian1972 7 ปีที่แล้ว +7

    Hi, you could implement PID temperature control in order to avoid that low speed ,high speed fan variation. Most good temperature controllers use PID instead of bang-bang

  • @webestilo
    @webestilo 3 ปีที่แล้ว

    Great project!! You can add a Bluetooth modem and control with your phone.

  • @hendrikjanpost5167
    @hendrikjanpost5167 6 ปีที่แล้ว +1

    Hi Adrian, thanks for your post on TH-cam.
    I'm trying to collect the heat between a steanless steel chimney and its enclosure, already tried other Arduino-suggestions combined with a Noctua NF-F12 PWM, but your solution seems to be the proper one for me.
    Assuming the parts list doesn't change like Joe is asking below a schematic would be very appreciated

  • @pauldusa
    @pauldusa 7 ปีที่แล้ว

    Nice ! , one of the best Useful project everyday arduino designs

  • @AishaDracoGryph
    @AishaDracoGryph 7 ปีที่แล้ว +1

    I'd love this because I've already been thinking of putting banks of 6 or more of these type of fan in my windows and wanted the option of granular control.
    I was thinking of just powering the fans with an LED strip supply with a dimmer like those puck lights for the kitchen come with.

    • @AishaDracoGryph
      @AishaDracoGryph 7 ปีที่แล้ว

      I'm a bit sketchy about this project because although I have an arduino I am unable to code for it unless I have pre existing code that is very easy for novices to modify.
      I kinda need an almost plug and play solution. That's why I thought an LED power supply with the dimmer would be ideal as LEDs and those fans are both PWM and I don't need automatic temperature based control I just need buttons or a knob for speed control and that's about it.
      I'd love to use things like arduino to do all sorts of cool things but it's not as easy as everyone makes it look, the hardware mock ups are easy enough for me, it's the code I can't do and no one ever has code I can just drop in place.

  • @HasanIbraheem
    @HasanIbraheem 7 ปีที่แล้ว +2

    Nice project dude, a massive wall of these fans would be insane and expensive.

  • @janneksolinski411
    @janneksolinski411 7 ปีที่แล้ว +17

    Hey nice project! Can u make a "shopping list" with the parts you used? I would appreciate that.

  • @lolthekidison
    @lolthekidison 10 หลายเดือนก่อน

    The first 15 seconds described me so perfect.

  • @ForeverMods
    @ForeverMods 7 ปีที่แล้ว +8

    That's cool bro.... no pun intended. Guess you could have used a rotary encoder instead of 3 buttons. Cheers and keep sharing

  • @beauclark2199
    @beauclark2199 7 ปีที่แล้ว

    excellent vid!! Very interesting and well done.

  • @MonsieurGrill
    @MonsieurGrill 7 ปีที่แล้ว

    this is a very cool project to do with Arduino

  • @bakupcpu
    @bakupcpu 7 ปีที่แล้ว

    Very nice little project there :) For your 3 switches you can also use the command pinMode(X, INPUT_PULLUP) which activated the pull resistor on most digital pin :) I use that to save on resistor and so far the only pin that is not compatible is pin 9 and I have no idea why. Thanks for sharing ^.^

  • @hugobracamontesbaltazar
    @hugobracamontesbaltazar 6 ปีที่แล้ว

    Nice project, I like it!

  • @Milosz_Ostrow
    @Milosz_Ostrow 2 ปีที่แล้ว

    Another way to get computer fans to run quieter is to specify non-contact magnetic bearings. Magnetic bearings will outlast sleeve bearings and the best ball bearing many times over. Alas, the Noctua NF-A14 fan uses ball bearings.

  • @Rouverius
    @Rouverius 7 ปีที่แล้ว

    Cool idea (sorry). One adaption might be for those who have remote control features in their existing floor and ceiling fans. Though the hardest part to implement might be the reverse engineering the IR signals.

  • @rondlh20
    @rondlh20 7 ปีที่แล้ว

    Very nice tutorial!

  • @riseoftech4k332
    @riseoftech4k332 7 ปีที่แล้ว

    sooo cooooll man.. i love ur videos.. keep up the good work.. im trying to make videos just as cool....

  • @SuperBrainAK
    @SuperBrainAK 7 ปีที่แล้ว

    nice project, I like the implementation of your code.

    • @SuperBrainAK
      @SuperBrainAK 7 ปีที่แล้ว

      Well I cannot say much about the cleanliness of how it looks because I didnt look closely. but how it actually performs on the user interface and controls the fan it is good. ;-)

  • @matthiash.454
    @matthiash.454 3 ปีที่แล้ว

    Great project......Question: Do you have a wiring diagram and parts I need for me ?

  • @RichardT2112
    @RichardT2112 7 ปีที่แล้ว

    Nice! I assume the system is not being saved post power off?

  • @matthiash.454
    @matthiash.454 3 ปีที่แล้ว

    Super project :-) Do you have a wiring diagram ? And which parts you need ?

  • @tepiart
    @tepiart ปีที่แล้ว

    very nice video

  • @user-hc6uo5fp8n
    @user-hc6uo5fp8n 10 หลายเดือนก่อน

    Great code and video how easy would it be to use a two wire fan and control a mosfet using pwm to control the speed off the fan can you have a look at Arduino Temperature Controlled Fan Speed by Jacob Dykstra?

  • @VoeViking
    @VoeViking 7 ปีที่แล้ว +1

    Great code, thank you.

  • @shermandsouza
    @shermandsouza 4 ปีที่แล้ว +3

    I got it to work!!!! So freaking happy :) I have absolutely no coding experience nor do I understand the code written, but it works! i even managed to convert the display to degree celsius, though I am not entirely sure how the code was written so even though I got it to display in degrees I am not sure why I had to do what I did to make it happen :) Thanks Adrian! great project!

    • @janhanse400
      @janhanse400 4 ปีที่แล้ว

      Hey Sherman D'Souza, that’s awesome. I want that too :) How did you managed it? Do you have a blueprint and a shopping list? Or did you asked for help somewhere online? Greetings from Germany, Jan

    • @shermandsouza
      @shermandsouza 4 ปีที่แล้ว

      @@janhanse400 I can draw you a wiring diagram of you wish. I used the exact same code as shared by the author. Took me a while to find the right libraries. I used a Arduino Nano and it worked fine. Email me if you need the info.

    • @BlackArcticElec
      @BlackArcticElec 3 ปีที่แล้ว

      Sherman D'Souza hi, would you have a wiring plan on how to wire this project?

    • @shermandsouza
      @shermandsouza 3 ปีที่แล้ว

      @@BlackArcticElec I do. Give me an email address and I will email it to you

    • @simonwinkler2523
      @simonwinkler2523 3 ปีที่แล้ว

      @@shermandsouza I would love to get the wiring plan too, if you don't mind.

  • @pteriss
    @pteriss 7 ปีที่แล้ว

    nice project! :)

  • @tobiaseiter
    @tobiaseiter 6 ปีที่แล้ว +3

    Could you PLEASE give me the specs of the Diode and the Electrolytic Capacitor and tell me where and how to wire them in? I'm still new to this stuff and this is my first project i want to try out :)

  • @RobytheFlorentine
    @RobytheFlorentine 10 หลายเดือนก่อน

    Good video

  • @GeertDroid
    @GeertDroid 7 ปีที่แล้ว +2

    Can you add option to toggle between Fahrenheit / Degree ?

  • @guyklaassen5824
    @guyklaassen5824 5 ปีที่แล้ว

    Hi Adrian, nice work. Simple question from another electronics engineer: What is the brand and type / model number of the Lab power supply that is shown at the beginning of the video? (top left corner, the one with the dual 4 digits green 7-segment displays).

  • @hellterminator
    @hellterminator 7 ปีที่แล้ว +6

    Or, you could use timer 1 which is 16 bits wide and since 16MHz/25kHz=640 (which is less than 65,536) you could set the prescaler to 1 and have 640 speed steps instead of just 80.

  • @davidd.i.1902
    @davidd.i.1902 4 ปีที่แล้ว

    Hi Adrian, I am home stucked because of the quarintine, and trying to make a reptile incubator with an arduino, a styrofoam cooler, peltier, heating paths , and fans, but im stucked in the functions, do you have any guide I could use to learn or actually an example ?

  • @rosevirdi241
    @rosevirdi241 4 ปีที่แล้ว

    Could you please help me with a circuit? I am trying to run a fan using maybe Arduino or some other mc you recommend. And i want the fan to be temperature controlled and also change it speed with respect to temperature.

  • @Mick_Pearson
    @Mick_Pearson 5 ปีที่แล้ว

    Hi there, great job =)
    Im trying to change the Temperature from F to C..
    But it doesn´t work..
    have you got a tip for me to Edit ?
    Thanks

  • @rionmotley2514
    @rionmotley2514 3 ปีที่แล้ว

    So the 12V fan takes a 3.3 or 5V PWM signal? Nice.

  • @Joe_Galaska
    @Joe_Galaska 7 ปีที่แล้ว +12

    A schematic and parts list would be nice.
    I see the following parts (as a starting point),
    1 - Noctua 4wire Fan (NF-A14 PWM)
    1 - 12VDC Power Supply
    1 - Adjustable Buck Converter
    1 - DHT22 Temperature Sensor
    1 - Arduino Pro Mini (Generic OK)
    3 - Push Button Switches
    1 - I2C LCD Display
    2 - Solderless Breadboards
    1 - Diode
    1 - Electrolytic Capacitor
    3 - Resistors
    Misc - Jumper Wires
    Misc - 12VDC Connector

    • @MichealPruitt
      @MichealPruitt 7 ปีที่แล้ว +2

      yes a parts list would be nice

  • @sshutupurface8345
    @sshutupurface8345 6 ปีที่แล้ว

    do you sample the temperature over 1 minute then use the average to control the fan speed?

  • @BlackArcticElec
    @BlackArcticElec 3 ปีที่แล้ว

    Hi, would anyone have the circuit layout plan of this great set up?

  • @michaelfendi3402
    @michaelfendi3402 4 ปีที่แล้ว

    Hi Adrian Black!
    Could you please send me the schematic diagram of the circuit?

  • @jamesgallagher-bailes2412
    @jamesgallagher-bailes2412 3 ปีที่แล้ว

    Do you have a parts list and a circuit diagram please??

  • @EziofromFirenze
    @EziofromFirenze 4 ปีที่แล้ว

    would this work with LM35 analog sensor?

  • @ivanpelser5516
    @ivanpelser5516 3 ปีที่แล้ว

    Can I please have a component list and schematic?

  • @charleslambert3368
    @charleslambert3368 2 ปีที่แล้ว

    Does that arduino not have a Vin pin? I know a buck converter is more efficient but the 5v electronics won't be drawing much power in the first place

  • @TutocarloCV
    @TutocarloCV 7 ปีที่แล้ว

    nice

  • @olegkot9720
    @olegkot9720 3 ปีที่แล้ว

    How about RPM Signal From Fan (Tachometric Signal)?

  • @BlackArcticElec
    @BlackArcticElec 3 ปีที่แล้ว

    Were can i get the library for "lcd.h"??

  • @zaprodk
    @zaprodk 7 ปีที่แล้ว

    You have a typo in your "Spd cange" ...

  • @mineua
    @mineua 7 ปีที่แล้ว

    Is there any particular reason not to use the Arduino built-in pull-up resistor for the buttons in this project?

    • @darkmemories8201
      @darkmemories8201 7 ปีที่แล้ว

      purreness i don't think so ... it might just bei personal preference to use active high

  • @cbm80amiga
    @cbm80amiga 5 ปีที่แล้ว

    Arian, you could use internal pullups for buttons and save environment and 3 resistors :)

    • @shermandsouza
      @shermandsouza 4 ปีที่แล้ว

      could you tell me how this is done? I know nothing about coding and I cant even get his code to work for me.

    • @cbm80amiga
      @cbm80amiga 4 ปีที่แล้ว

      @@shermandsouza If you can't compile old Arduino code it is unfortunately normal, because Arduino new IDEs are not compatible with older ones. Try to use older IDE like 1.6.5 or even older. The same for libs

    • @shermandsouza
      @shermandsouza 4 ปีที่แล้ว

      Thanks so much for your response..I will try that approach.

    • @shermandsouza
      @shermandsouza 4 ปีที่แล้ว

      @@cbm80amiga Looks like Adrian is using 1.8.0 inhis video... i managed to get past the library error now stuck on "POSITIVE was not declared in this scope".. Does anyone know if there are programmers who can write code for me for a small fee? :)

  • @JohnnyTheCache
    @JohnnyTheCache 4 ปีที่แล้ว

    awesome project! Why are consumer products so limited, something with those specs would probably be sold at a ridiculous price..

  • @herraleco5283
    @herraleco5283 7 ปีที่แล้ว

    When I use an USB-cable for power input, do I need something instead for the voltage regulator? greenhorn here

    • @herraleco5283
      @herraleco5283 7 ปีที่แล้ว

      ah I missed the info in the video, that the fan is directly connected to the 12V rail. is it possible to implement a boost converter to power the fan and a direct connection to the 5V rail for the electronics?

  • @ryanowens100
    @ryanowens100 4 ปีที่แล้ว

    How did you get the LCD backlight to switch on or off. I cant do that with I2C

    • @suhaansheikh1078
      @suhaansheikh1078 4 ปีที่แล้ว

      You can do that with the I2C module (which converts the 16 pin to 4 pin). It has a backlight jumper.

  • @foodholicchaubey9222
    @foodholicchaubey9222 5 ปีที่แล้ว

    Plz give me code of thus project

  • @HDFoxra
    @HDFoxra 7 ปีที่แล้ว

    Looks awesome, but I wouldn't call this a 'room fan'. Its more of a mini 'desk fan'. Not something that I'd ever want to use to cool an entire room... not powerful enough.
    What I'd like to see, is some sort of voltage booster so that you could power it from an unused USB port. As in, plug it into a 5v USB port, voltage gets boosted to the 12v needed to run the fan and what not, and boom, a semi smart fan that you can use when spending long hours at the computer. And while I can't remember with 100% certainty, but doesn't USB 3.0 up the voltage output alittle as well? And same for USB 3.1? Could implement a little bit of code that interacted with the data lines to determine what generation of USB port its plugged into and determine if it needs to use the booster circuit or if it can just pull from the USB port directly. I coulda sworn that there was something about USB 3.1 being able to do 10+ watts of power, and could go between 5v-16v. But my numbers could be horribly wrong. Its been a while since I've heard anything about it. I just know that they say the spec for 3.1 is enough to power a laptop using a desktop with 3.1

    • @nicklausbooks1593
      @nicklausbooks1593 7 ปีที่แล้ว

      Hikari maybe his needs are modest.

    • @HDFoxra
      @HDFoxra 7 ปีที่แล้ว

      Lol right

  • @nicklausbooks1593
    @nicklausbooks1593 7 ปีที่แล้ว

    That a FAN of yours?

  • @jonaskorte6873
    @jonaskorte6873 7 ปีที่แล้ว

    Once i clicked on the video i thought that buttons where IC's!! :')

  • @MdRidoy-jy9ed
    @MdRidoy-jy9ed 3 ปีที่แล้ว

    Plz circuit diagrm

  • @kostadinrusev284
    @kostadinrusev284 5 ปีที่แล้ว

    Please for schematic.

  • @ABaumstumpf
    @ABaumstumpf 7 ปีที่แล้ว

    Why not use the arduino to control a normal room fan?
    Not that hard to do and than you would have a stronger and still less noisy fan.
    Also i would suggest to write it as a PI controller with a big I-part:
    Really constant fan-speed.

    • @zaprodk
      @zaprodk 7 ปีที่แล้ว +1

      Controlling a "normal" room fan is not trivial at all - /some/ of them can be controlled with a TRIAC (playing with mains here!) and some of them not at all. Also, you will likely hear the 50/60Hz hum from the motor, even if it's running slowly.

    • @ABaumstumpf
      @ABaumstumpf 7 ปีที่แล้ว

      zaprodk ... most roomfans are incredible simple with no active components. You can control those with a triac at its simplest, or with PWM and a Mosfet.
      some even have universal motors and you can feed them DC.
      and those that already have a brushless motor are even easier to control.

  • @shubhammusale3225
    @shubhammusale3225 4 ปีที่แล้ว

    How many volt fac you use

    • @MarkKozel
      @MarkKozel 4 ปีที่แล้ว

      The fan uses 12v. There are 5v computer fans available

  • @blazep6423
    @blazep6423 6 ปีที่แล้ว

    can i use arduino uno for this project??

    • @josephkreifelsii6596
      @josephkreifelsii6596 5 ปีที่แล้ว

      Don't see why not

    • @shermandsouza
      @shermandsouza 4 ปีที่แล้ว

      @@josephkreifelsii6596 How much would you have to change the code? I tried using a sparkfun pro micro and the compiler went nuts with errors :(

    • @josephkreifelsii6596
      @josephkreifelsii6596 4 ปีที่แล้ว

      @@shermandsouza I'm not sure. I haven't worked with SparkFun. I'm not sure if the syntax is the same. You are using an IDE made by Arduino or one made by Sparkfun because maybe it needs to be told what kind of processor is being used. I'm not very skilled in this stuff. It's just been something I picked up to try for the fun of it.

    • @shermandsouza
      @shermandsouza 4 ปีที่แล้ว

      @@josephkreifelsii6596 I am using Arduino IDE and it recognises the sparkfun boards since it's the same chip. I will try it with an Arduino device and see if I can get it to work.

  • @journeys00
    @journeys00 4 ปีที่แล้ว

    it keeps saying DHT Fail idk why :(

    • @shermandsouza
      @shermandsouza 4 ปีที่แล้ว

      Did you get the rest of the code to compile? i am having issues with the libraries itself to start :( not familiar with programming so this is pretty hard for me.

  • @viruz3000
    @viruz3000 4 ปีที่แล้ว

    Cold yo u send me te diagram plis

  • @ashishbadola7324
    @ashishbadola7324 4 ปีที่แล้ว

    Can you help me for my project

  • @mattmoreira210
    @mattmoreira210 7 ปีที่แล้ว +2

    You know you didn't need an arduino for that, right? I mean, if you didn't want something so sophisticated, an all-analog solution would be more than enough for your purposes.

    • @ironbeard2918
      @ironbeard2918 7 ปีที่แล้ว +4

      Arduinos cost hardly anything if you get copy ones, also I think he wanted to make it really fancy

  • @hippopotamus86
    @hippopotamus86 6 ปีที่แล้ว

    Why is it controlled by the temperature? Fans don't change that, it just moves air.

    • @flukshun
      @flukshun 6 ปีที่แล้ว +3

      sure, but you're more likely to want moving air if it's hotter.

  • @harshityashwardhan
    @harshityashwardhan 6 ปีที่แล้ว

    hey creator can u help me

  • @tonysicily2687
    @tonysicily2687 3 ปีที่แล้ว

    Umm, not a single reply to ANY question....
    No thumbs up for me