UDP, TCP, Serial client / server. Gyorsan lehet vele tesztelni a modulokat, adatkapcsolatot, mielőtt még készen lenne a saját szerver / kliens páros. Amint megjött az ESP modul, ezzel próbálgattam.
De most előre fogok lépni: az ESP-re a NodeMCU-t fogom felrakni, amely sok esetben már Arduino nélkül is tud "egyszerűbb" dolgokat (pl. MQTT-re csatlakozni és ki/be kapcsolni GPIO portot), de az Arduino felé is tudok definiált soros kommunikációt csinálni.
Így a wifi kapcsolódás, MQTT, stb. az ESP feladata, az Arduino-é pedig csak az utolsó rész (pl. kapcsolók, relék vezérlése, státusz jelentés).
Soros átvitelnél a biztonságos átvitel 0,5% hiba/sebességeltérés esetén lehetséges.
A software serial hardware alapon megy, és megszakítás alapú (azaz kötött a Rx láb helye is). És itt ezt a futó szoftvernek kell kiszolgálnia, nincs hardware rásegítés! Az ökölszabály, hogy 9600 bps felett nem használható SWSerial!
Én a proto utáni állapotokat már eleve így tervezem, csak a legszükségesebb alkatrészek + jó táp. Általában még furatszerelt alkatrészekkel is spórolok annyi helyet, hogy megérje ez a megoldás. SMD-n nyilván jóval egyszerűbb lenne, csak ott a próbapanelezés és az amatőr megoldások annyira már nem játszanak (sem tudásom, sem technológiám nincs felületszerelt alkatrészekkel való ügyködéshez).
És igen, bírnak ennyire pontatlanok lenni. Ezért kell egy jó szkóp, azzal pillanatok alatt kiderül, hogy hol a turpisság. Hogy mást ne mondjak, egy Nano 3.0 (kiciócókínai) 3 perc alatt több másodperc járatpontatlanságot produkált.
Lomexnél 37-40 Ft a 16MHZ-es kvarc (DIP vagy SMD), plusz két kondenzátor, persze ez fizikailag nagyobb méretű, mint a kínais, de azért nem egetverő összeg.
Most pl. az ESP8266-os modult kötöttem volna össze az Arduino-val SoftwareSerial-al. Tudom, hogy lehet hardware serial is, de akkor nehezebb a fejlesztés, hiszen váltogatnom kell, hogy az ESP-vel vagy a PC-vel (program feltöltés) kommunikálok.
Mondjuk ennyire nem gondoltam volna gagyinak a kínai kvarcot, de hát ez van, jogos.
A legjobb (legolcsóbb) Arduino ezek szerint a DIP28-as Atmega328 + kvarc + egyéb alkatrész + munka az összerakásba :-)
Egy Arduino-nál nem lenne gond, de én drótnélküli modulokat akarok, ahhoz pedig kell vagy 10-20 db.
A DHT22 a szűk keresztmetszet, a többivel nem lesz gond. Pontosabb és megbízhatóbb elemet tennék be, már feltéve, hogy nem +/-3-4 fok vagy +/-10 százalék páratartalom a tűrés.
Terrárium automatizálását szeretném megoldani a jövőben, de a költséghatékonyságot szem előtt tartva. Pár napja botlottam keresgélés közben az Arduino-ba és eléggé megtetszett, látok benne fantáziát, de hozzáértők véleményét szeretném kikérni, hogy arra, amit tervezek, alkalmas-e ez az eszköz és a feltételezett alkatrészek.
Tehát, amit szeretnék:
Hőmérséklet/páratartalom mérés (DHT22)
Fűtő egység ki-be kapcsolása, a mért hőmérséklet függvényében.
Hűtő egység ki-be kapcsolása, a mért hőmérséklet függvényében.
Párásító vagy esőztető ki-be kapcsolása, a mért páratartalom függvényében.
Világítás ki-be kapcsolása, megadott időpontokban (Real Time Clock Memory Module).
Mindehhez alappanel: UNO R3
Az eszközök kapcsolásához: 4 csatornás relémodul
Plusz, ha ráfér még, akkor valamilyen kijelző, a hőmérséklet/páratartalom értékek kijelzésére.
Megoldható mindez Arduino-val, képes mindezt egyszerre vezérelni és megbízható módon üzemelni úgy, hogy lehetőleg ne süljenek/fagyjanak/fulladjanak meg a terrárium lakói?
Próbálgatom az ESP8266-os modult, nagyon tetszik (közvetlenül gépről CP2102-vel)! Sajnos nem nagyon sikerül a software serial kommunikáció, még 9600 baudon sem, van, hogy megy, de sok a karaktervesztés és szemét.
Egy kis delay() minden karakter küldés után kicsit segít. Lehet, hogy a kínai nano-k kvarca nem elég pontos? Vagy amúgy is veszett fejsze nyele a Software Serial kommunikáció.
Vehetnék I2C-s UART modult, 2-3 ezer Ft-ért, az meg kicsit sok (többszöröse a nano árának)..
Gondoltam hogy össze rakok egy robotot otthon de még nincs hozzá nagy tapasztalatom egy kicsit konyítok hozzá de nem nagyon és azt szeretném meg kérdezni hogy amiket ki néztem alkatrészek azokról mi a vélemény? Maga a robot az úgy nézne ki hogy: távolról lehet vezérelni és lenne rajta egy ultra hangos érzékelő és amikor akadájt lát akkor ki kerülné amiket ki néztem alkatrészeknek a linkje itt lesz :D
Köszönöm, működik, csak meglepett. Amikor én építettem optocsatolós megoldást (ugyan nálam FET volt utána, nem relé), akkor én active HIGH-ra építettem, nekem az volt a kézenfekvő.
altalaban a vcc az az arduino oldal tapja, arrol megy az optocsatoloban a led, az arduino tapjara kell kotni.
a jd-vcc az egy kulon tap, arrol megy a releknek a tekercse. a jumperrel összekötheted ha nem akarsz külön tapot neki.
azért az alacsony az aktív, mert a led a táp és a bemenet közé van kötve. majdnem minden cucc így műkszik, sokkal macerásabb olyan kapcsolást csinálni ahol a kapcsoló elem a táp oldalon van.
Vettem relé modult, próbálgatom.. nem megy. Jelet GND-re húzom, akkor kapcsol.
Érdekes, hogy active low vezérlésű a relé, ez nekem elég furcsa, mi lehet ennek az oka? És ha valaki tudja, hogy mi az a JD-VCC jumper a nyákon, az is érdekelne :-)
Az Arduino oktató keretrendszer, nem fejlesztő. Maga az MCU tényleg kiváló, de amit Massimoék mögé raktak, sok sebből vérzik. De ez nem baj alapvetően, csak tudni kell helyén kezelni.
Az eredeti kérdés az akart lenni, hogy képes-e olyan motort meghajtani, ami mozgatja a pillangót. Most arra hajlok, hogy csak a hőmérőket bízom rá a kis kék nyákra, azokat szépen kijelzi a szobában, más dolga nem lesz. Akkor meg lehet akár rádiós is, nem gond ha megszakad. Majd elszórakozgatok vele.
A másik, hogy ennek a dolognak az Arduino keretrendszerben sokkal rosszabb használata van - a megszakításkezelés miatt. Az Arduino rendszer megszakításkezelése igencsak alapszintű ahhoz képest, hogy maga a proci mit tud. És ez ebben a dologban igen lényeges.
Ezt nagyon nem ajánlanám a kh miatt. Vagy nagyon drága potit kell venned hogy stabilan üzemeljen (pl ALPS, de én még lehet ebben sem bíznék), ami annyi majdnem szinte mint egy Belino, vagy ha csak sima potit veszel, az előbb utóbb kh-s lesz. azt nehéz lesz lekezelni (hőhatás még bele is játszik, gyorsabban amortizálódik).
Akkor már ne potit, hanem kifejezetten ilyen célú elforgás jeladót, legyen A-B vagy inkrementális, szögjeladó, bármi.
Az ilyen fajta gépészet nem játék, egy rossz jel hatására durva dolgok történhetnek. Képzeld, ha behal a poti, (netána őprogiban sincs jól lekezelve) és kinyitja totál a pillagót állandóra.... Az nem előnyös. Persze a védelmeknek működni kell, de akkor is. Iparban ráadásul az érzékelők duplák - az ilyen jellegűek. Egy tengelyen két jeladó is van. Egyszerre a kettő nehezen hal be. Ha az egyik meghalt, akkor azt lehet tudni, és le lehet kezelni.
Ilyen sima potira nem bíznám egy kazán pillangójának vezérlését az biztos. Akkor már használjunk céleszközt, de amellett nyugodtan alszik az ember.
Jellemzően sokan nem tudják mi ez és mire jó, így a felhasználók 99,9%-a nem használja, mint ahogy sok más dolgot sem. Akinek meg vannak mélyebb ismeretei, az meg lehet nem ezt a keretrendszert használja fejlesztésre.