Fórum témák

» Több friss téma
Lapozás: OK   80 / 137
(#) Firefighter1 hozzászólása Jan 26, 2019 /
 
Sziasztok!

Had kérdezzem szerintetek ez elfutna egy ESP01 en?
  1. #include <ESP8266WiFi.h>
  2.  
  3. #include <PubSubClient.h>
  4.  
  5. WiFiClient espClient;
  6. PubSubClient client(espClient);
  7.  
  8. void reconnectmqttserver() {
  9. while (!client.connected()) {
  10. Serial.print("Attempting MQTT connection...");
  11. String clientId = "ESP8266Client-";
  12.  clientId += String(random(0xffff), HEX);
  13. if (client.connect(clientId.c_str())) {
  14. Serial.println("connected");
  15.   client.subscribe("node");
  16. } else {
  17. Serial.print("failed, rc=");
  18. Serial.print(client.state());
  19. Serial.println(" try again in 5 seconds");
  20. delay(5000);
  21. }
  22. }
  23. }
  24.  
  25. void callback(char* topic, byte* payload, unsigned int length) {
  26.   String MQTT_DATA = "";
  27.   for (int i=0;i<length;i++) {
  28.    MQTT_DATA += (char)payload[i];}
  29.   if (MQTT_DATA == "OFF") {
  30.     digitalWrite(2,LOW);
  31.     Serial.println("LED Off");
  32.  
  33.   }
  34.   if (MQTT_DATA == "ON") {
  35.     digitalWrite(2,HIGH);
  36.     Serial.println("LED On");
  37.  
  38.   }
  39.  
  40. }
  41.  
  42. void setup()
  43. {
  44.   Serial.begin(9600);
  45.   WiFi.disconnect();
  46.   delay(3000);
  47.   Serial.println("START");
  48.    WiFi.begin("mynet","maypassword");
  49.   while ((!(WiFi.status() == WL_CONNECTED))){
  50.     delay(300);
  51.     Serial.print("..");
  52.  
  53.   }
  54.   Serial.println("Connected");
  55.   client.setServer("192.168.1.8", 1883);
  56.   client.setCallback(callback);
  57.  
  58. pinMode(2, OUTPUT);
  59. }
  60.  
  61.  
  62. void loop()
  63. {
  64.  
  65.     if (!client.connected()) {
  66.     reconnectmqttserver();
  67.     }
  68.     client.loop();
  69.  
  70. }


Csak folyamatábrásan tudom bütykölni és eddig csak node-ra írtam progit!
úgyhogy azért sem tudom hogy futna e egy ESP01-en

Ja persze annyi változtatást hogy az integrált led helyett egy kimenetet kapcsol alacsony magasra.
A hozzászólás módosítva: Jan 26, 2019
(#) Firefighter1 hozzászólása Jan 27, 2019 /
 
Bár most ahogy nézem, "én" semmi olyan infot nem látok benne ami specializálodva lenne a nagyobb node-ra, vagy az mqtt-t már nem bírja?

Előkotrok egy esp01-et és kipróbálom!
(#) kbhuinfo válasza Firefighter1 hozzászólására (») Jan 29, 2019 / 1
 
En ehhez hasonlo kodot hasznalok evek ota - gond nelkul fut.
(#) gsc73 hozzászólása Feb 1, 2019 /
 
Sziasztok!

Második projektemem dolgozom nodeMCU+ESPEasy párosítással. Hálózati (230V) feszültség meglétét szeretném monitorozni relével az alábbi bekötést alkalmazva (természetesen az érintésvédelmi kockázatokkal tisztában vagyok, körültekintően fogok eljárni).
Az a kérdésem, hogy ez így megfelelő a nodeMCU GPIO portjának? Azaz a relén biztosan nem megy át semmilyen "tranziens", ami károsíthatja nodeMCU-t (szerintem nem, de a biztonság kedvéért gondoltam megkérdezem, mivel ahogy olvasom, igen érzékenyek a GPIO lábak)

Üdv: G.
(#) Gránátalma válasza gsc73 hozzászólására (») Feb 1, 2019 /
 
A 3.3at nem kell ráengedni, elegendő, ha programban bekapcsolod a táprahúzást(amit egyébként is el kell végezned, hacsak nem akarsz vagy-vagy alapon működő programot írni)

Szerk.: Ebben a formában direktbe a 3.3at ne is add rá ,maximum ellenálláson keresztül...

Önmagában ez a relés megoldás szerintem annyira nem nyerő, hiszen a reléd behúzó tekercse folyamatosan melegedni fog, amikor van rajta 230V.
A hozzászólás módosítva: Feb 1, 2019
(#) Johnycorp válasza gsc73 hozzászólására (») Feb 1, 2019 /
 
Szia.

Valóban, ahogy Gránátalma is írta, nem a legjobb (és felesleges) megoldás egy ,meghúzott relével monitorozni 230V meglétét.
Erre a gyakorlatban egy optocsatolós áramkört szoktak alkalmazni. Ez biztosítja a galvanikus leválasztást a 230V és a 3,3V között, mivel "csak" a fény megy át a két feszültségszint között.

Például ilyesmit lehet venni vagy hasonlót építeni (ha van a területen tapasztalatod):
Bővebben: Link
(#) Firefighter1 hozzászólása Feb 1, 2019 /
 
Sziasztok!

Próbálom magamat beleásni az ESP 01-esek lelkivilágába, de már az elején gondba ütköztem!

Arduino IDE feltelepítve ESP packett telepítve a sárgatokos programozót használom forrasztottam rá egy jumpercsatit a flash zárásához!

Ide példaprogramjából feltöltöttem a WiFi scan kodot, lefordit, feltelepül, és ilyen marhaságokat küld vissza!

A gép steril!
Teljesen szüzen van telepítve a ch driveren és az arduinon kívül csak a chrome van rajta.
Nekem úgy tűnik mintha működne, csak a karakterkodolásba lenne gond! aztán lehet hogy ugy rossz az egész ahogy van!
Amúgy küldi szépen folyamatosan az adatokat helyesebben kriksz-kraksz-okat

Szerintetek mi lehet a gond?

esp.PNG
    
(#) icserny válasza Firefighter1 hozzászólására (») Feb 1, 2019 / 1
 
Ha 115200 bit/s sebességet állítottál be, akkor ne 9600 bit/s sebességgel fogadd az adatokat!

Ez áll a programban:
  1. Serial.begin(115200);

ez állítja be a soros port sebességét.
Ugyanezt a sebességet állítsd be a terminal programnál is!
(#) Firefighter1 válasza icserny hozzászólására (») Feb 1, 2019 /
 
(#) peze válasza gsc73 hozzászólására (») Feb 2, 2019 /
 
(#) Firefighter1 hozzászólása Feb 2, 2019 /
 
Ez a kép miatt kezdtem el töprengeni....
Az Rx és Tx lábat is lehet használni programozott ki-be menetnek?
(#) pipi válasza Firefighter1 hozzászólására (») Feb 2, 2019 / 1
 
Lehet, de ezeket a lábakat programozáskor valószinűleg bontani kell, különben meghiúsítják a letöltést, A TX lábat meg bekapcsoláskor jól megrángatja, ezt a rajta lévő cuccnak el kell viselnie/ne akadjon ki...
De szerintem vegyél nagyobb modult, esp03-07-12 ezeknek jóval több lába van...
Vagy ha ügyes vagy akkor a csatlakozóra nem kivezetett ESP8266 chip lábára is forraszthatsz drótot, és máris van szabad io lábad (a hőskorban még én is csináltam)
valami ilyesmi
(#) Gránátalma válasza Firefighter1 hozzászólására (») Feb 2, 2019 /
 
Mux...
(#) Firefighter1 válasza pipi hozzászólására (») Feb 2, 2019 /
 
NodeMCU-m van itthon vagy 50 darab ugyhogy nem feltétlen a sok láb kell. Csak ez tetszik mert pici és ha tudna 2 relét két nyomógombbal akkor máris másfelé gondolkodnék.

7-5 panelhelyem van, 2,8 centi magasságba, oda kell beférnie mindennek! Csak ezért töprengek rajta..
Az a lábforrasztás nekem nem menne! Se olyan ügyes nem vagyok se olyan felszerelésem sincs... De amúgy ötletes és tetszik!

Szerk:
Programozva nema panelba lenne, utána meg úgyse lenne kivéve, úgyhogy a lehetőségét meghagyom a 2 gombnak meg relének, úgy tervezem meg a panelt.
A hozzászólás módosítva: Feb 2, 2019
(#) nedudgi válasza Firefighter1 hozzászólására (») Feb 2, 2019 /
 
Megoldható. Amit meg kell oldani, hogy a tápfesz visszatérésekor, illetve bekapcsoláskor a GPIO0 és GPIO2 lábakat magasra kell húzni, ezekre jöhetnek a nyomógombok. Az RX bemenet simán működhet kimenetként, a TX, mint írták, a bootloader alatt billeg. Ha ezt elviseli a jelfogós áramkör, mehet. Jelfogót persze közvetlenül nem hajthatsz meg ESP8266 lábaival, tranzisztoros erősítés kell hozzá.
A hozzászólás módosítva: Feb 2, 2019
(#) Firefighter1 válasza nedudgi hozzászólására (») Feb 2, 2019 /
 
És ha az Rx és a Tx kapja a gombot?
Most úgy rajzoltam hogy azon vannak a gombok 10kOhm al földre húzva (példa kapcsolás alapján csináltam)
A GPIO0 és GPIO2 pedig relé van egy egy IRLZ34n en keresztül húzgálva ( ez van a fiókba kb 50 darab) és ott is 10kOhm al földre húzva

Valahogy így ( a többit most direkt leszedtem hogy ne zavarjon be!)
A hozzászólás módosítva: Feb 2, 2019

esprelay.PNG
    
(#) nedudgi válasza Firefighter1 hozzászólására (») Feb 2, 2019 /
 
Ha GPIO0, vagy GPIO2 föld felé van húzva, nehezebben indul el a program. Belép a boootloaderbe, aztán lehet fejet vakarni.
3,3V jelfogóval lehet trükközni, ha PNP tranzisztor, esetleg pFET kapcsolja.
A hozzászólás módosítva: Feb 2, 2019
(#) Firefighter1 válasza nedudgi hozzászólására (») Feb 2, 2019 /
 
Akkor jobban járok a VCC re húzom?!

Viszont akkor amíg el nem indul a program, tehát észhez nem tér az ESP addig a relé zárni fog tehát felkapcsolja a fogyasztót mivel VCC re van húzva így magas lesz a potenciálja.
És miután felállt az ESP és alacsonyra vált ( program szerint) a kimenet akkor nyit a relé.

Vagy ezzel ne foglalkozzak? legalább lesz visszajelzőm hogy felállt e az ESP ?!?!

Szerk:

Akkor célszerű fordított P csatornás Fet-et betenni!

Na de jo... megkíméltél 15 dollcsi kidobásától, de ami fontosabb 3 hét káromkodástól amíg kiderül hogy nem jo bele az N csatornás , ujrarajzolom, lerendelem és leszállítják
A hozzászólás módosítva: Feb 2, 2019
(#) nedudgi válasza Firefighter1 hozzászólására (») Feb 2, 2019 /
 
Ez egy lehetséges út. Attól függ, hogy mit kapcsol a jelfogó.
Ha kényes helyen használod, a 3,3V jelfogó, és a PNP tranzisztor megoldás lehet. A PNP tranzisztor (vagy pFET) akkor zár, ha a bázis (gate) tápra van húzva.
A hozzászólás módosítva: Feb 2, 2019
(#) Bakman válasza Firefighter1 hozzászólására (») Feb 2, 2019 /
 
Egy tranzisztorral invertálni lehet a kimenetet.
(#) Firefighter1 hozzászólása Feb 2, 2019 /
 
Szerintem én most egy kicsit belekeveredtem ebbe az N meg P csatis FET-ekbe.
Ugyhogy egy kicsit előszedem megint... meg nézek pár kapcsolást hogy akkor nekem hogy is lenne jó
(#) pipi válasza Firefighter1 hozzászólására (») Feb 2, 2019 /
 
Az esp03 szerintem még kisebb
(#) Firefighter1 hozzászólása Feb 3, 2019 /
 
Szerintem megvagyok csak volt itt egy kifejezés ami megkavart
Idézet:
„.A PNP tranzisztor (vagy pFET) akkor zár, ha a bázis (gate) tápra van húzva. .”

Ezt én ugy értettemnhogy zár... tehát zárja az áramkört és folyik az áram, de rájöttem (miután dugdosósba összeraktam) hogy szerintemnugy értetted hogy "el"zár, tehát nem folyik az áram. Mivel az én N csatis MosFET em tápnál folyik az áram testen pedig nem.


Tehát ha hagyom azt a kapcsolást hogy 10k-val tápra felhuzom a GPIO lábakat (hogy egyszerűen induljon az ESP) akkor addig amíg az ESP nem áll fel addig a lámpa világítani fog ( mert ez éppen "lámpakapcsoló" lesz)
Ha felállt akkor meg a változó értékének függvényében alacsonyra vagy magasra húzza, és ott már nem számottevő a 10k-s felhúzó.

Jó a gondolat menet?
(#) andyka hozzászólása Feb 3, 2019 /
 
Sziasztok
Egy viszonylag érthető leírást a
Idézet:
„Higher Bandwidth”
és a
Idézet:
„Lower Memory”
beállításokról tudtok-e ?
Egy link vagy ilyesmi ?
(#) Firefighter1 hozzászólása Feb 3, 2019 /
 
Egy nagyon alap kérdés.

Ez elvileg egy sima "lábkapcsolgatás" alacsony magas, egy másodperces késleltetéssel.
Hogy címzem a lábat, tehát ha azt szeretném hogy egy ESP 01 GPIO 0 lába legyen?

  1. void setup()
  2. {
  3.   pinMode(16, OUTPUT);
  4. pinMode(5, OUTPUT);
  5.  
  6. }
  7.  
  8.  
  9. void loop()
  10. {
  11.  
  12.     digitalWrite(16,LOW);
  13.     delay(1000);
  14.     digitalWrite(16,HIGH);
  15.     delay(1000);
  16.     digitalWrite(5,LOW);
  17.     delay(1000);
  18.     digitalWrite(5,HIGH);
  19.     delay(1000);
  20.  
  21. }


A void részbe "beállítom" hogy mi legyen a pin, és simán a "számmal" címzem?

Az ESP-01-nél hogy számoz?
(#) Firefighter1 válasza Firefighter1 hozzászólására (») Feb 3, 2019 /
 
GPIO0= 0 GPIO2=2
(#) Firefighter1 hozzászólása Feb 3, 2019 /
 
Megépítettem a fentebb csatolt kapcsolás saját és kokozo változatát is, dugdosós panelba!
Hogy tudjam abba használni, felülről, tehat a lábak rövid oldalára forrasztottam dugdosós kábelt a VCC a GND a GPIO0 és GPIO2 lábra, hogy tudjam tesztelni.
Program feltölt szépen fut... ( sárga foglalatos programozóm van)
Kihúzom az usb-t a gépből, kivezetéssel rákötöm a dugdosós 3.3 voltjára... szépen feláll.. fut!
Na mondom fáradt vagyok, mert elfelejtettem lehuzni az ESP ről a programozót!
Táp elvesz, programozó lehúz táp visszadug.... és semmi!
A probapanelon van az ESP nek tápszűrés (igaz a kondi és az ESP között ott a 6 centis kábel!.

Oda vissza dugdosgattam... ha rajta van a programozó (nincs bedugva az usb-be és nincs programozásra zárva a láb) akkor feláll... ha nincs rajta akkor nem.
Lehet hogy az a 6 centi messze van neki szűrésnek?
GPIO nulla és kettő felhúzóellenállással fel van húzva tápra..
A hozzászólás módosítva: Feb 3, 2019
(#) Gránátalma válasza Firefighter1 hozzászólására (») Feb 3, 2019 /
 
Uhh. Nincs "void rész" azoknak van neve, de ha már így akarod hívni, legyen inkább "Setup rész"(egyébként funkciónak hívják hivatalosan)

Másfelől a programodban KÉT láb deklarációja van elhelyezve, egyik sem a GPIO 0.

Illetve ebben a programban nem túl elegáns a deklarálás megvalósítása sem, hiszen nincs megadva a kimenetek kezdő állapota, így a beindulás mikéntje véletlenszerű is lehet. Későbbiekben erre mindenképp ügyelj.(használj belső felhúzó ellenállást programban)
(#) Gránátalma válasza Firefighter1 hozzászólására (») Feb 3, 2019 /
 
Nem láttam kapcsolási rajzot, de vélhetően se CHPD nicns bekötve, se a reset láb állapota megadva, ezért nem indul el a program programozó nélkül(azon vannak erre dedikált elemek)

Szerk.: igen, a fenti kapcsolási rajz ebben a formában elvi hibás.
Bővebben: Link
A hozzászólás módosítva: Feb 3, 2019
(#) Firefighter1 válasza Gránátalma hozzászólására (») Feb 3, 2019 /
 
Szia!

Igen az egy nyulfrakniy.... szó szerint se eleje se vége!
Azért ennél "jobbak" a programjaim igaz csak folyamatábrással programozom... de az meg szépen megformázza, csak tudom, telerakja sallanngal!


Amúgy jó volt a megérzésed, se a CHPD se a Reset nincs megadva.
Holnap teszek ellene! Meg felrakom a kódot, mert valamit nem tudok letisztázni magamba!
Addig is köszönöm!
Következő: »»   80 / 137
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem