Ad Widget

Collapse

DHT22, Arduino, cooler e Zabbix

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Guest

    #1

    DHT22, Arduino, cooler e Zabbix

    Boa tarde!

    Estou participando de um projeto da escola e a ideia é verificar com Arduino e sensor DHT22 a temperatura dentro de um rack, e acionar o cooler quando passar de determinada temperatura. Até aí, tudo certo.

    Porém, agora o professor quer que eu descubra como o Zabbix pode registrar as temperaturas que o sensor detectar, para salvar num log.

    Já pesquisei bastante (até chegar ao ponto de pedir ajuda), mas ninguém explica didaticamente como configurar o Zabbix (que estou conhecendo pela primeira vez) e como fazer um código pro Arduino mandar os dados lidos pro Zabbix.

    Se alguém puder dar uma luz, agradeço desde já!

    Segue o código já existente para controlar o cooler:


    #include"DHT.h"
    #define DHTPIN A0//pino ligado ao sensor de temperatura
    #define DHTTYPE DHT22
    #define tLim 20.6//essa é a temperatura acima da qual o cooler será acionado.
    DHT dht(DHTPIN, DHTTYPE);//objeto para atuar com o sensor de teperatura
    //variáveis globais:
    int rele=2;//porta em que o rele será conectado no arduino, para mandar o comando ao cooler
    void setup() {
    Serial.begin(9600);
    dht.begin();//inicia o sensor de temperatura
    pinMode(rele,OUTPUT);
    digitalWrite(rele,HIGH);//para rele iniciar desligado. No rele, HIGH é desligado (é ao contrario)
    }
    void loop() {
    float u=dht.readHumidity();
    float t=dht.readTemperature();
    if (isnan(t)||isnan(u))
    {
    Serial.println("Erro na leitura");
    return;
    }else
    {
    Serial.print("Temperatura: ");
    Serial.print(t);
    Serial.print(" \xC2\xB0");//símbolo de "grau"
    Serial.println("C");
    Serial.print("Umidade: ");
    Serial.print(u);
    Serial.println("%");
    Serial.println();
    delay(2000);
    }
    //liga ventilador se temperatura maior que a definida
    if(t>=tLim)
    {
    digitalWrite(rele,LOW);//para ligar o rele, pq está configurado para acionar com um nivel lógico baixo (LOW)
    }else
    {
    digitalWrite(rele,HIGH);//para desligar o rele
    }
    }
  • joseroa
    Member
    • Jun 2022
    • 72

    #2
    Primeiro existe a maneira que habilita o serviço de SSH e gera esse binário que regride o valor da temperatura no site.


    Exemplo ese codigo que muestras compilarlo en el arduino y ejecutarlo

    Click image for larger version

Name:	ssh-agent.png
Views:	277
Size:	23.0 KB
ID:	452283

    ./file Gera uma saída


    Esta saída pode capturar no zabbix para receber os valores cada x tempo (dependendo do intervalo no item).​

    Comment

    Working...