Բովանդակություն:

DIY նախագծեր - Իմ ակվարիումի վերահսկիչ `4 քայլ
DIY նախագծեր - Իմ ակվարիումի վերահսկիչ `4 քայլ

Video: DIY նախագծեր - Իմ ակվարիումի վերահսկիչ `4 քայլ

Video: DIY նախագծեր - Իմ ակվարիումի վերահսկիչ `4 քայլ
Video: DIY նախագիծ: Մարգարիտ ազդեցություն պոլիմերային կավե ականջօղերի վրա: Մարգարիտ Shell- ի կեղծ մայրը 2024, Հուլիսի
Anonim
DIY նախագծեր - Իմ ակվարիումի վերահսկիչը
DIY նախագծեր - Իմ ակվարիումի վերահսկիչը
DIY նախագծեր - Իմ ակվարիումի վերահսկիչը
DIY նախագծեր - Իմ ակվարիումի վերահսկիչը
DIY նախագծեր - Իմ ակվարիումի վերահսկիչը
DIY նախագծեր - Իմ ակվարիումի վերահսկիչը

Este foi o projecto mais complexo realizado até agora no nosso ջրանցք, este բաղկացած ենք մեր իրականացումից `« բարձրացնել »մեր ջրի մակարդակի վրա, ինչպես նաև արագացնել մեր ջերմաստիճանը, para isso colocamos sensores de temperatura, de nível de água e de fluxo de de água, além disto tornamos a iluminação mais económica como também um controlo da temperatura da água do aquário mais eficiente e estável.

O controlo e monitorização é realizada através de um Arduino MEGA, que recebe os sinais vindos dos sensores instalados no aquário, estes depois são analisados sendo posteriormente reflectidas acções de forma a corrigir os parâmetros de temperatos estuminos estooso eumoso eumoso eumoso eumoso eumoso eumoso eumosoeso geoemo fora do padronizados.

Cada um dos sensores utilizados têm características especificas, pois têm funções muito diferentes. O sensor de temperatura é constituído por uma NTC (Negative Temperature Coefficient), կամ մերձեցում, որը թույլ է տալիս նվազեցնել ջերմաստիճանը (Ver Gráfico acima): Սենսորային ցուցիչն այն է, որ մենք օգտագործում ենք Arduino- ի entrada analógica- ն, որը բաժանվում է tensão de uma montagem de tensão variando և tensão nesse pino entre 0 e 5V (Ver imagem acima):

O sensor de fluxo tem a função de medir a quantidade de água que passa pelas tubagens do filtro do aquário, verificando assim se a o filtro está a funcionar correctmente. Este é constituído por uma pequena ventoinha, onde estão fixos pequenos ímanes ao longo do seu rotor, que activam magnamentamente um sensor ներքին միջավայրի նախագծման միջոցով Hall Switch Effect (Ver imagem acima):

Este ao sentir a passagem dos ímanes produz um sinal de pulso de onda quadrada, que varia a sua frecência consoante a rotação do rotor, ou seja, consoante a quantidade de agua que passa pelo sensor, assim este deve ser ligado aos pinos de entrada digital արա Արդուինոն:

Os sensores de nível ou bóias de nível tem como função verificar o nível de água do aquário, pois como a uagua do aquário é ligeiramente aquecida esta tende em evaporar, assim estes sensores activam avisos semper des ba baado o oíível.

No aquário estão montados 2 destes sensores que se comportam com interruptores, estes devem ser ligados em serie, pois esta montagem apenas deve activar os avisos caso ambos os sensores estejam activados, diminuindo assim a possibilidade de erro. (Ver imagem acim a possibilidade de erro):

LED- ի լուսավորություն, LED- ի ուղարկում, որը թույլ է տալիս LED- ն օգտագործել 10W e são adadados de plantas, normalmente designados por Full Spectrum, կամ արտադրել, արտադրել, լուսաբանել, անհրաժեշտ է տնկել անհրաժեշտություն.

As vantagens da utilização deste tipo de iluminação são o facto de os LED serem bastante pequenos em relação à sua potência e assim mais económicos, alem disto também iluminam apenas numa direcção não sendo անհրաժեշտ (արտացոլում) անհրաժեշտ պատկերացում (անհրաժեշտ պատկերացում).

For fim, instalamos 2ventoinhas de PC que têm a função de arrefecer a uagua do aquário principalmente quando a temperatura ambiente está liftada o que acontece normalmente durante o Verão, este sistema é muito importante pois a temperatura da água éo dosos, estas ventoinhas funcionam a 12V DC e devem ser o mais silenciosas possivel.

Caso queiram saber mais sobre estes sensores vejam as suas datasheet (Ver ficheiros abaixo) e os nossos tutoriais onde explicamos detalhadamente o seu funcionamento e características.

Temperatերմաստիճանի տվիչ

www.instructables.com/id/Arduino-Tutorial-…

Sensor de Fluxo:

www.instructables.com/id/Arduino-Tutorial-…

Քայլ 1: Aquario պատրաստելը

Image
Image
Aquario պատրաստելը
Aquario պատրաստելը
Aquario պատրաստելը
Aquario պատրաստելը

Começamos semper os nossos projectos desenhando e testando o circuitos através de uma pequena Breadboard e os բաղադրիչներ, որոնք անհրաժեշտ են մեր իրականացման համար, որոնք ավարտվում են testes terminados կամ confirmada a sua funcionalidade, partimos para a concretização վերջնական:

Նյութական անհրաժեշտություն

  • 2x Ventoinhas PC 12V DC 80 մմ;
  • 4x LED SMD 10W Full Spectrum;
  • 4x Dissipadores de calor LED;
  • 6x LED Amarelos de 1W;
  • 4x LED Azuis de 1W;
  • 1x PCB de 4x4 սմ;
  • 2x Bóias de nível;
  • 1x Sensor de Temperatura NTC 10KOhm;
  • 1x Sensor de Fluxo:

Instalação do Sensor de Fluxo:

O sensor de fluxo é muito fácil de instalar pois apenas temos que coloca-lo numa das tubagem de entrada ou saída de água do filtro do aquário, no entanto, utilizamos umas ligações rápidas para mangueiras tornando doimis serimagis desimimis serimagis desimarisim seris fácil a limpeza dos tubos do filtro (ver imagem acima).

Instalação das Bóias de nível:

As bóias de nível são instaladas em cantos opostos do aquário de formas a que a o sistemas seja menos errático. Estão montadas em pequenos suportes desenhados através de o programa de desenho técnico SolidWorks (Ver imagens acima) և materializados através de Impressão 3D (Ver ficheiros abaixo) ծրագրերը: Այն ապահովում է հեշտությամբ տեղադրված ոչ մի ջրային և առևտրային սարքավորումներ, որոնք թույլ են տալիս ձեռք բերել այնպիսի գույն, ինչպիսին է բարձր մակարդակի ձևավորումը (Ver ficheiros STL abaixo):

Instalação das Ventoinhas:

Սարքի սառեցման համակարգեր, որոնք օգտագործվում են 80 մմ հեռավորության վրա ՝ օգտագործելով 80 մմ արագություն, ինչպես նաև ջրային համակարգեր, որոնք օգտագործում են համակարգչի օգտագործման ունակությունները: Estas Ventoinhas- ն աշխատում է 12V DC- ով, այն կարող է լռել և լռել, քանի որ այն օգտագործվում է մի շրջանառության մեջ, որի հետևանքն այն է, որ դուք կարող եք գերազանցել ջերմաստիճանը, ինչը կարող է հանգեցնել ջերմաստիճանի ջերմաստիճանի բարձրացմանը:

Արգելվում է օգտագործել կամ լրացնել համակարգերի ամբողջական տեսքը, որոնք կարող են առաջանալ որպես kolberuras, ինչպես նաև չթողնել SolidWorks (Ver Imagens acima) և արտադրական աշխատանքներ Impressão 3D (Ver ficheiros abaixo) համար:

Instalação da Iluminação de presença:

Լուսնի լուսնային օրացույցը կամ Luz Lunar- ը իրականացնում են PCB (Ver imagem acima) սարքավորումները, որոնք տեղադրված են 1Wamarelos և azuis լուսադիոդների վրա: PCB Design- ի ծրագրային ապահովման (EasyEDA) միջոցով մենք կարող ենք միացնել այն acetato- ով, որը թույլ է տալիս PCB- ին ներմուծել կամ ուղարկել ներմուծում, որը կարող է ուղարկվել այլընտրանքային (ver ficheiros) հասցեով:

PCB- ն արտադրում է մի քանի մեթոդներ, որոնք բաղկացած են մեր 3 գործընթացներից, որոնք վերաբերում են գործընթացին, որը բացահայտում է գործընթացը, կամ կոռոզիոն է, ինչպես նաև գործընթացների լիմպեզա և ակադեմիա: Այս մեթոդը կարող է օգտագործվել մեր նախագծերի վերջին նախագծերի համար, որոնք թույլ են տալիս կանխատեսել մեր կանխատեսումները, որոնք կապված են մեր նախագծերի հետ, որոնք կապված են մեր նախագծերի հետ, երբ մենք օգտագործում ենք որոշակի գործընթացներ:

www.instructables.com/id/DIY-Projects-My-U…

www.instructables.com/id/DIY-Projects-My-A…

Esta iluminação tem apenas uma finalidade estética, ուղարկվում է 2circuitos de LED- ի միջոցով, որը նախատեսված է անհատական կամ անհատական կապի միջոցով, որն ուղղված է լուսավորության կամ ջրազերծման գործառույթի հիմնական լուսավորությանը: Առանց դրա, այն կարող է փոխվել, այն կարող է լուսաբանել ինչպես fases da Lua, այնպես էլ այն թույլ է տալիս օգտագործել 2 շրջան և ida medida que essas fases vão alterando (Ver imagem acima):

Instalação de Iluminação de principal:

4 LEDSMD de 10WFull Spectrum- ը իդեալական է տնկարկների լուսավորության համար: Estes são controlados individualmente sendo needário uma fonte de alimentação com a potencia equadada para este tipo de LED, poes estes são bastante potentes եւ exigem uma fonte alimentação estável.

Ատենչաո:

Չի թույլատրվում լուսադիոդային ուղեցույցը, որն ապահովում է սննդամթերքի, ինչպես նաև այն LED- ների, ինչպես նաև էլեկտրական լարման, որոնք օգտագործվում են 9V և como de font de alimentação 12 օգտագործելու համար: DC colocamos em serie uma resistência de potência ou dissipadora (Ver imagem abaixo):

Այն կարող է ձևավորվել որպես լուսադիոդային լուսավորություն LED- ի կամ դրա նկատմամբ հարգանքի շրջանառության մեջ, որը թույլ է տալիս մեզ փոխանցել մերձավոր արևածագը, ինչպես նաև միացնել ամենաարդյունավետությունը (Ver ficheiros abaixo):

Քայլ 2: Caixa De LED Aquário:

Caixa De LED Aquário
Caixa De LED Aquário
Caixa De LED Aquário
Caixa De LED Aquário
Caixa De LED Aquário
Caixa De LED Aquário

De forma a distribuir as alimentações dos sistemas do iluminação de ventilação do nosso aquário a partir de um único տեղական, կառուցում է մի համակարգում, որն օգտագործվում է մի քանի համակարգերի մեջ, որպես դիմադրողականություն, որոնք լուսավորում են LED- ի համակարգերի հիմնական աղբյուրները և կանխատեսումները:

Նյութական անհրաժեշտություն

  • 1x Սնուցման սարք IP67 12V 50W;
  • 4x PWM արագության վերահսկիչ ZS-X4A;
  • 4x դիմադրողականություն 10 Օմ 10 Վտ;
  • 1x Dissipador de calor;
  • 1x օդափոխիչ 40 մմ 12V 0, 1A;
  • 1x ընդհատիչ 2 դիրքով;
  • 1x PCB de 13x10 սմ;
  • 2x դիմադրողականություն 100 Օմ 2 Վտ;
  • 4x տերմինալային բլոկ de 2;
  • 1x տերմինալային բլոկ de 3;
  • 1x տերմինալային բլոկ de 4.

Alem das resistências de potência dos LED SMD de 10W, estão ligados and equipamentos PWM Controller ZS-X4A estes թույլատրում է վերահսկել ինտենսիվությունը լուսավորող սարքերի համար, քանի որ նրանք կարող են դիմակայել տարբեր փոփոխությունների, որոնք ենթադրում են հաճախականություններ, որոնք թույլ են տալիս օգտագործել ձեր հաճախականությունները

Ոչ մի կերպ, քանի որ դիմադրողականությունը կարող է լինել aquecerem um pouco sendo needorio colocar um dissipador de calor e uma pequena ventoinha de PC 40mm, esta funciona 12V DC sendo alimentada através do próprio circuito eléctrico porendo serua controla caixa do circuito.

Alem das resistência dos LED SMD, também foram colocadas as resistenscias de 100 Ohms do sistema de iluminação de presença, estas têm a mesma função que as anteriores, no entanto com uma potencia de cerca de 2W (Ver cálculos acima):

PCB- ն կարող է միացնել PCB Design- ի (EasyEDA) ծրագրերը, որոնք տպագրվում և փոխվում են միացումով (Ver ficheiros abaixo), ուղարկելով նյութական նյութերի ուղեցույց método químico (Ver imagens acima):

PCB- ն թույլ է տալիս օգտագործել SolidWorks- ը (Ver Imagens acima) և Impressão 3D- ի նյութական նյութերը: Esta está preparada para a instalação das ventoinha de arrefecimento das resistências de potência e o respectivo dissipador de calor (Ver ficheiros abaixo):

Քայլ 3: Controlador Do Aquário:

Controlador Do Aquário
Controlador Do Aquário
Controlador Do Aquário
Controlador Do Aquário
Controlador Do Aquário
Controlador Do Aquário

Vamos então ao nosso controlador, este equipamento irá controlar e monitorizar os sistemas de iluminação principal e de presença, como também a temperatura do aquário. Este é constituído por um Arduino MEGA, que recebe os sinais dos sensores distribuídos pelo aquário, activando posteriormente as ventoinhas de սառնարանային տերմինալները, որոնք օգտագործվում են որպես համակարգեր, որոնք օգտագործվում են լուսավորելու համար, isto através de módosoos valosadosos valoosodososalos dosadosos valosadosos valoosodososadososalosadososaladososadalosadadososadalosadodososadalosadodoosadalosadelosadelosadelosadelosadelosadelo,, este activa avisos luminosos e sonoros (Ver circuito acima).

Նյութական անհրաժեշտություն

  • 1x Arduino MEGA;
  • 1x LCD 1602;
  • 1x RTC DS1307;
  • 1x Bateria de 3V CR2032;
  • 5x Botões de pressão;
  • 1x Resistência variável de 10K Ohms;
  • 1x Resistência 10K Ohms;
  • 1x Resistência 220 Օմ;
  • 6x Resistência 1K Ohms;
  • 1x PCB 15x10 սմ;
  • 1x LED Azul 1W;
  • 1x LED Amarelo 1W;
  • 1x LED Vermelho 1W;
  • 3x Resistência 100 Օմ;
  • 1x Modulo de 2 Relés;
  • 1x Modulo de 4 Relés;
  • 1x Modulo de 1 Relé;
  • 2x տերմինալային բլոկ de 2;
  • 1x տերմինալային բլոկ de 3;
  • 1x տերմինալային բլոկ de 4;
  • 5x Արական և իգական վերնագրի վարդակից:

Որպես սարքավորման սարք, որը կօգտագործի հետևյալ բաղադրիչները, որոնք կօգնեն ձեզ սովորեցնել anteriores antosiores no nosso ջրանցքը, այն կտևի 1602 LCD- ով ՝ տեսանելի տեսքով և ընտրելով մենյու, քանի որ դրանք կարող են օգտագործվել որպես տեղեկատվություն, ինչպես նաև չթույլատրված տեղեկատվություն, de hora e data ao Arduino MEGA, tendo esta uma pilha tipo botão CR2032 para que não perca a informação guarda, garantindo que a mesmo sem alimentação o Arduino não deixará de ter a hora e dataactualizadas.

Arduino MEGA:

O Arduino MEGA uma puma com um micro-controlador que possui 54 pinos de entrada e saída de sinal digital, 14 dos quais podem servis uso como saídasPWM (Pulse-Width Modulation) եւ 16entradas de sinal analogico: Todos estes pinos podem ser utilizados para ligar vários tipos de sensores entre os quais os sensores do nosso aquário. Alem dos sensores estes pinos também podem controlar vários tipos de componentes como Módulos de relés, LCD եւ LED:

Տեղադրեք LCD 1602:

LCD 1602 սարքի միջոցով դուք պետք է կարգավորեք և կազմաձևեք այն, որպեսզի կարողանաք օգտագործել մի մեծ տեսականի, որը թույլ է տալիս օգտագործել հատուկ էֆեկտիվություն (Ver legenda acima): Esses pinos podem ser agrupados em 3 grupos, o grupo dos Pinos de Alimentação, o de Pinos de Comunicação e o de Pinos de Informação.

Pinos de Alimentação:

  • Gnd;
  • Vcc;
  • V0;
  • LED - ou A (Anodo);
  • LED + ou K (Catodo):

O Pino V0 tem funcão de ajustar o contraste dos caracteres, for podermos controlar esse ajuste ligamos este pino a uma resistencia տարբեր տարբերակներ 10KΩ, que funcionar como um divisor de tensão alterando assim a tensão entre 0 e 5V):

Os pinos de alimentação do LED de luz de fundo do LCD (A e K) são também ligados aos pinos de Gnd e +5V do Arduino MEGA, no entanto, ligamos em série uma resistência de 220Ω para que o brilho não seja demasiado intenso, Մենք չենք կարող թույլ տալ, որ os LED LED- ները միացված լինեն LCD սարքին:

Pinos de Comunicação:

  • RS (գրանցման ընտրություն);
  • R / W (կարդալ / գրել);
  • E (Միացնել):

Կապի մասին տեղեկատվություն չկա, որ կարող եք օգտագործել R/W, ինչպես նաև օգտագործել Gnd, ինչպես նաև թույլ չտալ, որ այն թույլ չտա որևէ LCD էկրան բարձրացնել կամ բնութագրել, ինչպես նաև ապահովել LCD- ի հիշողության ներքին համակարգեր:.

Pinos de Informação:

  • D0;
  • D1;
  • D2;
  • D3;
  • D4;
  • D5;
  • D6;
  • D7.

Կիրառելի է օգտագործել 4 դյույմ 8 տեղեկատվական տեղեկատվություն, կարող եք օգտագործել LiquidCrystal biblioteca- ի միջոցով: Հնարավոր չէ օգտագործել Arduino enviar os dados para o LCD- ով ՝ բաժանելով 2 մասեր, կամ, եթե անհրաժեշտ է, և անհրաժեշտ է, որ կարողանաք կիրառել mesos dosimim paraisar: o LCD apenas needita dos pinos de informação de D4 a D7.

Caso queiram saber mais so o o LCD 1602 vejam o nosso tutorial onde explicamos o seu funcionamento mais pormenorizadamente.https://www.instructables.com/id/Arduino-Tutorial-LCD-Temperature-Sensor/

Instalação da RTC DS1307:

Այս տեղեկատվությունը կարող է օգտագործվել տվյալների փոխանցման և տվյալների ձևի ճշգրիտ հաստատման համար, երբ այն օգտագործվում է, երբ մենք օգտագործում ենք արտաքին և արտաքին պահանջներ, որոնք կօգնեն ձեզ օգտագործել տեղեկատվության որակը:

Neste projecto foi utilisada uma RTC DS1307, que արդ 2 linhas de pinos de alimentação e de comunicação (Ver legenda acima), no entanto, iremos utilisar a linha com menos pinos, pois apenas são needários os pinos Gnd, Vcc, SDA e SCL.

Pinos de Alimentação:

  • Gnd;
  • Vcc;
  • Չղջիկ:

Em relação ao pino Bat apesar de não ser um pino de alimentação coloca-mos-o neste grupo, pois este pino está ligado directamente à bateria do tipo botãoCR2032 da RTC que serve de alimentação interna da placa, sendo esteo pino muito useiz da carga da bateria.

Pinos de Comunicação:

  • SCL;
  • SDA;
  • DS;
  • SQ

Oslinos de comunicaçãoSCL e SDA da placa RTC fazem parte de um sistema de comunicação chamado I2C (Ver diagrama acima), onde é opévelvel comunicar com um ou mais equipamentos através de apenas duas únicas linhas, sendo o SDAmou SINIAL կամ transA e Recebe a informação eo SCL կամ SERIAL OCԱՄԱՈԹՅՈՆ o saber quado é que os equipamentos têm que receber ou enviar a informação, ficando assim todos sincronizados.

Caso queiram saber mais sobre է RTC DS1307- ի միջոցով կամ ոչ ուսուցողական ձեռնարկի միջոցով, որը բացատրում է իր գործառնական գործառույթները:

www.instructables.com/id/Arduino-Tutorial-Clock-LCD/

Alem dos componentes anteriores, que são os mais importantes, são useizados também 4botões de pressão que թույլտվության կամ օգտագործման օգտվողների անունները թույլ են տալիս օգտագործել մենյուի տեսողական պատկերներ և փոփոխություններ, ինչպես նաև տեղեկություններ տրամադրել pelos sensores կամ Guarda no Arduino, estes boteses men longes podemes dependendo da página e tipo de informação visualizada.

Մնացել է մի քանի լրացումներ, որոնք վերաբերում են մամուլին, քանի որ դրանք օգտագործում են էլեկտրոնային ֆունկցիայի ձևը `օգտագործելով ձևի, որը կարող է ընդհատվող ուժի մեջ լինել:

Caso queiram saber mais sobre a montagem e funcionamento dos botões de pressão vejam o nosso tutorial onde explicamos mais pormenorizadamente.

www.instructables.com/id/Arduino-Tutorial-…

PCB- ն կարող է մշակել միացում PCB- ի միջոցով, որը թույլ է տալիս վերահսկել ջերմաստիճանի տվիչները, որոնք թույլ են տալիս արագացնել սենսորային արագությունը: Ստորև բերված են հատուկ ջերմաստիճանի և 10KΩ սենսորների ստեղծման նշան, լոգոն և դիմադրողականություն, որոնք պահանջում են 10KΩ սերվերի դանդաղեցում:

O ponto comum deste divisor de tensão é ligado a um dos pinos analógicos do Arduino Mega (Ver imagem acima), neste caso escolhemos oo pino A0, assim à medida que a temperatura altera a tensão nesse pino analógico também altera entre, assim possível ao Arduino realizar essa leitura.

Caso queiram saber mais sobre a montagem e funcionamento do sensor de temperatura vejam o nosso tutorial onde explicamos mais pormenorizadamente- ի միջոցով:

www.instructables.com/id/Arduino-Tutorial-…

O controlador tem 3avisos luminosos que indicam diferentes acontecimentos, o LED de cor azul indica que a temperatura da gua está abaixo da temperatura mínima seleccionada, o LED de cor vermelha que indica que a temperatura está acima da temperatura máxima seimccionada e por f cor amarela que indica que o fluxo de agua do filtro do aquário está a abaixo do seleccionado, sendo todos estes ligados a pinos de saída de sinal digital do Arduino MEGA- ի միջոցով:

For fim utilizamos 3 módulos de relés diferentes, sendo um de 1relé (Ventoinhas de arrefecimento), outro de 2relés (Iluminação de presença) և ultimo outro de 4relés (Iluminação principal): Estes são indicados para montagens com o Arduino tendo a specialidade de serem activos não com a sada de sinal digital do Arduino em nível alto mais sim em nível baixo.

PCB- ն կարող է միացնել PCB Design- ի (EasyEDA) ծրագրերը, որոնք տպագրվում և փոխվում են միացումով (Ver ficheiros abaixo), ուղարկելով նյութական նյութերի ուղեցույցներ método químico (Ver imagem acima):

PCB- ն թույլ է տալիս օգտագործել SolidWorks- ը (Ver Imagens acima) և տպել տպավորիչ տպավորիչ 3D- ը: Esta divide-se em 3 partes, assim a parte frontal é onde estão indicações das ligações dos nossos sensores ao controlador, parte intermédia que é onde está montada եւ fixa a nossa PCB com o Arduino MEGA o LCD ea RTC, por fim a parte traseira onde se encontram todos os módulos de relés tendo abertura para a passagem e ligação das respectivas cablagens cablagens (Ver ficheiros abaixo):

Քայլ 4: Código:

Código
Código
Código
Código
Código
Código
Código
Código

Agora só nos falta programer o nosso controlador do aquário, para isso ligamos o cabo USB ao nosso controlador e carregamos o respectivo código no Arduino MEGA (Ver ficheiro abaixo):

Mas antes, vamos explicar resumidamente o nosso código, sendo que é neste que vamos colocar as տարբեր գործառույթներ անհրաժեշտ են մանիպուլյացիայի մեր ճաշացանկի համար

Assim começamos lugar deve ser elaborado um pequeno esquema de blocos com a estrutura de páginas e funções que o nosso equipamento terá (Ver esquema acima), sendo assim mais fácil elaborar o nosso código e caso seja needárioooemoberoosooemoperoiro aloperoirouoooperoooirperoperooooooirperoperooooooooooooooooooooooooooooooooooooooooooooonoooo. encontramos.

// Correr a função LOOP կրկնություն:

void loop () {// Condição para a leitura da distância: if (Menu == 0) {// Correr a função: Pagina_0 (); } // Condição para a leitura da temperatura: else if (Մենյու == 1) {// Correr a função: Pagina_1 (); } // Condição para a leitura da temperatura: else if (Մենյու == 2) {// Correr a função: Pagina_2 (); }} // էջ 0: անվավեր Pagina_0 () {// Código referente funs função desta página: } // Էջ 1: անվավեր Pagina_1 () {// Código referente funs função desta página: } // Էջ 2: անվավեր Pagina_2 () {// Código referente funs função desta página: }

Caso queiram saber mais sobre este tipo de esquema de menu vejam o nosso tutorial onde explicamos como elaborar e programar uma menu no Arduino.

www.instructables.com/id/Arduino-Tutorial-…

Depois de sabermos qual a estrutura do código passamos para bibliotecas dos componentes que interagem com o Arduino, neste projecto importarmos as bibliotecas LiquidCrystal.h para LCD 1602, as TimeLib.h, a Wire.hea DS1307RTC.h para a plala, a Thermistor.h para o nosso sensor de temperatura, e por fim a EEPROM.h que noos permite gravar e ler dados gravados na memoria do Arduino, tudo isto através do gestor de bibliotecas do software do Arduino.

Começamos então pela biblioteca LiquidCrystal.h, հեշտությամբ կարող եք կարգաբերել LCD 1602 -ը ՝ ուղարկելով անհրաժեշտ 2 ֆունկցիաներ ՝ այս գործառույթի ուղղման համար:

Համապատասխան LCD- ի համար անհրաժեշտ է պարզել տեղական որոշումները, որոնք գալիս են գույնի կամ բնութագրիչներից, որոնք կարող են առաջանալ, եթե մենք ցանկանում ենք, որ մեր տեքստը դիպչի մեր տեքստի կամ պատուհանների վրա, երբ այն նախատեսված է 16 էկրանների և 2 տևողության համար: esses limites não aparecerão os caracteres.

// Definir os pinos de comunicação e informação do LCD:

LiquidCrystal LCD («RS», «E», «D7», «D6», «D5», «D4»);

ե

void setup () {

// Inicia a comunicação com LCD 16x2: lcd. սկսել (2, 16); } void loop () {// Սահմանել կոլուն (em 16) և a linha (em 2) և LCD onde escrever: lcd.setCursor (0, 0); // Escreve no LCD: lcd.print ("Temperatura:"); }

A biblioteca thermistor.h permite-nos apenas com uma função configurar este tipo de de sensor de temperatura através do código seguinte.

#ներառել «thermistor.h» // Ներմուծել «thermistor» գրադարան

// Esta função սահմանել ՝ THERMISTOR SENSOR (Pino_Sensor, 10000, 3950, 10000); // Pino de entrada do sensor; // Resistência nominal a 25ºC do sensor; // Coeficiente beta do sensor; // Valor da resistência do sensor.

Որպես 3bibliotecas, a TimeLib.h, a Wire.h e a DS1307RTC.h հետևում են հրահանգներին, օգտվում են հղումներից, որոնք վերաբերում են RTC- ի տարածքին:

TimeLib.h- ի գրադարանային գործառույթը, որը վերաբերում է տեմպի ֆունկցիոնալությանը, տարբերվում է տարբեր տարբերակներից, րոպեներից, ժամերից, օրերից, այլուրից և այլն, նպաստում է արագության արագացմանը:

A biblioteca Wire.h activa as funções de comunicação entre equipamentos através do sistema de comunicação I2C- ը: Os pinos de comunicação deste sistema são diferentes nos vários modelos de Arduino- ի միջոցով, այն կարող է օգտագործվել որպես «https://www.arduino.cc/en/Reference/Wire» հղում:

Ի վերջո, գրադարանային DS1307RTC.h- ն ակտիվանում է որպես գործառնական գործառույթներ, որոնք թույլ են տալիս թույլատրել արագություն և արագություն RTC- ում:

դատարկ շրջան () {

int h, m, s, D, M, A; // Variáveis para alteração da hora e data. // Սահմանել uma nova hora e data: setTime (h, m, s, D, M, A); // Grava na RTC os dados de tempo: RTC.set (այժմ ()); // Lê na RTC os dados de tempo: RTC.get (); }

Por fim a biblioteca EEPROM.h que permite gravar e lerdados gravados na memória não volátil do Arduino, sendo possível memorizar valores como por exemplo, hora de ligar iluminação, valores de temperatura máxima e mínima e fluxo de agua semua էներգիա n sendo sendo needário configurar novamente estes valores ou configurações.

Este tipo de memória é diferente nos vários tipos de placas do Arduino, tendo diferentes capacidades, no caso do Arduino MEGA (ATmega2560 - 4096 Bytes) tem 4KB, assim este terá 4096endereços կամ posiçsoes, onde podemos dadar. Ոչ entanto, só podemos guardar nesses endereços dados de 8 bits, կամ seja, com um valor até 256 (Ver quadro acima):

EEPROM do Arduino através desta biblioteca, poderemos utilisar os seus principais comandos: EEPROM »

// Apagar os dados na EEPROM:

int i; // Variável para os endereços da EEPROM; void loop () {for (int i = 0; i <EEPROM.length (); i ++) {EEPROM.write (i, 0); // "i" = Endereço onde será escritos 0.}} // ---------------------------------- ------------------- // Ler os dados gravados da EEPROM: int i; // Variável para os endereços da EEPROM; int Valor; // Variável para leitura da EEPROM; void loop () {Valor = EEPROM.read (i); // "i" = Endereço onde serão lidos os dados. } // --------------------------------------------------- ------ // Gravar dados na EEPROM. int i; // Variável para os endereços da EEPROM; int Valor; // Variável para leitura da EEPROM; void loop () {EEPROM.write (i, Valor); // "i" = Endereço onde serão lidos os dados. }

Caso queiram saber mais sobre a RTC DS1307 e a memoria EEPROM do Arduino vejam o nosso tutorial onde explicamos pormenorizadamente o as suas funções e características.

www.instructables.com/id/Arduino-Tutorial-…

Օգտագործելով սենսորները Fluxo- ի համար անհրաժեշտ է մատենագրված գրականությունը, դա չի նշանակում, որ այն կարող է վերականգնվել կամ օգտագործվել որպես որոշիչ կամ արժեքավոր միջին սենսոր: Como este sensor produc um sinal de onde quadrada, que varia a sua frequência consoante a quantidade de agua que passa por ele ele, teremos de utilizar a função "PulseIn", que conta oo tempo em que esse sinal está em nível alto, bastando colocar a palavra "High" eo tempo em que o sinal está em nível baixo com a palavra "Low", no final a soma destes 2 tempos será o tempo total de cada ciclo, no entanto, este valor de tempo é dado em micro-Segundo, ou seja, 1000000μSeg.

Depois basta um código idêntico ao descrito abaixo para que possamos encontrar o valor pretendido, teremos apenas de ter em atenção quais as características do nosso sensor através da sua datasheet pois a razão de Pulsosend serendaende/(L/min) (Ver cálculos acima):

// A rotina de LOOP e performada repetidamente: void loop () {// Contagem do tempo de duração de cada pulso em nível Alto e nível baixo. Contagem_Total = (pulseIn (Pino_Sensor, HIGH) + pulseIn (Pino_Sensor, LOW)); // Contagem de numero de pulsos por segundo (1Seg = 1000000µSeg): Calculo_Fluxo = 1000000/Contagem_Total; // Multiplicação de (Num. Total de pulsos/Seg) x (Pulse Caracteristics), // (Ver na Datasheet Flow Sensor e cálculos acima) ՝ Calculo_Fluxo = (Calculo_Fluxo * 2.38); // Փոխարկել մլ/վ em մլ/րոպե ՝ Calculo_Fluxo = Calculo_Fluxo * 60; // Փոխակերպել մլ/րոպե em L/րոպե Calculo_Fluxo = Calculo_Fluxo/1000; եթե (Calculo_Fluxo <0) {Calculo_Fluxo = 0; } այլ {Calculo_Fluxo = Calculo_Fluxo; }

}

Կառավարման համակարգի կառավարման համակարգերի կառավարման համակարգերի կառավարման համակարգերի կառավարման համակարգերի կառավարման համակարգերի կառավարման համակարգերի կառավարման համակարգերի կառավարման համակարգերը կարող են ծառայել որպես երկու հիմնական պարամետրեր, ինչպես նաև մի շարք երկրներ ligado (Ver imagem acima):

Em relação à iluminação de presença ou Lunar apenas teremos de seleccionar a data da próxima Lua cheia como o ciclo da lua tem aproximadamente 28 dias o controlador liga e desliga os LED da iluminação de presença alterando a 7 configuraura 7 de լրացնել 7 diarraéo 7 սահմանումներ 7 տարբերակները ea Lua cheia novamente.

Como este artigo já vai um pouco longo, podem encontrar o ficheiro com o código completeo e que estamos a useitar actualmente (Ver ficheiro abaixo):

Procurem os nossos outros projectos e tutoriais acerca do Arduino- ի միջոցով, որը բացատրում է տարբեր տեսարժան վայրերի և գործառույթների մի քանի բաղադրիչներ, ինչպես նաև այցելել է ջրանցք ոչ Youtube- ում, Instagram- ում, Facebook- ում կամ Twitter- ում:

Abraço e até ao próximo projecto:

Խորհուրդ ենք տալիս: