Hirdetés
-
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.
Új hozzászólás Aktív témák
-
nagyúr
válasz szuszinho #10401 üzenetére
A Vin bemenet mögött van egy 5V feszszabályzó, minimum 6,4V-ot kell rá adni, hogy stabil 5V-ot kapjon róla a lap. Akkor kell használni, ha 6,4-12V közti tápot szeretnél használni. Az 5V bemenetet nem védi semmi, vigyázz, hogy magasabb feszültséget, stabilizálatlan tápot be köss rá.
-
gyapo11
őstag
válasz Honkydoo #10398 üzenetére
Nem tudom milyen cpu-ra gondolsz, én a 328-assal próbáltam egy nagyon egyszerű ciklust, ami csak számol, és 100 kHz fölött valamivel futott le egy másodperc alatt. Szóval a 44 kHz-es megszakításban ha 2 utasításnál több van (egy inkrementálás és egy if volt nálam), akkor nem fog beleférni az időbe.
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
-
Pubszon
veterán
Üdv.
Tesóm lakásának világítását egy Arduino Mega 2560-al vezérlem.
A villanykapcsolók nyomó kapcsolók és a +24V szálat zárják nyomáskor, ami utána egy feszültség osztóba megy, ahonnan kb 4.8V-ot kap a Mega bemenete.
Van 16 relé és 22 kapcsoló.
Működik is minden rendben, a prellmentesítést is szoftveresen megoldottam.Viszont azt vettem észre, hogy ha gyorsan nyomkodom valamelyik kapcsolót, akkor random egy másik lámpa fel vagy épp lekapcsol, attól függően hogy mi az állapota. Ezt most kiküszöböltem, hogy minden kapcsoláskor 1000ms delay-t hagytam, de ez nem a legjobb megoldás.
Valami olyasmi lehet, hogy a kapcsolgatás miatt elektromos zaj keletkezik és amiatt kapcsol fel egy másik lámpa?
Hogyan tudnék ez ellen védekezni?
3 dologra gondoltam:
- Feszültségosztó 2 ellenállását arányosan csökkenteni (ezt a legnehezebb kivitelezni)
- A 24V-ot 16V-ra csökkenteni, így is jutna 3.2V a bemenetre, ami még magas jelszint
- Csak akkor kapcsolna fel a lámpa, ha a kapcsoló legalább 50 vagy 80ms-ig folyamatosan nyomva van, így kiszűrve a néhány ms-os jelet. (Egy átlagos egérkattintás 80-100ms)Bárminemű segítséget, tippet szívesen fogadok!
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
-
brickm
őstag
-
PHM
addikt
-
brickm
őstag
válasz Pubszon #10409 üzenetére
Hogyne lebegne. A feszültségosztó ott van a bemeneted mellett. Ebben adott két ellenállás, amiből az egyik a föld felé mutat, a másik meg egy antennára. Ha az entenna felől jön egy gerjesztett hullám, az osztód mivoltából ott 0-nál mindenképp nagyobb, akár 3-5V, vagy még nagyobb impulzus is keletkezhet, aminek természetesen teljestménye nincs, de egy arduino bementét kapcsolhatja.
A bemenet akkor nem lebeg, ha fix potenciálon nyugszik, legyen az logikai 0, vagy 1. Tehát gnd, vagy táp. Minden köztes állapot lebegés.
[ Szerkesztve ]
-
Pubszon
veterán
válasz brickm #10410 üzenetére
De az antenna egy ellenálláson keresztül megy, majd egy másik ellenálláson keresztül csatlakozik a GND-re.
Így is össze szed jelet, ezért az egyik megoldásom az ellenállásokat csökkenteni a feszültség osztón.
Fix GND-re nem hozhatom, mert akkor minden kapcsoláskor a 24V-os tápot rövidre zárnám.
Ezek az impulzus jelek milyen hosszúak lehetnek vajon?
[ Szerkesztve ]
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
-
gyapo11
őstag
válasz Pubszon #10411 üzenetére
Ha egy ellenállás le- vagy felhúzza a bemenetet, az addig fix, amíg rá nem kötsz egy drótot, mert a drót viszi be a zavart. Ha árnyékolt a drót és minél rövidebb, minél kisebb az ellenállás a táp felé, illetve kis induktivitású kondi testeli, akkor jobb a helyzet.
Itt software-ből is lehet ügyeskedni, mert ha beérkezik a megnyomás/bekapcsolás jele, akkor elég várni pár tíz ms-ot a prell miatt, majd nézni, hogy folyamatosan aktív-e a jel még pár tíz ms-ig, ha igen, akkor nem zavarjel.
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
-
brickm
őstag
válasz Pubszon #10411 üzenetére
Mondom, hogy rossz a logikád.
Az antenna ellenálláson keresztül kapcsolódik a földre, de mivel esik azon az alsó tagon is X volt feszültség, az megy a bemenetre. Egy ilyen kábel induktívan össze tud szedni a falban 80-110V zavarjelet, aminek bár teljesítménye nincs, a mikrovezérlőd ki\bemenete érzékeny rá. Mint azt a példád is mutatja. (Egyébként ha csökkented az osztódat azzal csak a 24voltot terheled le jobban, lehet, hogy most épp megszűnik ez a hibajelenség, de ez egy rossz megoldás, minden szempontból)
A feszültségosztós húzás amúgy is egy iskola példa a "hogyan ne..." kategóriában.
Mit zársz rövidre? Fogsz egy optocsatolót, aminek az A oldalán lesz a kapcsolt 24volt meg a saját GND-je, ami most ment az osztód tetejére, meg a közös pontra, a B oldaalára meg rákötöd a bemenetedet meg a mikrovezérlő GND-t, a bemenet pedig még direktbe felmegy egy ellenállással a tápra. Semmi nincs rövidre zárva, csak a bemenet, annak meg úgy kellene lenni most is....
-
Pubszon
veterán
Köszi srácok a jó ötleteket.
Úgy néz ki, hogy akkor optocsatolóval lesz megvalósítva a bemenet.
Erre a modulra gondoltam.Továbbra is a 24V pozitív ága lesz kapcsolva, a bemeneteket felhúzom szoftveresen, kapcsoláskor pedig lehúzza GND-re az optocsatoló.
Jó az elképzelés és hosszú távon is jó lesz?ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
-
Pubszon
veterán
válasz brickm #10415 üzenetére
Ez mit akar jelenteni?
A kimeneten jelenleg az olcsó 4 relés, optocsatolós modulok vannak, de szeretném azokat is a végleges felállásnál lecserélni 24V-os ipari relékre, amik már meg is vannak.
A mega és a 24V-os relék közé kellene valami korrekt megoldás, én erre gondoltam.Így akkor jó lenne az egész, igaz?
ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
-
Honkydoo
őstag
(#10403) gyapo11:
Ahogy olvastam a galileo nagyon lassan kezeli le a megszakításokat.
Most nincs előttem a forrás (ha kell elő keresem) de ahogy láttam az egyetlen ötlet a megoldásra a fastGpioDigitalRead függvény. Ez lényegesen gyorsabb olvasást tesz lehetővé [link], igaz ez nem megszakítás..(#10404) weiss:
A mintavételt egy külön shield végzi. [link]
Ez elvileg tud 44.1 khz-en mintát adni.(#10405) robohw:
Köszi a linket, megnéztem. Csak azt nem tudom hogy hogyan használjam ezt a meglévő hw-hez?Betettem a fastGpioDigitalRead függvényt a loopba egy while(1) ciklusba, és amikor az órajel generátor adja a jelet csinálok valamit. Most pont egy mérést, vagyis elszámolok 44100-ig aztán mérek, kiírok. 1,003 sec külömbséggel fut le a két mérés egymás után. Ez annyira nem tökéletes de akár jó is lehet. Valszeg a soros porton történő kiírás miatt nem lesz pont 1 sec a futási idő.
[ Szerkesztve ]
"Légy olyan, mint bárki más, tégy olyat, mint senki más."
-
Wemos d1 r2 együtt tud működni a motor shield v2-vel? Egy servo motort próbálok életre kelteni a servo1-es csatlakozón, de nem igazán csinál semmit se. Vagy megint belefutottam abba, hogy túl sokban eltér az uno-tól a lábkiosztása...
Eladó Lego: 42139 All terrain vehicle
-
brickm
őstag
válasz brickm #10419 üzenetére
Bocs, a szerkesztési időből kifutottam, de egy gondolatébresztés:
Ha lenne egy fölös 12 vagy 24-es segédtápod, meg zselés akkud, kiegészíthetnéd a rendszert egy emergency irányfénnyel.
Nálam úgy néz ki a dolog, hogy ha áramszünet van a riasztó PIR-ek etejére szerelt nagyobb SMD led felkapcsol, így minden helyiségben van legalább egy fényforrás.
-
nagyúr
válasz Victoryus #10418 üzenetére
Hogy jön a szervó motor a motor shield-hez? A motor shield v2-n lévő szervó csatlakozók ha jól emlékszem csak az uno bizonyos pin-jeit (D9,D10) duplázzák meg úgy, hogy van mellette 5V meg GND, tehát nem a rajta lévő chip vezérli, amit i2c-n tudsz elérni, hanem a megfelelő pin-eket össze is kell kötni, és kell egy servo library is, ami wemos kompatibilis. Ha wemos-ra kötöd az uno shield-et, gondolom jumper kábelekkel, akkor bármelyik szabad pin-t rákötheted. Esetleg a digitális kimenet logikai szintje okozhat gondot, hogy csak 3v3, de szerintem a legtöbb szervónak ez elég.
Ja és persze kell neki kívülről 5V táp.
Úgy is mondhatnám, hogy szervó vezérléshez egyáltalán nincs szükség a motor shield-re, csak praktikus a csatlakozó miatt.[ Szerkesztve ]
-
Pubszon
veterán
-
Janos250
őstag
válasz Pubszon #10406 üzenetére
Nem egy olcsó megoldás, de kényelmes. Én mostanában ezekkel játszom.
https://www.ebay.com/itm/Sonoff-T1-WiFi-RF-Panel-Touch-1-2-3Gang-Switch-Smart-APP-Remote-Timer-UK-EU-Plug/323323099082?hash=item4b478ef7ca:m:mMQyXvai39vS-ojsAMvugFQ:rk:80:pf:0ESP8266/1M van benne. Arduino alatt úgy programozható, ahogy csak akarjuk, de a "Tasmota" rendszer is nagyon kényelmes, szintén Arduino alatt viszem fel az első variációt, utána OTA (azaz WiFi-n keresztül) lehet frissíteni, változtatni. Célszerű hozzá valami legolcsóbb lapra (valamelyik pi, vagy hasonszőrűek, vagy egy olcsó TV box) felrakni egy Mosquitto ("visszhang", jel ismétlő, szétosztó) szervert, aminek ha üzenetet küldünk bárhonnan (pl. az előbbi kapcsoló, telefon, internet), az továbbítja a megfelelő eszközhöz. Például kapcsolja a kapcsolót. Aztán, ha belekóstolunk az ízébe, akkor jöhet mindenféle egyéb szenzor, Sonoffok, miegymás. Ha még jobban megtetszik, akkor továbbléphetünk, valami okosotthon vezérlő szoftver felé, és akkor már teljes az örömünk.
[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Tankblock
aktív tag
-
Pubszon
veterán
válasz brickm #10427 üzenetére
A legnagyobb kapcsolt fogyasztó, 6db 7W-os LED lámpa.
Tehát nagy áramot nem kapcsolnak, de akkor sem bízom rájuk hosszú távon.
Meg ha a 4-es modulon egy relé beszarik, cserélhetem az egész modult, köthetem ki az összes vezetékét, majd vissza, közben meg áramtalanítsak is.
Ilyenből van kb 30db, bontott, de mind hibátlan. És ugye ha cserélni kell is pofon egyszerű, pár másodperc.ASRock X79 Extreme6, i7 4930K, 32GB DDR3, GTX 1080 G1, Corsair RM750x...
-
Köszönöm! Hát a D9 meg D10 az máshol van mint az uno-n.
Az elgondolás az volt, hogy a servo motor megy a servo1-es csatlakozóra, meg lesz még 1-2 sima motor. (vagy csak 2 motor, servo nélkül)
Lego alkatrészekből készült távirányítós teherautó a cél. A motorok direktbe az arduino motorvezérlőre kötve,mert nem lego motorok. 3d nyomtatóval majd lesz nekik keret nyomtatva.Plusz ledek, első körben ennyi, aztán tervben volt még okorsítani kicsit, mondjuk ütközés védelem, vagy sávkövetés. De úgy látom ehhez nincs elég használható lába.A wemos alapból tud wifit, meg bluetoothot, ezért lett volna jobb, de alig van szabad pinje. Van uno-m is bluetooth modullal meg L298N-nel, abból már építettem 2 motoros "autót".
A múltkor motorvezérlő nélkül már simán tudtam a servo motort irányítani wemos-szal wifin kersztül, de a másik két motornak csak kéne valami vezérlő... 3x3,7V lipo cellákról menne.
Lehet a L298N jobb választás ebben az esetben.
Jön még egy ESP12e+L293 shield hozzá, azok kisebb helyen is elférnek. Ez is szempont lenne.[ Szerkesztve ]
Eladó Lego: 42139 All terrain vehicle
-
brickm
őstag
válasz Pubszon #10431 üzenetére
Jaja közbe összeraktam a képet, azért írtam rá csillaggal Bocs, elsőre én rendes izzószálás/energiatakarékos ívkisüléses világításnál leragadtam
Azt a 200mA-t egyébként még rá is lehetne bízni a relére, valószínűleg sokáig jól elmenne vele, de ha már úgy is megcan a másik foglalatos relé, mégiscsak jobban fog mutatni, mint az ebayes Meg igen, az utólagos szerelhetőség se mindegy.kgymac
Ez temészetes, az volt a félreértés tárgya, hogy a relék szekunder kapcsain miért csak 150mA a terhelés, de megoldódott.[ Szerkesztve ]
-
Azokat használom amiket a thinsversen találtam:
[servo adapter]
arduino tartó
Plusz kínai lego koppincs motorok, de valahol láttam sima noname motorhoz is.Eladó Lego: 42139 All terrain vehicle
-
balintarduin
újonc
Sziasztok!
Korábban már a menürendszert sikerült elkészítenem, változókkal és amelyekben tömbökben tárolom a kiírt adatot. Most tovább lépni szeretnék, és egy olyan kérdésem lenne, hogy hogyan tudom megcsinálni azt, hogy beírok egy idézőjelbe előre beírt számot, pl,43 és ezt kiírja a kijelzőre, ahogy begépelem a 4x3-as membrános billentyűzeten és utána az ehhez a számhoz tartozó parancsot végrehajtja. Amennyiben nem írtam be ezt, vagy jót, akkor nem történik semmi.
És valahogy úgy gondoltam, hogy tömbökbe teszem az összes számot amire szeretnék cselekvést, és egy ifekbe beírkálom a számát, hogy ha ezt adom be neki, akkor az ahhoz tartozó függvényt, parancsot, (pl kapcsoljon be egy ledet) fusson le.Előre is köszönöm a segítséget!
-
szuszinho
őstag
Sziasztok,
Sonoff-ban milyen relé van?
-
Breaker
tag
Sziasztok,
Két MAX7219 ICt hasznalok egy 16 szegmenses LED kijelzo vezerlesere. Az egyik a felso 8at a masik az also 8at. Az elso teljesen hibatlanul mukodik. jo a vezerles, jo a kabelezes is.
Azonban ha a masodikat is felfuzom a MOSI/SCK pinekre nem tortenik semmi. Fel sem villan a led also fele (a felso tovabbra is jol mukodik).
A papirok szerint az IC ISET lábát 9kOHM resistorral kell 5V-ra kotni, sajna a legkisebb ami itthon van az 20as, ezert ezt hasznalom, azon gondolkodtam hatha ez a gond. Allitolag a fenyerosseg vezerlesehez kell (amit a megfelelo regiszterben lehet beallitani). Egy masik lehetoseg hogy az arduino PIN ahonnan az egesz az aramelleast kapja (usbrol), nem tud annyi currentet felvenni. nade 2 IC és egy 16 szegmenses led csak nem teszi ki 400milliampert (amennyi a limit ha jol tudom a pin-en)A kerdesem az lenne hogy volt e mar valakinek ilyen problemaja vagy elso ranezesre mi lehet a logikai gond..?
Előre is koszonom
Üdv
BreakerMSI MPG B550 GAMING PLUS | AMD Ryzen 5800X3D | 32GB Trident RGB G.Skill 3200Mhz | GIGABYTE 4070 SUPER 12GB
-
szuszinho
őstag
Sziasztok,
Miért nem olvassa ki folyamatosan a következő kód a hőmérséklet értéket, miközben, ha a cél hőmérsékletet változtatom, az működik?
Main rész:
void loop()
{
// this call interprets characters from the serial port
// its a very basic control to allow adjustment of gain values, and set temp
updateSerialInterface();
updateLCDInterface();
updateTempSensor();
// every second, udpate the current heat control, and print out current status
// This checks for rollover with millis()
if (millis() < lastPIDTime) {
lastPIDTime = 0;
}
if ((millis() - lastPIDTime) > PID_UPDATE_INTERVAL) {
lastPIDTime += PID_UPDATE_INTERVAL;
heatPower = updatePID(targetTemp, getFreshTemp());
setHeatPowerPercentage(heatPower);
}
updateHeater();
}K-hőelem rész:
#include"max6675.h"
int thermoDO = 8;
int thermoCS = 9;
int thermoCLK = 10;
float tc = 0.0;
float latestReading = 0.0;
const float offSet = 34.25; // MAX6675 + K thermocouple error
MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
void updateTempSensor(){
tc = thermocouple.readFahrenheit();
}
float getFreshTemp() {
latestReading = tc - offSet;
return latestReading;
}
float getLastTemp() {
return latestReading;
}[ Szerkesztve ]
-
DrojDtroll
veterán
Sziasztok!
OV7670 kamerával próbálkoztatok már?
-
Breaker
tag
válasz Tankblock #10445 üzenetére
Szia!
Időközben leugrottam a Conradba és vettem R-eket
Nos a helyzet megoldódott. nem kisebb, hanem boven nagyobb ellenalasra volt szukseg. 65kOhm-al kotottem ra 5V-ra az ISET labat mind a kettonel. Es igy mukodnek, ráadásul a halvanyabb fenyeronel, nem vibral egyik led szegmens sem.
Viszont nem jon ki a matek, valamit nem latok at de nem a datasheet szerinti áram folyik az IC-k lábain.
A szegmens lábakon 0.6V feszultség van és 2.6 mA. A LED papirjai szerint a forward voltage 1.95V és 30mA kell a labakra, igaz ezek szeirntem a maximum fényerőnél lehetnek.
Valamit rosszul olvasok vagy nem veszek figyelembe, de nagyon kevésnek tűnik ennyi nafta a mukodeshez.
Köszi
Üdv
BreakerMSI MPG B550 GAMING PLUS | AMD Ryzen 5800X3D | 32GB Trident RGB G.Skill 3200Mhz | GIGABYTE 4070 SUPER 12GB
-
Janos250
őstag
válasz szuszinho #10443 üzenetére
"Miért nem olvassa ki folyamatosan"
Azt nem tudom. Csak azt tudom, hogy nekem 2-3 éve, mikor használtam, a max6675.h-val mindenféle bajaim voltak, ezért inkább kiolvastam saját magam.[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
nagyúr
Sziasztok! Szeretnék csinálni egy olyan infra távirányítót, aminek a hatósugara szabályozható, például legyen mondjuk 3m és 10cm közt szabályozható. Normál esetben az infra LED fényerejét pwm-mel szabályoznám, de mivel itt eleve 38kHz-es jelet kellene pwm-mel modulálni, eléggé működésképtelennek láttam a dolgot.
Kitaláltam egy 4 bites DAC megoldást, ami egy 74hc595 chip 4 kimenetére kötött ellenállásokból áll, amiket párhuzamosan kötnék a LED egyik kivezetésére. Így megfelelően összeválogatva az ellenállásokat (pl 400, 200, 100 és 50 ohm) kb. 15 különböző áramerősségi szintet tudnék vele előállítani. A digitális jelet pedig a 74hc595 enable lábával tudnám küldeni.
Szerintetek működőképes az ötlet? Mekkora áramerősség kell egy infra LED-nek, hogy 3m-re tudjon sugározni? Ahogy utána olvastam, akár 1,5A is lehet pillanatnyi áramfelvétele (ennyit ír az adatlapja), tehát gondolom ennek oka van. A 74hc595 viszont 30mA-t enged a kimeneteken, és max. 70mA lehet az egész chip max árama. Mire lehet ez elég?
Ki fogom egyébként majd próbálni, de gondoltam előbb azért kikérem a véleményeteket.
Esetleg van valakinek jobb ötlete? 74hc595 és uln2003 (darlington array) chipjeim vannak itthon, azért ezekben gondolkoztam.
Köszi![ Szerkesztve ]
-
nagyúr
A másik ötletem az uln2003-el vezérelt "DAC", a 38kHz-es jelet pedig egy fet-tel vagy egy tranzisztorral vezérelném. Ez talán életképesebb ötlet lenne, teljesítmény szempontjából mindenképp, de túl sok pin kellene hozzá, márpedig az egészet egy wemos d1 minivel szeretném irányítani.
Új hozzászólás Aktív témák
Hirdetés
- Cisco SG200-50 smart switch - 48+2 portos Gigabites
- minigép/ G4400T 35W/ 8GB DDR4/ 128GB SSD/ Lenovo M700 Tiny/ garancia/ ingyen foxpost
- XFX RX6700XT Qick319/ garancia/ ingyen foxpost
- ASUS ROG G15 - Ryzen 7 6800H - 16GB DDR5 - RTX 3060 (140W) - 15,6" 300Hz - Csere PS 5 PRO -ra
- Apple Magic Trackpad Érintőpad Fekete (MMMP3Z/A), Újszerű, Garancia: 2025.06
Állásajánlatok
Cég: HC Pointer Kft.
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest