Skocz do zawartości

Mrpatryk

Użytkownicy
  • Zawartość

    170
  • Rejestracja

  • Ostatnio

Wszystko napisane przez Mrpatryk

  1. chyba ze zastosuje się np zasilacz pasował by mi w sumie zebym miał 5 i 3,3 V tylko większy amperaż bo mam tez esp8266-01 które nie ma stabilizatora i potrzebuje 3,3 V. Większy amperaż to zapas ? Może uszkodzić esp/nodemcu v3 ?
  2. Takie mam połączenie mniej więcej, niestety przy takim podłączeniu przekaźniki się nie załączają tzn 1/2 zaskoczą reszta śpi, zaświeca się tylko dioda i tyle. gdy któreś nodemcu v3 odepnę od zasilania odrazu lepiej wszystko pracuje. Jaki zasilacz do tego dobrać ? Dodam ze wszystkie nodemcu v3 wysyłają dane do bazy danych oraz odbierają.
  3. Witam, mam pytanie do osób bardziej doświadczonych. Jaki zasilacz można by było użyc tzn 9V - ile Amperowy? Mam aktualnie zasilacz 9V 1A i niestety nie daje rady, 3 nodemcu v3 + moduł 8 przekaźników i niestety np: załączy 2/3 przekazniczki i to by było na tyle. Ktoś coś ?
  4. Wlasnie tak!. Super kolejny problem dotyczacy nodemcu za mna:) dzieki za zaangazowanie .
  5. no ok. Przeciez nic sie nie stalo. Teraz borykam sie z tym D6 . Nie wiem dlaczego poprostu nie dziala. Wartosc prawidlowa. Serial port wyswietla wlacz6 a sygnal ktory ma wyslac na przekaznik nie. Tzn nie dziala . Wszystkie inne smigaja a ten jeden niestety nie o kur... wlasnie przeczytalem ten kodzik szybka analiza i juz wiem gdzie jest blad !
  6. Jednak chcialbym zostac przy moim kodzie. Dziala tylko na tym d6 nie dziala. Nienwiem czy to jest zwiazane z tym ze na tym pinie niby wykazuje ze jest pin mosi albo miso bo juz nie pamietam. Bo kod dziala i wszystkie przekazniczki dzialaja. Oprocz tego podpietego do d6 . Jakies pomysly ?
  7. Dopisalem For zamiast ustawiania na stan wysoki itp , co do tego żeby na esp postawic serwer to jest taki problem ze moj serwer miałby różne IP. Dane ze strony w postawci ON=1 i oFF =0 przesyłam do bazy danych, ESP odczytuje wartosc w postaci liczby 00000000, nastepnie dzieli do tablicy i w tedy porównuje np pierwsza cyfre w ifie . Przerobiłem ten programik i działa mi fajnie , jednak to "for" które napisałeś, nie działa . Mam teraz taki problem że szósty przekaznik nie działa, moduł przekazników jest sprawdzony i działa poprawnie , gdzy właczam 6 przekaznik , załacza się pierwszy a nie 6sty, nie wiem dlaczego co robie nie tak ? Podłaczenie przekaznikow, Gnd- Gnd Vcc=5v (modul przekazników i nodemcu (VIN)), przekaznik 1- D1, przekaznik 2 -D2, przekaznik 3-D3, przekaznik 4-D4, przekaznik 5-D5, przekaznik 6-D6,(problem, nie działa wgl). przekaznik 7-D7, przekaznik 8-D8. #include <ESP8266HTTPClient.h> #include <ESP8266WiFi.h> #include <ESP8266WiFiMulti.h> const char* ssid = "***"; const char* password = "****"; const int httpPort = 80; const char* host = "www"; char a = '1'; char b = '0'; int przekaznik1 = D1; int przekaznik2 = D2; int przekaznik3 = D3; int przekaznik4 = D4; int przekaznik5 = D5; int przekaznik6 = D6; int przekaznik7 = D7; int przekaznik8 = D8; void setup() { Serial.begin(9600); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print(".");} Serial.println(WiFi.localIP()); pinMode(przekaznik1, OUTPUT); pinMode(przekaznik2, OUTPUT); pinMode(przekaznik3, OUTPUT); pinMode(przekaznik4, OUTPUT); pinMode(przekaznik5, OUTPUT); pinMode(przekaznik6, OUTPUT); pinMode(przekaznik7, OUTPUT); pinMode(przekaznik8, OUTPUT); digitalWrite(przekaznik1, HIGH); digitalWrite(przekaznik2, HIGH); digitalWrite(przekaznik3, HIGH); digitalWrite(przekaznik4, HIGH); digitalWrite(przekaznik5, HIGH); digitalWrite(przekaznik6, HIGH); digitalWrite(przekaznik7, HIGH); digitalWrite(przekaznik8, HIGH); } void loop(){ HTTPClient http; //Declare an object of class HTTPClient http.begin("www"); int httpCode = http.GET(); if (httpCode > 0) {//Send the request // Check the returning code String payload = http.getString(); //Get the request response payload String S = payload; char a1 = (S[0]); char a2 = (S[1]); char a3 = (S[2]); char a4 = (S[3]); char a5 = (S[4]); char a6 = (S[5]); char a7 = (S[6]); char a8 = (S[7]); Serial.println(a6); Serial.println(a); if (a1 == a){ Serial.println("wlacz1"); digitalWrite(przekaznik1, LOW); } else { digitalWrite(przekaznik1, HIGH); Serial.println("Wyłaczone1"); } if (a2 == a){ Serial.println("wlacz2"); digitalWrite(przekaznik2, LOW); } else { digitalWrite(przekaznik2, HIGH); Serial.println("Wyłaczone2"); } if (a3 == a){ digitalWrite(przekaznik3, LOW); Serial.println("wlacz3"); } else { digitalWrite(przekaznik3,HIGH); Serial.println("Wyłaczone3"); } if (a4 == a){ digitalWrite(przekaznik4,LOW); Serial.println("wlacz4"); } else { digitalWrite(przekaznik4,HIGH ); Serial.println("Wyłaczone4"); } if (a5 == a){ digitalWrite(przekaznik5, LOW); Serial.println("wlacz5"); } else { digitalWrite(przekaznik5, HIGH); Serial.println("Wyłaczone5"); } if (a6 == a){ digitalWrite(przekaznik1, LOW); Serial.println("wlacz6"); } else { digitalWrite(przekaznik6, HIGH); Serial.println("Wyłaczone6"); } if (a7 == a){ digitalWrite(przekaznik7, LOW); Serial.println("wlacz7"); } else { digitalWrite(przekaznik7, HIGH); Serial.println("Wyłaczone7"); } if (a8 == a){ digitalWrite(przekaznik8, LOW); Serial.println("wlacz8"); } else { digitalWrite(przekaznik8, HIGH); Serial.println("Wyłaczone8"); } delay(1000); } }
  8. #include <ESP8266HTTPClient.h> #include <ESP8266WiFi.h> #include <ESP8266WiFiMulti.h> const char* ssid = "*****"; const char* password = "******"; const int httpPort = 80; const char* host = "WWWW"; char a = '1'; char b = '0'; int przekaznik1 = D1; //przekaznik1 podłączamy do pinu 10 int przekaznik2 = D2; int przekaznik3 = D3; //przekaznik1 podłączamy do pinu 10 int przekaznik4 = D4; int przekaznik5 = D5; //przekaznik1 podłączamy do pinu 10 int przekaznik6 = D6; int przekaznik7 = D7; //przekaznik1 podłączamy do pinu 10 int przekaznik8 = D8; bool sp1 = true; //zmienna boolowska sp1 do steowania stanem przekaznika1 bool sp2 = true; bool sp3 = true; //zmienna boolowska sp1 do steowania stanem przekaznika1 bool sp4 = true; bool sp5 = true; //zmienna boolowska sp1 do steowania stanem przekaznika1 bool sp6 = true; bool sp7 = true; //zmienna boolowska sp1 do steowania stanem przekaznika1 bool sp8 = true; void setup() { Serial.begin(9600); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print(".");} Serial.println(WiFi.localIP()); pinMode(przekaznik1, OUTPUT); //przekaznik1 jako wyjście pinMode(przekaznik2, OUTPUT); pinMode(przekaznik3, OUTPUT); //przekaznik1 jako wyjście pinMode(przekaznik4, OUTPUT); pinMode(przekaznik5, OUTPUT); //przekaznik1 jako wyjście pinMode(przekaznik6, OUTPUT); pinMode(przekaznik7, OUTPUT); //przekaznik1 jako wyjście pinMode(przekaznik8, OUTPUT); digitalWrite(przekaznik1, HIGH); //stan początkowy przekaznika1 wysoki digitalWrite(przekaznik2, HIGH); digitalWrite(przekaznik3, HIGH); //stan początkowy przekaznika1 wysoki digitalWrite(przekaznik4, HIGH); digitalWrite(przekaznik5, HIGH); //stan początkowy przekaznika1 wysoki digitalWrite(przekaznik6, HIGH); digitalWrite(przekaznik7, HIGH); //stan początkowy przekaznika1 wysoki digitalWrite(przekaznik8, HIGH); } void przekazniki(){HTTPClient http; //Declare an object of class HTTPClient http.begin("STRONA WWW"); int httpCode = http.GET(); if (httpCode > 0) {//Send the request // Check the returning code String payload = http.getString(); //Get the request response payload //Serial.println(payload); //delay(500); String S = payload; char a1 = (S[0]); char a2 = (S[1]); char a3 = (S[2]); char a4 = (S[3]); char a5 = (S[4]); char a6 = (S[5]); char a7 = (S[6]); char a8 = (S[7]); //Serial.print(a1); // Serial.print(a); if (a1 == a){ Serial.println("wlacz1"); sp1=!sp1; digitalWrite(przekaznik1, sp1); } else {sp1=sp1; digitalWrite(przekaznik1, sp1); Serial.println("Wyłaczone1"); } if (a2 == a){ Serial.println("wlacz2"); sp2=!sp2; digitalWrite(przekaznik2, sp2); } else {sp2=sp2; digitalWrite(przekaznik2, sp2); Serial.println("Wyłaczone2"); } if (a3 == a){sp3=!sp3; digitalWrite(przekaznik3, sp3); Serial.println("wlacz3"); } else {sp3=sp3; digitalWrite(przekaznik3, sp3); Serial.println("Wyłaczone3"); } if (a4 == a){sp4=!sp4; digitalWrite(przekaznik4, sp4); Serial.println("wlacz4"); } else {sp4=sp4; digitalWrite(przekaznik4, sp4); Serial.println("Wyłaczone4"); } if (a5 == a){sp5=!sp5; digitalWrite(przekaznik5, sp5); Serial.println("wlacz5"); } else {sp5=sp5; digitalWrite(przekaznik5, sp5); Serial.println("Wyłaczone5"); } if (a6 == a){sp6=!sp6; digitalWrite(przekaznik1, sp6); Serial.println("wlacz6"); } else {sp6=sp6; digitalWrite(przekaznik6, sp6); Serial.println("Wyłaczone6"); } if (a7 == a){sp7=!sp7; digitalWrite(przekaznik7, sp7); Serial.println("wlacz7"); } else {sp7=sp7; digitalWrite(przekaznik7, sp7); Serial.println("Wyłaczone7"); } if (a8 == a){sp8=!sp8; digitalWrite(przekaznik8, sp8); Serial.println("wlacz8"); } else {sp1=sp8; digitalWrite(przekaznik8, sp8); Serial.println("Wyłaczone8"); }} } void loop() { przekazniki(); } Chodzi o to by IF nie wykonywał się w pętli tylko jeśli zmienna "a1" będzie miała wartość 1 to w tedy przekaźnik się załącza, a wyświetlanie zawartości oraz zapis do zmiennych z tablicy żeby ciągle był w loopie . Bo teraz porostu przekaźnik po włączeniu "pyka" włącza się i wyłącza.
  9. Witam mam nodemcu v3 i moduł z 8 przekaźnikami, wszystko fajnie podłączone. Program na nodemcu v3 sprawdza wartość na stronie - następnie zapisuje je do stringa potem w ifach porównuje w tabeli jezeli wartosc danego pola jest równa 1 ma załączyć przekaźnik. i tak też się dzieje, tylko problem jest tutaj w tym ze w pętli loop działa ta pętla w koło i przekaźnik się włącza i wyłącza. Stąd me pytanie: czy da się if''a zapisać poza pętlą loop, a w pętli żeby tylko program sprawdzał czy wartości z strony się nie zmieniły ?
  10. Problem może leżec w zmiennych ? "liczba" to liczba zapisana jako ciąg znakow (string) String url = "/********?"; url += "id=1"; url += "&karta="; url += liczba; client.print(String("GET ") + url + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" + "Connection: close\r\n\r\n"); Serial.print("wykonano1"); Ogarniete ! okazało sie ze wszystko działa tylko tak jak mniewałem zła była zmienna przerzuciłem ją na int i działa zaszybko sie ucieszyłem , teraz wyświetla wszystko na 0 ... a działało ... problem jaki wystepuje to taki w którym baza danych zapisuje ID z karty jako VARCHAR, ale php nie wiem jako jaki tryb danych string czy cos porownuje . dlatego nie działa .;/ dane nie wychodza poza arduino albo skrypt php nie chce ich odbierac ... jedno z dwóch .
  11. skoro mogę coś do bazy wysłać (tak jak wysyłam temperatury ) i w php zapisać w " zmiennej" , to dlaczego nie mogę wysłać ciągu cyfr ?? i z nimi w php coś zrobić ? Nie rozumiem tego ...
  12. Już ogarnąłem dodawanie z palca i działą 1/0 się pojawia, cała magia teraz na arduino bo niestety tak jakby nie wysyłało do PHP
  13. z palca tak zwanie jak dodam to działa . wyswietla 1 albo 0. z palca jednak jak dodaje to nie działa. wyświetla cały czas 0 tak jakby nie mogł ID karty znalezc w bazie danych
  14. z arduino do esp dziala 100% po serialu odbieram stringa "id karty" i teraz z esp jak mam sprawdzic ze to dociera do php ? po drodze zaden bład nie wyskakuje , łaczy sie z wifi i serwerem nie ma problemu . moim zdaniem jest problem z php bo php nie zwraca ani 1 ani 0.
  15. Arduino mam podłączone, przesyłam dane na mouł "esp" nim wysyłam do php poprzez get Id oraz IDkarty . ale niestety PHP nic nie wyświetla. coś w tym skrypcie co napisalem jest zle ?
  16. <?php $servername = "88888888"; $username = "888888"; $password = "88888"; $dbname = "8888"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error);} $id = ($_GET['id']); $idkarty = ($_GET['karta']); echo "$idkarty"; if ($id == '1'){ $loguj=("SELECT `BAZA` from `TABELA` where IDKARTY='$idkarty'"); $rekordy = mysql_query($loguj); if(mysql_num_rows($rekordy)==0) {echo '1';} else { echo '0';} $conn->close();} ?> taki skrypt ma prawo bytu ? , przesyłam z arduino ID karty oraz id=1 dzieki czemu ma if zadziałac , jednak nie wiem czy jest poprawnie napisany if bo ni sie nie wyświetla z echo. ani 1 ani 0. skrypt ma za zadanie przeszukac baze w celu znalezienia rekordu z ID karty. jesli znajdzie ma wyswietlic "1" jesli nie "0". A niestety nic nie wyświetla .
  17. nie chcę wyświetlic zawartości całej strony. W bazie mam zapisane w tabeli ID karty , imie nazwisko posiadacza, chce zeby arduino po odczytaniu ID karty wysłało je do PHP , PHP szuka czy dane ID karty jest w bazie jeśli jest , wysyła Imie nazwisko i wartość 1, jesli nie ma wysyła wartośc 0. o coś takiego by mi chodziło.
  18. Zapytanie potrafię napisać ale nie wiem jak napisac kod na ESP by odbierał z tego zapytania jakies dane np ID karty imie i nazwisko ...
  19. Co do arduino mam wszystkie czesci do tego potrzebne. Jedyne co nje wiem jak napisac kod heh. Potrzebowal bym jakies przyklad cos co by mnie naprpwadzilo na trop ze tak to nazwe.
  20. Nie ma gdzies jakiegos przykladu z odbioru danych ?? Wyslac wiem jak ale odebrac juz nie.
  21. Wiec nie mam dostepu z zadnwgo klienta. Moge soe bawic baza tylko z phpmyadmin
  22. Sorka nie widzialem że dopisales pytania. Narazie przewiduje jeden zamek. Co do zasilania awaryjnego. To przewiduje akumulatorki ktore pociagna np pare godzin.
×
×
  • Utwórz nowe...