@nagelc Thank you for your example.
I think that i have to customize void setup() ?
Posts made by Diazovitch69
-
RE: pH mètre connected to domoticz
-
RE: pH mètre connected to domoticz
I'm happy to read you that you think that is possible.
But i'm a noob and I don't understand what you write.
Does exist a program I can adapt ? Where can I find it ?
I need some help please. Thank you. -
pH mètre connected to domoticz
Hi,
I précise that I’m noob in programmation. That’s the raison why I post here. I need help from professional.
I find this link on the web : https://bestengineeringprojects.com/arduino-ph-meter-using-ph-sensor/?fbclid=IwAR2c-q-eo6_WixzqXvJ7Jquw_AwNhnWwyWAUiZBnr_mNQhV5_bewe9Wg4DI
I would like to have ph value on my domoticz.
Do you think I can adapt this code with mysensors ?
//Header declearation Start #include <LiquidCrystal_I2C.h> //Library for I2C lcd #include <OneWire.h> //One wire library #include <DallasTemperature.h> //Library for DS18B20 Sensor #include <math.h>// Library for math function //Header Declearation End //Pin Assignment and declearation Start #define ONE_WIRE_BUS 5 //data pin DQ pin of DS18B20 connected to digital pin D5 LiquidCrystal_I2C lcd(0x27,20,4); //set the LCD address to 0x27 for a 20 chars and 4 line display const int analogPhPin = A0; //PH module pin P0 connected to analog pin A0 const int analogTemPin = A2; //PH module pin T1 connected to analog pin A1 OneWire oneWire(ONE_WIRE_BUS); //Ste up one wire instance DallasTemperature sensors(&oneWire); //pass one wire reference to DS18B20 library long phTot, temTot; float phAvg, temAvg; int x; const float C = 21.34; //Constant of straight line (Y = mx + C) const float m = -5.70; // Slope of straight line (Y = mx + C) //Pin Assignment and declearation end // start for generate custom character byte customChar[] = { B00100, B00100, B11111, B00100, B00100, B00000, B11111, B00000 }; //End for generate custom character //Setup Function Start void setup() { lcd.init(); //initialization the lcd lcd.backlight(); sensors.begin(); //Start the DS18B20 Library lcd.setCursor(0,0); lcd.print("PH and Temperature"); lcd.setCursor(0,1); lcd.print("Meter Using"); lcd.setCursor(0, 2); lcd.print("Arduino"); delay(3000); lcd.clear(); } //Setup Function End //Main function Start void loop() { phTot = 0; temTot = 0; phAvg = 0; temAvg = 0; //taking 10 sample and adding with 10 milli second delay for(x=0; x<10 ; x++) { phTot += analogRead(A0); temTot += analogRead(A1); delay(10); } float temAvg = temTot/10; float phAvg = temTot/10; float temVoltage = temAvg * (5000.0 / 1023.0); //convert sensor reading into milli volt float phVoltage = phAvg * (5.0 / 1023.0); //convert sensor reading into milli volt sensors.requestTemperatures(); // Send the command to get temperatures float Etemp = temVoltage*0.1; //convert milli volt to temperature degree Celsius float pHValue = phVoltage*m+C; float Wtemp = sensors.getTempCByIndex(0); float TempDif = fabs(Etemp-Wtemp); //calculating the absolute value of floating // lcd.clear(); lcd.setCursor(0,0); lcd.print("Env.Tmp."); lcd.setCursor(12,0); lcd.print("Sol.Tmp."); lcd.setCursor(1,1); lcd.print(Etemp); lcd.setCursor(6,1); lcd.write(B11011111); lcd.setCursor(7,1); lcd.print("C"); lcd.setCursor(13,1); lcd.print(Wtemp); lcd.setCursor(18,1); lcd.write(B11011111); lcd.setCursor(19,1); lcd.print("C"); lcd.setCursor(0,2); lcd.print("PH Value of Solution"); lcd.setCursor(3,3); lcd.print(pHValue); lcd.setCursor(9,3); lcd.print("PH"); if (TempDif<= 5) { lcd.setCursor(11,3); lcd.write(customChar); lcd.setCursor(14,3); lcd.print("0.1PH"); } if (TempDif> 5) { lcd.setCursor(11,3); lcd.write(customChar); lcd.setCursor(14,3); lcd.print("0.2PH"); } delay(1000); }
I have a gateway mysensors on my pi3b+.
Thank you.
-
RE: Mysensors P.H et E.C prob
Hi,
I have a problem when i try to to the compilation.
Is it possible to have some help ?Les options de compilation ont été modifiées, tout sera recompilé R:\pH\1447768769814-mysensor_phmeter\1447768769814-mysensor_phmeter.ino:8:22: fatal error: MySensor.h: No such file or directory #include <MySensor.h> ^ compilation terminated. exit status 1 Erreur de compilation pour la carte Arduino/Genuino Uno
-
RE: 💬 Soil Moisture Sensor
Hi,
I have this message :
16 MCO:BGN:INIT NODE,CP=RNNNA---,FQ=16,REL=255,VER=2.3.2
26 TSM:INIT
28 TSF:WUR:MS=0
34 !TSM:INIT:TSP FAIL
36 TSM:FAIL:CNT=1
37 TSM:FAIL:DIS
39 TSF:TDI:TSL
10041 TSM:FAIL:RE-INIT
10043 TSM:INIT
10049 !TSM:INIT:TSP FAIL
10051 TSM:FAIL:CNT=2
10053 TSM:FAIL:DIS
10055 TSF:TDI:TSLWhat is the problem please ?
I'm noob.Thank you
-
RE: WatermeterPluseSensor How to parameter ?
No, I define the number of pulses for 1m3. This data is theoretical and to be verified.
Adjusted to 300,000 pulses per m3 or 6,000 pulses per 20 liters, I obtain an actual volume of 15 liters. So I had for 6000 pulses a volume of 15 liters.
So if I had waited to have one m3, I would have had 1000 liters / 15 liters = 66.67 * 6000 pulses = 400,000 pulses per m3.For your second sentence I agree and that is the problem.
-
RE: WatermeterPluseSensor How to parameter ?
The pulse factor is the number of blincks per m3.
It cannot be lower if the measured volume is lower.
300 000 pulses --> 1m3 or 6000 --> 20L
But this 6000 pulses correspond to 15L.
Si for a m3, 6000/15*1000 = 400 000 pulses/m3
What do you think about this ?
However, the volume in domoticz increases by 10 in 10 liter and sometime the domoticz device adds 10 liters.
I'm not sure if the reliability of the data is related to my flow meter or the arduino code. -
RE: WatermeterPluseSensor How to parameter ?
Hi,
I do the test with a little pump.
I have filled a 15 liter bucket and domoticz tells me 20 liters with a pulse factor set to 300 000. -
WatermeterPluseSensor How to parameter ?
Hi,
I made an assembly with an arduino nano and a YF-B1 impulse flowmeter, here are the manufacturer characteristics:
- Mini. Wokring Voltage: DC 4.5V
- Max. Working Current: 15mA (DC 5V)
- Working Voltage: DC 5V~15V
- Flow Rate Range: 1~25L/min
- Frequency: F=11*Q(Q=L/MIN)
https://media.digikey.com/pdf/Data Sheets/Seeed Technology/114991171_Web.pdf
And i don't know which value i have to insert here :
#define PULSE_FACTOR 32258 // Number of blinks per m3 of your meter (One rotation/liter)
Otherwise everything works perfectly for the transmission of data on domoticz.
Thank you.