- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- SSD kibeszélő
- RAM topik
- SONY LCD és LED TV-k
- Bambu Lab 3D nyomtatók
- Melyik tápegységet vegyem?
- Milyen notebookot vegyek?
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- AMD Navi Radeon™ RX 9xxx sorozat
- AMD K6-III, és minden ami RETRO - Oldschool tuning
-
PROHARDVER!
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
-
-
tvamos
nagyúr
válasz
dave0825 #983 üzenetére
Okes, de itt a LED idomultiplexelt, tehat a LED atlagos arama az a kiszamolt ertek ( (Ut-Uled) / R) harmada. (Az oszlopok szamaval kell osztani.)
Igy nalad azt a 4-6mA-t el kell osztani az oszlopok szamaval, azaz 5-tel. (Ha eltolod a software-t, akkor 6-tal.) Ez igy nem sok...(#984) gyapo11 válasza tvamos (#980) üzenetére
Jajjjj! Meg mindig igy nez ki az EWB? Ez fajt...Beírtam EWB-be, de nagyon kicsi szaturációs feszültséggel számol a tranyókon,
Ez valoszinuleg jo lehet, mert nem tul nagy az aram. Hogy 20mA-nel mennyi, azt meg kell nezni a diagrammon.
Amugy miert nem LED-et raktal a szimulacioba?
-
tvamos
nagyúr
-
tvamos
nagyúr
válasz
dave0825 #975 üzenetére
Hogy jott ki a 330R amugy? Mar csak azert kerdezem, mert ugy nem tul sok aram fog folyni a LED-eken. Ha 5V a tapod, meg 3V a LED-ed, akkor mondjuk ugy... 6mA peak. (Persze, valoszinuleg lesz tranzisztor szaturacio, szoval meg annyi sincs.) Ami nem sok. Ha a matrixban villantasz, akkor ennek a kozeperteke meg annal is joval kisebb. Meg 1mA sem lesz az atlagos aramod.
A 2k2-ket kozvetlen a BE-re szokas kotni, nem igy felhuzo ellenallasnak. (Ja, es nem 2k2 a szokasos ertek, de persze, igy is fog mukodni, de nagyobb aramot veszel ki az IC-bol, es a BE kort sokkal nagyobb impedancian keresztul zarod le. Ez nem nagy baj, mert ezek mar nem Germanium tranzisztorok, de akkor is...) En ezeket az NPN-eken siman elhagynam, mert a mai tranyok eleg jok, az AVR siman le fogja zarni, ha a kimenet 0. A PNP-kre viszont tennek, mert azoknak altalaban rosszabbak a parameterei, es a GPIO maradek feszultsege is altalaban tobb, ha source, mintha drain.
Nem ertem, milyen megfontolasok alapjan tettel 4k7-et a PNP-kre, es 1k-t az NPN-ekre, de az szerintem nem jo, a PNP-ket jobban meg szoktam hajtani. ITT is ezt tennem... ha nem 6mA lenne a LEDek arama, inkabb oda illik az 1k, es az NPN-eken elmegy a 4k7. Szerintem...(#977) dave0825 válasza tvamos (#976) üzenetére
Toltsd le az Eagle-t, az ingyen van, (hobby celra, korlatozott PCB meretben,) abban gyorsan, es szepen lehet dolgozni. Ha mukodik, tudsz PCB-t tervezni, kinyomtatod, kimaratod, kifurod, es... nagyon elvezetes dolog, ha van idod butykolni... -
tvamos
nagyúr
válasz
dave0825 #975 üzenetére
Ez eleg szornyen nez ki! Mi a CAD? Paint?
--------------------------------------------------------------
HACKADAY PRIZE 2015BUILD SOMETHING THAT MATTERS
Enter the 2015 Hackaday Prize competition and become the next Atmel AVR Hero! -
tvamos
nagyúr
válasz
dave0825 #971 üzenetére
Azert irtam, mert ha van 14 I/O, akkor nem lehet 14 x 40mA (560mA) mert max 200mA az IO pinek terhelhetosege. Viszont siman mehetsz 20mA fole.
Az a linkelt abra... hat hogyis mondjam... Nem tudom. En nem talaltam a 328 doksijaban olyan 100, meg 150mA-es dolgokat, de majd leellenorzom megegyszer. -
tvamos
nagyúr
válasz
dave0825 #962 üzenetére
Szerintem, ha lenne egy 5V-os tápot, az lenne a legegyszerűbb megoldás.
(#964) gyapo11 válasza dave0825 (#955) üzenetére
K/W gyakorlatilag = a C°/W-tal.
R th jc = thermal resistance junction to case
Tehát, ha ilyen vanvan irvaírva, akkorakkor csak a case-ig tudod, mi van. Hogy onnan mennyi, (case-ambiente,) azt a tokra vonatkozo app note-okbol lehet kineznikinezni, de csak tapasztalati ertekek. -
gyapo11
őstag
válasz
dave0825 #955 üzenetére
A hőellenállás mértékegysége m2K/W, ez nem tudom hogy jön össze a C°/W-tal. Pláne hogy le van forrasztva a hűtőfül egy ismeretlen hőleadási képességű lapra, valahogy gyanús nekem, hogy erre rá lehet mondani, hogy W-onként x fokot fog melegedni. De ehhez nem értek.
Szerintem az usb ic fogyasztása nem számottevő, főleg mert 200 mA körüli fogyasztásod lesz.
1 mm-rel lejjebb van a hűtőfül, oda hiába kensz pasztát, 1 mm paszta hőellenállásán nem fog átmenni a hő. A paszta csak a felületi érdességet tölti ki, mert különben ott levegő lenne, ami jó hőszigetelő. A nyák másik oldalán me alkatrészek vannak, és amúgyis ott a nyák anyagának hőellenállása, ami miatt ott sem lehet hatékonyan hűteni. De mindez csak elméleti eszmefuttatás, mert ne az arduino kis stabilizátorát használd, hanem az lm2596-ot, ami 3 A-es kapcsiüzemű.
NE A DIGITÁLIS KIMENETRE kösd az ellenállást, hanem a tápra! Fogod a 9 V-ot, ráteszed az arduino Vin pontjára, és az arduino +5V kimenetére teszed a 25 Ohmot, ami 200 mA-t fog fölvenni. Így szimulálod az óra áramfelvételét, és hogy mennyire fog melegedni a stabilizátor.
-
zka67
őstag
válasz
dave0825 #955 üzenetére
Szia, bocs, hogy ismét beleszólok. A nano tápját felejts el a ledek meghajtásához, felesleges túlterhelni. A nanot hajthatod 12V-ról is, önmagában nem fog melegedni semmi rajta, mivel erre lett méretezve.
A ledeknek viszont tegyél be egy külön kapcsolóüzemű tápegységet, láttam van neked is, használd azt. Beállítod 5V-ra, a nullát összekötöd a nano nullájával, de az 5V-ot nem kötöd össze a nano 5V-jával.
Így még akár a fényerőt is tudod szabályozni, csak nagyon ne menj 5V fölé.
Ehhez a megoldáshoz nem kell semmilyen hűtés, fogsz egy 12V-os tápegységet vagy 9V-ost, és kész.
Az analóg stabilizátorok nagy baja, hogy a bemenő és a kimenő feszültség különbözetét elfűtik a rajta átfolyó árammal arányosan. Én csak néhány mA áramfelvételű áramkörökhöz használok analóg stab ic-ket, különben minden máshoz kapcsolóüzeműt. Filléres alkatrészekből össze lehet rakni (pl. ebay-en vettem 8Ft/db áron MC34063-as IC-t (100db-ot), hozzá tekercset 20Ft/db-ért, schottky diódákat 2Ft-ért. -
tvamos
nagyúr
válasz
dave0825 #959 üzenetére
Azert jo az a konyv, mert benne van, ami fontos, pl. egy didoda karakterisztika, es, hogy mit kell rajta nezni. En 15 eves voltam, amikor olvastam, es megertettem, hogy mi van, es megcsinaltam az elso germanium diodas detektoros vevomet, meg az elso mikrofon erositomet, az elso ket LED-es villogot. Nem Arduinoval kene kezdeni!
Gondolom, van valami breadboard-od, egy multimetered, ossze kell dugni egy kozos emitteres-t, egy emitter kovetot, es vegig kell merni, ami a konyvben van. Ha raszansz minden nap egy orat, ket het mulva profi leszel! En megcsinaltam siman. Nagyon jo! Ha megcsinalod, meg fogod erteni, mi a maradek feszultseg, meg a LED-en a differencialis ellenallas.
Milyen suli ez? Biztos nem az Obudai egyetem, mert ott vannak gepek...
-
tvamos
nagyúr
válasz
dave0825 #957 üzenetére
En meg ilyet rendeltem, mert nincs meg itthon.
Jo henkoles...
Jut eszembe...
Szűcs Péter: Elektronika mindenkinek
En ebbol tanultam az elektronikat annakidejen... majd' harminc eve. (A diplomahoz azert hozzatanultam ezt-azt.) Az alapok ma is ugyan az, erdemes elolvasni a radiok/TV-k reszletezeseig. Szerintem meg 100 oldal sincs.
-
tvamos
nagyúr
válasz
dave0825 #952 üzenetére
ZIPPY Flightmax 8000mAh
Ez birna neked adni a delejt. Hanem elg, raksz parhuzamosan kettot.Sokk NPN tranzisztor helyett meg rakj ilyet: ULN2803. En mar a LED matrixokat mindig ilyennel hajtom.
(#955) dave0825 válasza gyapo11 (#954) üzenetére
Az 78L05 lesz, SOT23 tokkal... vagy SOT323?.. -
gyapo11
őstag
válasz
dave0825 #950 üzenetére
A kis teljesítményű tápokra jellemző, hogy terhelés hatására leesik a feszültség. Ez még önmagában nem baj, a stabilizátor modul korrigál. De csak addig, amíg nem esik le 9 V alá, pontosabban a kimenet+minimálisan szükséges többlet alá. Viszont ezt nem lehet látni, csak szkóppal ha trafós, ha kapcsiüzemű, akkor talán mérhető műszerrel is. Az, hogy terheletlenül följebb megy, az nem érdekes.
Hűtést számolni nem tudok. 1.2 és 2.2 W-ot enged disszipálni, efölött csökkenteni fogja az áramot. Ez a max 15 V-nál 120 illetve 220 mA, mert csak 10 V esik a stabilizátorra. Szóval nem túl nehéz elérni ezt a korlátot. De hogy mennyire melegszik mondjuk 2 W-tól, az külön tudomány. Vannak hőellenállás adatok az adatlapon, azokból meg a környezeti feltételekből számolható. Tehát a számolást áthárítja a felhasználóra, csak elektromos korlátot használ a teljesítményben, és megadja a max hőfokot, a felhasznált teljesítményadatok és hőellenállások ismeretében mindenkinek magának kell kiszámolni a szükséges hűtőteljesítményt, és az ehhez szükséges technikai paramétereket.
6.5 V-nál (amiből 1.5 esik a stabilizátorra) és 200 mA-nél a disszipáció 0.3 W, nem tűnik vészesnek.Paszta nélkül nem sokat ér, nincsenek polírozott pontosan összeillő felületek. Nano van itt most kéznél, ezen a hűtőfül le van forrasztva a nyákra, csak a műanyag testhez lehet odanyomni egy hűtőfelületet, sajnos itt a stabilizátor műanyag testének hőellenállása csökkenti a hűtőképességet.
Ha nem akarod fölhasználni az lm2596-os modult, akkor teszteld le terheléssel, hogy mennyire melegszik a nyák egy zárt dobozban. 5 V-ra 25 Ohm az 200 mA, a határokon bőven belül van, nyugodtan terhelheted ennyivel, és tapogasd az ic-t meg az egész nyákot. Fusson is valami program az arduinon.
-
gyapo11
őstag
válasz
dave0825 #948 üzenetére
Az lm2596 jó, 9 V-tól fölfelé bármilyen fesszel, de inkább a 9-hez közelebbi legyen. 35 V-ig is működik azt hiszem, de a magasabb feszesés az adott % hatásfokkal nagyobb veszteséget jelent. Ami még mindig elég kicsi ahhoz, hogy ne kelljen hűteni, és mivel hálózati a táplálás, így nem nagyon számít pártized W. De az a precíz, hogy legyen 4 V-tal több, mint a kimenet, a magasabb fesznek csak hátránya van.
A fehér paszta csak hőközvetítő anyag, a felvezetőről viszi át a hőt a bordára, hogy minél kisebb legyen a hőlépcső a chip és a külvilág között. Önmagában semmit nem ér, sőt még rosszabb egy fehér anyag hőleadása, mint a matt feketéé.
-
gyapo11
őstag
válasz
dave0825 #946 üzenetére
1. Nem tudom mi van a képen, és hogy függ össze a hűtésigénnyel.
2. Összekeveredett az analóg áteresztős táp és a kapcsolóüzemű. Az áteresztős termeli a hőt, a kapcsolóüzemű meg nem. Részletesebben most nem magyarázom. Mindkettőben (egyszerűsítve) egy tranzisztoron folyik át az áram, tehát mindig kell feszültségtöbblet a bemenő oldalon, mint a stabilizált kimenőn. A kínai kis moduloknak 3-4 V többlet kell, tehát 5 V kimenethez a 6 V még kevés, kell a 9, de nyugodtan lehet 18 is, mert kapcsolóüzemű, tehát nem melegszik.
3. A 160 mA miatt, mert 10 mA-rel számoltam ledenként, de az eredmény ugyanez 8 db 20 mA-t fogyasztó leddel is.
4. Az áteresztős tápoknak is kell feszültségtöbblet, fél V bizotsan kevés, 1 V talán, de nem mindegy milyen félvezetővel készült a táp. Másrészt ha minimumra veszed, akkor a legkisebb zavar is át fog menni, vagyis egy porszívó bekapcsolás pl. már meglengetheti annyira a bemenő feszt, hogy nem tudja kompenzálni a kimeneten, és az 5 V behorpad egy pillanatra. Legrosszabb esetben reset a következmény, de ha nem, akkor se iparos a megoldás, egy táp kimenetén sose legyen horpadás.
Persze, nagy áramokat csak nagy táppal lehet elérni. Csak próbáltam rávilágítani arra, hogy a vezérlés és a kapcsolóelem az két külön dolog, nagyon kis áramokkal is lehet vezérelni akár az egész Földet.
-
gyapo11
őstag
válasz
dave0825 #943 üzenetére
Igen, lehet 200 A-es is. Az arduino kinyom 20 mA-t, ekkor jól érzi magát a kimenet, biztosítani tudja a H szintet, ami legyen mondjuk 4 V. Itt jön a tranzisztor (npn) bázis egy ellenállással, mert ha nem lenne ellenállás, akkor a tranyó lehúzná a kimenetet 0.7 V környékére (Ube) és elszállna a kimenet. A tranyó bétájával mintegy megszorozza a bázisáramot, ami most 20 mA, legyen a béta 100, vagyis az emitter-kollektoron átfolyhat 2 A. De vannak darlington tranyók is, ahol két tranyó van egy házban, és lehet a béta mondjuk 10000, ezt az arduino 20 mA-ével meghajtva elvileg elérhetjük a 200 A-t is.
-
gyapo11
őstag
válasz
dave0825 #934 üzenetére
Ha zárt helyen van, akkor a hűtőborda is csak korlátozottan hatékony, nincs hova mennie a hőnek, fölmelegszik a belső tér, és egyre kevesebb hőt tud leadni a borda. Ilyenkor vagy a bordát kintre tenni és hőhíddal kivinni a hőt, vagy nem használni az arduino áteresztős tápját, helyette egy nagy hatásfokú kapcsolóüzeműt, ami viszont nem melegszik, tehát hűteni sem kell. A tranzisztorok kapcsolóüzemben vannak, a soros ellenállásokon 2 mW termelődik (16 esetén 32 mW), a ledek 3 V 10 mA-rel számolva 16*3*0.01=0.48 W-ot vesznek föl, ebből mondjuk fele fény, tehát negyed W. Viszont ha 9 V-ból áteresztőn készül 5 V 200 mA, az 0.8 W az egy szem stabilizátor chipen.
Szóval el kell felejteni az áteresztős megoldást, az jó a boardra meg 1-2 ledre, csipogóra, de nálad sok külső elem is lesz. Később elfelejted a részleteket, meghal, teszel bele másikat, az is meghal, és szenvedni fogsz vele, hogy megtaláld a hibát. Kapcsolóüzemű táp és nincs gond. Ha meg 230-ból indulsz, akkor egyből egy 5 V kimenetű, és akkor még az a kis hő is kint keletkezik. -
zka67
őstag
válasz
dave0825 #938 üzenetére
Szia, az, hogy az arduinoban levő tranzisztorok 20mA-rel terhelhetők nem az jelenti, hogy nem folyhatna át rajtuk több áram. Csak ha túlterheled a kimeneteit, akkor lesz egy szép pirosan világító IC-d is a ledekhez
Itt csupán arról van szó, hogy az arduino tranzisztorai helyett egy nagyobb "teherbírású" külső tranzisztorokat fogsz használni. Ezt több szempontból is jobb megoldás, mert így ha véletlenül zárlatot csinálsz e ledek környékén, akkor sem az arduino fog az örök vadászmezőkre tévedni, hanem max néhány tranzisztor. Illetve szerintem azok kibírják a zárlatot is, mert a bázisellenálláson keresztül nem kap annyi vezérlést, hogy el is tudjon pukkanni. Az arduino kimenetei elég érzékenyek erre, azonnal elfüstölnek, ha közvetlenül a tápra vagy a földre kötöd őket.
-
Hyperion
senior tag
válasz
dave0825 #932 üzenetére
Ennyire azért nem kell ráparázni!
Elég jó a hibatűrő képessége/védelme a lapnak.
Egyszerűen figyelni kell működés közben. Ha túl meleg a tápcsati környékén akkor sok a bejövő fesz, ha villognak a ledek az arduinon, akkor alacsony a feszültség. Persze rá is mérhetsz, de nem kell túlmisztifikálni ezt a dolgot szerintem..Nem mondtam, hogy ne falba dugóssal használd, csak azt hogy válogass köztük!
Egy ardu pro kb 4-500Ft, uno talán egy ezres, mega van 2-3e.. Ennek tükrében én azt mondom hogy vágj bele, ne gondolkodj annyit. Ha valamit elbaltázol (Szvsz nem fogsz), esetleg veszel egy másikat és kész.
Ha hosszabb üzemidőre tervezel 9V-os betáppal, érdemes egy apró bordát ragasztani a fesz szabályzóra, ha zavar a melegedés!
-
Hyperion
senior tag
válasz
dave0825 #930 üzenetére
Elvileg elég, de a falba dugós tápok minősége finoman szólva ingadozó. Volt már úgy, hogy az összesen 6-700mA-s fogyasztást produkáló arduino projekt bizonytalan volt egy 2A-es táppal(Leesett a tápfesz terhelés alatt). 1A-el viszont tökéletes lett.
Egyszóval próbálkozz.. Nézz körbe, hogy otthon mi van, addig ne vegyél semmit. -
-
qisqaqas
senior tag
válasz
dave0825 #905 üzenetére
128 led mondjuk 20mA teljesítményfelvételű, azaz 2560mA összesen. Két nagyteljesítményű AA elemet egy óra alatt szívna szárazra önmagában. Ha 5mA takarékos ledek akkor 4óra alatt. Ellenállások, ardu bele sincs számolva. Az előtét ellenállás is megadja azt a fesz esést ami kell neked és elegáns is a megoldás csak gondoltam szólok.
Amúgy a hálózatról való tápolást jobbnak tartom. Elemcsere nem jó móka.
-
gyapo11
őstag
válasz
dave0825 #879 üzenetére
3-féle kínai másolatot vettem, pro mini, nano és uno, és mind tökéletes. Kínai cuccokkal lehet gond, ezzel jár, mondjuk 100-ból egy rossz lesz. De még akkor is van esély, hogy ingyen küldenek egy másikat. Szóval bátran vegyél, főleg ha a pozitív értékelések (ebay) 100 % közelében vannak és több tíz vagy százezer van.
-
zka67
őstag
válasz
dave0825 #871 üzenetére
A 330 ohmos ellenállások 0.4W-osak vagy 0.52W-osak legyenek, amilyet kapsz. A többinél lényegtelen a teljesítmény, én pl. kizárólag SMD ellenállásokat használok ilyen esetekben.
@tvamos: Pl. az ATmega2560 összes portja.
(#873) dave0825: Természetesen jó bármilyen ellenállás, nem csak az SMD
-
zka67
őstag
válasz
dave0825 #863 üzenetére
Hogy miért nem szimmetrikus a kapcsolás? Mert a proci kimenete sem szimmetrikus. A proci kimenetét úgy képzeld el, hogy van egy NPN tranzisztor (a valóságban mosfet), amelyiknek az emittere a gnd-re van kötve, a kollektora a kimenet, és a kollektor és a táp között van egy ellenállás (~20K-50K).
Nos, amikor a kimenet alacsony, azaz nyitva van a tranzisztor, azon elég nagy áram át tud folyni, és ez elég a PNP tranzisztorok kinyitásához. Amikor ez a kimenet magas, az ellenálláson keresztül tud annyi áram folyni, hogy teljesen le tudja zárni a PNP tranzisztort. De az NPN tranzisztorok vezérléséhez már nem elég a belső ellenálláson átfolyó áram. Azaz, ha a kimenet alacsony, akkor az NPN tranzisztort biztonsággal le tudja zárni, ezzel nincs is gond. Viszont ha magas a kimenet, a 20-50K közötti belső ellenálláson keresztül nem folyna annyi áram, ami a tranzisztort ki tudná nyitni. Ezért kell "rásegíteni" egy külső, u.n. felhúzó ellenállással. Az ellenállás értékét úgy kell megválasztani, hogy a proci kimenetét se terhelje túl, amikor az alacsony szinten van, de átfolyjon rajta annyi áram, ami bőven elég a tranzisztor teljes kinyitásához.
Ha komplementer tranzisztoros kimenete lenne a procinak, nem lenne semmi gond, meg tudná hajtani mindkét típusú tranzisztort. De nem ilyen a kimenete, hanem még a "régi időkből" megmaradt felhúzó ellenállásos módszert használják. Ennek is vannak előnyei, mert így egyszerre lehetett ki- és bemenetként is használni egy lábat. Hogy hogyan? Amikor a kimenetre 0-t írsz, akkor a láb kimenetként viselkedik, és lehúzza a vonalat nullára. Ha 1-et írsz a kimenetre, akkor a felhúzó ellenálláson keresztül jut magas szint a kimenetre. De kívülről is működik ugyanez a mutatvány: le tudod húzni nullára a kimenetet, vagy hagyod magasban. És kiolvasva a portot megkapod az így már bemenetként viselkedő láb állapotát.
Próbáltam mindenki számára érthetően leírni, remélem sikerült, és megértetted.
-
zka67
őstag
válasz
dave0825 #856 üzenetére
Jó is, hogy szóba került az 1K-s ellenállás, mert lemaradtak a rajzodról az 1K-s és a 4K7-es ellenállások.
A BC337-ek bázisa és az arduino kimenetei közé kell egy 1K-s ellenállás, és valószínűleg fog kelleni ezeknek az arduino kimenetek és a táp közé is egy 2K2, mert nem vagyok benne biztos, hogy az arduinoban levő felhúzó ellenállás elég lesz a tranzisztos kinyitásához.
A BC327-ek bázisa és az arduino kimenetei közé kell egy 4K7-es ellenállás, különben azonnal kinyírod az arduino kimeneteit.
Légyszíves javítsd a rajzodon és töltsd fel ide, hogy megnézhessem.
Továbbá te csak BC337-ek vásárlásáról beszélsz, remélem a BC327-ek helyett nem azt akarsz betenni, mert az egyik NPN, a másik PNP tranzisztor.
-
zka67
őstag
válasz
dave0825 #854 üzenetére
Szia, a BC337 és BC327 kötőjel utáni száma csak a feszültségerősítést jelzi, aminek - mivel itt csak kapcsolóként használjuk - nincs jelentősége, a legolcsóbbat kell megvenni. A rajzokon alulnézetben mutatják a tranzisztorokat, erre figyelj oda. A negyed wattos ellenállások nem ide valók, legalább 0.4W-ost, vagy 0.52W-ost vegyél. Egyébként bármilyen általános tranzisztor megfelel erre a célra, én csak azért használom ezeket a típusokat, mert anno vettem belőlük több ezer darabot fillérekért. A BC337 helyett használhatsz BSS170 vagy hasonló MOSFET-et is, ebben az esetben az 1K ellenállást is elhagyhatod, de a fet jóval drágább a tranzisztornál. Magyarul mindegy mit használsz, csak az a lényeg, hogy ne az arduino kimenete legyen terhelve.
-
dave0825
őstag
válasz
dave0825 #849 üzenetére
Találtam Arduino oldalán egy leírást fényerő vezérlésére PWM láb használata nélkül, és tök jól működik.
Annyi érdekessége van a dolognak, hogy ha 1000-et írok a HIGH után (így a LOW után 0 kerül), akkor nem a max. fényerő van, de 999-nél igen. Ugyanez fordítva is igaz, ha 0-t írok a HIGH után (a LOW után így 1000 lesz), akkor sem a min. fényerősségen van a led, de 1-nél igen. Potival szépen állítható.
És azt hiszem, hogy az itt található kód-ban a showPattern-en belül ha a digitalWrite(row[thisrow], HIGH); után írom a delayMicroseconds(poti);, a digitalWrite(col[thiscol], LOW); után pedig a delayMicroseconds(1000 - poti); sorokat, akkor egész jól változtatja a fényerőt (bár lehet, hogy a próba ledek tehetnek róla, hogy elég kis különbség van a min. és max. között), ahogy a potit állítom, viszont itt is 0-nál, és 1000-nél nem a min. és max. van, hanem nekiállnak villogni a ledek (a map-be 1-et és 999-et írtam min.-max.-nak, így jó).
Mi lehet az oka, hogy 0-nál és 1000-nél nem a min. és max. fényerő van? Az pedig, hogy ilyen kis intervallumon változik a fényerő, normális dolog? A led-ek tehetnek róla, és előfordulhat, hogy a feljebb linkelt megrendelt kék led-jeimnél nagyobb lesz a változás? -
zka67
őstag
válasz
dave0825 #840 üzenetére
Szia, igen, úgy nézem, jó lesz a rajzod
Igen, minden piros és kék vezetékre kell egy-egy tranzisztor.
A ledeket így már kötheted párhuzamosan.
Egy nagyfényerejű kék lednek szerintem elég 5mA is, de majd meglátod.
A D6,D7,D8 lábakra nem +5V-ot kell kötni, hanem egy 10K ellenálláson keresztül kötöd a +5V-ra.
Csak azért rajzoltam bele, hogy ha netán mégis OC kimenetet állítanál be az arduinonak, akkor is
le legyen zárva rendesen a tranzisztor, ha nincs rá szükség. De szerintem el is hagyhatod, nem
fogod te OC-re állítani a kimenetet. -
zka67
őstag
válasz
dave0825 #838 üzenetére
Ilyet rendeltem... Mondom, hogy ki fogja égetni az agyadat
Az NPN tranzisztorok kollektorára kötöd a kék (led-) vezetékeket, a PNP tranzisztorok kollektorára pedig a piros (led+) vezetékeket. Ezután minden egyes leddel sorba kötsz egy-egy 330 ohmos ellenállást, különben el fognak égni az ellenállásaid a terheléstől (ha egy ellenállást teszel több ledhez).
A D3,D4,D5 megy majd a SELECT ROW-okra, a D6,D7,D8 pedis a SELECT COLUMN-okra, bár a te rajzodon pont fordítva vannak, de nincs jelentősége az elnevezéseknek.
Az OC az open-collector kimenetet jelenti, de felejtsd el amit írtam, nem érdekes, csak összezavar téged.
-
zka67
őstag
válasz
dave0825 #836 üzenetére
Szia, a 40mA az abszolút maximum, a határérték, a javasolt 20mA egy lábon. Továbbá ha a kék ledeket 20mA-ről hajtod, ahhoz már fegyverviselési engedély kell, mert ki fogja égetni az agyadat is a fénye
De komolyra fordítva a szót, igen, meg lehet oldani mindent, még ezt is. Kell hozzá pluszban néhány filléres tranzisztor és ellenállás, remélem ezekben otthon vagy.
A tranzisztorok lehetnek BC337 (NPN) és BC327 (PNP) vagy hasonó típusúak.
A vezérlések invertálódnak, erre figyelj oda. Annyi ROW és COLUMN áramkör kell, ahány sorod és oszlopod lesz, a mátrixot nem rajzoltam fel külön, szerintem az menni fog neked is. A SELECT ROW kimenetek lehetnek OC-k is.Még egy jótanács: LED-eket sose köss párhuzamosan, még ha egy sorozatból valók, akkor se. Mindig használj külön előtét ellenállást minden ledhez. Az okokra most nem térnék ki, fogadd el ezt így.
+5VO O +5V
| |
| -
| | |10K
| | |
E| - 4K7
\| | ---
PNP |--o---| |---< SELECT ROW (0)
C/| ---
|
|
---o---ROW
|
+
LED + 330R
-
|
---o---COLUMN
|
C| 1K0
\| ---
NPN |----| |-----< SELECT COLUMN (1)
E/| ---
|
--- -
tvamos
nagyúr
válasz
dave0825 #832 üzenetére
Én mindezek ellenére mégis egy DS1302 Real Time Clock-ot használnék. Ez (i2c) szerintem hasznosabb tudás. Másrészt az RTC kis árammal elmegy, a saját aksijáról, hónapokig, esetleg évekig. Harmadrészt a kvarc kalibrálással a hosszú idejű hibát nem kompenzálod.
Vagy, megszámlálnám a hálózati 50 Hz periódusait. -
gyapo11
őstag
válasz
dave0825 #823 üzenetére
50 napos túlcsordulást hogy oldottad meg?
A lényeg, hogy 50 nap után megint 0-ról indul a millis és ezt kell figyelni.
Pl. óránként kiírom a reset óta eltelt órák számát. 1193-ig nincs gond, a millis megy föl 4294967296-ig, utána 0-val folytatja.
Alapból vizsgálom a millis értékét, hogy van-e már 3600000-rel nagyobb mint az előző óránál eltárolt érték. Ha ezt elérte eltelt egy óra, léptetem az óraszámot és kiírom, az aktuális millist elteszem az előző éréket tároló változóba.
Aztán egyszer csak észreveszem, hogy az aktuális millis értékből kivonva az előző tároltat negatív számot kapok, illetve hogy az aktuális millis kisebb, mint az eltárolt érték. Na ekkor csordult túl. Mi a teendő? Kivonom a maximálisból az előző tárolt értéket, ennyi idő telt el az előző órától a túlcsordulásig.
Pl. az előző tárolt érték legyen 4285563859.
4294967296-4285563859=9403437
Mivel negatív számot nem írhatok az unsigned longba, ezért egy órás ciklus idejére külön kell kezelni, és nem 3600000-at kell elérni, hanem 9403437-tel kevesebbet, mert az már eltelt az előző órától a túlcsordulásig.
Aztán ha ezt elérte, léptetem az óraszámlálót, beírom az előző értékbe az aktuális millist, és minden megy tovább megint 50 napig. -
zka67
őstag
válasz
dave0825 #823 üzenetére
Én nem arduinot használok, de a lényeg szempontjából ez semmin nem változtat. Megszakítást generálok pl. 1ms-enként, és ezt használom időalapnak.
Ha konkrét megoldás is érdekel, írtam egy fejlesztőkörnyezetet a 8051-es mikrokontrollerekhez, ebben megtalálod példaként ezt az órát is:
Turbo51Studio letöltése
Digital clock példaprogram pascal nyelvenA turbo51 studioval ki is tudod próbálni az órát anélkül, hogy meg kellene építened az áramkört:
Az RTC számolja az órát, percet, napot, stb..., az arduino közben csinálhat mást. Amikor tudni akarod, hogy mennyi az idő, kiolvasod az RTC-ből. Magyarul az arduinotól függetlenül méri az időt. Az akku csak annyit csinál, hogy az RTC akkor is méri az időt, amikor az arduino nem kap tápot.
A checksum-ot, az RTC ramot, és az eepromot egyenlőre hagyd figyelmen kívül
-
zka67
őstag
válasz
dave0825 #821 üzenetére
Szia, bocs, hogy beleszólok, csináltam már jónéhány órát. Nálam a szempont mindig az olcsóság, és az egyszerűség volt. Be lehet "lőni" egész pontosra az arduino-t is, külső RTC nélkül is. A trükk nálam az volt, hogy az internetes időt vettem alapul a "belövéshez". Első lépésben hagytam menni az órát egy teljes napig, majd megnéztem, hogy mennyi az eltérés (természetesen a PC-n minden alkalommal frissítettem előtte az internetes időt). Sietett mondjuk 30 mp-et. Ekkor beállítottam neki, hogy minden 86400/30-adik órajelet hagyja figyelmen kívül (én megszakítást használtam az időzítéshez és a kijelzők multiplexeléséhez, 1kHz-et). A következő lépés az volt, hogy hagytam így menni egy teljes hónapig, majd ugyanezt a számítást elvégeztem, és így kaptam egy olyan órát, ami évi 10mp-nél nem késett/sietett többet, ami szerintem elfogadható. (Ha késik, akkor 2x hívom meg az időszámláló rutint, ha siet, akkor kihagyok egy hívást)
Csináltam órát DS1307-el is, ezt is be lehet "lőni" egész pontosra, két darab 5pF-os kondenzátort kell kötni a kvarc lábai és a föld közé. Ezzel havi 5mp-es pontosságot tudtam elérni, ami szerintem még mindig elfogadható. A DS3231 sem pontosabb, mint a 1307-es, csak abba már beépítettek néhány kondenzátort,
amit a kvarc lábaira tudsz kapcsolni szoftverből, így lehet pontosabbá tenni, de atomóra abból sem lesz.Egyébként az elem azért kell az RTC-nek, hogy ha áramszünet van, akkor is menjen az óra, és a ram-ban tárolt tartalmat is megőrizze. Ez jó dolog, ha csak pár beállítást akarsz tárolni, nem kell külön eeprom.
(Az RTC ram tartalmának ellenőrzésére érdemes egy checkusm-ot is használni, hogy tudd, hogy első
alkalommal indítottad el az órát, és az adatok érvénytelenek, vagy már inicializáltad őket, és érvényesek)Ha atomóra kell, akkor kell hozzá egy wifi modul és le kell kérdezni az internetes időt. Az sem egy bonyolult dolog.
Remélem tudtam segíteni egy kicsit.
-
gyapo11
őstag
válasz
dave0825 #817 üzenetére
Biztos jó lesz a 1307 is az előbb leírt okok miatt.
Nem ismerem, a 3231-gyel nem volt gond, találtam hozzá példát, működik. Alarmot nem teszteltem. Gondolom a 1307 is hasonló, és valószínűleg a pontatlanabb nem azt jelenti, hogy ma siet, holnap meg késik, hanem egy viszonylag stabil értékkel tér el a pontostól, ami könnyen helyrehúzható egy adott értékkel. Esetleg ezt az értéket írathatod az óramodul memóriájába vagy a 24c32-be gombokkal menet közben is változtatható módon, és akkor pár hét alatt csúcspontosra finomíthatod. -
gyapo11
őstag
válasz
dave0825 #818 üzenetére
Az úgy unalmas is lenne, ha egy zsák pénzért megvenné az ember a tökéletes órát.
Szerintem elég olcsón is lehet ügyeskedni. Pl. egy pontosabb kvarc és néhány 50 Ft-os osztóic már elég jó időalapot adhat, egy trimmerkondival elég pontosra lehet állítani. De ha termosztátba kerül, amit az arduino kiválóan tud vezérelni, akkor meg überszuper pontos lehet hidegben-melegben egyaránt.
Én is úgy tudom, hogy a 3231 pontosabb mint a 1307, utóbbi nekem nincs is. De mivel egyik sem elég pontos egy órához, mindenképpen korrigálni kell valamilyen időközönként. Akkor meg már mindegy, max az egyiket sűrűbben kell állítgatni. Ha viszonylag állandó a hőmérséklet, akkor esélyed van az állandó eltérésre, amit jól lehet kompenzálni. Nekem óramodul nélkül pusztán a millissel sikerült napi 1-2 tizedmásodpercet elérni a szobában. Csak ugye így egy áramszünet után nincs idő, míg óramodullal van, szóval nem érdemes kihagyni. -
gyapo11
őstag
válasz
dave0825 #815 üzenetére
Nem tudom a millist lehet-e nullázni, szerintem nem. Az mindenképpen túl fog csordulni 50 nap után, ha addig nincs reset. Lekezelni viszont lehet és kell is egy hosszan működő alkalmazásban.
A sw-ből korrigálás működik, de mint írtam sok tényezőtől függ a pontosság, nem megbízható. Akkor már inkább az óramodul, és annak az eltérését korrigálni, az talán stabilabban hozza a pontatlanságot. -
gyapo11
őstag
válasz
dave0825 #811 üzenetére
Az óramodultól még bármit programozhatsz ugyanúgy mintha nem is lenne. Írhatsz bele időt, kiolvashatod az időt, alarmot írhatsz bele, meg a ramba is írhatsz és olvashatod is. Elvileg amíg bírja az elem addig mindig rendelkezésre áll az összes beleírt adat és a dátum-idő.
-
gyapo11
őstag
válasz
dave0825 #811 üzenetére
Azt csináltam, hogy beépítettem a programba egy korrekciót, és naponta egyszer módosítottam az időt. Így egész pontos lett. Aztán kivittem a hidegbe egy fél napra és több másodpercet elment.
Nekem egy DS3231 óramodulom van, nem nagyon pontos, legalábbis sokkal pontatlanabb, mint a 2 ppm amit tudnia kellene. Ezért mindenképpen be kell építeni egy pontosítási lehetőséget, és nem elég a tapasztalati korrekció, mert hőfok, öregedés, külső zavarforrások miatt úgyis el fog mászni. Márpedig egy óra legyen pontos.
Szóval vagy gps modulból kell venni az időt, vagy a Kossuth rádió 5 sípszóra délben ráhúzni (ha van még ilyen), vagy pc-vel szinkronizálni atomórához, vagy az embert beépíteni a funkcióba, és egy nyomógombbal behúzni egész órára. Ez utóbbit választottam, egyszerű, mindig olyan pontos lesz, amennyire hajlandó vagyok egész órakor megnyomni a gombot. Ha van pc-s kapcsolat, akkor óránként lehet szinkronizálni, és akkor 1 másodpercen, de lehet hogy tizedmásodpercen belül lesz az eltérés folyamatosan. -
gyapo11
őstag
válasz
dave0825 #727 üzenetére
int gomb = 2;
Ez egy integer típusú változót hoz létre, és értéket ad neki, nincs köze a portokhoz.
Ha egy másik sorban van egy
pinMode(gomb,INPUT);
akkor már tudja, hogy a 2-es pint input módba kell állítani.
Az analóg input pinek fixek, tehát nem kell előre beállítani, mehet az analogRead(A0-A5) utasítás.
A pwm kimenet meg sima OUTPUT, és az adott utasításból tudja, hogy nem sima szintet kell kitenni, hanem pwm értéket analogWrite(pin,0-255). -
gyapo11
őstag
válasz
dave0825 #677 üzenetére
Akkor amit én néztem, az mit jelenthet?
Ezen is csak 14 digitális pint látok és 8 analógot.
amúgy ilyen a 6 lábas, akkor ezt inkább ne
A feliratok szerint nincs rajta DTR, szóval inkább ne.
kettőt összedugom, már tudom programozni?
Tudod. Rákötöd a pro minire a gnd-t, a 3.3 vagy 5 V-ot, rx-et a tx-re, tx-et az rx-re, tehát 4 drót kell.
Az IDE-ben rányomsz a feltöltésre, először fordít, majd amikor kiírja, hog hány byte a program meg a ram felhasználás, akkor van úgy 4-5 másodperced, hogy megnyomd a pro minin a resetet, amint elengeded elkezdi feltölteni a programot. -
gyapo11
őstag
válasz
dave0825 #670 üzenetére
Olyat, amelyiken van DTR, ezzel reseteli az arduinot, és így tudja átküldeni a programot. Ha ez nincs, akkor kézzel kell nyomni egy resetet. Ez 5 láb (vcc, gnd, rx, tx, dtr), a hatodik nem tudom mi, de nem kell. Nekem 4 lábas van, még az arduino előtt vettem, és működik a kézi resettel.
-
gyapo11
őstag
válasz
dave0825 #653 üzenetére
Natív usb az lehet, hogy nem kell usb-serial chip a boardra, mert maga az atmega kommunikál az usb buszon. Ha a chip soros porton kommunikál, akkor az usb-vel nem tud mit kezdeni, ezért kell egy ftdi vagy a klónokon ch340 chip, ami a pc usb-je és az atmega serialja közötti interface.
A bootloader nem kell a programhoz, az csak azért van rajta, hogy könnyebb legyen programozni, nem kell hozzá más, mint a pc-re csatlakoztatni usb-vel. Az usb-n kapott programot a bootloader írja be a flashbe, majd futtatja. Ha nincs bootloader, akkor is lehet az avr-t programozni, de akkor programozó eszköz kell hozzá. Ilyen programozó eszköz lehet egy arduino is link, ennél jóval drágábbak általában a programozók.
Csupasz chipnek nem sok értelmét látom, mert egy pro mini 600 Ft körül van az ebayen, és ezen már ott vannak a körítés alkatrészek, benne van a bootloader, csak egy 300 ft-os usb-serial átalakító kell hozzá (mert az nincs rajta). Vagy 800 a nano, és akkor már egyből mehet az usb-re. -
MineFox54
őstag
válasz
dave0825 #649 üzenetére
Én egy ilyet vettem pontosan: [link] igaz, ehhez jár a touch, de pont olyan mint a sainsmart, és akkor már csak 1k-ért van egy microsd kártya olvasód/íród (nem tudom hogy kellene szebben/jobban leírni
), egy touchscreened és egy tft-d (ez utóbbi kicsit a szerencsétől függ). Ja, és gyorsabban kiszállítják mint az ebayest. Nekem ~1,5 hét volt.
-
qisqaqas
senior tag
-
gyapo11
őstag
válasz
dave0825 #614 üzenetére
Nem olyan bonyolult az. Az arduino kimenete megy a D-tároló bemenetére, ahány kimenetet akarsz pufferelni, annyi D-tároló kell. Majd ha már mindet kiírta a program, akkor egy újabb kimenettel aktiválod az áttöltést, ebben a pillanatban az összes kimenet beáll arra, ami az arduino kimenetein van.
Közben eszembe jutott egy másik megoldás is, a soros shift regiszter. Abba meg belépteted egyenként a biteket, itt egy példa: http://fritzing.org/projects/10-leds-and-2-shift-register -
gyapo11
őstag
válasz
dave0825 #612 üzenetére
Egyszerre nem lehet, az utasításokat egymás után hajtja végre. Olyat el tudok képzelni, hogy a kimenetek nem közvetlenül mennek a perifériákra, hanem D-tárolók vannak közben, és miután már az arduino összes kimenete be van állítva, egyszerre be lehet kapcsolni az áttöltést, így valóban egyszerre jelennek meg a tárolók kimenetein az adatok.
Új hozzászólás Aktív témák
Hirdetés
- Építő/felújító topik
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- gban: Ingyen kellene, de tegnapra
- Tőzsde és gazdaság
- Napelem
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Gyúrósok ide!
- Parkside szerszám kibeszélő
- SSD kibeszélő
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- További aktív témák...
- Core i7 9700 processzor - 6 hó garival
- Dell 24" 1920x1080 full HD - webkamerás konferencia monitor hangszóróval! - gyári garancia 2028ig
- Dell Latitude 5590, 15,6" FULL HD IPS, I5-8350U CPU, 16GB DDR4, 256GB NVMe SSD, WIN 11 ÚJ AKKU
- Dell 27" UltraSharp U2713HM QHD 2560x1440 IPS DP/DVI/HDMI/VGA monitor - PIVOT is - több db
- ThinkPad T14 Gen1 14" FHD IPS Ryzen 5 PRO 4650U 16GB 256GB NVMe ujjlolv IR kam gar
- 35" ASUS ROG Swift PG35VQ curved GAMER monitor
- Azonnali A320 B350 X370 B450 X470 A520 B550 X570 chipset alaplap felvásárlás személyes/csomagküldés
- Samsung Flip 2.0 PRO 65" WM65R + Connectivity tray + Gurulós állvány
- AKCIÓ! Lenovo Legion Slim 5 Gamer notebook - R7 7435HS 16GB RAM 1TB SSD RTX 4070 8GB GDDR6 WIN11
- Honor Magic7 Lite 512GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Liszt Ferenc Zeneművészeti Egyetem
Város: Budapest