Relais per esp32 Steuern
- Der_Dieter
- Autor
- Offline
- New Member
Weniger
Mehr
- Beiträge: 1
- Dank erhalten: 0
14 Jan 2021 09:59 - 14 Jan 2021 11:13 #714
von Der_Dieter
Der_Dieter erstellte das Thema Relais per esp32 Steuern
Moin,
Ich versuche für ein Projekt 2 Relais über den ESP32-Cam zu steuern. Leider schaffe ich das mit dem unten genannten Scrip nicht. Die Relais schalten über null.Hat jemand eine Idee woran das liegen kann?
Danke für jede Hilfe.
Dieter
Ich versuche für ein Projekt 2 Relais über den ESP32-Cam zu steuern. Leider schaffe ich das mit dem unten genannten Scrip nicht. Die Relais schalten über null.
int safe1 = 0;
int safe2 = 0;
//relay 1
pinMode(12, OUTPUT);
pinMode(13, INPUT_PULLUP);
// relay 2
pinMode(14, OUTPUT);
pinMode(15, INPUT_PULLUP);
digitalWrite(12,HIGH);
digitalWrite(14,HIGH);
pinMode(4, OUTPUT);
}
void loop()
{
safe1 = schalten(13,12,safe1);
safe2 = schalten(15,14,safe2);
}
int schalten(int in, int out,int safe){
if(digitalRead(in) == HIGH && (safe == 0))
{
safe = 1;
digitalWrite(out, HIGH);
while(digitalRead(in) == HIGH){
delay(10);
}
}
else if(digitalRead(in) == HIGH && (safe == 1))
{
safe = 0;
digitalWrite(out,LOW);
while(digitalRead(in) == HIGH){
delay(10);
}
}
return(safe);
}
Danke für jede Hilfe.
Dieter
Letzte Änderung: 14 Jan 2021 11:13 von Der_Dieter.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- supportteam
- Offline
- Administrator
Weniger
Mehr
- Beiträge: 41
- Karma: 1
- Dank erhalten: 6
15 Jan 2021 12:03 #715
von supportteam
Relais per esp32 Steuern
Hallo,
was heisst "Die Relais schalten über null."???
Was definitiv Kappes ist:
while(digitalRead(in) == HIGH){
delay(10);
}
-> Während delay macht der ESP nix ! Nix!!!!
D.h. er fragt auch seine Eingänge nicht ab und die while Schleife würde bis zum Nirvana nix machen...
Wenn Du möchtest, dass nachdem der Eingang High ist noch 10 Sekunden länger wartet um etwas zu tun solltest Du Dir "Blink without delay" angucken und damit entsprechende Wartezeiten einbauen.
Wie gesagt: was heisst "Die Relais schalten über null."???
Viele Grüße!
was heisst "Die Relais schalten über null."???
Was definitiv Kappes ist:
while(digitalRead(in) == HIGH){
delay(10);
}
-> Während delay macht der ESP nix ! Nix!!!!
D.h. er fragt auch seine Eingänge nicht ab und die while Schleife würde bis zum Nirvana nix machen...
Wenn Du möchtest, dass nachdem der Eingang High ist noch 10 Sekunden länger wartet um etwas zu tun solltest Du Dir "Blink without delay" angucken und damit entsprechende Wartezeiten einbauen.
Wie gesagt: was heisst "Die Relais schalten über null."???
Viele Grüße!
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Greenhouse
- Offline
- Junior Member
Weniger
Mehr
- Beiträge: 25
- Dank erhalten: 11
16 Jan 2021 18:06 #720
von Greenhouse
Relais per esp32 Steuern
Hallo Der_Dieter,
auch einen Elefanten sollte man in Scheiben essen.
Versuche mal Dein Problem in überschaubare Happen zu zerlegen.
Kannst Du ein einzelnes Relais schalten?
Kannst Du unabhängig voneinander beide Relais schalten?
Funktionieren die Statuswechsel bei den Eingangsports?
Wenn Du diese 3 Punkte ausprobiert und zum Laufen gebracht hast, solltest Du Deiner Lösung näher sein.
Viel Erfolg
Gruß
Greenhouse
auch einen Elefanten sollte man in Scheiben essen.
Versuche mal Dein Problem in überschaubare Happen zu zerlegen.
Kannst Du ein einzelnes Relais schalten?
Kannst Du unabhängig voneinander beide Relais schalten?
Funktionieren die Statuswechsel bei den Eingangsports?
Wenn Du diese 3 Punkte ausprobiert und zum Laufen gebracht hast, solltest Du Deiner Lösung näher sein.
Viel Erfolg
Gruß
Greenhouse
Folgende Benutzer bedankten sich: supportteam, Nils
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Aktuelle Seite:
- Startseite
- Impressum / Datenschutz / ...
- Projektprobleme
- Mikrocontroller
- Relais per esp32 Steuern