Coal or water level sensor
-
Coal or water level sensor
http://projektpimalina.blogspot.com/2016/05/czujnik-poziomu-wegla-na-nadajniku.htmlMySensors - czujnik poziomu węgla do Domoticz – 01:11
— Roman Kubat#include <MySensor.h> #include <SPI.h> //import biblioteki MySenors #define trigPin 3 #define echoPin 4 int max = 60; //maksymalna odleglosc w cm gdy zbiornik bedzie pusty int procent; //odleglosc w procentach int ilosc; //ilosc w procentach napelnienia zbiornika #define child_id_ilosc 1 //definicja identyfikacji ilosci wegla w kontenerze MySensor gw; MyMessage msgilosc(child_id_ilosc, V_IMPEDANCE); //utworzenie konteneru do przechowywania danych void setup() { pinMode(trigPin, OUTPUT); //Pin, do którego podłączymy trig jako wyjście pinMode(echoPin, INPUT); //a echo, jako wejście gw.begin(); //uruchomienie biblioteki MySensors gw.sendSketchInfo("Czujunik ilosci wegla", "1.0"); gw.present(child_id_ilosc, S_WEIGHT); //prezentacja danych do kontrolera } void loop() { long czas, dystans; digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); czas = pulseIn(echoPin, HIGH); dystans = czas / 58; procent = ((dystans * 100) / max); ilosc = 100 - procent; gw.send(msgilosc.set(ilosc)); //przeslanie ilosci wegla do domoticz delay(1000); // opóźnienie }
-
thanks romeak01
i have update with my sample, i think that will run ok.
#include <MySensor.h> #include <SPI.h> //import MySensors library #define trigPin 6 #define echoPin 5 int max = 91; //distance (cm) from min water level to sensor int min = 6; // distance (cm) from max water level to sensor int procent; //distance percentage int ilosc; //amount of the tank as a percentage #define child_id_ilosc 1 //setting to identify the amount of water in the tank MySensor gw; MyMessage msgilosc(child_id_ilosc, V_IMPEDANCE); void setup() { pinMode(trigPin, OUTPUT); //Pin, that its connet to trig pinMode(echoPin, INPUT); //a echo, input gw.begin(); //launch MySensors library gw.sendSketchInfo("Water tank meter", "1.0"); gw.present(child_id_ilosc, S_WEIGHT); //present data to controller } void loop() { long czas, dystans, diferenca; digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); czas = pulseIn(echoPin, HIGH); dystans = czas / 58; diferenca = max -min; procent = (((dystans - min) * 100) / diferenca); ilosc = 100 - procent; gw.send(msgilosc.set(ilosc)); // send to controller delay(1000); // delay }```
1 out of 2
Suggested Topics
-
Welcome
Announcements • 23 Mar 2014, 08:24 • hek 2 Apr 2014, 14:39 -
Door chime
My Project • 24 days ago • Paul Scarbro 21 days ago -
Wio-E5 (STM32 and SX1262)
My Project • 31 Dec 2024, 17:52 • nagelc 25 Jan 2025, 20:21 -
Simulate Online-Recreating 'Flappy Bird' with Arduino Nano
My Project • 15 Jan 2025, 09:13 • Skylar Jones 15 Jan 2025, 09:13 -
BMP280 SPI Adafruit
My Project • 24 Aug 2016, 01:56 • Matt 23 Jan 2025, 16:25 -
Long time test done with soil sensor!
My Project • 7 Jan 2025, 09:13 • Nicklas Starkel 13 Jan 2025, 09:10