2019. március 20., szerda

Gyorskeresés

Arduino Projektem, Egy Új Hobbi Kezdete

Írta: | Kulcsszavak: Arduino ws2812 led szalag

[ ÚJ BEJEGYZÉS ]

Sziasztok!
Bemutatnám pár sorban az új hobbimat és hogy meddig jutottam vele egy-két év alatt.
Igény esetén később akár egy cikk sorozat keretében is végigmehetek az itt látott dolgokon.
Anno fogalmam sem volt a mikrovezérlőkről, vagyis hát nem több mint egy átlagembernek: vmilyen processzor vagy system-on-the-chip ami az agya mindenféle kütyünek ami körbevesz minket.
Nem is foglalkoztam a témával amíg motorozni nem kezdtem és ki nem találtam, hogy led szalagokat akarok szerelni a gépsárkányra.
NFS Underground-on nevelkedtem és akkoriban került a mozikba a Halálosabb Iramban, így hát nagyon menő téma volt akkoriban. Ami ha túl nagy hatással nem is volt rám de a ledes világítás nekem még mindig menő, értem? :)
[irónia] Mondjuk a mai RGB divathullám idején azt mondanám fasza kis gamer motor lesz belőle. [/irónia]

Ez még egy analóg egyszínű szalag volt, egy egyszerű RF távirányítású PWM vezérlővel. Ebay-es tételek, nem egy hatalmas összeg.
A villamos dolgok és az elektronika számomra varázslat volt akkoriban, így nagyon büszke voltam, hogy saját magamnak szereltem össze az egészet, szerintem kellő szakmaisággal már első nekifutásra is.
(Meglepő, de nem olyan könnyű oktatóanyagot találni a forrasztáshoz, mint szakmához. Megismerkedtem a vezetékek szakszerű összekötésével, a zsugorcsövekkel, megvettem az első forrasztópákámat - meg még egy rakás szerszámot -, bekötöttem az első relémet, stb. És még a motort se gyújtottam ki, szóval megy ez.
Mindezt igyekeztem esztétikusan elrejteni az ülés alatt.)
Igény szerint kitérhetek a vezetékezés mikéntjére is egy későbbi írás alkalmával, ha ez ismeretlen terület volna vkinek. Bár talán a legkönnyebben elsajátítható praktikák egyike a projektemben, lefogadom a férfiak többsége már látott életében elektromos vezetékeket és van elképzelése a bekötésről is.

A második motoromnál már elgondolkoztam, hogy léteznek ugye RGB szalagok is.
Gyorsan fel is mentem a netre mik a lehetőségek és arra jutottam egész korrekt árakon lehet is rendelni mindenfélét Ebay-ről.
Aztán valahogy képbe kerültek a címezhető digitális szalagok, amiket pixelenként lehet programozni.
Ez egy komplexebb téma, nem is kapható belőle semmilyen olcsó készre szerelt csomag. Csak a DIY ("csináld magad") jöhet szóba.
Ekkor derengett fel vmi Arduino nevű bizbasz, amit az elektronika boltban láttam ahol az alkatrészeket vettem az első motorhoz.
Nem sokkal ezután meg is rendeltem az eredeti Arduino Kezdő Csomagot, amiben van egy szupi kis könyv ami bevezet az elektronika világába óvodás szinten (pont amire szükségem volt).
Innentől nem volt megállás. Hamarosan megrendeltem Kínából a ws2812b szalagokat is, addig meg egy 8 pixeles rgb led stick-kel tanulgattam amit a csomag mellé vettem.
Itt volt egy jelentősebb ugrás az időben - mivel épp nem volt mire felszerelni a szalagot -, de legalább nyugodtan tanulgathattam a programozást és az Atmel328p lelkivilágát (ez a processzor az Arduino Uno-n).

Volt egy-két hozadéka is az elsajátított tudásnak:
1.
Elkészítettem egy automata lépcsővilágítást ennek a mintájára, ami elég fejlett lett azt kell mondjam. Nem lett megépítve végül (rendelésre készítettem, de lemondták) így nem tudom bemutatni videón és azóta már szét is lett szerelve a próba verzió is. Amit tudni érdemes, hogy egy Arduino Nano adja az a alapját, egy 16x2 karakteres LCD-n menü készült hozzá, amit egy infrás távirányítóval lehet vezérelni, két végén egy-egy PIR szenzor és fényérzékelő lenne elhelyezve. A beállított idő alapján és a fényérzékelők alapján automatikusan készenléti üzemmódra vált - nappali fényviszonyok mellett inaktív - és napszaknak megfelelő színhőmérsékletű és intenzitású fénnyel kíséri lépteinket (pl hajnali háromkor a vaksötét házban csökkentett fényerővel és meleg színekkel kapcsol fel, amíg félálomban lemászunk a WC-ig vagy a hűtőig - kinek mi).
A kész program a Nano RAM-jának és ROM-jának majdnem egészét felhasználja, szóval ki van centizve a vas.
EasyEDA-ban tervezés alatt áll hozzá egy alaplap és a 3D nyomtató is várat magára a szekrény tetején. Ennyi választ el, hogy akár eladható termék legyen belőle.
Esetleg egy wifi képes mikrovezérlővel tovább lehet gondolni a napszaknak megfelelő világítást és figyelemmel kísérni a naplemente és -kelte pontos idejét is. Jelenleg erre csak a fényérzékelőkből és a beállított időből lehet következtetni. Bár szerintem ez felesleges extra költség.

2.
Szüleimnél készítettem egy pultvilágítást szintén ws2812b-ből, hasonló kiépítés mint a lépcső világítás, csak ide ugye nem kellenek szenzorok. A kapcsoló egy érintőszenzor lett.
A fényerővel változik a színhőmérséklet is és persze nem hagyhattam ki a színkereket sem.
Azóta kapott egy alu profilt is fedő léccel, szóval szakszerűen fel lett szerelve. A mikrovezérlő és a (PC) tápegység a szekrényben lett elrejtve, a vezetékek kábelcsatornában futnak.
Szép kis délutáni elfoglaltság volt.
Itt voltak gondok a pixelek meghibásodásával (a videóban is látható egy), de szerintem kifogtam egy silány minőségű szalagot.
Ha legközelebb rendelek, akkor a dupla adatbuszos változatot veszem, akkor legalább a vezérlőhibás pixel mögött lévők még tudnak működni.

Eztán eltelt egy kis idő és végül meglett a második motorom,
amire már a közel kész szoftver várt. A szalagok és minden szükséges szerszám és alkatrész a rendelkezésemre állt.
Nem kevés barkácsolás, forrasztás, szigetelés után ez lett az eredménye.
Ez konkrétan a legelső szoftver verzió az elkészültét követően, itt még felfedezhető egy hiba az animáció átmenetekben. Hamar kiküszöböltem.

Itt nem álltam meg, kezdtem belejönni az elektronikai részébe is és gondoltam egy nagyot: saját NYÁK tervezés. A motor féklámpája elég gyenge fényt adott, így ide akartam készíteni vmi erősebbet (vmi brutálisat). Piros 5730 smd ledekből terveztem egy panelt, amit meg is rendeltem az EasyEDA-ról, beültettem és hozzákapcsoltam a motorban lévő mikrovezérlőhöz.
Aminek ugyan Arduino az alapja, de már nem az eredeti Atmel vonalon, hanem az Arduino kompatibilis ESP vonalon mentem tovább: ESP32, ami már hardveresen kezeli ezeket a led szalagokat, így nem igényel különleges tervezést a szalag frissítése és a párhuzamosan futó feladatok ütközésmentes megvalósítása.
Mert párhuzamos feladatokból akad egy pár.
Többek közt a féklámpa amit készítettem külső PWM jellel is működtethető, így az egyik fő funkcionalitása a belső vezérlésről átváltva, hogy smart funkciókat adjak hozzá: fékezéskor villogtatás a figyelemfelkeltés miatt, változtatható fényerő az átlagostól egészen a legbrutálisabb biciklilámpák fényerejéig (ha láttál már 1W-os villogót biciklin, tudod miről beszélek; a becsült max fényerő úgy 2000 lumen), motorfékre kapcsoló féklámpa (amire a piacon lévő féklámpavezérlők gyorsulásérzékelőt használnak -
mint amilyen a GearBrake -, én inkább a motor sebesség jeladójára fogok rácsatlakozni. Egyszerűbb megvalósítás, kisebb számítási kapacitás kell hozzá, nem kell szűrni a jelet és így jóval pontosabb eredményt ad.
Ez egészen friss projekt, nyáron kezdtem el papírra vetni a panelt és néhány hete került beépítésre a prototípus (sajnos akad egy-két tervezési hiba, amit a rev.2 NYÁK terven javítottam - de ez még tervezés alatt áll).
A mikrovezérlőhöz vadásztam egy BLE kompatibilis Android alkalmazást és készítettem egy Bluetooth távirányítót, szóval most mást a led szalagokat és a féklámpát is e módon vezérlem.
Utóbbi a "teszt padon" teljesen működőképesnek bizonyult, amin őszintén szólva magam is meglepődtem (ha azt nézem, hogy a cikk elején felvázolt időben még az óvodás szintű bevezető könyvecskét tanulgattam, akkor azért csak sikerült felszedni ezt-azt a koszon kívül :D )

Ezen kívül tervben van még, hogy a mikrovezérlővel rácsatlakozok a már említett sebesség jeladóra, aztán a fordulatszám jeladóra, vízhőmérséklet szenzorra, beépítek egy fényérzékelőt, mérem a külső hőmérsékletet és az akku feszültséget. Ezek adják majd a smart funkciók alapját:
az említett féklámpa felkapcsolást motorfékre, a hűtőventilátor egyéni hőmérsékletre kapcsolását - esetleg adott sebesség alatti automatikus bekapcsolás. Aztán az alapból állandóan felkapcsolt fényszórót relére kötve bizonyos feltételek mellett a mikrovezérlő fogja lekapcsolni (nappali fényviszonyok mellett - persze telefonról vezérelhető lesz - automatikusan lekapcsol és nappali menetjelzők veszik át a helyét. Álló motornál meg nem fogja meríteni az akkut.
Készítek még ws2812b ledekből irányjelzőket is, amit természetesen a mikrovezérlő fog meghajtani. Ezek az alap borostyán szín mellett elől fehéret (menetjelzőként), hátul pirosat fognak tudni megjeleníteni (kiegészítve a féklámpát, ha szeretném). Persze a lehetőség adott a villogási frekvencia változtatására is. Mondjuk autópálya tempónál mehetne 120 hz-en, városi tempónál meg elég a 60 hz is. Illetve a sebességgel arányosan változtatható. És ha vicces kedvemben volnék, akkor be lehet élesíteni a rendőr villogókat is ha már RGB. :D
Aztán a szekvenciális irányjelző mondhatni alap. Vhogy úgy kell elképzelni majd, mint ez itt.
Még nem döntöttem el, hogy itt mennyi munkát szeretnék belefektetni. Ha nagyon igényesen akarom megcsinálni, akkor előre formatervezett panelre - ami illeszkedik a fejidomhoz - egyesével ültetem rá a led chip-eket és nyomtatok hozzá burkolatot és lámpaburát. Hátulra meg egy az egyben saját tervezésű irányjelzőket szeretnék készíteni 8 pixeles led stick-ekből és hozzá nyomtatott burkolattal.

A 3D nyomtatás - mint újabb hobbi - meg külön témakör lehet majd a jövőben.

Addig is kellemes ünnepeket mindenkinek!

A szövegben beágyazott linkek némelyike a Facebook oldalamon lévő videókra mutat. Ezek megtekintéséhez FB fiók szükséges. A képek, videók minősége néhol botrányosan gyenge, tudom jól. Nem szándékoztam publikálni.

Hozzászólások

(#1) icemad


icemad
(PH! addikt)

Gratulálok a munkáidhoz. Mindegyik remek ötlet, engem a lépcső világítás érdekelne. Meg később az utolsó bekezdésben leirt lámpák a motorra, csak én kocsira szerelném. A lépcső világításhoz van valami rajzod?

Az élet egy nagyon szar videojáték, de baromi jó a grafikája...

(#2) Teasüti válasza icemad (#1) üzenetére


Teasüti
(PH! kedvence)

Milyen jellegű rajz érdekelne?

(#3) icemad válasza Teasüti (#2) üzenetére


icemad
(PH! addikt)

Csak egy egyszerű egyvonalas rajz. Mit, hova, milyen sorrendben kell bekötni, esetleg pár tipp, hogy mire kell nagyon figyelni. Köszönöm.

Az élet egy nagyon szar videojáték, de baromi jó a grafikája...

(#4) Teasüti válasza icemad (#1) üzenetére


Teasüti
(PH! kedvence)

Az autós világításhoz meg annyit fűznék hozzá, hogy ha megteszi az egyszerű analóg 12V RGB, akkor készre szerelt terméket vennék. Vannak már olyanok, amihez színvonalas telefonos alkalmazás is van, ha a távirányító nem volna elég. Anyagilag és időráfordításban ez a legkedvezőbb ajánlat.
Digitális szalagot az vegyen, aki már közeli ismeretséget kötött az Arduinoval vagy a mikrovezérlőkkel és szeret programozni, barkácsolni.
Árban egyáltalán nem költséghatékony és elég sok felszerelés is kell hozzá, ha mindent magad akarsz szerelni. Én saccra se tudnám összeszámolni mennyiben lenne a videóban látható munka, ha a nulláról kéne megvennem hozzá mindent. A munkaórák száma meg hetekben mérhető, ha a szoftvert is hozzáveszem. :)

(#5) Teasüti válasza icemad (#3) üzenetére


Teasüti
(PH! kedvence)

Erről akkor készítek majd egy külön cikket. :K

[ Szerkesztve ]

(#6) icemad válasza Teasüti (#5) üzenetére


icemad
(PH! addikt)

Köszönöm.
Igazából van hozzá itthon majdnem minden, arduino, led szalag, táp, aluprofil, vezetékek, forrasztó állomás. Az érzékelők hiányoznak. Kisebb dolgokat már csináltam, de arduino nélkül, mivel nincs időm programozást tanulni.

Az autó világításhoz tudsz esetleg linket?

Az élet egy nagyon szar videojáték, de baromi jó a grafikája...

(#7) Tubi2


Tubi2
(senior tag)

Nem tudom megnyitni a FB-os vidiket :(

- Tubi // 06-30-kettőhatnulla-3922 // Debrecen

(#8) Teasüti válasza Tubi2 (#7) üzenetére


Teasüti
(PH! kedvence)

Be vagy jelentkezve?

(#9) Teasüti válasza icemad (#3) üzenetére


Teasüti
(PH! kedvence)

Itt van róla a kapcsolási rajz, ha az segít.
A szalag másik végén ahova a P2 csatlakozó megy, ott egy fotodióda van és még egy PIR szenzor, 4 eres vezetéket húznék ki oda tápnak és a két jelnek. Vagy egy erősebb kábelt betápolni a szalag másik végét is és akkor onnan levenni a tápot a szenzoroknak. A jelet át lehet küldeni akár RF modulokkal is és esetleg használni egy telefontöltőt, de ahhoz kéne egy MCU akkor oda is.
Szalagnak én 5V-os ws2812b-t használtam, de némi szoftvermódosítással ésszerűbb volna a SK6812 WWA szalag, ahol harmad akkora fogyasztásból megvan a fehér szín (nem színes).
Esetleg ha van 12V verzió, akkor azzal készíteném a végleges változatot, nincsenek akkora áramok, nem kell olyan sűrűn betáplálni - egy 5 méteres szalag talán nem is brownout-ol egyáltalán.
A táp egy sarkalatos pontja a rendszernek, én 5V-os laptoptöltő jellegűt választottam, de sajnos ebből csak Aliexpress-es verziót találtam, ami nem egy életbiztosítás. Ha van hova beépíteni, akkor PC tápot használnék, vagy kifejezetten ledes világításra szánt tápot.

[ Szerkesztve ]

További hozzászólások megtekintése...
Copyright © 2000-2019 PROHARDVER Informatikai Kft.