Hirdetés
-
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
-
ViZion
félisten
válasz kemcso #18869 üzenetére
reed relét a laptopnál mágnessel kapcsoltad? Mert lehet, h rezgésre nem a legjobb megoldás, vagy kapcsol rendesen? de-bouncingra írtál vmit bele?
Hold on, trying to give a fuck... Nope, not Happening • Powered by Linux • "Az élet olyan sz@r, szerencsére a felén már túl vagyok" Al Bundy
-
senior tag
válasz kemcso #18869 üzenetére
Elnézve az eredeti kódot, a kávéfőző software serialon beszélget, de inicializálva van a saját serial port is ami USB-n megy.
A táplálás "töltő" esetén azt jelenti, hogy ugyanazon USB kábelt nem a laptopba, hanem egy telefontöltőbe dugsz? (Nano esetén nincs kimondott jack adapter aljzat, de van VIN pin ezért kérdezem).
Csak azért, mert ha ugyanazon a porton táplálsz, és más különbség nincs laptopos és töltős üzem között, akkor hardveres oka nem lehet az anomáliának.
Egyébként én azt próbálnám meg, hogy, a fő loop-ba tennék egy delay(50); sort a végére. Precizitásban nem ront sokat a programodon, cserébe sokkal kevésbé spammeli a komm csatornákat. Gondolj bele, hogy uC nyélgázon pingeli a szoftveres serialt, majd ír a hardveresre, majd kijelzőt frissít. Sőt, igazából kijelzőt frissít akkor is, ha nincs értelme, mert a getMaraData()-ban a mySerial.available() lehet, hogy false, és nem jön friss adat. Az updateView akkor is lefut. Sokszor okozott már nekem különböző problémát, hogy a kód eszetlenül darál.
Ebből a szempontból érdekes lenne az is, hogyan oldottad meg a reed szenzor figyelését, mert ahogy ViZion is írta, a prellezéséből is adódhat gond.Szerk.:
C1.06,116,124,093,0840,1,0\n every ~400-500ms
Az 50ms delay nem fog sokat rontani a kódodon, tekintve, hogy a komment szerint a kávéfőző 400-500ms intervallummal küld friss adatot.[ Szerkesztve ]
Mások számára a kondi fáradós, nekem farad-os...
-
-
Postas99
senior tag
válasz kemcso #22780 üzenetére
Ahogy Aryes NAGYÚR mondta, valószínűleg a kábel okozhatja a galibát.
Nem láttam a kódot, de tippelek, hogy van benne I2C ellenőrzés meg hát ugye ott van a DHT cucc is, és a tipp az, hogy ha nem jó az adatátvitel, a jelalak torzul, kimarad, ergo nem érkezik értelmezhető adat, akkor a cucc kifagy.
Bár most újra olvastam, tehát 2 hőmersékelt szenzor ugyanazon a kábelen. -
ViZion
félisten
válasz kemcso #22778 üzenetére
Az sem mindegy, h "mezei" relé, vagy relé modul. A modulnál van már minden is, nem kell semmit hozzápattintani, picit drágábban optós verziók vannak, stb...
A szenzor onewire, azzal nem lehet gond, vagy látja, vagy nem.
i2C szokott "bedugulni", erre ESPEasy-n van külön beállítás, h ezt a részt resetelje. Erre még keress rá szerintem, ha Te írtad a kódot.Hold on, trying to give a fuck... Nope, not Happening • Powered by Linux • "Az élet olyan sz@r, szerencsére a felén már túl vagyok" Al Bundy
-
nagyúr
válasz kemcso #22784 üzenetére
vmi exception-kezelés létezik?
Létezik, de azt nem tudom, hogy hardveres i2c esetében is lehet-e az exceptiont kezelni.
Ha opto-s relé modul, akkor valószínűleg a diódát se spórolták le róla.
Típust nem tudok mondani, egy 10μF/16V elektrolit kondi szerintem megteszi (a dióda 1N581x), de lehet tényleg csak az i2c lesz ott a gond. Az i2c vonalon mekkora felhúzó ellenállást használsz/van a szenzor modulon? 4,7kΩ a szabvány, esetleg lehetne próbálkozni kicsit alacsonyabb értékkel.
-
nagyúr
válasz kemcso #22787 üzenetére
A relén látszik szépen a négy dióda.
Ja, igen, a szenzor nem i2c. A kijelzőn meg szerintem lennie kell gyárilag, mérd ki műszerrel a VCC és az sda közt, 4,7k körül kell mérned. A VCC és scl közt ugyanúgy.
Nekem az exception az exception, ha a programkód hal meg akkor azt kezelnie kell(ene)
Kivéve, hogy itt maga a CPU akad ki, a hardveres i2c hibája miatt. De lehet rosszul gondolom.
Tényleg próbáld ki kijelző nélkül, és akkor egyértelműen kiderül.
-
nagyúr
válasz kemcso #22791 üzenetére
Így jó, igen.
A kijelző vezetékét cseréld valami árnyékoltra, az is lehet megoldja. Esetleg köss egy-egy 10k - 4,7k közötti ellenállást (két egyformát) párhuzamosan a gyári 4,7k-val (vcc-sda és vcc-scl közé), ezáltal nagyobb áramok fognak szaladgálni a vezetéken és jobban tolerálja a zavart.
Még 1 dolog eszembe jutott: mennyire vékony a kijelző kábele? Nem esik rajta túl nagy feszültség, és emiatt bizonytalanná válik a működése? Mérj már feszültséget a kijelző felőli végén a kábelnek működés közben.Soros port helyett esetleg még megpróbálhatnád a kijelzőt egy egész rövid kanócra kötni.
[ Szerkesztve ]
-
Tankblock
aktív tag
válasz kemcso #22784 üzenetére
Szia
Milyen Leaonardod van? eredeti vagy clone?
#define DHTPIN1 0 // what pin we're connected to
#define DHTPIN2 1 // what pin we're connected to
ez sztem nem lesz a legjobb
Rx, Tx lábakra feltenni DHT szenzort álmos könyv szerint nem a legjobb inkább 2 és fölötte.érdemes lenne a UART nézni miközben megfagy, lehet h túl sok az áram amit szeretnének a dolgok felvenni, és beesik a feszültség ami brownout fog okozni --> gondolom UARTra szeretne írni és szétakad...
tápold be külön közön földdel és menni fog..... Relé hány milliampert vesz fel?
[ Szerkesztve ]
Release the Beast....
-
Postas99
senior tag
válasz kemcso #22797 üzenetére
UART: soros port. (TX-RX)
Megnéztem a kódot. Nem lenne jobb ha megszakításba tennéd a kiolvasást?
Csak azért kérdezem, mert a kód végén az 15 másodperc nekem soknak tűnik.
Ugye a WAIT esetén megáll a kód, "úgymond" semmi sem történik.Az enyém ezeket megszakításban végzi, egyszerre lehet akár több időzítés is, így nem kell azon izgulni, hogy minden feladatot is ellássak egymás után.
Pl idő lekérdezése, kiíratása a kijelzőre, hőmérséket és páratartalom lekérdezése és a 12V-os ventillátorok PWM szabályzása.
Nálam 2 helyen volt probléma, induláskor ha nem találta a BMP260-as eszkötz és ha nem találta az RTC órát.
Ez ki lett iktatva egy soros porti hibaüzenettel, a kijelzőn pedig egy nincs adat van.Az a relé modul szerintem tökéletes és is ilyen occó kínai modullal vezérlem a fűtést, világítást, párásítást és egy 220V-os Venti kapcsolást is. Mondjuk ez enyém opto-s cucc. Elmegy 3.3V-os ESP32-vel is a vezérlés mivel 0-ra kell lehúzni a bemenetet az aktív relé meghúzáshoz, de 5 volt kell neki tápnak.
A relé kapcsolgatáshoz még FLAG-eket is tettem, így azt is figyeli hogy be van-e már kapcsolva. Nálam szükségszerű volt hogy szabadon lehessen állítani a hőmérsékletet és a páratartalmat is mert különböző lényeket kell életben tartani. Ehhez hozzájött, hogy jó lenne ha kapcsolgatnék reggeli világyíást is, hogy tudja már az a szerencsétlen hogy most reggel van. Erre annyit mondott a kollegám, aki szintén kért egy ilyen berendezést, hogy akkor tegyem már hozzá hogy a felkelő nap minden színében legyen már meg a világítás vezérlés. (halványsárga-vörös-fehér) lenyugvónál meg visszafelé. Szintén PWM vezérelt LED vilégítás (Full spectrum)
Mire megkérdeztem, hogy ez az állat pontosan miből fogja megállapítani ilyen viszonyok mellett hogy én pontosan lekövettem a felkelő és lenyugvó nap fényskáláját? Pontozni fogja a munkámat, hogy sikerült a sivatagi napviszonyokat jól utánoznom?[ Szerkesztve ]
-
Postas99
senior tag
válasz kemcso #22801 üzenetére
Szia!
Természetesen megosztom. Van GitHub-om, de még nem toltam fel oda semmit sem.
Kis türelmet, addig is:Kvázi "megszakítás"-ban történő feladat megosztás
Az elején deklarálod, hogy milyen időközönként szeretnél mintevételezniconst int freq = 30000; PWM freki
const int pwmChannel = 0;
const int resolution = 8; PWM felbontás 0-255 között szabályozható a sebesség.
unsigned long previousMillis = 0;
const long interval = 5000; Nálam ez 5 másodperc
pinMode(enable1Pin, OUTPUT);
digitalWrite(Vilagitas, HIGH);
digitalWrite(Futes, HIGH);
digitalWrite(Parasitas, HIGH);
digitalWrite(Venti, HIGH);
digitalWrite(motor1Pin1, LOW);
digitalWrite(motor1Pin2, LOW);
// LEDC PWM
ledcAttachChannel(enable1Pin, freq, resolution, pwmChannel);Majd:
unsigned long currentMillis = millis();
if(currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
bmeolvasas();
mennyiazido();
ontime =(reggeliora * 100) + reggeliperc;
offtime =(estiora * 100) + estiperc;
azidomost = (ora * 100) + perc;
if(azidomost >=ontime && azidomost <=offtime){
uzemmod=0;
nappaliuzemmod();
Display.drawRGBBitmap(20, 30, nap64_vidamnap, 64, 64);
}else{
uzemmod=1;
ejszakaiuzemmod();
Display.drawRGBBitmap(20, 30, hold64_hold, 64, 64);
}
}PWM:
Természetesen a ventipwm 0-255 között állítható de kb 180 körül már elindul lassan. A Ventik sima egyszerű 12V-os 8cm-es PC ventillátorok, nincs külön szabályzás láb figyelmbe véve, ezért a legparasztabb egyszerű 12V-os venti is jó rá. A meghajtás LN298-as modullal van. Ami elmegy 5V-on is de a legjobb a táplálásnak ez a kínai mini szutyok. [ITT]
ledcWrite(enable1Pin, ventipwm); -
Postas99
senior tag
válasz kemcso #22801 üzenetére
Majd elfelejtettem:
Csatalkozók viszonylag kicsúszásmentesítése:1, régi alaplapról forrasztottam ki venti csatit, ennek az ellenoldala is rendben van, de lehet USB satöbbi tüskesoros csatit kiberhelni alaplapról, a lényeg hogy az ellenoldal is legyen meg, plusz ne lehessen fordítva feldugni!!!!!!!!!
2, RJ11-es aljzat és hozzá csati, sajnos ezt krimpelni kell, tehát kell hozzá fogó és fej is, és megfelelő kábel is.
3, [Innen rendelsz]A saját negatív tapasztalatom, hogy itthon nem kaptam megfelelő csatlakozót aljzattal együtt. Nem csak hogy ne csússzon ki, de polaritás helyesen is kell feldugni a cuccokat és ez véletlenül se történhessen meg, akinek pedig odaadom az sajnos műszakianalfabéta, és hiába kis csini baba, nem szeretém az összes időmet ezzel tölteni nála, inkább összerakom hülyebiztosra.
-
Postas99
senior tag
válasz kemcso #22811 üzenetére
A PWM értéke menüből állitható, hogy be tudd állítani a ventillátor sebességét. Ezt egyszer kell csak beállítani hogy milyen gyorsan nyomja ki a levegőt a terráriumból, vagy szívja be (venti iránya a mérvadó). Természetesen bármikor változtatható. Ha belépsz a menübe.
Nem igazán csináltam board-ot neki, minden be van forrasztva az ESP32-re, és paraszt lengőben van megcsinálva. Nem vettem rá a fáradtságot, hogy külön nyákot gyártsak rá.
Elméletben jó vagyok, de farigcsálni, fúrni és mindent SZÉPEN megcsinálni ehhez kicsit béna vagyok, ezért mondom, hogy nem termékdíjas cucc. A szoftver az más tészta...A csatlakozó azért kellett, hogy a BMP260-at be tudják tenni a terráriumba és a kivezetett kábelt rá tudják dugni a dobozból kiálló tüskesorra úgy, hogy polaritás helyes legyen, tehát nem lehet fordítva feldugni.
A venti pedig csak 2 láb vagyis a PC-s normál csati Y elosztóval akár, de tud 2 ventit is vezérelni de azt nem írtam meg hozzá.Egy szerelő dobozban van az egész cucc. A relés vezetékek kivezetve tömszelencén kereszül. A menü pedig 1 db Rotatry kapcsolóval aktiválható és a forgatással lehet benne lépkedni. Kilépés és mentés pedig a megnyomással történik.
Nem azt mondom, hogy OMÉK termékdíjas cucc, de a célnak tökéletesen megfelel.
A következő LVGL-es megoldás lesz. De nem vettem a fáradtságot rá, hogy nekiálljak.Más projektem van éppen.. szemenkénti táp adagolás kutyakajára amit kiadagolás után nedvesíteni kell. Szerencsére ma találkoztam bent a cégnél termék gyártás terén egy jó szakival akinek volt már ilyen több projektje, így tud nekem segíteni a megvalósításban. Az első megvalósítás kudarcba fulladt, tervezési hiba végett. Ugye nem vagyok gyártás technikus nem ismerem a granulált termékek adagolására vonatkozó aranyszabályokat, így kapásból sz@rt terveztem. Ez van, be tudom ismerni ha hibázok. Sosem szégyen mástól tanulni, és igyekszem azt a fajta tudást is magamba szívni.
Mindjárt itt a halloween, azzal is kéne haladnom, lidérc lámpa, műanyag gyerek babajáték szemének mozgatása (alvós baba szemének mozgatása stb) van egy halom olyan amit elkezdtem de félre raktam. Ez mind a magam szórakoztatására, nem életbe vágó dolog. Beszélő koponya állkapocs mozgatással. Pislogó lidércek satöbbi.. ezt mind szeretném. Van olyan is amit le sem írok inkább... mert nincs aki tudna segíteni egyáltalán, nem még a ChatGPT sem, az meg főleg nem, de az összes (DE)genaratívAI sem.
Új hozzászólás Aktív témák
- iPhone 13 128GB Starlight, Beszámítással
- Uhh! DELL Latitude 3410 Tartós Profi Laptop -60% 14" Bivaly i5-10210U 4Mag 16GB 512GB SSD FHD IPS
- Ahh! DELL Latitude 3410 Tartós Profi Laptop -60% 14" i5-10210U 4Mag 16GB 512GB SSD FHD IPS
- Ohh! DELL Latitude 3410 Tartós Profi Laptop -60% 14" Bivaly i5-10210U 4Mag 8GB 256GB SSD FHD IPS
- Prémium minőségű Samsung, Micron SSD meghajtók (frissítve: 2024. 09. 24.) - MEGA akciók!
Állásajánlatok
Cég: Ozeki Kft
Város: Debrecen
Cég: Ozeki Kft
Város: Debrecen