Hirdetés

2024. április 26., péntek

Gyorskeresés

Téma összefoglaló

Téma összefoglaló

  • Utoljára frissítve: 2023-03-11 00:46:52

LOGOUT.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.

Összefoglaló kinyitása ▼

Hozzászólások

(#5301) Aryes válasza quint (#5299) üzenetére


Aryes
nagyúr

Igen, ez van nekem is. De nincsenek a bemenetek tápra húzva, üresen 2,5V-ot mértem rajtuk. A tiéd nem ilyen?

(#5302) zka67 válasza fpeter84 (#5061) üzenetére


zka67
őstag

Szia, köszönöm a tanácsodat, az ebben a hsz-ben szereplő modul megérkezett, és kitűnően teszi a dolgát.

Ennyire egyszerű eszközzel még nem volt dolgom :)

Csak bele kellett tenni a SIM kártyát, bekapcs, két AT parancs és már küldte is az SMS-t. Azt meg nem is gondoltam volna, hogy még telefonálni is lehet vele :)

(#5303) quint válasza Aryes (#5301) üzenetére


quint
aktív tag

De ilyen. Ezzel a könyvtárral próbáltam ki. Úgy mérted, hogy a motortáp (Vcc, GND) rajta volt, de az Arduino nem?

(#5304) Aryes válasza quint (#5303) üzenetére


Aryes
nagyúr

Úgy mértem.

Más:
Tegnap megérkezett az új motorvezérlő shieldem. Csak most tudtam kipróbálni, és a probléma, amivel kínlódtam a múltkor (csak 32Hz-en tudtam meghajtani a motort, magasabb frekvencián nem volt nyomatéka) úgy tűnik, hogy itt nem jelentkezik! (TB6612 MOSFET driver van rajta) Még csak szárazon próbáltam, nem volt időm átépíteni a kocsit, de 1,2kHz-en úgy tűnik, hogy elég tisztességesen meghajtja a motort, és nem is melegszik (+ állítólag van benne vmi hővédelem), ráadásul 12bites saját PWM vezérlése van, és i2c-n lehet vele kommunikálni. Adafruit Motor Shield V2 másolat, annak a lib-jével kompatibilis. :))

(#5305) Aryes


Aryes
nagyúr

Nincs valakinek egy felesleges hc-05-ös Bt modulja? :(

(#5306) vargalex


vargalex
félisten

Sziasztok!

Néhány helyen ESP8266-okkal kellene optocsatolós relét kapcsolnom (természetesen 230V-os eszköz kapcsolása a cél). Van egy felesleges 2 csatornásom, de ez 5V-os, így az ESP8266 GPIO-t HIGH-ba kapcsolva zárva marad a relé. Tudnátok ajánlani valami bevált példányt, ami vezérléséhez elég a 3.3V? (Ebay, Ali, stb. link tökéletes lenne.)

[ Szerkesztve ]

Alex

(#5307) Aryes válasza vargalex (#5306) üzenetére


Aryes
nagyúr

Egy szintillesztő ic (pl. 4050-es) nem jöhet szóba?

(#5308) AllTheBest


AllTheBest
senior tag

Sziasztok! Pár napja vettem egy arduino uno-t. A kérdésem az lenne hogy létra diagram alapú programozással próbálkozott itt már valaki? Ha igen, akkor esetleg melyik programot ajánlanátok? PLC programozás alapjai már jól mennek, ezért gondoltam, hogy inkább LD-ben próbálkoznék ezzel :)

Esetleges elírásokért elnézést kérek, kevesebb ujjal nehezebb pontosan írni :) ---> Xiaomi Mi 9T 128gb

(#5309) Gergosz2 válasza AllTheBest (#5308) üzenetére


Gergosz2
veterán

Én nem tudok róla.

Másrészt ez nem PLC, ezt mindenképp tartsd szemelőtt. De léteznek grafikus programozsi környeztek is, pl ArduBlock (Google keresés után), vagy éppenséggel a Simulink. De ezek sem létrahálzatosak.

Nokia 6030 Hardcore User // I Panic Restaurant by Taito

(#5310) vargalex válasza Aryes (#5307) üzenetére


vargalex
félisten

Lehet, hogy az is elég, de több relé is kell és ha van olyan, ami alapból jól működik kis feszültségen is, akkor inkább olyan szereznék be.

Alex

(#5311) AllTheBest válasza Gergosz2 (#5309) üzenetére


AllTheBest
senior tag

Tudom, hogy nem PLC, azért vettem meg, hogy megtanuljam kezelni és esetleg később hasznosítsam a tudásom a szakmámon belül.
Találtam már egy SoapBox Snap nevű lkalmazást, amivel elvileg normálisan lehet LD-ben programozni, a hétvégén majd lehet, hogy megpróbálkozom vele.
Ettől függetlenül tudom, hogy nem fogok megmenekülni attól, hogy megtanuljam a programozási nyelvet...

Esetleges elírásokért elnézést kérek, kevesebb ujjal nehezebb pontosan írni :) ---> Xiaomi Mi 9T 128gb

(#5312) tvamos válasza vargalex (#5306) üzenetére


tvamos
nagyúr

Eleg oda egy tranzosztor, meg ket ellenallas. 5 perc osszedobni. Ha sok kell, akkor ULN2003 relay driver? En azzal csinaltam a magamet. Van egy csomo modul az ebay-en, de most csak olyat talalok, amin csak 4 csatorna van kivezetve.

[ Szerkesztve ]

"Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János

(#5313) tvamos válasza vargalex (#5310) üzenetére


tvamos
nagyúr

Ha megnezed ezt a modult, szerintem ez megy ugy, hogy a VCC-re 5V-ot kapcsolsz a bemenetre meg 3.3V-osat. Lehet, hogy neked is ilyesmi van?

"Mindig a rossz győz, és a jó elnyeri méltó büntetését." Voga János

(#5314) Tankblock válasza vargalex (#5310) üzenetére


Tankblock
aktív tag

[link]

Olyat kell keresni ami 3V3 v 3V is működik, vagy ha csak 1 kell ESP ként és <10A kell kapcsolni akkor SONOFF, és azt hackelni.

Kompact és egyszerű.

Release the Beast....

(#5315) vargalex válasza Tankblock (#5314) üzenetére


vargalex
félisten

igen, ezeket is megtaláltam. Illetve aliexpressen olcsóbban ilyet (nem biztos, hogy jó lesz a link, mert mobilról kerestem). Azt mondjuk még nem teljesen értem, hogy miért van rgnd lába is. Hacsak nem azért, hogy egy gnd+vcc, illetve egy vezérlés+gnd.

Alex

(#5316) Tankblock válasza vargalex (#5315) üzenetére


Tankblock
aktív tag

[link]

Remélem a link jó lesz ez egy 3V relé...

Release the Beast....

(#5317) weiss


weiss
addikt

Aki használ BME280-at, az normális, hogy az értékek zajosak? Szobában nyugalomban van a szenzor, és a tizedes érték ugrál. Próbáltam adafruitos és sparkfunos libbel is, oversample/filter a maximumon van, bár mikor ezeket állítgattam, akkor sem láttam érdemi változást.

I did nothing, the pavement was his enemy!

(#5318) Tankblock válasza weiss (#5317) üzenetére


Tankblock
aktív tag

Hello,

Milyen gyakran mérsz? Valamennyit fog mozogni, mondjuk én 5 percenként mérek, de így sem látok nagy kilengéseket, pl légnyomás ugyanannyi órákon keresztül is és a levegőnedvesség is....

Adafruitos könyvtárat használok :

#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>

Release the Beast....

(#5319) weiss válasza Tankblock (#5318) üzenetére


weiss
addikt

Normal módban, 1 másodpercenként. De fura, hogy pont a nedvesség változik leginkább.

I did nothing, the pavement was his enemy!

(#5320) Tankblock válasza weiss (#5319) üzenetére


Tankblock
aktív tag

ha ráhelelsz akkor természetes, de nem is ajánlom h ezzek kísérletezz. 0.1 eltérés sztem semmit se jelent.

Ha 5% ugráh úgy h senki és semmi nincs a közelben az baj.

Release the Beast....

(#5321) weiss válasza Tankblock (#5320) üzenetére


weiss
addikt

Közben láttam a neten máshol is, hogy változik picit, szóval nem foglalkozom vele.

I did nothing, the pavement was his enemy!

(#5322) ngabor2


ngabor2
nagyúr

Időkapcsolót kellene gyártanom egy arduinoból egy floráriumba. RTC modul van, ebből kellene az időt kiolvasni. Hétköznaponként reggel 7:30-tól 21:00-ig, hétvégén 9:00-től 21:00-ig kellene világítani egy lámpának (= egy digitális kimenetre kötött relé LOW állásban van). Ha marad még hely, akkor egy másik érzékelőt (DHT22 páramérő) is kellene figyelnie, és értékétől függően egy másik relét kapcsolgatni (80% alatt bekapcsol, 92% fölött kikapcsol). Ez a része már megvan, pár sor az egész.

Nézegettem cron kódokat, de annyira túlbonyolított nekem, meg túl sokat is tud, hogy nem mélyültem bele.

Valaki tud segíteni?

(#5323) quint válasza ngabor2 (#5322) üzenetére


quint
aktív tag

Biztos kell még oda egy kombinált érzékelő (rezgés/hang, szakadó fólia, esetleg még erőmérő cella) is, ami erőszakos behatolás esetén (például a TEK berúgja az ajtót) elindítja a "florárium" önmegsemmisítőjét. Egy ilyen apróságon múlhat a bizonyítottság hiánya :DDD

(#5324) Aryes válasza quint (#5323) üzenetére


Aryes
nagyúr

:)) :DD :DDD :C

(#5325) Gergosz2 válasza ngabor2 (#5322) üzenetére


Gergosz2
veterán

Bocs, de elvesztettem a fonalat. Most akkor melyik része van meg? A komplett relé vezérlős rész beleértve az időzítést is, vagy csak a páratartalom függő kapocsolgatás?

Milyen RTC modulod van? Én DS3231-t szoktam használni, mert bevált. Van hozzá egy jó kis library, amivel ha felconfigolod, akkor egyszerűen Clock.getYear() ... függvényekkel szépen le lehet kérdezni mindent.

Nokia 6030 Hardcore User // I Panic Restaurant by Taito

(#5326) ngabor2 válasza Gergosz2 (#5325) üzenetére


ngabor2
nagyúr

Jelenleg a páraszabályzás van meg, tehát ha a pára 80% alatt van, akkor zár egy relé, ha 92% fölé megy, akkor nyit az áramkör. Ez a DHT22 példaprogramjába plusz 2 sor beszúrását jelentette :D

DS1307 RTC modulom van. Korábban is ilyet használtam, időjárás-állomás-szerű dolgot már állítottam össze belőle. Ott lekérdezgettem az időt. Most azon problémázok, hogy hogyan lehet kis erőforrásból, mégis szépen megírni, hogy ha bármikor bekapcsolom a kütyüt, akkor annak megfelelően működtesse a világítást. Főleg a hétköznap-hétvége szétválasztás okoz most egy kis fejtörést. Eddig úgy tűnik, a swich() case lesz a barátom, és azon belül néhány if.

Nagyon rég programoztam, akkor is nagyon alap szinten, emiatt vagyok megakadva.

quint: ez nem olyan flori, ami miatt a TEK ajtót rugdos. Itt orchideák vannak, ezt nem kell aratni :D

[ Szerkesztve ]

(#5327) vargalex válasza ngabor2 (#5326) üzenetére


vargalex
félisten

Gondolom a páratartalmat úgyis a loop-ban figyeled, akkor már célszerű szerintem ott kezelni az idő szerinti relé kapcsolást is. Megvizsgálod az aktuális időpontot, ha olyan és alacsony állásban van a GPIO kimenet, akkor magasra húzod, ha pedig nem és magasban van, akkor alacsonyra. Vagy fordítva a relé bekötésétől/működésétől függően.

[ Szerkesztve ]

Alex

(#5328) ngabor2 válasza vargalex (#5327) üzenetére


ngabor2
nagyúr

Ezt szeretném, csak a formát nem bírom megszülni, miszerint "hétköznaponként reggel 7:30-tól 21:00-ig, hétvégén 9:00-től 21:00-ig". Az egyszerre 3 paraméter figyelése a probléma (nekem).

(#5329) gyapo11 válasza ngabor2 (#5328) üzenetére


gyapo11
őstag

Bontsd szét egy iffel:
if(nap==hétvége)
{hétvégi üzemeltetés} //9-től 21-ig
else
{hétköznapi üzemeltetés} //7:30-tól 21-ig

[ Szerkesztve ]

menyország -> mennyország, akadáj -> akadály, jótálás -> jótállás, Iphoneal > Iphone-nal, kisuly > kisujj, csővet > csövet

(#5330) ngabor2 válasza gyapo11 (#5329) üzenetére


ngabor2
nagyúr

Az lesz, mert switch-csel kissé kusza lett volna.

A 7:30-tól 8-ig terjedő részt is külön fogom kezelni, csak ott kell a percekkel törődni.

Köszi az ötleteket!

(#5331) vargalex válasza ngabor2 (#5328) üzenetére


vargalex
félisten

Nem tudom, hogy milyen RTC függvénykönyvtárat használsz, de pl. ebből kiindulva elsőre valami ilyesmire gondolnék:

time_t t = now();
if ((weekday(t)>1 && weekday(t)<6 && ((hour(t)==7 && minute(t)>29) || (hour(t)>7 && hour(t)<21))) ||
((weekday(t)==1 || weekday(t)==6) && hour(t)>8 && hour(t)<21)) {
if (digitalRead(GPIO_NUM) == LOW) digitalWrite(GPIO_NUM, HIGH);
}
else {
if (digitalRead(GPIO_NUM) == HIGH) digitalWrite(GPIO_NUM, LOW);
}

Nem fordítottam, így a hibákat nem zárom ki. :)

Szerk.: Ha nem menne az output módú GPIO PIN olvasása, akkor nyilván kell valami globális változó, ahol tárolod az aktuális értéket és annak az értékét hasonlítani.

[ Szerkesztve ]

Alex

(#5332) ngabor2 válasza vargalex (#5331) üzenetére


ngabor2
nagyúr

Uhhh... ez aztán az összetett if :D

Köszi szépen, ez alapján már boldogulni fogok. Ez után beteszem a párakövetést egy kis delay-jel, és megoldva a probléma :)

(#5333) vargalex válasza ngabor2 (#5332) üzenetére


vargalex
félisten

Lehet, hogy a kimenet aktuális állapotát felesleges is figyelni, mert legfeljebb ugyan arra kapcsolod... Azaz 1 db if marad.

[ Szerkesztve ]

Alex

(#5334) Aryes


Aryes
nagyúr

Sziasztok! Most a robotomnál 5 külön bemenetre 5 kapcsoló van kötve, mindhez van egy-egy pinchange interrupt. A bemeneteken belső felhúzó ellenállás, a kapcsolók földre húzzák a bemenetet. Hogyan tudnám ezt multiplexeléssel megtöbbszörözni? Tudom, hogy olyan megoldás kéne, mint egy billentyűzet-mátrixnál, de ott fordítva vannak a jelszintek, azon filózom, hogy hogy lehetne egy ilyen mátrixot felépíteni és utána beolvasni, hogy ne csináljak rövidzárlatot?

(#5335) quint válasza Aryes (#5334) üzenetére


quint
aktív tag

Például 74LS148...

(#5336) Aryes válasza quint (#5335) üzenetére


Aryes
nagyúr

De ez csak akkor jó, ha egyszerre csak egy bemenetre érkezik jel. Nekem olyan kéne, amivel több jelet is tudok egyszerre detektálni...

(#5337) quint válasza Aryes (#5336) üzenetére


quint
aktív tag

Igen, a legmagasabb prioritású kérés (beérkezését és) azonosítóját adja tovább. Ha egyszerre több lenyomott gomb is lehet és mindegyiket érzékelni kell, akkor nincs "lábtakarékos" IRQ-s ötletem. Olyan nem jöhet szóba, hogy az elvárt reakcióidőnek megfelelő ütemben letapogatod a gombokat?

(#5338) Aryes válasza quint (#5337) üzenetére


Aryes
nagyúr

De igen, erre gondoltam én is mátrix címszó alatt. De azzal az a baj, hogy tegyük fel: 3 oszlop és 4 sor van. Egy oszlopra földet, a többire Vcc-t kapcsolok. Ha több kapcsoló is nyitva van, rövidzárat csináltam.
Rakjam tele diódákkal? Csinált itt vki hasonlót?

(#5339) quint válasza Aryes (#5338) üzenetére


quint
aktív tag

A letapogatást címző vonalakra diódák kellenek, a beolvasást végző bemenetekre pedig (belső) felhúzás (ilyesmi az egész).

(#5340) Aryes válasza quint (#5339) üzenetére


Aryes
nagyúr

Köszi, pont ez kellett. :)

(#5341) Bazs87 válasza Aryes (#5340) üzenetére


Bazs87
tag

esetleg i2c portbővítő, vagy egyszerűség kedvéért egy mega?

(#5342) Bazs87 válasza weiss (#5317) üzenetére


Bazs87
tag

kérlek erősítsetek meg vagy cáfoljatok, de a tapasztalatom az, hogy az olcó pici kínai szenzorok sajnos nem túl pontosak. A DHT11 elvileg kalibrált szenzor mért hőmérsékletei több szenzornál +/- 2 fok különbséget tudnak kb. Ha nem valamilyen komolyabb szabályzást akarsz megvalósítani, akkor tanácsolom, hogy egy időig gyűjts adatokat, átlagolj, majd pedig a végső átlagolt idővel dolgozz (pl másodpercenként 1 értéket adj ki ciklikusan, 1 mp alatt pedig olvass folyamatosan és dobáld egy array-be, amit a végén átlagolsz, küldesz/logolsz, majd ürítesz és kezdet újra)

RTC: valszeg velem van a baj, de többet is próbáltam és pár hónap után mind sikeresen elcsúszott 5-10-20 perceket folyamatos táp mellett. Amint szükségem lesz 3 dolgon gondolkodom, ami megoldhatja a problémám: 1. NTP serverről idő szinkronizálás (valamilyen egyszerűbb socketes lib csak van hozzá)
2. DCF77 rádiós óra
3. routerből vagy a belső hálózatból valahogy kihúzni az aktuális időt (ez lenne a legjobb, de még nem mélyedtem el benne, persze úgy, hogy ne kelljen semmilyen pc-nek ehhez futnia folyamatosan)

(#5343) gyapo11 válasza Bazs87 (#5341) üzenetére


gyapo11
őstag

Tkp. bármilyen portbővítő megfelel, ha nem akarjuk a gombokat mátrixba szervezni. De nem is kell, mert a mátrix is egy megoldás a sok gomb-kevés lábra meg a portbővítés is. Az előny a portbővítésnél az, hogy akár minden gombot le lehet nyomi egyszerre, és azt is le tudja olvasni.

menyország -> mennyország, akadáj -> akadály, jótálás -> jótállás, Iphoneal > Iphone-nal, kisuly > kisujj, csővet > csövet

(#5344) gyapo11 válasza Bazs87 (#5342) üzenetére


gyapo11
őstag

Két pótötlet:
- gps modulból jön soros porton másodpercenként az adat, benne az atomóra pontos idő
- Kossuth rádió középhullámon délben 5 sípszóra ráhúzni az időt

menyország -> mennyország, akadáj -> akadály, jótálás -> jótállás, Iphoneal > Iphone-nal, kisuly > kisujj, csővet > csövet

(#5345) Aryes válasza Bazs87 (#5341) üzenetére


Aryes
nagyúr

Mega boardot használok, de ellentétben az uno-val, ahol minden (24) lábra lehet pinchange int-et beállítani, a megának csak 18 erre a célra használható lába van, annak is nagy részét másra használom (2.serial port, encoder impulzusok számlálása stb). Ha több érzékelőt akarok rátenni, akkor muszáj multiplexelnem. Digitális bemenetem, az bezzeg van dögivel. :) Azt is lehetne, hogy az összes érzékelőt egy lábra kötöm, ami interruptot generál, és használom a rengeteg szabad digitális bemenetet. Sok dióda kellene hozzá, de akár így is működhet a tegnapi ábra alapján.

(#5346) quint válasza Aryes (#5345) üzenetére


quint
aktív tag

Érdemes megfogadnod Bazs87 kolléga tanácsát, ha tényleg ilyen összetett a projekted. Például az MCP23017 nagyon jól használható megszakításos rendszerben is (hozzá egy könyvtár).

(#5347) weiss válasza Bazs87 (#5342) üzenetére


weiss
addikt

A Bosch az elvileg kalibrált, és a filtrálást is tudja már önmagában. Mondjuk biztonság kedvéért én is megcsináltam a datasheetben levő képlet szerint :D

I did nothing, the pavement was his enemy!

(#5348) Janos250 válasza Bazs87 (#5342) üzenetére


Janos250
őstag

Én korábban ezt az NTP kezelést néztem ki, de végül nem került sor próbára, de lehet, hogy valaki már próbálta:
Arduino Network Time Protocol (NTP) Client:
https://www.arduino.cc/en/Tutorial/UdpNTPClient

A DHT11 nekem is NAGYON pontatlan volt, le is mondtam róla. Pedig a neten szinte iskolapéldaként emlegetik.

[ Szerkesztve ]

Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.

(#5349) Aryes válasza quint (#5346) üzenetére


Aryes
nagyúr

Nem is gondoltam, hogy ilyen is van. Köszönöm a tippet!

Más: ma írtam egy virtuális gépet a smart car-ra. Mostantól a fiam is tudja majd programozni. :DDD
Kb. 8 sornyi program elég, hogy körbemenjen a szobán és kikerülje a falakat meg az akadályokat.

(#5350) Janos250 válasza quint (#5346) üzenetére


Janos250
őstag

Vagy itt 30%-al olcsóbban:
https://shop.chipcad.hu/Welcome/Default.aspx?scenarioID=360&search=MCP+23017&searchShowSaldo=false&type=0
Vagy itt, panellal együtt, de drágábban:
http://www.ebay.com/itm/MCP23017-DIP-SOP-Bidirectional-16-Bit-I-O-Expander-I2C-IIC-Serial-Interface-/192118632876?var=&hash=item2cbb29b1ac:m:m-xzmi0YYmqrUOrOM4bRldg

Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.

Copyright © 2000-2024 PROHARDVER Informatikai Kft.