Stránka 5 z 13

Re: Wifi zásuvka

Napsal: 28 dub 2020, 21:23
od Kony
Tak nahrávám kód do dalšíhu NodeMCU (a ještě další a další kusy) a ani zaboha mi nechce spínat D1,D2 a ani D3... pokud vytáhnu kablík z toho pinu, tak rele sepne a nebo rozepne, ale jakmile to chci aby to udělal NODEMCU tak ani prd

Re: Wifi zásuvka

Napsal: 29 dub 2020, 07:06
od pavel1tu
Tak to máš v programu chybu ;)
dej si po seriové lince sledovat co to dělá,
hlavně tu proměnnou co ti spíná výstup na to relé.

Možná bude příště dobré, když nefunguje nějaký program, ho sem nahodit ;)

Re: Wifi zásuvka

Napsal: 29 dub 2020, 07:44
od Kony
Nahrál jsem tam přesně to stejné co mi na druhé desce funguje :

Kód: Vybrat vše

#include <ESP8266WiFi.h>

// Nazev Wi-Fi site, do ktere se mam pripojit
const char* ssid = "Kony";

// Heslo Wi-Fi site, do ktere se mam pripojit
const char* password = "*********";

// Je rele sepnute?
bool rele = false;

// Webovy server pobezi na portu 80 (HTTP komunikace)
WiFiServer server(80);

// Promenna s HTTP pozadavkem z prohlizece
String request;

void setup() {
 // Nastartuj seriovou linku, do ktere budu vypisovat provozni informace
 Serial.begin(9600);

 // Na pin D1 je pripojene rele, nastavim jej tedy na vystup
 // Zaroven nastavim nizkée napeti, aby se rele po startu nesepnulo
 pinMode(D1, OUTPUT);
 digitalWrite(D1, LOW);

 // Pripojeni k Wi-Fi
 Serial.println();
 Serial.print("Pripojuji k ");
 Serial.println(ssid);
 WiFi.begin(ssid, password);

 // Dokud nejsem pripojeny k Wi-Fi,zapisuj do seriove linky tecky progressbaru
 while (WiFi.status() != WL_CONNECTED) {
 delay(100);
 Serial.print(".");
 }

 // Jsem pripojeny k Wi-Fi a mohu pokracovat
 Serial.println();
 Serial.println("WiFi pripojena!");

 // Spusteni serveru
 server.begin();
 Serial.println("Server spusten");

 // Napis IP adresu, kterou mikropocitac dostal
 Serial.print("Pouzij k pripojeni tuto adresu: ");
 Serial.print("http://");
 Serial.println(WiFi.localIP());
}

// Smycka loop se opakuje stale dokola
void loop() {
 // Pokud ma promenna rele hodnotu pravda, posli na pin D1 vyssi napeti a sepni rele
 if (rele == true) digitalWrite(D1, HIGH);
 else digitalWrite(D1, LOW);

 // Cekej, dokud se nepripoji nejaky klient
 WiFiClient client = server.available();
 if (!client) {
 return;
 }

 // Cekej, dokud klient neposle nejaka data
 Serial.println("Novy klient!");
 while (!client.available()) {
 delay(1);
 }

 // Precti a vypis prvni radek od klienta s URL dotazem
 request = client.readStringUntil('\r');
 Serial.println(request);
 client.flush();

 // Pokud je v radku vyraz ON, nastav promennou rele na pravdu
 if (request.indexOf("ON") > -1) rele = true;
 // Pokud je v radku vyraz OFF, nastav promennou rele na nepravdu
 if (request.indexOf("OFF") > -1) rele = false;

  // Posli pripojenemu klientu HTML kod stranky s tlacitky
 client.println("HTTP/1.1 200 OK");
 client.println("Content-Type: text/html");
 client.println("");
 client.println("<!DOCTYPE html>");
 client.println("<html><body>");
 client.print("<h1>Muj Wi-Fi spinac pro 230V</h2>");
 // Tlacitko pro sepnuti rele vede na adresu /ON
 client.println("<a href=\"/ON\"><button>Sepnout rele</button></a>");
 // Tlacitko pro odpojeni rele vede na adresu /OFF
 client.println("<a href=\"/OFF\"><button>Vypnout rele</button></a><br />");
 client.println("</body></html>"); 
  
 // To je vse, ted jeste 1 ms pockam a cela smycka se muze zopakovat
 delay(1);
 Serial.println("Klient odpojen");
 Serial.println("");
}
dal jsem tam i obyč na přepínání a taky to udělá přesně to stejný, takže nespíná:

Kód: Vybrat vše

void setup() {
  // put your setup code here, to run once:
  pinMode(D1, OUTPUT);

}

void loop() {
  // put your main code here, to run repeatedly:
digitalWrite(D1, LOW);
delay(500);
digitalWrite(D1, HIGH);
delay(500);
}

Re: Wifi zásuvka

Napsal: 29 dub 2020, 08:14
od KamilV
Proč najednou zase čip s relátkem vrací v response nějaká tlačítka? Proč se nedržíš návrhu, který sis udělal?

Pokud nefunguje ani druhý kód, tak bude chyba v zapojení. Prověř zadrátování, zkus i jiné propojováky.

Nebo zkus jiný pin než D1.

Re: Wifi zásuvka

Napsal: 29 dub 2020, 08:48
od Kony
To jsem jen vyzkoušel abych věděl, že to běží co se týče stránek a odpovídání...

Jiný pin než D1 jsem zkoušel, zkoušel i jiné nepájevé pole. zkoušel jsem i jiné kabely, i napřímo zapojené...

Re: Wifi zásuvka

Napsal: 29 dub 2020, 09:20
od KamilV

Kód: Vybrat vše

void setup() {
  pinMode(D1, OUTPUT);
  digitalWrite(D1, HIGH);
}

void loop() {
}
Tak zkus tohle a připojit k pinu třeba ledku, nebo změřit voltmetrem. Pokud se ani tohle nechytne, tak máš nějaký odvařený čip a poslal bych ho do koše.

Re: Wifi zásuvka

Napsal: 29 dub 2020, 09:24
od Kony
Teď jse mto vyzkoušel na Arduino UNO a tam to ve běží jak má. Ale na NodeMCU jen bliká dioda, ale rele se nesepína, jako by přes ten čip neprotýkalo 5V do rele, zkusím ještě napájení pro rele vytáhnout ze zdroje 5 V

Takže výsledek :

Arduino -> LED -> Relé = vše funkční
NodeMCU -> LED = funkční
NodeMCU -> LED -> Relé = LED bliká jak má, ale relé nespíná
Jestliže na NodeMCU připojím napájení na 3.3V tak se na Relé rozbliká zelená dioda, ale relé necvaká.

Re: Wifi zásuvka

Napsal: 29 dub 2020, 10:04
od Kony
NodeMCU :
Mezi + a NodeMCU teče -> 3,2V-4,2V (to se střídá)
Mezi D1 a NodeMCU teče -> 0,8V - 3,9V (to se střídá)

Jestliže kontakty od D1 rozpojím a spojím okamžitě relé sepne(rozepne)

Re: Wifi zásuvka

Napsal: 29 dub 2020, 10:32
od pavel1tu
No, napětí neteče, teče proud.
Já nevím jistě, jaké máš relé ? Není na 5V ?
Dál jsou jen mé doměnky, ESP nemám .... nemám jak otestovat ...

1) NodeMCU funguje na 3,3V, takže log."1" na výstupu by měla být 3,3V
2) relé jsou na 5V, takže ti to na UNO funguje, na NodeMCU ne - pokud tam je optočlen, lze to upravit změnou odpůrku.
3) některé moduly relé vyžadují pro vybuzení (i když tam je optočlen) 15-20mA - dá to NodeMCU ?
4) hodně relé má "obrácenou" logiku, na log"1" (HIGH) je relé rozepnuté, na log"0" je sepnuté (při nefunkčním/vypnutém NodeMCU) jsou relé seplé pokud je destička s relé napájena

více mne nenapadá ...

Re: Wifi zásuvka

Napsal: 29 dub 2020, 10:35
od Kony
NodeMcU a ma Vcc pinu 5V, ostatni nevim :) zkusim vyfotir to rele, je to nejaky cinsky sajrajt

Tou zmenou odpurku myslis co ??? Co bych mel zkusit ?