Hver liter teller! Arduino Water Doser "Shield": 7 trinn (med bilder)
Hver liter teller! Arduino Water Doser "Shield": 7 trinn (med bilder)

Video: Hver liter teller! Arduino Water Doser "Shield": 7 trinn (med bilder)

Video: Hver liter teller! Arduino Water Doser
Video: Контрольная лампа переменного тока с диммером Arduino AC 2025, Januar
Anonim
Image
Image
Materialer
Materialer

Hei! Med denne instruerbare, kan du dosere en ønsket mengde vann. Systemet kan fungere i ml og L. Vi vil bruke en Arduino UNO, en strømningsmåler for å telle vannmengden, en LCD for å vise status, trykknapper for å endre innstillinger og et relé for å aktivere en magnetventil.

Systemet kan ha mange bruksområder: vanne hagen, blande vann med noen ingredienser, fylle en tank, kontrollere vannforbruket, etc.

I et første forsøk prøvde jeg å få det til på et brødbrett, men på grunn av de 8 trykknappene (mange ledninger), frakobling, feil tiltak og behovet for å teste utenfor eller i nærheten av en vannkilde, bestemte jeg meg for å lage et "skjold" ".

Hvis du aldri har laget en PCB, er dette kanskje en god tid. Det er enkelt, du trenger bare å være forsiktig med de involverte elementene. Jeg laget en hurtigguide for kretskortet. Hvis du trenger flere detaljer, kan du finne gode opplæringsprogrammer på denne siden.

MERK: Nøyaktigheten av målingen er gitt av kvaliteten på strømningsmåler. Dette er ikke en dosering med høy presisjon. Du trenger tålmodighet for å kalibrere systemet, men det endelige resultatet er ganske nøyaktig.

Se videoen!

Trinn 1: Materialer

PCB

-En side kobberplate minimum 13x10 cm (glassfiber anbefales)

-Jernklorid

-Plastikk boks

-Plasthansker

-Termisk overføringspapir (det gule)

-En jern (for termisk overføring)

-Loddejern, Loddetråd, poleringspute

-Bor, 1 mm bor

Elektronikk

-Arduino UNO

-LCD 16x2

-Vannmåler (jeg bruker YF-S201)

-10K motstander x 8

-1K motstand

-10K trimpot

-Trykknapper x 8

-Enkel rad mannlige rette pinneoverskrifter x 21-pinners

-Enkel rad buede pinneoverskrifter x 6-pinners

-Kvinnelige pin header konektorer 2 x 6-pins

-5V relémodul

-Solenoidventil (12, 24 VDC anbefalt)

-Konektorer, ledninger

Og rørføring i henhold til dine behov

Trinn 2: Klargjøre kretskortet

Forbereder PCB
Forbereder PCB
Forbereder PCB
Forbereder PCB
Forbereder PCB
Forbereder PCB
Forbereder PCB
Forbereder PCB

Kanskje dette er det vanskeligere trinnet, hvis du aldri har laget en PCB. Du trenger bare å følge instruksjonene.

Det er mange måter å lage en PCB på, denne fungerer for meg:

1.- Forbered brettet ved å polere kobberoverflaten. Du må få en glatt og strålende overflate. Vask den deretter med oppvaskmiddel. Når du har gjort det, må du ikke berøre overflaten igjen (fingeravtrykk). La det tørke

2.- Skriv ut filene (PDF) på termisk overføringspapir. I mitt tilfelle har jeg et papir for toner (ikke blekk), så du trenger riktig skriver for papiret. Skriv ut på papirets glatte/strålende overflate.

Merk: Filene er klare til overføring, ikke bruk speil for å skrive ut. Hvis du vil, må du skrive ut først på vanlig papir for å være sikker. Du vil se bokstavene bakover, men det er ok.

3.-Legg papiret med den trykte overflaten nedover, og fest det til brettet (kobberoverflate). Legg litt tape for å fikse det

4. -Nå, bruk et varmt jern for å overføre sporene til kobberoverflaten. Gjør dette ved å flytte jernet, og trykk i omtrent

2-3 minutter.

5.- La det avkjøle og fjern deretter alt papiret. Du kan vaske den forsiktig for å fjerne resten av papiret. Ikke ødelegg sporene !.

6. -Klargjør løsningen i plastbeholderen. Bruk plasthansker !. Jeg bruker en andel av en del jernklorid for to med varmt vann (40 C). Jeg trengte 300 ml for å lage PCB (100 ml jernklorid og 200 ml varmt vann), men det avhenger av størrelsen på beholderen.

7.- Sett brettet i løsningen, flytt beholderen, nå og da, "lager bølger" for å fjerne kobberet. Normalt tar det omtrent 20-30 minutter. Sjekk brettet hele tiden.

8. -Når alt kobber er fjernet, trekk deg tilbake og vask brettet (bruk plasthansker for å manipulere). Poler igjen for å fjerne blekket og se kobbersporene.

9.-Du kan kutte de resterende delene av brettet hvis du vil.

10. -Nå må du bore hullene. Bruk en 1 mm bor. Hullene er merket i midten av sirklene uten kobber.

11.-Nå kan du overføre toppen. Det trykte papiret må passe med hullene. Bruk hjørnene på trykknappene som referanse. Du kan gjøre dette mot et sterkt lys eller solen. Legg litt tape for å fikse det.

Gjenta trinnene 3-5.

Og kretskortet er klart!

Trinn 3: Lag "skjoldet"

Å lage
Å lage
Å lage
Å lage
Å lage
Å lage

Monter og lodd komponentene. Først pinnehodene. Du må skyve pinnene for å få en "lang pinne" eller du kan bruke en annen type pinneoverskrift. Se bildet.

Så motstandene. Hver motstand er merket på toppen med den respektive verdien. Fortsett med trykknapper, trimpot, buede stifthoder og hunnhylse.

ADVARSEL: Du må sette litt tape i "dekselet" -sonen for å unngå kontakt med den metalliske USB -kontakten

Monter LCD -skjermen og arduinoen. "0" og "A5" viser deg riktig måte å montere den på.

MERK: Det siste skjoldet ditt kan avvike fra mitt, fordi jeg har løst noen problemer (relékontakt, "deksel" -sone, kontraststempel)

Trinn 4: Rørledning

Rørledning
Rørledning
Rørledning
Rørledning
Rørledning
Rørledning
Rørledning
Rørledning

For å være ærlig, vet jeg ikke navnet på engelsk for alle komponentene, uansett, rørledningen avhenger av applikasjonen din. Se bildene for å ha en ide om hvordan du lager rørledningen. Ikke glem å lage en godt tilkoblet og forseglet krets, for vanntrykket kan sprute ut alt stedet og elektronikken!

ADVARSEL: Flowmåleren har en pil som angir strømningsretningen.

Trinn 5: Kalibrering

Kalibrering
Kalibrering
Kalibrering
Kalibrering
Kalibrering
Kalibrering
Kalibrering
Kalibrering

Med "skjoldet" og rørledningen klar, test vannmengden din.

Du trenger en vannkilde. Jeg testet sensoren i nærheten av vaskemaskinen ved hjelp av vannforsyningskontakten på magnetventilen min (samme type) Arduino kan ikke drive en magnetventil, derfor brukte jeg et relé, så du trenger en ekstern strømkilde, i henhold til spenningen til magnetventilen din, se skjematisk. Bruk "COM" og "NO" for å avbryte en linje. Jeg bruker en 220V magnetventil fra en gammel vaskemaskin. Hvis du trenger å kjøpe magnetventilen, anbefaler jeg en lavspenningsventil (12 eller 24 volt). Ikke glem å velge en du kan levere.

Selv om strømningsmåler indikerer pulser x liter, må du teste den på grunn av rørets spesielle form.

For eksempel er strømningsmålerens utgang 450 pulsxliter, men i testen fikk jeg bare 400. Andre faktorer, jeg kunne ikke jobbe med tilførselsventilen helt åpnet, fordi avlesningene ble ustabile. Så du må kalibrere vannforsyningsventilen også.

MERK: Ikke glem å arbeide innenfor parameterne til sensoren din, i mitt tilfelle 1-30 l/min og 1,75 Mpa.

Som jeg har sagt, alt avhenger av kvaliteten og spesifikasjonene til strømningsmåler.

Koble sensoren til skjoldet. Toppen har skrevet ut de respektive kontaktene.

+ = 5V (rød ledning)

- = GND (Black Wire)

S = Signal eller puls (gul tråd)

Relémodulen har de samme merkene.

Jeg utarbeidet en kode for å telle pulser. Du kan bruke START/STOP og RST CNT. Bruk en 1 liters flaske, bøtte eller beger, og trykk på startknappen. Stopp når du når 1 liter. Gjenta et par ganger for å få et mønster. Trykk på RST CNT -knappen for å tilbakestille telleren og starte på nytt.

Nå kjenner du pulser x liter av sensoren din.

Se videoen.

Trinn 6: The Water Doser

The Water Doser
The Water Doser

Maskinvarefunksjoner:

LCD: Vis status, "SP" er settpunktet eller ønsket mengde vann og "CNT" er telleren. Jeg introduserte en kode som gjør LCD -skjermen, fungerer som to skjermer. Ml -funksjonen og L -funksjonen er helt uavhengige.

START/STOPP: Er en "veksle" -funksjon. for å holde reléet og systemet løpende når du slipper knappen. Hvis du trykker på igjen, stopper systemet og reléet er "AV". Alle knappene fungerer ikke hvis systemet er PÅ

ENHET: Endre mellom ml og L, og behold innstillingene og verdiene til forrige skjermbilde. Det er også en "veksle" -funksjon. Hvis den er lav, er du på ml -skjermen, og hvis den er høy, er du på L -skjermen.

RST SP: Tilbakestill settpunktet på gjeldende skjermbilde for å angi et nytt.

RST CNT: Tilbakestill telleren på gjeldende skjerm for å starte en ny telling. Hvis telleren er høyere eller lik settpunktet, starter ikke systemet.

Adders -knapper: Du har 4 trykknapper for å endre settpunktet, +1, +10, +100, +1000. Dette er en enkel måte å endre innstillingene på. Adders -knappene fungerer ikke mens systemet kjører. Du kan ikke legge til +1 på ml -funksjonen.

Programvarefunksjoner:

Jeg tok sensoren som en trykknapp (presset veldig fort!) Den bruker den samme "debounce" -funksjonen til alle knappene. Sensoren sender en "høy" når en runde er fullført (hver 2., 5 ml ca.). Resten av tiden er "lav", samme effekt når du trykker på en knapp.

Du trenger bare å introdusere pulser x liter og ml x puls som følger:

I forrige trinn testet du sensoren og fikk utgangspulser. Prøv å runde tallet.

flyte cal_1 = 2,5; // Kalibrer ml x puls

Hvor cal_1 = 1000/pulser per liter (mitt tilfelle; 1000/400 = 2,5 ml x puls

int cal_2 = 400; // Kalibrer pulser x liter

Dette er et perfekt rundt tall å jobbe med. Jeg vet ikke om du vil være så heldig enn jeg var. Gjør en siste kalibrering for å justere feilen til minimum

Variablene er "int", så hvis du trenger større tall, bytt til "lang" eller "usignert lang"

På videoen kan du se driften av skjoldet. Med litt tålmodighet kan du oppnå en nesten perfekt ytelse.

Trinn 7: Automatisk tilbakestilling

Redigert 10-23-2018, Testing

Forespørsel fra brukere. Etter at telleren når settpunktet, settes settet til 0 automatisk for å starte en ny telling. Du kan alltid bruke Reset -knappen mens systemet ikke kjører.