สารบัญ:

โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน: 4 ขั้นตอน
โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน: 4 ขั้นตอน

วีดีโอ: โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน: 4 ขั้นตอน

วีดีโอ: โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน: 4 ขั้นตอน
วีดีโอ: 11 การทดลองสุดแปลกและเหลือเชื่อที่นักวิทยาศาสตร์เคยทำ! (เพื่อ?) 2024, กรกฎาคม
Anonim
โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน
โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน
โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน
โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน
โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน
โครงการ DIY - ตัวควบคุมพิพิธภัณฑ์สัตว์น้ำของฉัน

Este foi o projecto mais complexo realizado até agora no nosso canal, este prepare em realizar um "upgrade"a um aquário que sofreu um restauro já há algum tempo, para isso colocamos sensores de temperatura, เริ่มต้นจากกัวเดอฟลักซ์, além disto tornamos a iluminação mais económica como também um controlo da อุณหภูมิ da água do aquário mais eficiente e estável.

ควบคุมและตรวจสอบ é 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âdaros de estores fora ทำ padronizados

Cada um dos sensores utilizados têm características especificas, pois têm funções muito ที่แตกต่างกัน O sensor de temperatura é constituído por uma NTC (ค่าสัมประสิทธิ์อุณหภูมิเชิงลบ), ou seja, a sua resistência diminui com o aumento da temperatura (Ver Gráfico acima). Este tipo de sensor é utilizado nos pinos de entrada analógica do Arduino, através de uma montagem divisor de tensão ตัวแปร a 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, ยืนยันตัวตน se a o filtro está a funcionar correctamente. Este é constituído por uma pequena ventoinha, onde estão fixos pequenos ímanes ao longo do seu rotor, que activam magneticamente um sensor interno designado โดย 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 frequência consoante a rotação do rotor, ou seja, conoante a quantidade de agua que passa pelo sensor, assim este deve deve seros ดิจิตอล ทำ Arduino

เซ็นเซอร์ของ nível ou bóias de nível tem como função verificar o nível de água do aquário, pois como a água do aquário é ligeiramente aquecida esta tende em evaporar, assim estvisesos เซ็นเซอร์ activam a activam a activam

ไม่มี 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 avios caso ambos os sensores estejam activados, diminuindos รูปภาพ

ภาพที่ฉายบนจอภาพสำหรับ LED, sendo que cada LED ที่มีกำลังไฟ 10 วัตต์สำหรับหลอดไฟสำหรับหลอดไฟ LED, ปกติการออกแบบที่ออกแบบโดย Full Spectrum, ou seja, produzem iluminação de plantas, normalmente designados por Full Spectrum, ou seja, produzem iluminação em todo quem.

ในฐานะที่เป็น 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 ão sendVeño send

Por fim, instalamos 2ventoinhas de PC que têm a função de arrefecer a água do aquário principalmente quando a temperatura Ambiente está elevada o que acontece normalmente durante o Verão, este âquário é muito สำคัญ กว่า กัว 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.

เซ็นเซอร์อุณหภูมิ:

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

เซนเซอร์เดอฟลักซ์:

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

ขั้นตอนที่ 1: เตรียม Aquário:

Image
Image
เตรียม Aquário
เตรียม Aquário
เตรียม Aquário
เตรียม Aquário

Começamos semper os nossos projectos desenhando e testando o circuitos através de uma pequena Breadboard e os componentes necessários para a sua realização, só depois destes testes terminados e Confirmada a ão sua funcionalidadec วงจรสุดท้าย.

วัสดุที่จำเป็น:

  • 2x Ventoinhas PC 12V DC 80 มม.;
  • 4x LED SMD 10W เต็มสเปกตรัม;
  • 4x Dissipadores de แคลอรี่ LED;
  • 6x LED Amarelos เดอ 1W;
  • 4x LED Azuis เดอ 1W;
  • 1x PCB ขนาด 4x4 ซม.;
  • 2x Bóias de nível;
  • 1x เซนเซอร์ อุณหภูมิ NTC 10KOhm;
  • 1x เซนเซอร์ เดอ Fluxo

การติดตั้ง Sensor de Fluxo:

เซ็นเซอร์ของ fluxo é muito fácil จากการติดตั้ง 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 mandos facil a limpeza dos tubos do filtro (ver imagem acima).

Instalação das Bóias เดอ nível:

ในฐานะที่เป็น 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). Estes suportes são facilmente instaláveis no aquário e são ajustáveis para que seja possível colocar as bóias de nível na altura poseida (Ver ficheiros STL abaixo).

Instalação das Ventoinhas:

ติดตั้งบนระบบทำความเย็นแล้ว ระบบทำความเย็นแบบอัตโนมัติและแบบใช้คอมพิวเตอร์ส่วนบุคคล Estas Ventoinhas funcionam ที่ 12V DC, são muito silenciosas e quando accionadas proporcionam a circulação de ar junto à superfície da água, que consequentemente faz baixar a temperatura da água do aquário.

สิ่งที่ต้องทำ o sistema eléctrico ficam completamente ocultos após serem colocadas as suas coberturas, também desenhadas no SolidWorks (Ver Imagens acima) e produzidas através de Impressãocheiro 3D (Ver fixocheiro 3D)

Instalação da Iluminação พรีเซนซา:

A iluminação de presença ou Luz Lunar é realizada através de uma pequena PCB (Ver imagem acima) บนเดสก์ท็อป montados os LED de 1Wamarelos e azuis. Esta PCB foi desenhada através de um programa de PCB Design (EasyEDA), onde é é possível imprimir o circuito em acetato, também deixamos-vos o desenho do PCB pronto a imprimir ou para importar, sendo possível altera-lo (Ver fiche).

A produção desta PCB foi realizada através de de método químico que ประกอบด้วย 3 กระบวนการ, que são o processo de revelação, o processo de corrosão e o processo de limpeza e acabamento. Este método tem sido utilizado por nós latestemente em outros projectos, para que não seja demasiado maçador deixo-vos os links de outros projectos onde é descriminado สิ่งที่ต้องทำ estes กระบวนการ detalhadamente

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, sendo formada por 2circuitos de LED que podem ser accionados Individualmente ou em conjunto, tendo a função de iluminar o aquário quando a iluminação principal está desligada. ไม่มี entanto, para que fosse um pouco mais divertido, controlamos esta iluminação consoante as fases da Lua, ligando e desligando os 2 circuito à medida que essas fases vão alterando (Ver imagem acima)

Instalação de Iluminação ของหลักการ:

A iluminação principal é composta por 4 LEDSMD จาก 10WFull Spectrum ในอุดมคติสำหรับภาพฉายแสง ควบคุมแต่ละส่วนส่งที่จำเป็น uma fonte de alimentação com a potencia adequada para este tipo de LED, pois estes são bastante potentes e exigem uma fonte alimentação estável.

Atenção:

12 ระบบปฏิบัติการ LED directamente à fonte de alimentação, pois deve-se baixar a tensão que alimenta estes LED, vinda da fonte de alimentação para perto da tensão de funcionamento desses LED é ão cerca de 9 ฟอนต์และองค์ประกอบต่างๆ DC colocamos em serie uma resistência de potência ou dissipadora (รูปภาพจาก abaixo)

Da mesma forma que as ventoinhas ficam ocultas todos os LED e o seu comparisonivo eléctrico através das mesmas coberturas ficando mais estético e seguro, pois o circuito eléctrico fica completamente มากกว่า

ขั้นตอนที่ 2: Caixa De LED Aquário:

Caixa De LED พิพิธภัณฑ์สัตว์น้ำ
Caixa De LED พิพิธภัณฑ์สัตว์น้ำ
Caixa De LED พิพิธภัณฑ์สัตว์น้ำ
Caixa De LED พิพิธภัณฑ์สัตว์น้ำ
Caixa De LED พิพิธภัณฑ์สัตว์น้ำ
Caixa De LED พิพิธภัณฑ์สัตว์น้ำ

รูปแบบการจัดจำหน่ายในฐานะอาหารเลี้ยงสัตว์ dos sistemas do iluminação de ventilação do nosso aquário a partir de um único local, construímos um circuito onde colocámos todas as resistências dos LED dos sistemas de iluminação circuit eVolume.

วัสดุที่จำเป็น:

  • 1x แหล่งจ่ายไฟ IP67 12V 50W;
  • 4x PWM ตัวควบคุมความเร็ว ZS-X4A;
  • 4x ตัวต้านทาน 10 โอห์ม 10W;
  • 1x Dissipador de แคลอรี่;
  • 1x พัดลม 40 มม. 12V 0, 1A;
  • 1x ผู้ขัดขวางจาก 2 ตำแหน่ง;
  • 1x PCB ขนาด 13x10 ซม.;
  • 2x ตัวต้านทาน 100 โอห์ม 2W;
  • 4x เทอร์มินัลบล็อกจาก 2;
  • 1x เทอร์มินัลบล็อกจาก 3;
  • 1x เทอร์มินัลบล็อกจาก 4

ความต้านทานของไฟ LED SMD ที่ 10W, การใช้งานกับอุปกรณ์ PWM Controller ZS-X4A อนุญาติให้ควบคุมการเพิ่มความแรงของไฟ LED ที่มีความต้านทานแบบต่างๆ

ไม่มี entanto, อย่างต้านทานต่อประสิทธิภาพการทำงานที่มีแนวโน้มเพิ่มขึ้น um pouco sendo necessário colocar um dissipador de calor e uma pequena ventoinha de PC de 40mm, esta funciona 12V DC sendo alimentada através do póprio circuito ควบคุม, หยุดทำงานก่อน ไคซ่า โด เซอร์กิตโก

Alem das resistência dos LED SMD, แท็บสำหรับam colocadas เป็น resistências 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 (จากเดิม)

A PCB deste circuito foi também desenhada através de um programa de PCB Design (EasyEDA) onde podemos imprimir e alterar o circuito (Ver ficheiros abaixo), sendo também materializada através de método químico (Ver imagens acima).

A caixa desta para esta PCB foi desenhada no SolidWorks (Ver Imagens acima) และ também materializadas através de Impressão 3D. Esta está preparada para a instalação das ventoinha de arrefecimento das resistências de potência e o comparisonivo dissipador de calor (Ver ficheiros abaixo).

ขั้นตอนที่ 3: 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 อุณหภูมิ 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 refrigeração da água do aquário e os sistemas de iluminação ที่มีอยู่เดิม, este activa avios luminosos e sonoros (Ver circuito acima).

วัสดุที่จำเป็น:

  • 1x Arduino MEGA;
  • 1x จอแอลซีดี 1602;
  • 1x RTC DS1307;
  • 1x แบตเตอรี่ 3V CR2032;
  • 5x Botões de pressão;
  • 1x ค่าความต้านทาน 10K Ohms;
  • 1x ตัวต้านทาน 10K โอห์ม;
  • 1x ตัวต้านทาน 220 โอห์ม;
  • 6x ตัวต้านทาน 1K โอห์ม;
  • 1x PCB ขนาด 15x10 ซม.;
  • 1x LED Azul 1W;
  • 1x LED Amarelo 1W;
  • 1x LED Vermelho 1W;
  • 3x ตัวต้านทาน 100 โอห์ม;
  • 1x Modulo de 2 Relés;
  • 1x Modulo de 4 Relés;
  • 1x Modulo de 1 Relé;
  • 2x เทอร์มินัลบล็อกจาก 2;
  • 1x เทอร์มินัลบล็อกจาก 3;
  • 1x เทอร์มินัลบล็อกจาก 4;
  • 5x ซ็อกเก็ตส่วนหัวชายและหญิง

Para a construção deste equipamento são utilizados vários componentes que já falamos em tutoriais anteriores no nosso canal, tais como o LCD 1602 onde visualizamos a informação do menu, as suas páginas, os dados guardados ควบคุม e inseridos ไม่มีข้อมูล ข้อมูลพื้นฐานสำหรับ 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 เมกะ:

O Arduino MEGA é uma placa com um micro-controlador que possui 54 pinos de entrada e saída de sinal digital, 14 dos quais podem ser usados como saídasPWM (Pulse-Width Modulation) และ 16entradas de sinal analógico. สิ่งที่ต้องทำ 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 โมดูโลสเดอเรล, LCD และ LED.

ติดตั้ง LCD 1602:

สำหรับตัวเลือก LCD 1602 เงื่อนไขการใช้งาน การกำหนดค่า dos seus pinos durante a sua montagem, sendo que cada pino tem uma função especifica (Ver legenda acima) เรียงความ 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.

ปีโนส เด อาลีเมนตาเซา:

  • Gnd;
  • วีซีซี;
  • V0;
  • LED - ou A (Anodo);
  • LED + ou K (กาโตโด)

O Pino V0 tem a função de ajustar o contraste dos caracteres, para podermos controlar esse ajuste ligamos este pino a uma resistência variável de 10KΩ, que funcionar como um divisor de tensão alterando assim a tensão 5 entre ภาพที่ 0

ระบบปฏิบัติการ LED พื้นฐานสำหรับหน้าจอ LCD (A e K) แบบรวมตัวเลือก aos pinos de Gnd e +5V สำหรับ Arduino MEGA, ไม่มี entanto, การเชื่อมต่อแบบรวม uma ความต้านทาน 220Ω สำหรับเงื่อนไขอื่นๆ อนุญาติใน que os LED internos do LCD se danifiquem.

ปิโนส เด คอมมิวนิกาเซา:

  • RS (เลือกลงทะเบียน);
  • R/W (อ่าน/เขียน);
  • E (เปิดใช้งาน)

ไม่มีการติดต่อสื่อสารจากผู้ใช้ทั่วโลก ที่ติดต่อ ao pino R/W, pois este deve estar ligado a Gnd, para que seja permitido escrever no LCD aparecendo assim o caracteres, caso contrario podemos na พ่อ estar a dadolers.

ปีโนส เดอ อินฟอร์มาเซา:

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

โปรเจ็กต์ Neste utilizamos apenas 4 dos 8 ที่เป็นไปได้ pinos de informação, pois utilizando a biblioteca LiquidCrystal.h no código permite o Arduino enviar os dados para o LCD dividido em 2 partes, ou seja, são necessos pinário para metade dos o หน้าจอ LCD ที่จำเป็น dos pinos de Informação de D4 a D7

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

การติดตั้ง RTC DS1307:

Este องค์ประกอบ tem como função fornecer a ข้อมูล e hora de forma precisa e constante, ou seja, mesmo quando a alimentação externa é desligada por algum motivo esta mantém os dados de data e horaçadosnendo semper

Neste projecto foi utilizada uma RTC DS1307, que contem 2 linhas de pinos de alimentação e de comunicação (Ver legenda acima), no entanto, iremos utilizar a linha com menos pinos, pois apenas são são จำเป็น.

ปีโนส เด อาลีเมนตาเซา:

  • Gnd;
  • วีซีซี;
  • ค้างคาว.

Em relação ao pino ค้างคาว 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, monitor interna muzado placa a placa ดา คาร์กา ดา บาเตเรีย

ปิโนส เดอ โคมูนิกาเซา:

  • เอสซีแอล;
  • SDA;
  • ดีเอส;
  • ตร.

การสื่อสารSCL e SDA da placa RTC fazem parte de um sistema de comunicação chamado I2C (Ver diagrama acima), onde é possível comunicar com um ou mais equipamentos através de apenas linha s ส่ง, ส่ง, ส่งต่อ ได้รับข้อมูล eo SCL ou SERIAL CLOCK o ตอบกลับ por saber quando é que os equipamentos têm que receber ou enviar a informação, ficando assim todos sincronizados.

