Inhoudsopgave:
- Stap 1: Over het project
- Stap 2: Spanningssensoren
- Stap 3: Stroomsensoren
- Stap 4: Temperatuursensor en ventilator
- Stap 5: Stroomkring
- Stap 6: LCD en seriële uitgangen
- Stap 7: ISP-programmering & ATMega328P
- Stap 8: Notities en bestanden
Video: Arduino Dual Channel Voltage Sensor Module - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Het is een paar jaar geleden dat ik een instructable heb geschreven, ik dacht dat het tijd was om terug te komen. Ik wilde een spanningssensor bouwen zodat ik deze op mijn bankvoeding kan aansluiten. Ik heb een tweekanaals variabele voeding, deze heeft geen display, dus ik moet een voltmeter gebruiken om de spanning in te stellen. Ik ben geen elektrotechnisch ingenieur of programmeur, ik doe dit als hobby. Dat gezegd hebbende, ga ik beschrijven wat we hier gaan bouwen en het is misschien niet het beste ontwerp of de beste codering, maar ik zal mijn best doen.
Stap 1: Over het project
Allereerst is dit slechts een voorlopig ontwerp van iets stabielers en betrouwbaarder, sommige componenten zullen niet in het definitieve ontwerp terechtkomen. De meeste componenten zijn alleen geselecteerd vanwege beschikbaarheid (ik had ze in huis) en niet vanwege hun betrouwbaarheid. Dit ontwerp is voor een 15V-voeding, maar je kunt een paar passieve componenten vervangen en het op elke spanning of stroom laten werken. De stroomsensoren zijn verkrijgbaar in 5A, 20A en 30A je kunt gewoon de stroomsterkte kiezen en de code wijzigen, hetzelfde met de spanningssensor kun je de waarde van de weerstanden en de code wijzigen om hogere spanningen te meten.
De print heeft geen vaste waarden omdat je passieve componenten kunt vervangen om aan de behoeften van je voeding te voldoen. Het is ontworpen om aan elke voeding te worden toegevoegd.
Stap 2: Spanningssensoren
We beginnen met de spanningssensoren en stroomsensoren. Ik gebruik een Arduino Mega om de circuits en de code te testen, dus sommige beginners, zoals ikzelf, kunnen ze zelf maken en testen in plaats van de hele module op een breadboard te moeten bouwen.
We kunnen alleen 0-5 volt meten met behulp van Arduino's analoge ingangen. Om tot 15 volt te kunnen meten, moeten we een spanningsdeler maken, spanningsdelers zijn heel eenvoudig en kunnen worden gemaakt met slechts 2 weerstanden. In dit geval gebruiken we een 30k en een 7,5k die ons zouden geven een verhouding van 5:1 zodat we waarden van 0-25 volt kunnen meten.
Onderdelenlijst voor spanningssensor
R1, R3 30k Weerstanden
R2, R4 7.5k Weerstanden
Stap 3: Stroomsensoren
Voor de huidige sensoren ga ik de ACS712 van Allegro gebruiken. Het eerste dat ik moet vermelden, is dat ik weet dat deze sensoren niet erg nauwkeurig zijn, maar dit was wat ik bij de hand had bij het ontwerpen van deze module. De ACS712 is alleen verkrijgbaar in een opbouwpakket en is een van de weinige SMD-componenten die in deze module worden gebruikt.
Huidige lijst met sensoronderdelen
IC2, IC3 ASC712ELC-05A
C1, C3 1nF condensator
C2, C4 0.1uF condensator
Stap 4: Temperatuursensor en ventilator
Ik besloot om temperatuurregeling aan de module toe te voegen omdat de meeste voedingen een goede hoeveelheid warmte genereren en we bescherming tegen oververhitting nodig hebben. Voor de temperatuursensor gebruik ik een HDT11 en voor de ventilatorregeling gaan we een 2N7000 N-Channel MOSFET gebruiken om een 5V CPU-ventilator aan te sturen. Het circuit is vrij eenvoudig, we moeten spanning toepassen op de afvoer van de transistor en we passen een positieve spanning toe op de poort, in dit geval gebruiken we de digitale uitgang van de arduino om die spanning te leveren en de transistor gaat AAN waardoor de ventilator kan worden energiek.
De code is heel eenvoudig, we nemen een temperatuurmeting van de DHT11-sensor als de temperatuur hoger is dan onze ingestelde waarde, wordt de uitgangspen HOOG ingesteld en wordt de ventilator ingeschakeld. Zodra de temperatuur onder de ingestelde temperatuur zakt, wordt de ventilator uitgeschakeld. Ik heb het circuit op mijn breadboard gebouwd om mijn code te testen, ik heb wat snelle foto's gemaakt met mijn cel, niet erg goed sorry, maar het schema is gemakkelijk te begrijpen.
Onderdelenlijst temperatuursensor en ventilator
J2 DHT11 temperatuursensor
R8 10K Weerstand
J1 5V VENTILATOR
Q1 2N7000 MOSFET
D1 1N4004 Diode
R6 10K Weerstand
R7 47K Weerstand
Stap 5: Stroomkring
De module werkt op 5V, dus we hebben een stabiele stroombron nodig. Ik gebruik een L7805-spanningsregelaar om een constante 5V-voeding te bieden, niet veel te zeggen over dit circuit.
Onderdelenlijst stroomcircuit
1 L7805 Spanningsregelaar
C8 0.33uF condensator
C9 0.1uF condensator
Stap 6: LCD en seriële uitgangen
Ik ontwerp de module voor gebruik met een LCD in gedachten, maar besloot toen om seriële uitvoer toe te voegen voor foutopsporingsdoeleinden. Ik ga niet in detail treden over het opzetten van een I2C LCD omdat ik het al heb behandeld in een eerdere instructable I2C LCD. De gemakkelijke manier waarop ik LEDS aan de Tx & Rx-lijnen heb toegevoegd om activiteit te tonen. Ik gebruik een usb naar seriële adapter die ik op de module aansluit, dan open ik de seriële monitor in de Arduino IDE en ik kan alle waarden zien, ervoor zorgen dat alles werkt zoals het zou moeten.
LCD & Seriële Uit Onderdelenlijst
I2C 16x2 I2C LCD (20x4 optioneel)
LED7, LED8 0603 SMD-LED
R12, R21 1K R0603 SMD-weerstand:
Stap 7: ISP-programmering & ATMega328P
Zoals ik in het begin al zei, deze module is ontworpen om te worden gebouwd voor verschillende configuraties, we moeten een manier toevoegen om de ATMega328 te programmeren en onze schetsen uploaden. Er zijn verschillende manieren om de module te programmeren, een daarvan is om een Arduino te gebruiken als een ISP-programmeur zoals in een van mijn vorige Instructable Bootloading ATMega met Arduino mega.
Opmerkingen:
- Je hebt de condensator niet nodig om de ISP-schets op de Arduino te laden, je hebt hem nodig om de bootloader te branden en om de voltage_sensor Sketch te uploaden.
-Op nieuwere versies van de Arduino IDE moet je pin 10 aansluiten op pin 1 RESET van de ATMega328.
ISP & ATMega328P Circuit Onderdelenlijst
U1 ATMega328P
XTAL1 16MHz HC-49S Kristal
C5, C6 22pf condensatoren
ISP1 6-pins header
R5 10K Weerstand
Reset 3x4x2 Tact SMD-schakelaar
Stap 8: Notities en bestanden
Dit was voor mij slechts een manier om wat ideeën in een werkend apparaat te verwerken, zoals ik al eerder zei, het is slechts een kleine toevoeging voor mijn Dual Channel-bankvoeding. Ik heb alles toegevoegd wat je nodig hebt om je eigen module te bouwen, alle Eagle CAD-bestanden en schema's. Ik heb de Arduino-schets bijgevoegd, het is heel eenvoudig en ik heb geprobeerd het gemakkelijk te begrijpen en aan te passen. Als je vragen hebt, stel ze gerust, ik zal proberen ze te beantwoorden. Dit is een open project, suggesties zijn welkom. Ik probeer zoveel mogelijk informatie in te voeren, maar ik hoorde pas laat over de Arduino-wedstrijd en wilde dit indienen. Ik zal binnenkort de rest schrijven. Ik heb ook de SMD-componenten (weerstanden en LED) verwijderd en vervangen door TH-componenten, de enige SMD-component is de huidige sensor omdat deze alleen beschikbaar is in een SOIC-pakket, het ZIP-bestand bevat de bestanden met de TH-componenten.
Aanbevolen:
LM3886 Eindversterker, Dual of Bridge (verbeterd): 11 stappen (met afbeeldingen)
LM3886 Eindversterker, Dual of Bridge (verbeterd): Een compacte dual power (of bridge) versterker is eenvoudig te bouwen als je enige elektronica-ervaring hebt. Er zijn maar een paar onderdelen nodig. Het is natuurlijk nog makkelijker om een mono versterker te bouwen. De cruciale zaken zijn de stroomvoorziening en de koeling. Met de com
IoT Dual Temperature Data Server: 12 stappen (met afbeeldingen)
IoT Dual Temperature Data Server: dit is mijn eerste poging om een Instructable te schrijven en doe het dus rustig aan! Als je dit niet zo erg vindt, stem dan alsjeblieft op mij in de First Time Author Contest. Dit is mijn Lock-Down-project om op afstand 2 temperaturen in een kas te bewaken
Pratende Arduino - Een MP3 afspelen met Arduino zonder enige module - Mp3-bestand afspelen vanaf Arduino met PCM: 6 stappen
Pratende Arduino | Een MP3 afspelen met Arduino zonder enige module | Mp3-bestand van Arduino afspelen met PCM: in deze instructie leren we hoe we een mp3-bestand met arduino kunnen spelen zonder een audiomodule te gebruiken, hier gaan we de PCM-bibliotheek voor Arduino gebruiken die 16 bit PCM van 8 kHz-frequentie speelt, dus laten we dit doen
Tutorial voor VNH2SP30 Monster Motor Module (Single Channel): 6 stappen (met afbeeldingen)
Tutorial voor VNH2SP30 Monster Motor Module (Single Channel): BeschrijvingVNH2SP30 is een volledige brugmotordriver bedoeld voor een breed scala aan autotoepassingen. Het apparaat bevat een dubbele monolithische high-side driver en twee low-side schakelaars. De bestuurdersschakelaar aan de hoge kant is ontworpen met behulp van de STMicroel
Dual Voltage gereguleerde voeding: 4 stappen
Dual Voltage Regulated Power Supply: Een vriend van mij die een elektronicawinkel runt, wil een oude cd-rom installeren om als stand-alone cd-speler in zijn vrachtwagen te gebruiken. Zijn probleem was om hiervoor een geschikte voeding te vinden. Een cd-rom gebruikt 2 voedingen, 5 Volt die wordt gebruikt i