INHOUDSOPGAWE:

Akwariumontwerp met outomatiese beheer van basiese parameters: 4 stappe (met foto's)
Akwariumontwerp met outomatiese beheer van basiese parameters: 4 stappe (met foto's)

Video: Akwariumontwerp met outomatiese beheer van basiese parameters: 4 stappe (met foto's)

Video: Akwariumontwerp met outomatiese beheer van basiese parameters: 4 stappe (met foto's)
Video: The Dark Side of Conscious Ai | Daniel Schmachtenberger 2024, Junie
Anonim
Akwariumontwerp met outomatiese beheer van basiese parameters
Akwariumontwerp met outomatiese beheer van basiese parameters
Akwariumontwerp met outomatiese beheer van basiese parameters
Akwariumontwerp met outomatiese beheer van basiese parameters

Inleiding Vandag is mariene akwariumsorg beskikbaar vir elke rist. Die probleem om 'n akwarium aan te skaf, is nie moeilik nie. Maar vir die volle lewensondersteuning van die inwoners, beskerming teen tegniese foute, maklike en vinnige onderhoud en versorging, is dit nodig om 'n akwarium te skep wat gebaseer is op die beginsels van outonome lewensondersteuning. Moderne gepatenteerde tegnologieë laat onderwaterbewoners van seë en oseane onder kunsmatige toestande hou - so na as moontlik aan hul natuurlike habitat. Die outomatiseringstelsel beheer alle lewensondersteuningsprosesse en -toerusting, bied ongekende doeltreffendheid en maklik bestuur en onderhoud van groot akwariumkomplekse en akwariums, hoë betroubaarheid en probleemvrye werking, water van hoë gehalte en gevolglik 'n lang en gesonde lewensduur van seediere. Daar is verskillende algemene funksies vir beheer en outomatisering, soos: outomatiese ligskakeling, die simulasie van daglig, die handhawing van die ingestelde temperatuur, die beter instandhouding van die natuurlike habitat en die verryking van die water met suurstof. Akwariumrekenaars en bykomstighede is noodsaaklik om die normale lewe van seelewe beter te ondersteun. Byvoorbeeld, in die afwesigheid van 'n noodpomp en as die hoofpomp ineenstort, sal seediere na 'n paar uur begin vrek, danksy die outomatisering kan ons weet oor die identifisering van foute of ineenstortings. Om die beskryf parameters handmatig op te stel, moet u baie manipulasies uitvoer, toetse uitvoer en die toerusting aanpas. Wateranalise met die hand uitgevoer is reeds die vorige eeu; vandag benodig die Marine Aquarium, in die helder water waarvan seediere, gekenmerk deur hul helder kleure en energieke gedrag, geen spesiale sorg nie

Stap 1: Maak 'n deksel vir 'n akwarium

Maak 'n deksel vir 'n akwarium
Maak 'n deksel vir 'n akwarium
Maak 'n deksel vir 'n akwarium
Maak 'n deksel vir 'n akwarium
Maak 'n deksel vir 'n akwarium
Maak 'n deksel vir 'n akwarium

Die deksel is gemaak van organiese glas en het 'n deksel vir die grootte van die akwarium, aangesien dit geskikte eienskappe vir water en elektronika het.

Eerstens meet ons ons akwarium, en volgens hierdie afmetings vind ons 'n deksel uit, eers sny ons die deure van die deksel, plak dit dan met supergom en strooi dit met koeldrank bo -op vir 'n beter stabiliteit. Ons sny onmiddellik vir toekomstige ventilasie en 'n outomatiese toevoer 'n reghoekige gat met 'n grootte van 50 mm by 50 mm.

Stap 2: Ontleed komponente

Ontledingskomponente
Ontledingskomponente
Ontledingskomponente
Ontledingskomponente
Ontledingskomponente
Ontledingskomponente

Vir die vulsel het ons die eenvoudigste en goedkoopste mikrokontroleerder Arduino Mega gekies; dit sal dien as die brein van die hele proses, dan word 'n servo -aandrywing gebruik vir die outomatiese toevoer, wat weer op 'n silinder met 'n gat vasgemaak word. Vir beligting neem ons die programmerings -LED -strook en programmeer dit vir sonsopkoms en sonsondergang, wanneer dit teen dagbreek styg, sal die helderheid styg, en met sonsondergang neem dit geleidelik af. Om die water te verhit, neem 'n gewone akwariumwaterverwarmer en koppel dit aan 'n relais wat inligting sal ontvang oor die aan- en afskakel, om die temperatuur te lees, installeer 'n temperatuursensor. Om die water af te koel, neem 'n waaier en plaas dit in die deksel van die akwarium, as die temperatuur die ingestelde temperatuur oorskry, word die waaier deur 'n aflos aangeskakel. Om die inligting maklik te lees en die akwarium op te stel, verbind ons die LCD -skerm en knoppies om die waardes van die akwarium te bepaal. Daar sal ook 'n kompressor geïnstalleer word, wat voortdurend werk en vir 5 minute sal afskakel wanneer die toevoer begin word, sodat die voedsel nie oor die akwarium versprei word nie.

Ek het al die onderdele op Aliexpress bestel, hier is 'n lys en skakels na komponente:

Voer op ws2812 -

Intydse klok Ds3231-

LCD1602 LCD -

4 -kanaals aflosmodule -

DS18b20 temperatuursensor -

Module op IRF520 0-24v -

Knoppies -

Mega2560 platformbord -

Servo -

Stap 3: Installering van projekapparatuur

Die installering van projek toerusting
Die installering van projek toerusting
Installasie van projek toerusting
Installasie van projek toerusting
Installasie van projek toerusting
Installasie van projek toerusting

Ons rangskik die komponente so gerieflik vir ons en verbind dit volgens die skema, sien die foto's.

Ons installeer die ArduinoMega 2560 mikrokontroller in die voorheen gemonteerde omhulsel. Die Arduino Mega kan van USB of van 'n eksterne kragbron voorsien word - die tipe bron word outomaties gekies.

Die eksterne kragbron (nie USB nie) kan 'n AC / DC -adapter of herlaaibare battery / battery wees. Die adapterprop (deursnee - 2,1 mm, sentrale kontak - positief) moet in die ooreenstemmende kragaansluiting op die bord geplaas word. In die geval van battery / batterykrag, moet sy drade aan die Gnd- en Vin -penne van die POWER -aansluiting gekoppel word. Die spanning van die eksterne kragtoevoer kan tussen 6 en 20 V. wees, maar 'n afname in die voedingsspanning onder 7V lei tot 'n afname in die spanning by die 5V -pen, wat 'n onstabiele werking van die toestel kan veroorsaak. Die gebruik van meer as 12V spanning kan lei tot oorverhitting van die spanningsreguleerder en skade aan die bord. Met dit in gedagte, word dit aanbeveel om 'n kragtoevoer met 'n spanning van 7 tot 12V te gebruik. Ons koppel krag aan die mikrobeheerder met 'n 5V -kragtoevoer via die GND- en 5V -penne. Vervolgens installeer ons die relais vir ventilasie, waterverwarmer en kompressor (Figuur 3.1), hulle het slegs 3 kontakte, hulle is soos volg aan Arduino gekoppel: GND - GND, VCC - + 5V, In - 3. Relais -invoer is omgekeerd, so hoog op In skakel die spoel af en lae draai aan.

Vervolgens monteer ons die LCD-skerm en die real-time klokmodule; die verbinding daarvan word in die diagram getoon.

Die SCL-penne moet aan die analoog 5-pins aansluiting gekoppel word; SDA-penne kan gekoppel word aan analoog 6-pen voetstukke. Die boonste spoor van die resulterende samestelling dien as die I2C -bus, en die onderste spoor is die kragrail. Die LCD- en RTC-module word verbind met 5-volt-kontakte. Nadat die laaste stap voltooi is, is die tegniese struktuur gereed.

Om die servo aan te sluit, is 'n IRF520 -transistor geneem vir stiller servopulse, die servo is deur 'n transistor gekoppel en die transistor self is direk met die Arduino verbind

'N WS2812 LED -strook is geneem vir beligting. Ons koppel die + 5V- en GND -penne aan die plus en minus van die kragtoevoer, en ons koppel Din aan enige digitale pen van die Arduino, dit is standaard die 6de digitale pen, maar enige ander kan gebruik word (Figuur 3.6). Dit is ook raadsaam om die grond van die Arduino aan te sluit op die grond van die kragtoevoer. Dit is ongewens om die Arduino as 'n kragbron te gebruik, aangesien die + 5V -uitset slegs 800mA stroom kan lewer. Dit is genoeg vir hoogstens 13 pixels van die LED -strook. Aan die ander kant van die band is daar 'n Do -uitlaat, dit kan met die volgende band verbind word, sodat die bande soos een kan word. Die kragaansluiting aan die einde word ook gedupliseer.

Om 'n normaalweg oop knoppie aan die Arduino te koppel, kan u die eenvoudigste manier doen: verbind die een gratis geleier van die knoppie met krag of grond, die ander met 'n digitale pen

Stap 4: Ontwikkeling van 'n beheerprogram vir die beheer van die belangrikste parameters

Ontwikkeling van 'n beheerprogram vir die beheer van die belangrikste parameters
Ontwikkeling van 'n beheerprogram vir die beheer van die belangrikste parameters
Ontwikkeling van 'n beheerprogram vir die beheer van die belangrikste parameters
Ontwikkeling van 'n beheerprogram vir die beheer van die belangrikste parameters
Ontwikkeling van 'n beheerprogram vir die beheer van die belangrikste parameters
Ontwikkeling van 'n beheerprogram vir die beheer van die belangrikste parameters

Laai die skets vir die program af

Arduino gebruik die grafiese tale FBD en LAD, wat die standaard is op die gebied van industriële beheerprogrammering.

Beskrywing van die FBD -taal

FBD (Function Block Diagram) is 'n grafiese programmeertaal van die IEC 61131-3 standaard. Die program bestaan uit 'n lys van stroombane wat van bo na onder opeenvolgend uitgevoer word. By die programmering word stelle biblioteekblokke gebruik. 'N Blok (element) is 'n subroutine, funksie of funksieblok (EN, OF, NIE, snellers, tydtellers, tellers, analoog seinverwerkingsblokke, wiskundige bewerkings, ens.). Elke individuele ketting is 'n uitdrukking wat grafies uit individuele elemente saamgestel is. Die volgende blok word aan die blokuitgang gekoppel en vorm 'n ketting. Binne die ketting word blokke streng uitgevoer in die volgorde van hul verbinding. Die resultaat van die stroombaanberekening word na 'n interne veranderlike geskryf of aan die uitvoer van die beheerder gestuur.

LAD taalbeskrywing

Ladder Diagram (LD, LAD, RKS) is 'n relais (leer) logika taal. Die sintaksis van die taal is gerieflik vir die vervanging van logiese stroombane wat op relay -tegnologie gemaak is. Die taal is gemik op outomatiseringsingenieurs wat in industriële aanlegte werk. Bied 'n intuïtiewe koppelvlak vir die logika van die beheerder, wat nie net die take van programmering en inbedryfstelling vergemaklik nie, maar ook 'n vinnige probleemoplossing in die toerusting wat aan die beheerder gekoppel is. Die relaislogika -program het 'n grafiese koppelvlak wat intuïtief en intuïtief is vir elektriese ingenieurs, wat logiese operasies verteenwoordig, soos 'n elektriese stroombaan met oop en geslote kontakte. Die vloei of afwesigheid van stroom in hierdie stroombaan stem ooreen met die resultaat van 'n logiese bewerking (waar - as stroom vloei; vals - as geen stroom vloei nie). Die belangrikste elemente van die taal is kontakte, wat figuurlik vergelyk kan word met 'n paar afloskontakte of 'n knoppie. 'N Paar kontakte word geïdentifiseer met 'n Booleaanse veranderlike, en die toestand van hierdie paar word geïdentifiseer met die waarde van die veranderlike. Daar word onderskei tussen normaal geslote en normaalweg oop elemente, wat vergelyk kan word met normaal gesluit en normaalweg oop knoppies in elektriese stroombane.

'N Projek in FLProg is 'n stel borde waarop 'n volledige module van die algemene stroombaan saamgestel is. Vir die gemak het elke bord 'n naam en opmerkings. Elke bord kan ook in duie gestort word (om ruimte op die werkarea te bespaar wanneer die werk voltooi is) en uitgebrei word. 'N Rooi LED in die bord se naam dui aan dat daar foute in die bord is.

Die stroombaan van elke bord is saamgestel uit funksionele blokke volgens die logika van die beheerder. Die meeste funksieblokke is konfigureerbaar, waarmee die werking daarvan aangepas kan word volgens die vereistes in hierdie spesifieke geval.

Vir elke funksionele blok is daar ook 'n gedetailleerde beskrywing wat te eniger tyd beskikbaar is en help om die werking en instellings daarvan te verstaan.

As hy met die program werk, hoef die gebruiker nie kode te skryf nie, beheer die gebruik van insette en uitsette nie, kontroleer die uniekheid van die name en die konsekwentheid van datatipes. Die program monitor dit alles. Sy kyk ook na die korrektheid van die hele projek en dui aan dat daar foute is.

Verskeie hulpmiddels is geskep om met eksterne toestelle te werk. Dit is 'n instrument om 'n intydse klok te initialiseer en op te stel, gereedskap vir die lees van toesteladresse op OneWire- en I2C-busse, sowel as 'n instrument om knoppiekodes op 'n IR-afstandsbediening te lees en op te slaan. Alle sekere data kan as 'n lêer gestoor word en later in die program gebruik word.

Om die projek te implementeer, is die volgende servo -aktiveringsprogram vir die voerder en die beheerder geskep.

Die eerste "MenuValue" -blok herlei inligting na die menublok om inligting op die LCD -skerm oor die servostuurstatus te vertoon.

In die toekoms kan die logiese bewerking "EN" u verder gaan of met die vergelykingseenheid "I1 == I2", dit wil sê, die vooraf ingestelde nommer 8 sal dieselfde wees as op die real-time klokmodule, dan die servo deur die sneller aangeskakel word, is dieselfde manier om die servo om 20:00 aan te skakel.

Om die servo deur 'n knoppie self aan te skakel, is die sneller-logika-funksie geneem en die knoppie nommer 4 is daarvoor bedoel, of die uitsending van inligting oor die kalmte van die servo na die spyskaartblok om inligting oor die LCD -skerm.

As 'n sein verskyn vir die servo om te werk, gaan hy na die blok met die naam "Skakelaar" en draai op 'n gegewe hoek die aandrywing en gaan na die beginfase deur die blok "Reset".

Lys van servo -bediening.

Die kompressor is altyd aan en gekoppel aan die relais, as 'n sein deur die "Servo On" -blok kom, gaan dit na die "TOF" -timerblok en skakel die relais vir 15 minute uit en stuur inligting oor die toestand van die relais in die spyskaart.

Lys van die termostaat.

Koppel die temperatuursensor deur die biblioteek

Aanbeveel: