Outra maneira de determinar a qualidade do ar no Arduino é através da transmissão de dados para a rede.
Meu nome é Eugene e sou desenvolvedor web. Já existem dezenas de postagens sobre várias estações meteorológicas no arduino, mas eu queria escrever que em 2016 você possa rapidamente, facilmente e sem conhecimento de engenharia elétrica montar um sensor útil que afirma ser IoT, que pode funcionar facilmente com sua infraestrutura escrita em qualquer coisa.Se você está se perguntando por que medir o CO2, pode encontrar links úteis no final do post.Portanto, nosso objetivo é criar um sensor de temperatura, umidade e CO2 com os dados exibidos no visor e enviados ao servidor da web. O que precisamos para isso:Componentes
1. Arduino. Peguei o Wemos D1, uma placa compatível com Arduino, baseada no microcontrolador ESP-8266EX. O Wemos é compatível com o Arduino IDE, possui seu próprio Wi-Fi e custa US $ 6,3.2. sensor de CO2. Anteriormente, tentei o MQ-135 usual, mas mesmo depois de queimar, calibrar e levar em conta as correções de temperatura e umidade, os erros eram bastante visíveis - cerca de 300 ppm. Portanto, para garantir medições precisas, peguei o MH-Z19 - o componente mais caro do circuito, US $ 27.3. Sensor de temperatura e umidade. Usou o padrão e amado por todos os DHT11 por US $ 1,44. Os comentários sugerem que é melhor usar DHT22, mas para o esquema e o custo isso não é importante:4. Tela compatível com I2C. Peguei o hd44780 mais barato por US $ 3,06.5. Para que não pareça muito terrível e seja móvel, também é bom ter um corpo. Para não me incomodar com o corte, peguei um estojo de US $ 8 com furos e suportes para usb e uma tela. Atenção - deve haver orifícios no estojo para ventilação, caso contrário, apenas medirá sua atmosfera especial.6. Depuração do cabo USB e cerca de 10 fios. Não vou considerar o preço.O custo total é de US $ 44, se você usar o aliexpress. Dispositivos similares sem a capacidade de transferir algo para a rede agora custam aos chineses cerca de US $ 100. Um análogo de Tion, que, em número, publica suas postagens no gytime com propaganda de respiradores, ainda está em desenvolvimento (não tenho nada a ver com eles, mas é uma pena).Pedido, esperei um mês - prossiga para a montagem! Não há nada mais fácil.Assembléia
1. Conecte o sensor de temperatura e umidade. Terra para terra, poeira para poeira, mais cinco volts por arduino, saída digital para saída digital (usei D5).2. Conecte o sensor de CO2. Possui uma ampla seleção de interfaces - PWM, saída analógica e digital. O único elemento da solda é conectar as pernas às saídas desejadas. Verificado pessoalmente - todo mundo trabalha. Parei de receber dados digitais - de maneira precisa, bonita e concisa, e também há a oportunidade de enviar comandos para calibração, dos quais eu não precisava. Mais uma vez - de terra para terra, além dos outros cinco volts, pinos TX e RX para pinos digitais - no meu caso, para D6 e D7.3. Conecte o monitor. E novamente - terra a terra, mais a última saída restante de cinco volts, SDA no display para SDA no arduino, SCL também para SCL.E ... é isso aí! Você pode transformar o bem resultante no caso, se certamente não conseguiu cometer nenhum erro ao se conectar. Preste atenção para que as entradas de ar não sejam pressionadas contra o sensor de CO2 (ou, como é chamado mais corretamente, esbranquiçam essas coisas). Como um bônus, durante a montagem no caso, os desvios na medição são significativamente reduzidos.Firmware
Bem, nós apenas temos que escrever um software. Os links abaixo têm um repositório no github que você pode simplesmente enviar e usar. O único ponto sutil é que sua tela pode ter um endereço diferente. Use o mini programa nos links para digitalizar os endereços i2c e altere para o que você precisa, se não funcionar imediatamente. Desconecte outros dispositivos antes da digitalização; caso contrário, você poderá obter muito lixo.Sim, o Wemos D1 é compatível com o Arduino e você só precisa adicionar a placa apropriada ao IDE do Arduino. Conectamos um cabo curto padrão via micro USB e preenchemos o firmware. Se você fez tudo certo, primeiro o dispositivo tentará se conectar ao Wi-Fi (a rede e a senha são tiradas do arquivo de configurações), depois esperará um pouco para "aquecer" os sensores e, finalmente, exibirá os dados no visor. Se a rede falhar no envio de dados, será relatada. Se o nível de CO2 for aceitável, após o carregamento, a luz de fundo será desligada e ligada somente se você precisar abrir a janela.Resultado
Parece-me assim (com cuidado, trânsito):Desmontadomontado, com a luz de fundo desligadaÉ hora de ventilar!Mas e a rede?
Agora sobre como trabalhar com a rede. Sem mais delongas, coleto os dados em JSON e os envio ao servidor com a solicitação POST usual, onde um simples script PHP os coloca no banco de dados MySQL. Depois, você pode ver como suas condições de vida mudaram ao longo do dia usando PHP e Google Charts - toda a parte do servidor também está nos links.Como resultado, a um preço ridículo, com zero conhecimento em engenharia elétrica e com investimento mínimo de tempo, podemos obter gráficos tão agradáveis:Cuidado, tráfegoNão posso dizer que isso rasgue diretamente a capa da simples verdade de que "menos pessoas - mais oxigênio" e que você precisa ventilar periodicamente, e eles conversaram sobre isso muitas vezes - incluindo os danos das janelas de plástico. Mas este exemplo mostra o quão simples, rápido, confiável e bonito é possível fabricar praticamente qualquer sensor que fornece dados para um sistema mais complexo.Sim, comparei as leituras com um sensor chinês da Vida Verde - as leituras são quase idênticas, apenas as minhas respondem um pouco mais rapidamente às mudanças das circunstâncias:o que parece— , :

Conclusões
Obviamente, muito poderia ser feito melhor. De improviso, vejo as seguintes desvantagens:- O visor desligado tem um contraste muito baixo. É melhor pegar outro, outros 10 centavos quebraram.
- . , , . , .
- , , , .
- . , . , .
- , ( ) — 5 .
- , , , , (, Wemos ), , — .
- Wemos D1 , ( 2-3 ) , . , . - , , , ( RESET).
- , 2 , . — , , . , .
- , — . , - .
- , JSON . JSON , GET/POST, . Wemos — , . .
- — . — .
- . , — — .
E então eu quero fazer uma pausa nos dias úteis e brincar com laser tag com os amigos. Um problema - o jogo custa 500 rublos por hora, por pessoa. Isso ocorre na completa ausência de consumíveis. E comprar um kit para o jogo vai custar algum tipo de dinheiro alto - de cerca de 8.000.Então, para jogar a etiqueta a laser, você deve primeiro coletá-la. Eu pretendo fazer algo como Skirmos - onde algum tipo de dinheiro custará apenas o barril em si, o que deve ser bastante sólido. Interessante? Siga publicações! O que você está fazendo no Arduino?Referências
Principal
- Code for Arduino
- Lado do servidor
- Você pode ver o ar no meu escritório aqui
- Você pode me contratar (sim, eu estou procurando por ela) aqui
Útil
- Se você não sabe nada sobre CO2 - geektimes.ru/company/tion/blog/269134
- Sobre wemos d1
- Especificações do sensor MH-Z19
- Um bom artigo , sobre a mesma coisa, mas sem uma rede, com uma tela do telefone, com trabalhos sobre PWM e Arduino nano
- Digitalizar dispositivos no i2c
- Futuro análogo do sensor de Tion (não tenho relação com ele)
- Solução de reinicialização ESP8266 no nível de ferro
- Outro bom artigo sobre ESP, Lua e CO2
- E aqui os estudantes da MAMI estão envolvidos em todos os tipos de boa eletrônica. A propósito, eles precisam de professores. Em breve darei palestras lá.
Bibliotecas usadas
- Biblioteca de exibição
- Biblioteca para criar JSON
- Biblioteca da família de sensores DHT
Source: https://habr.com/ru/post/pt390327/
All Articles