Índice:

Monitor de temperatura e umidade - Arduino Mega + Ethernet W5100: 5 etapas
Monitor de temperatura e umidade - Arduino Mega + Ethernet W5100: 5 etapas

Vídeo: Monitor de temperatura e umidade - Arduino Mega + Ethernet W5100: 5 etapas

Vídeo: Monitor de temperatura e umidade - Arduino Mega + Ethernet W5100: 5 etapas
Vídeo: Arduino + Ethernet + LCD + Sensor Temp e Humidade 2024, Julho
Anonim
Monitor de temperatura e umidade - Arduino Mega + Ethernet W5100
Monitor de temperatura e umidade - Arduino Mega + Ethernet W5100

Módulo 1 - FLAT - hardware:

  • Arduino Mega 2560
  • Escudo Ethernet Wiznet W5100
  • Sensor de temperatura 8x DS18B20 no barramento OneWire - dividido em 4 barramentos OneWire (2, 4, 1, 1)
  • 2 sensor digital de temperatura e umidade DHT22 (AM2302)
  • 1 sensor de temperatura e umidade SENSIRION SHT21 (Si7021)
  • 1x sensor de temperatura e umidade BOSCH BME280 (e pressão do ar)
  • Envia dados de todos os sensores de uma vez em vários minutos (pode ser modificado)

Módulo 2 - CALDEIRA - hardware:

  • Arduino Mega 2560
  • Escudo Ethernet Wiznet W5100
  • Sensor de temperatura 16x DS18B20 no barramento OneWire - dividido em 7 barramentos OneWire (2, 2, 2, 2, 2, 2, 4)
  • Entrada digital 8x
  • 8x saída digital - para solenóide / relé
  • Envia dados de todos os sensores de uma vez em vários minutos (pode ser modificado)
  • Ele lê os estados de saídas individuais da interface da web e os aplica. Envia estados de entrada digital

Etapa 1: Introdução

Introdução
Introdução
Introdução
Introdução
Introdução
Introdução

Hoje irei apresentar em detalhes o último projeto realizado, que é bastante complexo em termos de funcionalidade, número de sensores usados, placas Arduino, barramentos de dados usados. O projeto consiste em dois módulos. Fisicamente, cada módulo consiste em um Arduino Mega 2560 separado, blindagem Ethernet W5100 (compatível com R3) e os sensores que ele usa.

Cada módulo se comunica com a interface web na Internet por meio de solicitações HTTP POST, por meio das quais o servidor web vende dados ou solicita alguns dados, por exemplo, via solicitação POST (módulo 2 apenas). A interface web é completada com um sistema de login, enquanto toda a família pode se cadastrar no sistema, cada uma com seu nome e senha. É, portanto, um aplicativo multiusuário onde cada membro da família tem uma visão geral de ambos os módulos e pode realizar diferentes ações - definir a temperatura de referência, controlar o termômetro, etc. A interface web é programada em PHP, os dados são armazenados no banco de dados MySQL. Cada um dos módulos possui uma tabela separada no banco de dados para dados. Considere os módulos individuais com mais detalhes.

Etapa 2: Módulo 1 - FLAT

Módulo 1 - FLAT
Módulo 1 - FLAT
Módulo 1 - FLAT
Módulo 1 - FLAT

Todo o módulo 1- FLAT serve apenas como monitor de temperatura em salas individuais, não tem outra função. Os sensores DHT22 foram usados em uma longa distância usando um resistor pullup de 10kohm adequado para registrar a umidade nos banheiros. Como o BME280 e o SHT21 se comunicam pelo barramento I2C e isso é consideravelmente limitado em termos de comprimento do driver do barramento, os sensores são usados perto do Arduino nas salas.

Os sensores de temperatura DS18B20 foram divididos em 4 barramentos, já que são usados dois sensores externos, facilitando a conexão entre as tomadas do Arduino e, em caso de queda do sensor, é mais fácil substituí-los, pois não paralisa a funcionalidade do sistema.

Por exemplo, no caso de um desses barramentos OneWire, no qual 4 sensores são indexados. O índice está vinculado ao endereço físico dos termômetros, portanto, se um dos sensores for trocado, o novo sensor poderá aparecer no índice 0 - inicial, ou mesmo 2, 3 ou último. Assim, ao reduzir o número de sensores nos ônibus, podemos evitar tal complicação que pode ocorrer quando o sensor é substituído.

Etapa 3: Módulo 2 - CALDEIRA

Módulo 2 - CALDEIRA
Módulo 2 - CALDEIRA
Módulo 2 - CALDEIRA
Módulo 2 - CALDEIRA
Módulo 2 - CALDEIRA
Módulo 2 - CALDEIRA

Para além da função de monitor, o módulo 2 - BOILER tem também uma função mais importante, nomeadamente o controlo de solenóides ou relés para controlo das válvulas do radiador. O módulo funciona independentemente do aquecimento doméstico. Módulo não comuta aquecimento ou caldeira. O módulo só cuida de abrir, fechar a válvula do radiador, se a temperatura ambiente for inferior / superior à definida - os chamados. temperatura de referência. Cada sala onde a válvula do radiador é controlada pode ser atribuída a um termômetro específico do módulo 2. Além disso - modo automático, há também um modo manual onde a válvula pode ser aberta / fechada manualmente a partir da interface web indefinidamente - duro. As entradas digitais podem ser usadas para verificar se o solenóide / relé / válvula foi aberto / fechado mediante solicitação com o Arduina - a capacidade de comparar se a saída é igual à entrada.

Etapa 4: Quais são as ofertas de interface da web?

Quais são as ofertas de interface da web?
Quais são as ofertas de interface da web?
Quais são as ofertas de interface da web?
Quais são as ofertas de interface da web?

Para ambos os módulos existe também uma representação gráfica de um gráfico de linhas para o desenvolvimento das variáveis individuais - temperatura, umidade em 24 horas, 7 dias. A interface web também oferece visualização de valor máximo / mínimo, médio em 24 horas, 7 dias para cada termômetro / higrômetro. No módulo 1, inicialmente foi considerado um par de sensores SHT21, mas por não haver possibilidade de alteração do endereço I2C, seria necessário o uso de um multiplexador para comunicação de um barramento de dois sensores com o mesmo endereço I2C. No caso de dados do sensor com falha, o nome do sensor é armazenado em um registro que o administrador do sistema pode abrir a qualquer momento para fazer a manutenção do barramento OneWire e substituir o sensor com falha, por exemplo.

Watchdog foi implementado em programas Arduino, que em caso de falha de inicialização, "congelamento", outro erro é reiniciado com segurança e no início do programa desliga todas as saídas até que a conexão com a interface web seja estabelecida, onde é totalmente sincronizado em termos de resultados, que se aplica posteriormente.

Mais projetos você pode encontrar em: https://arduino.php5.sk?lang=en Doe para mais exemplos:

Recomendado: