Zkusebni verze k nasazeni do provozu

This commit is contained in:
Jaroslav Valdauf 2023-03-15 17:11:11 +01:00
parent 37c6a12052
commit d9519031a3
2 changed files with 56 additions and 56 deletions

View File

@ -1,6 +1,16 @@
#define SERVERADDR //127, 0, 0, 1
#define ZABBIXPORT //10051
#define ZABBIXAGHOST //"Mrazak-Test1"
#define BATERIE_pin A0 // Port na kterem je pripojena baterie pres odpor 150
#define MRAZAK_pin D5 // Port na kterem je pripojeny mrazak
#define DHT_pin D6 // Port na kterem je pripojene DHT11
const char* ssid = // "dochazka";
const char* password = // "Heslo";
#define SERVERADDR 10, 87, 0, 136 // IP zabbix serveru
#define ZABBIXPORT 10051 // Port zabbix serveru
#define ZABBIXAGHOST "FIXME" // Nazev itemu v zabbixu
IPAddress staticIP(192, 168, 0, 143); // IP Adresa zarizeni - FIXME
IPAddress gateway(192, 168, 0, 1); // Brana zarizeni
IPAddress subnet(255, 255, 255, 0); // Maska zarizeni
const int zpozdeni = 120; // cas v sekundach, kdy bude zarizeni v deep sleep modu
const char* ssid = "FIXME"; // SSID
const char* password = "FIXME"; // Heslo k wifi

View File

@ -1,63 +1,53 @@
#include <DHT.h>
#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>
#include <ESP8266ZabbixSender.h>
#include <DHT.h>
//#include "konfigurace_local.h"
#include "konfigurace.h"
#define pinKONTAKT 14
#define pinDHT 12
#define typDHT11 DHT11
DHT cidlo(pinDHT, typDHT11);
const int measurment_delay = 60;
unsigned long lastMsg = 0;
ESP8266ZabbixSender zSender;
DHT dht(DHT_pin, DHT11);
void odesli_zpravu(){
float napeti_baterie = (analogRead(BATERIE_pin) * 4.8)/1024; // napeti baterie
float teplota = dht.readTemperature(); // teplota
float vlhkost = dht.readHumidity(); // vlhkost
int kontakt = (digitalRead(MRAZAK_pin) == 0) ? 1 : 0; // stav kontaktu
// Vypiseme vse do konzole (pro debug)
Serial.print("Napeti baterie(V): ");
Serial.println(napeti_baterie);
Serial.print("Teplota (°C): ");
Serial.println(teplota);
Serial.print("Vlhkost (%): ");
Serial.println(vlhkost);
Serial.print("Stav kontaktu (0/1): ");
Serial.println(kontakt);
zSender.ClearItem();
zSender.AddItem("baterie", napeti_baterie);
zSender.AddItem("teplota", teplota);
zSender.AddItem("vlhkost", vlhkost);
zSender.AddItem("kontakt", kontakt);
zSender.Send();
}
void setup() {
Serial.begin(115200);
delay(2000);
pinMode(pinKONTAKT, INPUT_PULLUP);
Serial.println("Start");
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
Serial.println("Pripojeno");
Serial.println();
Serial.print("MAC adresa: ");
Serial.println(WiFi.macAddress());
Serial.print("IP adresa: ");
Serial.println(WiFi.localIP());
WiFiClient client;
zSender.Init(IPAddress(SERVERADDR), ZABBIXPORT, ZABBIXAGHOST);
Serial.begin(115200);
pinMode(MRAZAK_pin, INPUT_PULLUP);
Serial.println("Start");
WiFi.config(staticIP, gateway, subnet);
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(100);
}
Serial.println("Pripojeno");
//odesli_zpravu();
//ESP.deepSleep(zpozdeni * 1000000);
}
void loop() {
if (millis() - lastMsg > (1000 * measurment_delay) || millis() < (lastMsg - 1000)) {
sendMessage();
}
}
void sendMessage()
{
int kontakt = digitalRead(pinKONTAKT)? 0 : 1;
float teplota = cidlo.readTemperature();
float vlhkost = cidlo.readHumidity();
Serial.print("Kontakt: ");
Serial.println(kontakt);
Serial.print("Teplota: ");
Serial.println(teplota);
Serial.print("Vlhkost: ");
Serial.println(vlhkost);
zSender.ClearItem();
zSender.AddItem("kontakt", kontakt);
zSender.AddItem("teplota", teplota);
zSender.AddItem("vlhkost", vlhkost);
if (zSender.Send() == EXIT_SUCCESS) {
Serial.println("ZABBIX SEND: OK");
} else {
Serial.println("ZABBIX SEND: ERROR");
}
lastMsg = millis();
odesli_zpravu();
delay(60000);
}