Page 1 of 1
Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 01 Feb 2018, 15:20
by ahlermi
Hallo Zusammen,
gibt es eine Möglichkeit mit EasyESP die Geschwindigkeit eines Lüfters auszulesen?
Mit Arduino würde ich das so lösen:
Code: Select all
// Konstanten
const int tachoPin = 2; // Pin des Tachosignals des Lüfters
// Variablen
float rps = 0; // Variable mit Kommastelle für die Berechnung der Umdrehungen pro Sekunde
int rpm = 0; // Variable für die gemittelte Drehzahl
float umdrZeit = 0; // Variable mit Kommastelle für die Zeit pro Umdrehung des Lüfters
float flankenZeit =0; // Variable mit Kommastelle für die Zeit pro Puls des Lüfters
void setup()
{
Serial.begin(9600); // Baudrate für die Ausgabe am Seriellen Monitor
pinMode(tachoPin, INPUT); // Setzt den Tacho Pin als Eingang
}
void loop()
{
flankenZeit = pulseIn(tachoPin, LOW); // Abfrage der Zeit pro Puls in Mikrosekunden
umdrZeit = ((flankenZeit * 4)/1000); // Berechnung der Zeit pro Umdrehung in Millisekunden
rps = (1000/umdrZeit); // Umrechnung auf Umdrehungen pro Sekunde
rpm = (rps*6); // Schritt 1 zur Rundung auf 10er Schritte der Drehzahl
rpm = (rpm*10); // Schritt 2 zur Rundung auf 10er Schritte der Drehzahl
Serial.print(rpm); // Ausgabe der Drehzahl im Seriellen Monitor
Serial.println(" RPM"); // Ausgabe der Drehzahl im Seriellen Monitor
}
Gruß Michael
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 01 Feb 2018, 15:39
by grovkillen
Engelska tack...
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 01 Feb 2018, 16:41
by toffel969
ahlermi wrote: ↑01 Feb 2018, 15:20
Hallo Zusammen,
gibt es eine Möglichkeit mit EasyESP die Geschwindigkeit eines Lüfters auszulesen?
Mit Arduino würde ich das so lösen:
Code: Select all
// Konstanten
const int tachoPin = 2; // Pin des Tachosignals des Lüfters
// Variablen
float rps = 0; // Variable mit Kommastelle für die Berechnung der Umdrehungen pro Sekunde
int rpm = 0; // Variable für die gemittelte Drehzahl
float umdrZeit = 0; // Variable mit Kommastelle für die Zeit pro Umdrehung des Lüfters
float flankenZeit =0; // Variable mit Kommastelle für die Zeit pro Puls des Lüfters
void setup()
{
Serial.begin(9600); // Baudrate für die Ausgabe am Seriellen Monitor
pinMode(tachoPin, INPUT); // Setzt den Tacho Pin als Eingang
}
void loop()
{
flankenZeit = pulseIn(tachoPin, LOW); // Abfrage der Zeit pro Puls in Mikrosekunden
umdrZeit = ((flankenZeit * 4)/1000); // Berechnung der Zeit pro Umdrehung in Millisekunden
rps = (1000/umdrZeit); // Umrechnung auf Umdrehungen pro Sekunde
rpm = (rps*6); // Schritt 1 zur Rundung auf 10er Schritte der Drehzahl
rpm = (rpm*10); // Schritt 2 zur Rundung auf 10er Schritte der Drehzahl
Serial.print(rpm); // Ausgabe der Drehzahl im Seriellen Monitor
Serial.println(" RPM"); // Ausgabe der Drehzahl im Seriellen Monitor
}
Gruß Michael
Hallo Michael
in diesem Forum wird Englisch gesprochen, bitte daher zukünftig Deine Fragen und Antworten auf Englisch verfassen.
@ Grovkillen: He is asking whether it is possible to use ESPEasy to read the rpm signal on a fan. My swedish sucks (probably as much as your German
![Knipoog ;-)](./images/smilies/icon_e_wink.gif)
), but I get you are asking Michael to speak Englisch, which I also did, politly, in German
Zu Deinem Anliegen, das wurde hier schon besprochen:
viewtopic.php?&t=731&start=190
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 01 Feb 2018, 17:38
by grovkillen
Thanks toffel!
![Erg Blij :D](./images/smilies/icon_e_biggrin.gif)
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 02 Feb 2018, 09:09
by ahlermi
ok, i undestand that there is no way to do it nativ on EasyESP, i could calc it to pwm with my buildin arduino.
Is it possible to get this pwm value, as it is possible to set pwm values?
best regards
Michael
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 02 Feb 2018, 13:07
by toffel969
ahlermi wrote: ↑02 Feb 2018, 09:09
ok, i undestand that there is no way to do it nativ on EasyESP, i could calc it to pwm with my buildin arduino.
Is it possible to get this pwm value, as it is possible to set pwm values?
best regards
Michael
I think you could write it into a dummy device using the taskvalueset command via serial from arduino.
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 10 Feb 2018, 13:26
by ahlermi
sorry, thats to high for me, please help.
now i have a PWM inputsignal on GPIO 4 and GPIO 10 build from my Fan Arduino. 0 to 1000 mapped from 0 to 2500 rpm of fan. (Fan1 and Fan2)
what have i to do to see this PWM signal anywhere? maybe dummy.
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 10 Feb 2018, 13:27
by grovkillen
Yes, as of now you need to use a dummy for that.
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 10 Feb 2018, 13:39
by ahlermi
can you build a smal totorial?
i have no idea to get this value in the dummy
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 10 Feb 2018, 19:19
by ahlermi
OK, now i have enabled Rules in Advanced settings, have a Clock Event:
Code: Select all
on Clock#Time do
TaskValueSet 5,1,100 //PWM Fan1
TaskValueSet 5,2,200 //PWM Fan2
endon
How can i get the pwm value from GPIO?
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 10 Feb 2018, 19:40
by ahlermi
is it necessary to use Raw commands?
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 15 Feb 2018, 11:20
by ahlermi
Is there anybody with an idea to read Pulse from an Input Pin an use it in rules?
Arduino
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 15 Feb 2018, 11:37
by toffel969
ahlermi wrote: ↑15 Feb 2018, 11:20
Is there anybody with an idea to read Pulse from an Input Pin an use it in rules?
Arduino
Hi
You can use the pulse device for that and use the count value.
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 19 Feb 2018, 14:39
by ahlermi
I got no Reaktion
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 19 Feb 2018, 17:10
by toffel969
ahlermi wrote: ↑19 Feb 2018, 14:39
I got no Reaktion
Ich schreibe Dir mal kurz auf Deutsch zurück:
Einige Deiner Einstellungen können so nicht funktionieren. Die Debounce-Zeit ist viel zu lang. Bei 3000 touren pro Minute gibts doch schon 50 impulse pro Sekunde, d.h. Debounce-Zeit muss unter 20msec liegen (versuchs mal mit 15). Versuchs dann nochmal. Außerdem, spiel mal mit dem Typ Delta/Total´/counter, ich bin auch immer verwirrt welcher jetzt der richtige ist.
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 19 Feb 2018, 17:49
by ahlermi
Leider keine Verbesserung, nicht auf LOW/CHANGING/RISING/FALLING TOTAL oder Total oder Count lassen sich nicht abspeichern.
Ich habe jetzt meinen Arduino dazwischen, der mir ein PWM Signal von 0-1000 liefert, der Lüfter ist nicht mehr direkt angeschlossen.
Trotzdem kommt nix an. :-/
Unter Hardware stehen die Pins auf "Input"
Danke für die Unterstützung.
Re: Mit EasyESP Geschwindigkeit eines Lüfters auslesen?
Posted: 19 Feb 2018, 18:10
by toffel969
Lass mal den arduino weg und stell den delay auf 1sec. Dann Poster mal ein Screenhsot des logs.