Caso queiram saber mais sobre a RTC DS1307 vejam o nosso tutorial onde expplicamos o seu funcionamento mais pormenorizadamente.

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

Alem dos componentes anteriores, que são os mais importantes, são utilizados também 4botões de pressão que permitem ao utilizador navegar pelas páginas do menu podendo visualizar e alterar a Informação fornecida guardapelos sensores ouest a informação fornecida guardapelos เซ็นเซอร์ ouest การพึ่งพาอาศัยกัน da página e tipo de informação visualizada

A pesar de serem completamente diferentes dos botões de pressão เป็น bóias de nível funcionam electricamente de forma idêntica, pois estas quando accionadas ligam magneticamente um interruptor

Caso queiram saber mais sobre a montagem e funcionamento dos botões de กด vejam o nosso กวดวิชา onde อธิบาย mais pormenorizadamente

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

ควบคุมวงจรด้วย PCB ควบคุมโดยคำนึงถึงการตัดต่อภาพด้วยเซ็นเซอร์อุณหภูมิ, อนุญาติให้ใช้งาน Arduino possa realizar เซ็นเซอร์ปลายทาง Segundo as especificações do fabricante o sensor de temperatura é de 10KΩ, logo a resistência que escolhemos para o divisor de tensão também deve ser de 10KΩ.

O comum deste divisor de tensão é ligado 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 0 เวอร์ชัน แอสซิม possível ao Arduino realizar essa leitura.

Caso queiram saber mais sobre a montagem e funcionamento do sensor de temperatura vejam o nosso กวดวิชาเกี่ยวกับคำอธิบาย mais pormenorizadamente

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

O ตัวควบคุม 3avisos luminosos que significam ที่แตกต่างกัน acontecimentos, o LED ที่มีสี azul indica que a อุณหภูมิ da água está abaixo da temperatura mínima seleccionada, o LED de cor vermelha que indica está que a tempura cor amarela que indica que o fluxo de agua do filtro do aquário está abaixo do seleccionado, sendo todos estes ligados a pinos de saída de sinal digital ทำ Arduino MEGA.

Por 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) และ por ultimo outro de 4relés (Iluminação principal). ข้อมูลอ้างอิงสำหรับ montagens com o Arduino tendo a specialidade de serem activos não com a sinal digital do Arduino em nível alto mais sim em nível baixo

PCB deste circuito foi também desenhada através de um programa de PCB Design (EasyEDA) onde podemos imprimir e alterar o circuito (Ver ficheiros abaixo), sendo também materializada através de método químico (Ver imagem acima).

A caixa para esta PCB foi desenhada no SolidWorks (Ver Imagens acima) และ também produzidas através de Impressão 3D. Esta split-se em 3 partes, assim a parte frontal é onde estão indicações dos nossos sensores ao controlador, a parte intermédia que é onde está montada e fixa a nossa PCB com o Arduino MEGA หรือ LCD ea RTC part, traseira onde se encontram todos os módulos de relés tendo abertura para a passagem e ligação das comparisonivas cablagens cablagens (Ver ficheiros abaixo).

ขั้นตอนที่ 4: Código:

คอร์ดิโก
คอร์ดิโก
คอร์ดิโก
คอร์ดิโก
คอร์ดิโก
คอร์ดิโก
คอร์ดิโก
คอร์ดิโก

Agora só nos falta programar o nosso controlador do aquário, para isso ligamos o cabo USB ao nosso controlador e carregamos o comparisonivo código no Arduino MEGA (เวอร์ชั่นล่าสุด

Mas antes, vamos explicar resumidamente o nosso código, sendo que é neste que vamos colocar as diferentes funções necessárias para a elaboração de um menu com diferentes páginas e consecutivamente อ้างอิงถึงภาพสื่อสิ่งพิมพ์ ข่าวสาร สื่อสิ่งพิมพ์

แอสซิม 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 Equiamento cód บน เอนคอนทราโม

//แก้ไข função LOOP ซ้ำ:

วงเป็นโมฆะ () {// Condição para a leitura da distância: if (เมนู == 0) { //แก้ไข 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: void Pagina_0() { //Código referente ás função desta página. } //หน้า 1: โมฆะ Pagina_1() { //Código referente ás função desta página. } //หน้า 2: โมฆะ Pagina_2() { //Código referente ás função desta página. }

Caso queiram saber mais sobre este tipo de esquema de menu vejam o nosso กวดวิชา onde explicamos como elaborar e programar uma menu no Arduino

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

Depois de sabermos มีคุณสมบัติ estrutura do código passamos para เป็น bibliotecas dos ส่วนประกอบ que interagem com o Arduino, neste projecto importarmos เป็น bibliotecas LiquidCrystal.h สำหรับ o LCD 1602 เป็น TimeLib.h, a Wire.hea DS1307RTC.h สำหรับ DS1307, Thermistor.h para o nosso sensor de temperatura, e por fim a EEPROM.h que nos permite Gravar e ler dados gravados na memoria do Arduino, ใช้งานจริงผ่าน gestor de bibliotecas ทำซอฟต์แวร์สำหรับ Arduino

เนื้อหาที่เกี่ยวข้อง LiquidCrystal.h, esta facilita a configuração do LCD 1602 sendo apenas necessário 2funções para que este funcione correctamente.

ไม่ต้องใช้ LCD é จำเป็น สำหรับ lugar definir o ท้องถิ่น ที่ se começará colocar os caracteres, ou seja, a coluna ea linha, depois imprimimos o texto que queremos tendo em atenção que este LCDcolpenas tem 2 esses จำกัด 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");

อี

การตั้งค่าเป็นโมฆะ (){

//Inicia การสื่อสาร com LCD 16x2: lcd.begin(2, 16); } void loop(){ //กำหนด coluna (em 16) e a linha (em 2) do LCD onde escrever: lcd.setCursor(0, 0); //Escreve ไม่มี LCD: lcd.print("Temperatura:"); }

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

#include "thermistor.h" //นำเข้าไลบรารี "thermistor"

//Esta função กำหนด: THERMISTOR SENSOR (Pino_Sensor, 10000, 3950, 10000); // Pino de entrada ทำเซ็นเซอร์; //Resistência ระบุ 25ºC ทำเซ็นเซอร์; //Coeficiente เบต้าทำเซ็นเซอร์; // Valor da resistência do เซ็นเซอร์

ในฐานะที่เป็น 3bibliotecas, TimeLib.h, a Wire.h e a DS1307RTC.h contêm comandos, funções e referencias criadas especificamente para trabalhar com a placa RTC

บรรณานุกรม TimeLib.h activa เป็น funcionalidades de tempo, como variáveis para segundos, minutos, hora, dia, mês, etc, facilitando assim os cálculos dos valores de tempo

บรรณานุกรม Wire.h activa เป็น 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, caso queiram saber quais os pinos utilizados vejam o ลิงก์ "https://www.arduino.cc/en/Reference/Wire"

คำสั่งสุดท้ายสำหรับ biblioteca DS1307RTC.h เปิดใช้งานเป็น funcionalidades que อนุญาต a leitura e escrita de dados de tempo guardados na RTC

วงเป็นโมฆะ (){

int h, m, s, D, M, A; // Variáveis para alteração da hora e ข้อมูล //กำหนดข้อมูล uma nova hora e: setTime(h, m, s, D, M, A); // Grava กับ RTC ระบบปฏิบัติการ dados de tempo: RTC.set(now()); //เปิด RTC กับจังหวะของจังหวะ: RTC.get(); }

ที่ห้องสมุด EEPROM.h que อนุญาต Gravar e lerdados Gravados na memória não volátil do Arduino, ส่ง possível memorizar valores como por exemplo, hora de ligar iluminação, valores de temperature máxima máxima quenimo มากกว่า não sendo necessário กำหนดค่า novamente estes valores ou configurações.

Este tipo de memória é ที่แตกต่างกัน 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 ou posições, dados no podemos. ไม่มี entanto, só podemos guardar nesses endereços dados de 8 bits, ou seja, com um valor até 256 (เวอร์ชั่น quadro acima).

ใช้งานหน่วยความจำ EEPROM สำหรับ Arduino กับ desta biblioteca, ใช้งานบนระบบปฏิบัติการ seus principais comandos: Caso queiram ver mais sobre estes e outros comandos desta biblioteca, vejam as sua referencia em อีพรอม"

//Apagar os dados na EEPROM.

int ฉัน; //Variável para os endereços da EEPROM; void loop(){ สำหรับ (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 ฉัน; //Variável para os endereços da EEPROM; ความกล้าหาญภายใน; //Variável para leitura da EEPROM; วงเป็นโมฆะ () { Valor = EEPROM.read (i); //"i" = Endereço onde serão lidos ระบบปฏิบัติการ dados } //---------------------------------------------------------- ------ // Gravar dados na EEPROM. int ฉัน; //Variável para os endereços da EEPROM; ความกล้าหาญภายใน; //Variável para leitura da EEPROM; วงเป็นโมฆะ () { EEPROM.write (i, Valor); //"i" = Endereço onde serão lidos ระบบปฏิบัติการ dados }

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

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

ประโยชน์ใช้สอย o เซ็นเซอร์ของ Fluxo não é necessário nenhuma biblioteca, no entanto, temos que recorrer a cálculos de formas a determinar o valor medido pelo sensor. Como este sensor produz um sinal de onde quadrada, que varia a sua frequência consoante a quantidade de agua que passa por ele, teremos de utilizar a função "PulseIn", que conta o tempo em que esse colí vel está em está em está, palavra "สูง" 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 ถึงอย่างนั้น 1000000µSeg

Depois basta um código idêntico ao descrito abaixo para que possamos encontrar o valor poseido, teremos apenas de ter em atenção quais as características do nosso sensor através da sua เอกสารข้อมูลการขึ้นต่อกันของเซ็นเซอร์ (Ver cálculos acima).

//A rotina de LOOP และ executada 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, สูง) + pulseIn (Pino_Sensor, LOW)); //Contagem de numero de pulsos โดย segundo (1Seg = 1000000µSeg) Calculo_Fluxo = 1000000/Contagem_Total; //Multiplicação de (Num. Total de pulsos/Seg)x(Pulse Caracteristics), //(จาก Datasheet Flow Sensor e cálculos acima): Calculo_Fluxo = (Calculo_Fluxo * 2.38); //แปลง มล./วินาที เพิ่ม มล./นาที: Calculo_Fluxo = Calculo_Fluxo * 60; //แปลง มล./นาที em L/นาที Calculo_Fluxo = Calculo_Fluxo / 1000; ถ้า (Calculo_Fluxo < 0) { Calculo_Fluxo = 0; } อื่นๆ{ Calculo_Fluxo = Calculo_Fluxo; }

}

ควบคุมระบบปฏิบัติการของระบบ iluminação tombém utilizamos cálculos de formas a facilitar a configuração do controlador, no caso do sistema de iluminação principal o utilizador apenas terá de seleccionar 2 parâmetros, a hora de in ción ลิกาโด (Ver imagem acima).

ที่สาธารณะ à iluminação ที่มีอยู่ 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 การกำหนดค่าเดิม 7 สถานะ ea Lua cheia โนวาเมนเต.

Como este artigo já vai um pouco longo, podem encontrar o ficheiro com o código completo e que estamos a utilizar actualmente (เวอร์ชั่น ฟิเคโร อาไบโซ).

จัดซื้อจัดจ้าง os nossos โปรเจ็กต์และ tutoriais acerca do Arduino, onde expplicamos Diversas montagens e o funcionameto dos seus componentes, เยี่ยมชม agora ที่ nosso canal ไม่มี Youtube, Instagram, Facebook และ Twitter

Abraço e até ao próximo โปรเจ็กเตอร์.

แนะนำ: