Innholdsfortegnelse:

Arduino Dual Channel Spenningssensormodul: 8 trinn
Arduino Dual Channel Spenningssensormodul: 8 trinn

Video: Arduino Dual Channel Spenningssensormodul: 8 trinn

Video: Arduino Dual Channel Spenningssensormodul: 8 trinn
Video: Dual channel MSGEQ7 + Arduino + SSD1306 2024, November
Anonim
Arduino spenningssensormodul med to kanaler
Arduino spenningssensormodul med to kanaler
Arduino spenningssensormodul med to kanaler
Arduino spenningssensormodul med to kanaler
Arduino spenningssensormodul med to kanaler
Arduino spenningssensormodul med to kanaler

Det er noen år siden jeg har skrevet en instruks, jeg tenkte at det er på tide å komme tilbake. Jeg har ønsket å bygge en spenningssensor slik at jeg kan koble til strømforsyningen til benken min. Jeg har en tokanals variabel strømforsyning, den har ingen skjerm, så jeg må bruke et voltmeter for å stille spenning. Jeg er ingen elektroingeniør eller programmerer, jeg gjør dette som en hobby. Når det er sagt, skal jeg beskrive hva vi skal bygge her, og det er kanskje ikke den beste designen eller beste kodingen, men jeg skal gjøre mitt beste.

Trinn 1: Om prosjektet

Om prosjektet
Om prosjektet
Om prosjektet
Om prosjektet
Om prosjektet
Om prosjektet

Først og fremst er dette bare en foreløpig design av noe mer stabilt og pålitelig, noen av komponentene vil ikke ende opp i det endelige designet. De fleste komponentene er valgt bare på grunn av tilgjengelighet (jeg hadde dem hjemme) og ikke på grunn av påliteligheten. Dette designet er for en 15V strømforsyning, men du kan bytte ut noen få passive komponenter og kan få det til å fungere på spenninger eller strøm. Strømsensorene er tilgjengelige i 5A, 20A og 30A. Du kan bare velge strømstyrke og endre koden, det samme med spenningssensoren kan du endre verdien på motstandene og koden for å måle høyere spenninger.

Kretskortet har ingen angitte verdier fordi du kan bytte ut passive komponenter for å dekke behovene til strømforsyningen. Det er designet for å bli lagt til hvilken som helst strømforsyning.

Trinn 2: Spenningssensorer

Spenningssensorer
Spenningssensorer
Spenningssensorer
Spenningssensorer
Spenningssensorer
Spenningssensorer
Spenningssensorer
Spenningssensorer

Vi starter med spenningssensorer og strømsensorer. Jeg bruker en Arduino Mega for å teste kretsene og koden, så noen av nybegynnerne som meg selv kan lage og teste sine egne i farten i stedet for å måtte bygge hele modulen på et brødbrett.

Vi kan bare måle 0-5 volt ved hjelp av Arduinos analoge innganger. For at vi skal kunne måle opptil 15 volt trenger vi å lage en spenningsdeler, spenningsdelere er veldig enkle og kan opprettes ved hjelp av bare 2 motstander i dette tilfellet bruker vi en 30k og en 7,5k som vil gi oss et forhold på 5: 1 slik at vi kan måle verdier på 0-25 volt.

Deleliste for spenningssensor

R1, R3 30k motstander

R2, R4 7,5 k motstander

Trinn 3: Aktuelle sensorer

Nåværende sensorer
Nåværende sensorer
Nåværende sensorer
Nåværende sensorer
Nåværende sensorer
Nåværende sensorer
Nåværende sensorer
Nåværende sensorer

For de nåværende sensorene kommer jeg til å bruke ACS712 laget av Allegro. Det første jeg må nevne er at jeg vet at disse sensorene ikke er veldig nøyaktige, men det var det jeg hadde for hånden da jeg designet denne modulen. ACS712 er bare tilgjengelig i en overflatemonteringspakke og er en av de få SMD -komponentene som brukes i denne modulen.

Gjeldende sensordeleliste

IC2, IC3 ASC712ELC-05A

C1, C3 1nF kondensator

C2, C4 0.1uF kondensator

Trinn 4: Temperatursensor og vifte

Temperatursensor og vifte
Temperatursensor og vifte
Temperatursensor og vifte
Temperatursensor og vifte
Temperatursensor og vifte
Temperatursensor og vifte

Jeg bestemte meg for å legge til temperaturkontroll på modulen fordi de fleste strømforsyninger genererer god varme og vi trenger beskyttelse mot overoppheting. For temperatursensoren bruker jeg en HDT11 og for viftekontrollen skal vi bruke en 2N7000 N-Channel MOSFET for å drive en 5V CPU-vifte. Kretsen er ganske enkel, vi trenger å sette spenning på transistorens drenering, og vi bruker en positiv spenning til porten, i dette tilfellet bruker vi arduinoens digitale utgang for å gi den spenningen og transistoren slås PÅ slik at viften kan være energisk.

Koden er veldig enkel, vi tar en temperaturavlesning fra DHT11 -sensoren hvis temperaturen er større enn vår innstilte verdi, setter den utgangspinnen HØY og viften slås på. Når temperaturen synker under angitt temperatur, viften slås av. Jeg bygger kretsen på brødbrettet for å teste koden min, jeg tok noen raske bilder med cellen min, ikke veldig bra beklager, men skjematisk er lett å forstå.

Temperatur sensor og vifte deleliste

J2 DHT11 Temp Sensor

R8 10K motstand

J1 5V VIFT

Q1 2N7000 MOSFET

D1 1N4004 Diode

R6 10K motstand

R7 47K motstand

Trinn 5: Strømkrets

Strømkrets
Strømkrets
Strømkrets
Strømkrets
Strømkrets
Strømkrets

Modulen går på 5V, så vi trenger en stabil strømkilde. Jeg bruker en L7805 spenningsregulator for å gi en konstant 5V forsyning, ikke mye å si om denne kretsen.

Liste over strømkretser

1 L7805 spenningsregulator

C8 0,33uF kondensator

C9 0.1uF kondensator

Trinn 6: LCD- og serieutganger

LCD- og serieutganger
LCD- og serieutganger
LCD- og serieutganger
LCD- og serieutganger
LCD- og serieutganger
LCD- og serieutganger
LCD- og serieutganger
LCD- og serieutganger

Jeg designet modulen for å brukes med tanke på en LCD, men bestemte meg deretter for å legge til seriell utgang for feilsøkingsformål. Jeg kommer ikke til å gå i detalj om hvordan jeg setter opp en I2C LCD fordi jeg allerede har dekket den i en tidligere instruerbar I2C LCD Den enkle måten jeg la til lysdioder på Tx & Rx -linjene for å vise aktivitet. Jeg bruker en usb til seriell adapter som jeg kobler til modulen, så åpner jeg den serielle skjermen i Arduino IDE og jeg kan se alle verdiene, sørge for at alt fungerer som det skal.

LCD- og serieutgangsliste

I2C 16x2 I2C LCD (20x4 valgfritt)

LED7, LED8 0603 SMD LED

R12, R21 1K R0603 SMD -motstand

Trinn 7: ISP -programmering og ATMega328P

ISP -programmering og ATMega328P
ISP -programmering og ATMega328P
ISP -programmering og ATMega328P
ISP -programmering og ATMega328P
ISP -programmering og ATMega328P
ISP -programmering og ATMega328P

Som jeg nevner i begynnelsen, er denne modulen designet for å bli bygget for forskjellige konfigurasjoner, vi må legge til en måte å programmere ATMega328 og laste opp våre skisser. Det er flere måter å programmere modulen på, en av dem er å bruke en Arduino som en ISP -programmerer som i en av mine tidligere Instructable Bootloading ATMega med Arduino mega.

Merknader:

- Du trenger ikke kondensatoren for å laste ISP -skissen på Arduino, du trenger den for å brenne bootloaderen og for å laste opp voltage_sensor Sketch.

-I nyere versjoner av Arduino IDE må du koble pin 10 til pin 1 RESET av ATMega328.

ISP & ATMega328P kretsdeleliste

U1 ATMega328P

XTAL1 16MHz HC-49S Crsytal

C5, C6 22pf kondensatorer

ISP1 6 -pins overskrift

R5 10K motstand

Tilbakestill 3x4x2 Tact SMD -bryter

Trinn 8: Notater og filer

Notater og filer
Notater og filer
Notater og filer
Notater og filer
Notater og filer
Notater og filer

Dette var bare en måte for meg å sette noen ideer i en fungerende enhet, som jeg nevner før, er bare et lite tillegg til min Dual Channel benk strømforsyning. Jeg har inkludert alt du trenger for å bygge din egen modul, alle Eagle CAD -filer og skjemaer. Jeg har inkludert Arduino -skissen, er veldig enkel og jeg har prøvd å gjøre det enkelt å forstå og endre. Hvis du har spørsmål, kan du gjerne svare på dem. Dette er et åpent prosjekt, forslag mottas med takk. Jeg prøver å legge inn så mye informasjon jeg kan, men jeg fant ut om Arduino -konkurransen sent og ønsket å sende inn denne. Jeg skal skrive resten ganske snart. Jeg har også fjernet SMD -komponentene (motstander og LED) og erstattet dem med TH -komponenter, den eneste SMD -komponenten er den nåværende sensoren fordi den bare er tilgjengelig i en SOIC -pakke, ZIP -filen inneholder filer med TH -komponentene.

Anbefalt: