Innholdsfortegnelse:

Akvariedesign med automatisert kontroll av grunnleggende parametere: 4 trinn (med bilder)
Akvariedesign med automatisert kontroll av grunnleggende parametere: 4 trinn (med bilder)

Video: Akvariedesign med automatisert kontroll av grunnleggende parametere: 4 trinn (med bilder)

Video: Akvariedesign med automatisert kontroll av grunnleggende parametere: 4 trinn (med bilder)
Video: 🚀 AMAZON 2.0 - ИНТЕРНЕТ МАГАЗИН с нуля за 6 часов [Next / React / Nest / PostgreSQL / Prisma / TS] 2024, Juni
Anonim
Akvariedesign med automatisert kontroll av grunnleggende parametere
Akvariedesign med automatisert kontroll av grunnleggende parametere
Akvariedesign med automatisert kontroll av grunnleggende parametere
Akvariedesign med automatisert kontroll av grunnleggende parametere

Introduksjon I dag er marin akvariumpleie tilgjengelig for alle akvarister. Problemet med å skaffe seg et akvarium er ikke vanskelig. Men for innbyggernes fulle livsstøtte, beskyttelse mot tekniske feil, enkelt og raskt vedlikehold og pleie, er det nødvendig å lage et akvarium basert på prinsippene for autonom livsstøtte. Moderne patenterte teknologier tillater å holde undervanns innbyggere i hav og hav under kunstige forhold - så nært som mulig deres naturlige habitat. Automatiseringssystemet styrer alle livsstøttende prosesser og utstyr, gir enestående effektivitet og enkel administrasjon og vedlikehold av store akvariumkomplekser og akvarier, høy pålitelighet og problemfri drift, vann av høy kvalitet og som et resultat av et langt og sunt liv på sjødyr. Det er forskjellige generelle funksjoner for kontroll og automatisering, for eksempel: automatisk lysbytte, simulering av dagslysforhold, opprettholdelse av innstilt temperatur, bedre vedlikehold av det naturlige habitatet og berikelse av vannet med oksygen. Akvariumdatamaskiner og tilbehør er avgjørende for å bedre støtte det normale livet til sjøs. For eksempel, i fravær av en nødpumpe og ved sammenbrudd av hovedpumpen, vil sjødyr begynne å dø etter noen timer, derfor kan vi takket være automatiseringen vite om identifisering av eventuelle feil eller sammenbrudd. For å konfigurere de beskrevne parametrene manuelt, må du utføre mange manipulasjoner, utføre tester og justere utstyret. Å utføre vannanalyse for hånd er allerede forrige århundre, i dag krever Marine Aquarium, i det klare vannet som marine dyr, preget av sine lyse farger og energiske oppførsel, ikke spesiell omsorg

Trinn 1: Lag et lokk til et akvarium

Lag et lokk til et akvarium
Lag et lokk til et akvarium
Lag et lokk til et akvarium
Lag et lokk til et akvarium
Lag et lokk til et akvarium
Lag et lokk til et akvarium

Lokket ble laget av et størrelse på akvariet og ble laget av organisk glass, ettersom det har egnede egenskaper for vann og elektronikk.

Først måler vi akvariet vårt, og i henhold til disse dimensjonene finner vi på et lokk, først kutter vi veggene på lokket, limer dem deretter med superlim og drysser dem med brus på toppen for bedre stabilitet. Umiddelbart for fremtidig ventilasjon og en automatisk mater kutter vi et rektangulært hull med en størrelse på 50 mm x 50 mm.

Trinn 2: Parsing -komponenter

Analyseringskomponenter
Analyseringskomponenter
Analyseringskomponenter
Analyseringskomponenter
Analyseringskomponenter
Analyseringskomponenter

For fyllingen valgte vi den enkleste og billigste mikrokontrolleren Arduino Mega, den vil tjene som hjernen i hele prosessen, deretter vil en servodrift bli brukt til den automatiske materen, som igjen vil bli festet til en sylinder med et hull, for belysning vil vi ta programmerings -LED -stripen og programmere den for soloppgang og solnedgang, når ved daggry vil lysstyrken stige, og ved solnedgang vil den gradvis avta. For å varme opp vannet, ta en vanlig akvariumvannvarmer og koble den til et relé som vil motta informasjon om hvordan du slår den på og av, for å lese temperaturen, installer en temperatursensor. For å kjøle vannet, ta en vifte og installer den i lokket på akvariet. Hvis temperaturen overstiger den innstilte temperaturen, vil viften slås på gjennom et relé. For enkel lesing av informasjon og konfigurering av akvariet, kobler vi LCD -displayet og knappene til det for å angi verdiene til akvariet. En kompressor vil også bli installert, som vil fungere konstant og slås av i 5 minutter når materen utløses, slik at maten ikke sprer seg over akvariet.

Jeg bestilte alle delene på Aliexpress, her er en liste og lenker til komponenter:

Feed på ws2812 -

Sanntidsklokke Ds3231-

LCD1602 LCD -

4 -kanals relemodul -

DS18b20 temperatursensor -

Modul på IRF520 0-24v -

Knapper -

Mega2560 plattformkort -

Servo -

Trinn 3: Installasjon av prosjektutstyr

Installasjon av prosjektutstyr
Installasjon av prosjektutstyr
Installasjon av prosjektutstyr
Installasjon av prosjektutstyr
Installasjon av prosjektutstyr
Installasjon av prosjektutstyr

Vi ordner komponentene som praktisk for oss og kobler dem i henhold til opplegget, se bildene.

Vi installerer ArduinoMega 2560 mikrokontroller i den tidligere monterte saken. Arduino Mega kan drives fra USB eller fra en ekstern strømkilde - typen kilde velges automatisk.

Den eksterne strømkilden (ikke USB) kan være en AC / DC -adapter eller et oppladbart batteri / batteri. Adapterpluggen (diameter - 2,1 mm, sentral kontakt - positiv) må settes inn i den tilsvarende strømkontakten på kortet. Ved batteri / batteristrøm må ledningene være koblet til Gnd- og Vin -pinnene på POWER -kontakten. Spenningen til den eksterne strømforsyningen kan være i området fra 6 til 20 V. En reduksjon i forsyningsspenningen under 7V fører imidlertid til en reduksjon i spenningen ved 5V -pinnen, noe som kan forårsake ustabil drift av enheten. Bruk av mer enn 12V spenning kan føre til overoppheting av spenningsregulatoren og skade på kortet. Med dette i bakhodet, anbefales det å bruke en strømforsyning med en spenning i området 7 til 12V. Vi kobler strøm til mikrokontrolleren ved hjelp av en 5V strømforsyning via GND og 5V pins. Deretter installerer vi reléet for ventilasjon, varmtvannsbereder og kompressor (figur 3.1), de har bare 3 kontakter, de er koblet til Arduino som følger: GND - GND, VCC - + 5V, In - 3. Reléinngang er invertert, så høyt nivå på In slår spolen av, og lave slår på.

Deretter monterer vi LCD-skjermen og sanntidsklokke-modulen, tilkoblingen deres er vist i diagrammet.

SCL-pinnene må kobles til den analoge 5-pinners kontakten; SDA-pinner kobles til analoge 6-pinners stikkontakter. Den øverste skinnen til den resulterende enheten vil fungere som I2C -bussen, og den nederste skinnen vil være kraftskinnen. LCD- og RTC-modulen kobles til 5-volts kontakter. Etter å ha fullført det siste trinnet, vil den tekniske strukturen være klar.

For å koble servoen ble det tatt en IRF520 -transistor for roligere servopulser, servoen ble koblet gjennom en transistor, og selve transistoren ble koblet direkte til Arduino

For belysning ble det tatt en WS2812 LED -stripe. Vi kobler + 5V- og GND -pinnene til henholdsvis pluss og minus på strømforsyningen, vi kobler Din til en hvilken som helst digital pin på Arduino, som standard vil den være den sjette digitale pinnen, men hvilken som helst annen kan brukes (figur 3.6). Det er også tilrådelig å koble bakken til Arduino til bakken til strømforsyningen. Det er uønsket å bruke Arduino som en strømkilde, ettersom + 5V -utgangen bare kan gi 800mA strøm. Dette er nok for ikke mer enn 13 piksler av LED -stripen. På den andre siden av båndet er det et Do -uttak, det kobles til neste bånd, slik at båndene kan kaskades som en. Strømkontakten på slutten er også duplisert.

For å koble en normalt åpen taktknapp til Arduino kan du gjøre den enkleste måten: koble den ene lederen til knappen til strøm eller jord, den andre til en digital pin

Trinn 4: Utvikling av et kontrollprogram for kontroll av hovedparametrene

Utvikling av et kontrollprogram for kontroll av hovedparametrene
Utvikling av et kontrollprogram for kontroll av hovedparametrene
Utvikling av et kontrollprogram for kontroll av hovedparametrene
Utvikling av et kontrollprogram for kontroll av hovedparametrene
Utvikling av et kontrollprogram for kontroll av hovedparametrene
Utvikling av et kontrollprogram for kontroll av hovedparametrene

Last ned skissen for programmet

Arduino bruker FBD og LAD grafiske språk, som er standarden innen programmering av industriell kontroller.

Beskrivelse av FBD -språket

FBD (Function Block Diagram) er et grafisk programmeringsspråk for standarden IEC 61131-3. Programmet er dannet fra en liste over kretser utført sekvensielt fra topp til bunn. Ved programmering brukes sett med bibliotekblokker. En blokk (element) er en subrutine, funksjon eller funksjonsblokk (OG, ELLER, IKKE, utløsere, tidtakere, tellere, analoge signalbehandlingsblokker, matematiske operasjoner, etc.). Hver enkelt kjede er et uttrykk sammensatt grafisk fra individuelle elementer. Den neste blokken er koblet til blokkutgangen og danner en kjede. Innenfor kjeden utføres blokker strengt i tilkoblingsrekkefølgen. Resultatet av kretsberegningen skrives til en intern variabel eller mates til kontrollerutgangen.

LAD språkbeskrivelse

Ladder Diagram (LD, LAD, RKS) er et relé (stige) logisk språk. Syntaksen til språket er praktisk for å erstatte logiske kretser laget på reléteknologi. Språket er rettet mot automatiseringsingeniører som jobber i industrianlegg. Tilbyr et intuitivt grensesnitt for logikken til kontrolleren, som ikke bare letter oppgavene med å programmere og sette i gang, men også rask feilsøking i utstyret som er koblet til kontrolleren. Relélogikkprogrammet har et grafisk grensesnitt som er intuitivt og intuitivt for elektriske ingeniører, som representerer logiske operasjoner som en elektrisk krets med åpne og lukkede kontakter. Strømmen eller fraværet av strøm i denne kretsen tilsvarer resultatet av en logisk operasjon (true - hvis strøm flyter; usann - hvis ingen strøm flyter). Hovedelementene i språket er kontakter, som figurativt kan sammenlignes med et par relékontakter eller en knapp. Et par kontakter er identifisert med en boolsk variabel, og tilstanden til dette paret er identifisert med verdien av variabelen. Det skilles mellom normalt lukkede og normalt åpne kontaktelementer, som kan sammenlignes med normalt lukkede og normalt åpne knapper i elektriske kretser.

Et prosjekt i FLProg er et sett med tavler, på hvilke hver en komplett modul i den generelle kretsen er satt sammen. For enkelhets skyld har hvert brett et navn og kommentarer. Hvert brett kan også klappes sammen (for å spare plass på arbeidsområdet når arbeidet er ferdig) og utvides. En rød LED i tavlenavnet indikerer at det er feil i tavleskjemaet.

Kretsen til hvert brett er satt sammen av funksjonelle blokker i samsvar med logikken til kontrolleren. De fleste funksjonsblokkene er konfigurerbare, ved hjelp av hvilke driften kan tilpasses i henhold til kravene i dette spesielle tilfellet.

Også for hver funksjonsblokk er det en detaljert beskrivelse, som er tilgjengelig når som helst og hjelper til med å forstå driften og innstillingene.

Når du arbeider med programmet, trenger ikke brukeren skrivekode, kontrollere bruken av innganger og utganger, kontrollere unikheten til navn og konsistensen av datatyper. Programmet overvåker alt dette. Hun sjekker også at hele prosjektet er riktig og indikerer tilstedeværelse av feil.

Flere hjelpeverktøy har blitt laget for å arbeide med eksterne enheter. Dette er et verktøy for å initialisere og sette opp en sanntidsklokke, verktøy for å lese enhetsadresser på OneWire- og I2C-busser, samt et verktøy for å lese og lagre knappekoder på en IR-fjernkontroll. Alle visse data kan lagres som en fil og senere brukes i programmet.

For å gjennomføre prosjektet ble følgende servoaktiveringsprogram opprettet for materen og kontrolleren.

Den første blokken "MenuValue" omdirigerer informasjon til menyblokk for å vise informasjon på LCD -displayet om servostyringsstatus.

I fremtiden lar den logiske operasjonen "AND" gå videre eller med sammenligningsenheten "I1 == I2", det vil si at forhåndsinnstilt nummer 8 vil være det samme som på sanntidsklokke-modulen, deretter vil servoen slås på gjennom avtrekkeren, ble det på samme måte gjort for å slå på servoen klokken 20.00.

For enkelhets skyld å slå på servoen selv gjennom en knapp, ble utløserlogikkfunksjonen tatt og knappen nummer 4 var beregnet på den, eller utmatingen av informasjon om servoens ro til menyblokken for å vise informasjon om LCD-skjerm.

Hvis det vises et signal for at servoen skal fungere, går han til blokken som kalles “Switch” og i en gitt vinkel roterer stasjonen og går til startfasen gjennom blokken “Reset”.

Oppføring av servoaktivering.

Kompressoren er alltid på og koblet til reléet, når et signal kommer gjennom "Servo On" -blokken, går den til "TOF" -timerblokken og slår av reléet i 15 minutter og sender informasjon om reléets tilstand i menyen.

Oppføring av termostaten.

Koble temperatursensoren gjennom biblioteket

Anbefalt: