Inhoudsopgave:
Video: Arduino Desk Fan Controller - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Toen ik onlangs van functie veranderde binnen het bedrijf, heb ik locaties verplaatst, van Bradford naar ons hoofdkantoor in Wakefield. Ik nam afscheid van mijn trouwe oude bureau met een bureauventilator om me koel te houden terwijl ik overal om me heen was……. Hoe dan ook, de trend in ons hoofdkantoor was voor kleine ventilatoren met USB-voeding van ongeveer 4" tot 6". Dus snel een mooi antiek messing effect 6" model besteld en de volgende dag geleverd.
Het probleem met alle ventilatoren, of ze nu snelheidsinstellingen of mechanische oscillerende modi hebben, is dat ze aan of uit zijn en dat je ze uiteindelijk de hele tijd in- en uitschakelt. Een sprankje fantasie, gecombineerd met een vereiste om mijn monitor een goede 3 te verhogen, en mijn volgende project is geboren. Voer Fanomatic in.
Ik had jarenlang met Arduino gespeeld, dus het was de logische eerste stop.
Stap 1: Boodschappenlijstje en Case
Boodschappenlijst:
- 1 vel 12 mm MDF - voor de koffer
- 1 Arduino Uno - de hersens
- 1 sml breadboard en draden
- 1 DHT11 - digitale temperatuur- en vochtigheidssensor - alleen voor monstertemperatuur
- 1.96" OLED-display - om variabelen weer te geven - snelheid, temperatuur etc
- 1 IRF520 Mosfet-module - om de USB-stroom aan en uit te zetten voor de ventilator
- 4 10k-potentiometers met verschillende gekleurde knoppen - om de ventilatorsnelheid, aan-, uit- en temperatuurinstelpunt te regelen
- 1 aan/uit-schakelaar
- 1 sml blik schoolbordverf - geschikt voor MDF met 1 laag
- 1 usb-kabel en 1 usb-aansluiting
Geval:
De grootte van de behuizing werd bepaald door de grootte van de basis van mijn 24-inch monitor en 4-poorts KVM-switch op 220 mm breed en de uiteindelijke hoogte waar ik mijn monitor op wilde hebben. De diepte was vrij flexibel, dus ik ging voor 180 mm om voldoende Dus 220 mm x 180 mm x 60 mm was de maat. Nu maken en vullen.
De MDF van 12 mm werd thuis vrij gemakkelijk gesneden, voordat het werd gelijmd en geschroefd om een werkende basis en voorkant te vormen. De voorkant werd vervolgens geboord om te passen op 4 10k Potentiometers en 1 over-the-top aan / uit-schakelaar die de stroom naar Arduino en ventilator zou regelen. Er was een rechthoekig gat gebeiteld voor een klein gerookt grijs acrylpaneel, waarachter ik van plan was een van die schattige OLED-schermen te bevestigen. Halverwege zou ik willen dat ik voor de voorkant voor 3 mm laag was gegaan, in plaats van 12 mm MDF, omdat er meer hout was verwijderd dan er over was.
Nadat er gaten in de achter- en zijkant waren geboord en gebeiteld voor temperatuursensor, usb-aansluiting en usb-stroomingang. Er werden een paar lagen schoolbordverf aangebracht. Het is een geweldige verf voor mdf omdat het goed intrekt en geen onderlaag nodig heeft. Het geeft een zeer meedogenloze matte afwerking, precies wat ik zocht.
Potten en schakelaars werden bevestigd, gerookt acryl heet gelijmd en Dyno-labels geproduceerd voor die retro-look.
Naast de besturing…
Stap 2: De besturing
Allemaal gebaseerd op een Arduino Uno. Ik brood aan boord van de componenten en maakte een begin met een schets.
De schets maakt gebruik van 3 bibliotheken:
- Eentje om de irf520 mosfet aan te sturen om de ventilator aan te zetten.
- Een om het OLED-scherm aan te sturen
- Eén om de temperatuurgegevens van de DHT11. te lezen en te vertalen
Ik zal de schets hier later toevoegen, als ik het een beetje heb opgeruimd, maar wees gewaarschuwd, ik ben GEEN codeur, ik begrijp goede codeerprincipes, maar ben geneigd een luie codeur te zijn. Als ik ergens een weg omheen kan vinden en het werkt, dan werkt het.
Er zijn een aantal geweldige sites die uitleggen hoe ze elk moeten gebruiken …. en zal links bevatten naar de beste (naar mijn mening) sites om het beste uit elke site te halen.
Logica:
Een enkele USB-kabel levert stroom aan de Arduino EN aan de USB-ventilator. De Arduino kan de ventilator niet laten draaien omdat de stroom die hij trekt de Arduino zou beschadigen (eigenlijk een beetje dramatisch! De ingebouwde zekering zou doorslaan). We moeten dus een manier vinden om de Arduino te gebruiken om de stroom naar de ventilator in of uit te schakelen.
Een transistor is vereist, ik heb eerst een Darlington-transistor besteld, maar na het lezen opgezocht voor een irf520 MOSFET-stuurprogrammamodule van HobbyComponents.com. Geek-Alert!! De IRF520 is geweldig voor schakelen op logisch niveau (uitvoer van Arduino-pinnen). De spanning die naar het apparaat wordt gestuurd, bepaalt de weerstand van de MOSFET, I. E. door 0 tot 255 naar een digitale pin te sturen, wordt de ventilator (of een ander aangesloten apparaat) van uit naar volle snelheid gestuurd.
We komen later terug op 0 tot 255.
Dus we zetten een ventilator aan met een Arduino, waarom zou je je druk maken? We willen toch niet dat hij aangaat als het te koud is? Dus als we een temperatuursensor toevoegen, kunnen we code schrijven en testen om te zien of het warm is en de ventilator aan (255) of uit (0) zetten. Ik ging voor een DHT11 omdat het spotgoedkoop, gemakkelijk te coderen en nauwkeurig genoeg is voor dit project.
Terug naar die 0 tot 255 zaken. Als we weten dat een stukje code de ventilator aanzet (255) als de temperatuur hoog is, of uit (0) als de temperatuur laag is, als we een waarde tussen 0 en 255 hadden, zou de weerstand stijgen of dalen over de MOSFET en versnelt of vertraagt de ventilator.
Voer een potentiometer in die is aangesloten op een analoge pin! Wanneer gedraaid, genereert het een waarde tussen 0 en 1023. Deze waarde kan vervolgens in code worden getest om de ventilatorsnelheid te wijzigen!! joepie.
Er is nog een laatste ding (nou ja, een paar). De motorbesturingsbibliotheek die we zullen gebruiken om de MOSFET-driver aan te sturen, accepteert 2 parameters, één om de weerstand (voor de snelheid) in te stellen en een andere om de duur in te stellen. Met deze magische parameter kunnen we dus instellen hoe lang de ventilator aan staat en hoe lang de ventilator uit staat.
We hebben dus 4 potten om de 4 variabelen te controleren. Vervolgens kijken we naar het display.
Stap 3: Het scherm
Heeft het een display NODIG? Niet echt. Dus waarom heeft het er een? Nou, omdat ik een schattig display wilde hebben om de huidige temperatuur, ventilatorsnelheid, ventilator aan tijd, ventilator uit tijd en temperatuurinstelpunt te tonen.
De U8G-bibliotheek is briljant in het aansturen van dit kleine OLED-scherm. Het vergde een avond van onderzoek en ik kreeg mijn hoofd rond de commando's om de lettergrootte te krijgen die ik wilde voor 5 rijen en om de variabelen weer te geven met behulp van de u8g.print()-opdrachten. Het voordeel van dit display is dat het geen 2 of 4 'rijen' display is waar de Arduino-gemeenschap zo aan gewend is, dus graphics, lettertypen zijn allemaal goed te doen.
Om eerlijk te zijn, stuurt het grootste deel van de code het display aan. als uitspraken bepalen welke waarden moeten worden weergegeven, B. V. converteer een waarde van de analoge potten (0 tot 1023) naar een waarde om op het scherm weer te geven. In totaal zijn er verschillende sets instructieblokken, bepaal de ventilatorsnelheid vanuit de pot, converteer naar een %-waarde voor het scherm en een waarde tussen 0 en 255 om de ventilator aan te drijven.
Nou, dat is genoeg voor nu mensen. Ik hoop dat je geniet van deze eerste aflevering. Ik zal bewerken en bijwerken met links en de code. Als er iets is waar je meer over wilt weten, laat dan een reactie achter en vraag het.
Stap 4: Coderen
Ik beloofde de schets te uploaden toen ik dit 3 jaar geleden plaatste, en dat heb ik nooit gedaan.
Dus hier is het……
Aanbevolen:
Killer Desk-pc: 4 stappen
Killer Desk PC: Ik heb het idee om een bureau-pc te bouwen altijd leuk gevonden, maar het leek altijd een behoorlijk ontmoedigende taak. Nou, na het zien van een aantal coole builds heb ik er een uitgekozen om mijn build van te modelleren (https://www.pcworld.com/article/2047642/how-a-lege…and g
PC Gaming Desk Build: 14 stappen (met afbeeldingen)
PC Gaming Desk Build: Hey jongens, ik wilde een gamebureau bouwen voor mijn mannenhol, elk gewoon bureau zal het niet redden Dit bureau is voornamelijk gebouwd voor opslag, ik hou er niet van om overal planken te hebben, dus alles is opgeborgen in vakken. Dit is deel 1 van t
Desk Bluetooth-luidspreker met audiovisualisatie, aanraakknoppen en NFC: 24 stappen (met afbeeldingen)
Desk Bluetooth-luidspreker met audiovisualisatie, aanraakknoppen en NFC.: Hallo daar! In deze Instructables ga ik laten zien hoe ik deze Desk Bluetooth-luidspreker heb gemaakt die geweldige audiovisualisatie heeft met aanraakknoppen en NFC. Kan eenvoudig worden gekoppeld aan NFC-apparaten met slechts één tik. Er is geen fysieke knop
NES Controller Shuffle (Nintendo Controller MP3, V3.0): 5 stappen (met afbeeldingen)
NES Controller Shuffle (Nintendo Controller MP3, V3.0): Ik heb ryan97128 volledig opgelicht over zijn ontwerp voor Nintendo Controller MP3, versie 2.0 en ik hoor dat hij het idee kreeg van de alwijze Morte_Moya, dus ik kan de eer niet opeisen al hun genialiteit. Ik wilde gewoon het gemak toevoegen en opladen
Desk-compatibel pedaalbord: 4 stappen
Desk-compatibel pedaalbord: dit is een eenvoudig doe-het-zelf pedaalbord gemaakt van een oud computerbureaubord. Als je een kleine mini-muziekstudio in je huis hebt en een bureau hebt en je wilt je pedalboard of wat dan ook aanpassen aan het uiterlijk van je bureau, dan zal dit