-
GAMEPOD.hu
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
itg
tag
Sziasztok!
Néhány napja szereztem tudomást ezekről az eszközökről, most éppen a beszerzések fázisánál járok.
Elsőként egy wemos mini d1-hez csatlakoztattam egy dht22-es szenzort, aztán ma megérkezett a második kütyü is. Annyi mindössze a különbség, hogy ez utóbbi nem wemos gyártmány.Felraktam erre is teljesen ugyanazt a kódot és az alábbiakkal kellett szembesülnöm:
(a kód: csatlakozik a wifi hálózathoz és webszerveren elérhetővé teszi a hőmérsékletet és páratartalmat)a nem wemos lapka böngészőből el sem érhető, a pingek pedig a képen látszódnak.
a két eszköz egymástól néhány méterre volt a teszt idején, de próbáltam áthelyezve is.létezik ilyen, vagy csak kifogtam egy gyengébb darabot?
köszi előre is a segítséget. -
itg
tag
válasz Tankblock #7601 üzenetére
Üdv.
Köszi a választ!
Még akkor éjszaka pont ezt tettem és kiderült a turpiszság.
loop-ba raktam a wifi reconnect-et és valamilyen oknál fogva minden alkalommal újra csatlakozott a routerhez, ami az egyiket megfektette, a másik viszont bírta.Viszont ha csak a setup részbe rakom a wifi kapcsolódást, router újraindulás esetén nem csatlakozik újra az eszköz.
Az egyik eszköz: Wemos D1 mini, a másik D1 mini ESP-12.
(elméletileg egyformák) -
itg
tag
válasz Janos250 #7607 üzenetére
igen, kb. idáig jutottam én is. csak az összes mintapélda a fenti (ezek szerint hibás/régebbi) módszerrel kérdezi le és azt hittem én vagyok a láma.
én egyébként a ESP8266WiFi.h -t hívom meg, de ha ezt megcsinálom, valószínűleg átalakítom push-ra a scriptet és akkor nem fog állandóan a wifi-n lógni.köszi a segítséget!
-
itg
tag
válasz ratkaics #7625 üzenetére
Üdv.
Én pont ezt csináltam néhány napja, kiindulópontnak talán ez segít:
http://magamnak.itg.hu/wemos_D1_mini_+_WeMos_DHT22_shield_post_tutorial/
Doboznak kiváló a falra szerelhető analóg telefon dugalj doboza. (nem jut eszembe a neve)
A következő projekt a kültéri mérés + napelem lesz.
-
itg
tag
válasz DrojDtroll #7630 üzenetére
könnyen lehet, mielőtt megrendelem, kérek kölcsön egyet és kipróbálom.
mondjuk nem is lesz rajta túl nagy fogyasztó -
itg
tag
vargalex, Tankblock:
tök jók ezek a szkriptek, van még mit tanulnom
ennek kapcsán kezdtem nézegetni a grafikonomat és rá is jöttem a több mérőkör időszinkron nélküli mintavételek problémájára.
odáig nem akarok eljutni, hogy minden mérő ugyanabban az időpillanatban adjon értéket, ezért -fapados megoldásként- azt találtam ki, hogy grafikon készítésekor a +/- 3 perces mintákat egy időpontra rakom ki.
tehát ha az egyik 12:03-kor mér, a másik 12:05-kor, akkor a 12:03-as is a 12:05-ös ponton fog megjelenni.
ugyan kicsit csalok, de megszűnik a mérőkörök közötti elcsúszás. -
itg
tag
válasz DrojDtroll #7636 üzenetére
MSSQL ~500e sor (2013-2018 5 perces adatfrissítéssel, 19 oszloppal)
nagyjából hasonló arányú méretfoglalás mint mysql-nél.
[ Szerkesztve ]
-
itg
tag
válasz vargalex #7642 üzenetére
nem, ez nem saját, ez céges. itt több mérőkör adata érkezik 5 percenként.
de csak így fejből:
dátum
hőmérséklet
páratartalom
szélirány
minimum irány
maximum irány
széllökés sebessége
széllökés iránya
szélsebesség
légnyomás
csapadék
sugárzás
eszköz állapotok 1-5 (hőmérséklet, feszültség stb) -
itg
tag
én is szívtam vele, javaslom nézd meg ezt a linket:
https://github.com/esp8266/Arduino/issues/2182WiFi.begin(ssid, password);
WiFi.config(ip, gateway, subnet);ps:
egyébként most sem mondható stabilnak az ESP32, 100-ból 2-3x előfordul, hogy azt írja hogy csatlakozik, de mégsem éri el a belső oldalt. Kezdek is kiábrándulni belőle...[ Szerkesztve ]
-
itg
tag
válasz Janos250 #7923 üzenetére
Köszi, este kipróbálom.
Az a megdöbbentő, hogy beállítom hova csatlakozzon, beállítom milyen paraméterekkel csatlakozzon, azt írja csatlakozik és közben a jófene se tudja hova csatlakozott, mert a router-re biztosan nem.
Először azt hittem a routeremet nem szereti, de miután másik kettővel is ugyanezt csinálja, ezt kilőttem. -
itg
tag
válasz Janos250 #7923 üzenetére
egyiknél kipróbáltam, el is csíptem egy hibás csatlakozást.
úgy tűnik ennél a kütyünél ez nem jön be:
WiFi.config(ip, gateway, subnet);
delay(3000);
WiFi.begin(ssid, password);
delay(3000);
while (WiFi.status() != WL_CONNECTED) { Serial.print("."); delay(1000); }
Serial.println();
WiFi.macAddress(mac);
delay(10000); //dhcp
Serial.print("Connected to local network: ");
Serial.print("MAC: "); Serial.print(mac[0],HEX); Serial.print(":"); Serial.print(mac[1],HEX); Serial.print(":"); Serial.print(mac[2],HEX); Serial.print(":"); Serial.print(mac[3],HEX); Serial.print(":"); Serial.print(mac[4],HEX); Serial.print(":"); Serial.print(mac[5],HEX);
Serial.print(" IP: ");
Serial.println(WiFi.localIP()); -
-
itg
tag
válasz Tankblock #7946 üzenetére
Köszi.
Első körben szenzorokhoz, ezután jönne a relés intranetes vezérlés. Ahhoz se kell bonyolult számítás, nekem bőven elég lenne az esp8266.
Eddig három eszközt állítottam szolgálatba, de ami a bajom, hogy kiszámíthatatlan a működésük.
Van, hogy 4-5 napot elmennek gond nélkül, van, hogy az egyik nem csatlakozik a wifi-hez 5-6 órán keresztül, van, hogy a másik csinálja ugyanezt. (azaz csatlakozik, csak nem ahhoz, amit megadtam neki)
pl. az egyik eszköz elmúlt napi mérései: (a piros részen nem volt sikeres csatlakozás)
eközben egy másiké: -
itg
tag
válasz Janos250 #7950 üzenetére
WiFi.status = 3 és a pingre nem válaszol, illetve a routeren sem látszik a csatlakoztatott eszközöknél.
ez a kódom:
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <DHT.h>
#define DHTPIN D4
#define DHTTYPE DHT22
const char* ssid = "ssid";
const char* password = "pw";
const char* server = "10.0.0.10";
const char* source = "konyha";
IPAddress ip(10, 0, 0, 80);
IPAddress gateway(10,0,0,1);
IPAddress subnet(255,255,255,0);
float humidity;
float temperature;
String data;
byte mac[6];
WiFiClient client;
DHT dht(DHTPIN, DHTTYPE);
void connectwifi()
{
WiFi.config(ip, gateway, subnet);
WiFi.mode(WIFI_STA);
delay(3000);
WiFi.begin(ssid, password);
delay(3000);
while (WiFi.status() != WL_CONNECTED) { Serial.print("Wifi status: "); Serial.print(WiFi.status()); Serial.println(" "); delay(1000); }
Serial.println();
WiFi.macAddress(mac);
delay(10000); //dhcp
Serial.print("Connected to local network: ");
Serial.print("MAC: "); Serial.print(mac[0],HEX); Serial.print(":"); Serial.print(mac[1],HEX); Serial.print(":"); Serial.print(mac[2],HEX); Serial.print(":"); Serial.print(mac[3],HEX); Serial.print(":"); Serial.print(mac[4],HEX); Serial.print(":"); Serial.print(mac[5],HEX);
Serial.print(" IP: ");
Serial.print(WiFi.localIP());
Serial.print(" GW: ");
Serial.print(WiFi.gatewayIP());
Serial.print(" Wifi status: ");
Serial.print(WiFi.status());
Serial.printf(" RSSI: %d dBm\n", WiFi.RSSI());
}
void disconnectwifi()
{
if ( WiFi.status() != WL_DISCONNECTED )
{
WiFi.disconnect();
}
}
bool httppush()
{
if (client.connect(server, 80))
{
client.println("POST /mrtg/push_konyha.php HTTP/1.1");
client.println("Host: ");
client.println("Content-Type: application/x-www-form-urlencoded");
client.print("Content-Length: ");
client.println(data.length());
client.println();
client.print(data);
}
else
{
Serial.println("Connection failed. Rebooting.");
ESP.restart();
}
if (client.available())
{
char c = client.read();
Serial.print(c);
}
if (client.connected())
{
client.stop();
}
}
void setup()
{
Serial.begin(9600);
delay(1000);
Serial.println("Init progress: boot");
delay(5000);
Serial.println("Init progress: dht start");
dht.begin();
delay(5000);
}
void loop()
{
delay(5000);
Serial.println("Loop progress: wait 4 min");
delay(600000);
//delay(10000);
Serial.print("Loop progress: wifi start");
connectwifi();
Serial.println("Loop progress: reading from DHT22");
humidity = dht.readHumidity();
temperature= dht.readTemperature();
if (isnan(humidity) || isnan(temperature))
{
Serial.println("Failed to read from DHT sensor! Rebooting.");
ESP.restart();
}
else
{
Serial.print("Temperature: ");
Serial.println(temperature);
Serial.print("Humidity: ");
Serial.println(humidity);
Serial.print("Loop progress: connect to ");
Serial.print(server);
Serial.println("");
data = "source=" + String(source) + "&temperature=" + String(temperature) + "&humidity=" + String(humidity);
Serial.println("Loop progress: sending data");
delay(5000);
httppush();
delay(5000);
Serial.println("Loop progress: wifi stop");
disconnectwifi();
}
}[ Szerkesztve ]
-
itg
tag
válasz Janos250 #7954 üzenetére
az első verzióban loop-ba raktam a dht.begin(); -t is.
rájöttem, hogy azt elég egyszer, a setup résznél aktiválni, így át is került oda.
de ahogy teszteltem, 1-2x előfordult, hogy hülyeséget mért a DHT, ezért raktam be restartot.a routernek nem lenne szabad, hogy 10 percenként problémát okozzon a csatlakozás, de -mivel már nincs egyéb ötletem- kipróbálom, hogy állandó kapcsolatban legyen. (az első verzióban így is volt, de néha megszakadt a kapcsolat és hiába ellenőriztem, azt írta, hogy csatlakozott, holott nem volt a hálózaton)
az fontos lehet, hogy ezeken a kütyükön kívül 6-15 eszköz van a routeren és soha nem tapasztaltam szakadást.
de köszi, kipróbálom.
(még kipróbálom a 2,4-es csatorna váltást, hátha segít)[ Szerkesztve ]
-
itg
tag
"Én se értem, hogy ha nincs deep sleep, mi értelme lekonnektálni majd fel, hiba esetén meg belerúgni, újraindítani. Ha hibás az olvasás, akkor meg kell próbálni még egyszer lekérdezni. Workaround.
Hozzá tenném, hogy a hardware résznél kezdeném a hibakeresést, bár a DHT egy rakat fos."a deep_sleep lett volna a következő lépés, amint stabil a rendszer.
a DHT22-vel szintén ez a helyzet, már jönnek a BME280-asok.
(rendeltem korábban is, csak átvágtak, BMP280-ast küldtek BME helyett)
egyébként pont a DHT22-vel van a legkevesebb problémám.
sőt, igazából csak a wifi-vel van problémám -
itg
tag
válasz vargalex #7951 üzenetére
Sziasztok!
Megfogadtam a tanácsokat, átnéztem a kódokat, átírtam állandó kapcsolatra és az alábbi képen látható elérési időkkel érhetők el az ESP-k.
Ami számomra nagyon furcsa, hogy a 10.0.0.80-as a routertől 40 centire van és brutál magas a ping.
A kiugrásokat nem tudom mire vélni, 2,4Ghz-en csak ez a 3 eszköz van a hálón.Tehát úgy néz ki, hogy állandó kapcsolat esetén nem dobálja el a hálót.
(legalábbis az elmúlt 32 óra alatt nem volt kiesés egyik eszköznél sem.)
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Alpha Laptopszerviz Kft.
Város: Pécs
Cég: Ozeki Kft.
Város: Debrecen