Elektroda.pl
Elektroda.pl
X
Elektroda.pl
HELUPOWER
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sterownik RGB podświetlenia schodów

Jacek Rutkowski 09 Gru 2018 03:33 6339 56
  • Sterownik RGB podświetlenia schodów
    Witam,
    przedstawiam swój sterownik RGB 20 kanałowy.
    Układ powstał w celu niezależnego sterowania 20 odcinków 12V taśmy RGB. Sterowanie odbywa się przy stałym napięciu 12V poprzez sterowanie PWM. Z racji że zastosowany procesor ATMega128 nie posiada nawet takiej ilości wyjść (60) zastosowałem 5 szt układów TLC5971. Zamówiłem kilka lat wcześniej jako sample z TI gdy jeszcze nie było problemu z handlem samplami i wysyłano je do PL dla osób prywatnych bez żadnych problemów.

    Płytka bazowa
    Płytka na której umieszczone zostały moduły procesora, 5 modułów wykonawczych oraz pozostałe niezbędne elementy: klucz do załączania zasilacz mocy, zasilacz pomocniczy 12V. Płytka ta została wyfrezowana na laminacie jednostronnym przy użyciu własnej maszyny CNC.
    Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów
    Płytka procesora
    płytka dwustronna z metalizacją zamówiona wraz z płytkami wykonawczymi oraz kilkoma innymi u taniego chińczyka. 52zł za 10 szt płytek 97x99 mm gdzie wkomponowałem jeszcze kilka innych modułów.
    Sterownik RGB podświetlenia schodów
    Na płytce tej umieszczony jest procesor ATMega128, konwerter na RS485 SN75156 oraz zasilacz 5V LM2674. W obecnej wersji magistrala wykorzystywana była jedynie do testowania programu podczas tworzenia go. Docelowo przewidziana jest możliwość integracji z systemem inteligentnego domu poprzez tą magistralę.
    Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów
    Na płytkę wdały mi się 2 błędy przez co musiałem przeciąć jednego pada oraz dosztukować kawałek ścieżki:)
    Płytka wykonawcza
    Na tej płytce umieszczony jest układ TLC5971,dwa negatory 74HCT04 oraz 12 szt niskonapięciowych mosfetów IRLML2803. TLC5971 jest 12 kanałowym 16 bitowym sterownikiem PWM LED sterowanym po magistrali SPI. Wyjścia na diody są typu otwarty kolektor ze źródłem prądowym co uniemożliwia bezpośrednie sterowanie taśmą LED. Nie możliwe było by uzyskanie pełnego napięcia zasilającego. Z tego powodu zastosowałem negatory HCT04 aby przyśpieszyć sterowanie bramkami mosfetów kluczujących zasilanie pasków LED. Płytka ta jest gęsto upakowana z zastosowaniem rezystorów w obudowach 0603 oraz ścieżek 0,2mm szerokości co zmusiło mnie do zlecenia ich wykonania płytkarni. Niestety ceny prototypu PCB w PL są duże dlatego zdecydowałem się na zamówienie w chinach.
    Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów
    Działanie sterownika
    Program sterujący został napisany w Bascomie i zajmuje obecnie 4% pamięci procesora dzięki czemu możliwa jest implementacja wielu schematów działania i warunków w przypadku integracji z systemem inteligentnego domu.
    W obecnej chwili sterownik pracuje samodzielnie wykorzystując dwie czujki PIR zamontowane jedna przed schodami na paterze, druga na pietrze przed schodami. Zamontowane są w taki sposób że większa część schodów jest przez nie pokryta. Podejście pod schody na ok 1 m lub poruszenie się na pierwszych 6 stopniach wyzwala PIR1 natomiast 7 ostatnich oraz obszar ok 2m od schodów na piętrze wyzwala PIR2. Początkowo chciałem zastosować czujnik HC-SR501 jednak nie mogłem uzyskać odpowiedniego obszaru działania przy możliwej lokacji czujnika. W zamian zastosowałem posiadane czujki PIR Bosch z dyskryminacją zwierząt, które to dało się ustawić aby nie reagowały na przechodzenie obok schodów na piętrze.
    Początkowe założenie że schody zaświecać się będą dopiero po wykryciu ruchu nie sprawdziło się. W zamian zastosowałem czujnik oświetlenia na fotorezystorze i po zmierzchu gdy jest wyłączone światło w salonie stopnie cały czas delikatnie są podświetlone PWM=500/65535 czyli ok 0,7% max jasności. Po wykryciu ruchu stopnie po kolei rozjaśniają się do PWM 15000/65535 czyli ok 23% jasności max. Większa jasność nie jest potrzebna. Zastosowane paski led 30szt/m okazały się zbyt jasne i przy pełnej mocy 100% PWM i zasilaniu 12V strasznie raziły w oczy światłem odbitym od białych podstopnic. Z tego powodu ograniczyłem maksymalną jasność.
    Dla zredukowania poboru mocy przez sterownik w trybie czuwania zastosowałem dodatkowego triaka do załączania zasilacza mocy, gdy czujniki PIR nie są wyzwolone całość zasilana jest przez 2VA transformatorek. Dopiero wykrycie ruchu powoduje załączenie dodatkowego zasilacza impulsowego 12V 20W chociaż moc wszystkich zainstalowanych ok 21 m pasków LED wynosi ok 60W jednak świecą one z max 1/4 mocy przez co zasilacz wystarcza.
    Po przejściu schodami następuje powolne wygaszanie stopni od pierwszego zapalonego po kolei. W przypadku wejścia kolejnej osoby podczas wygaszania stopni następuje natychmiastowe rozświetlenie wszystkich stopni bez efektu węża.
    W trakcie projektowania sterownika zakładałem możliwość stosowania efektów RGB przy podświetleniu jednak po zmontowaniu całości i przetestowaniu rodzinie nie przypadły do gustu mieniące się kolorami schody. Pozostaliśmy przy najprostszym podświetleniu światłem biały, choć z powodu budowy tych pasków widać czerwoną poświatę na krawędzi z powodu umieszczenia diody czerwonej w strukturze przy jednym boku a zielonej i niebieskiej z drugiej strony. na szczęście podczas testów to zauważyłem i wszystkie paski LED ułożone są w tym samym kierunku w podfrezowaniu trepów.
    Okablowanie oraz zamocowanie sterownika
    Z powodu oddzielnego sterowania każdym stopniem konieczne było podłączenie przewodów do każdej taśmy oddzielnie. Zastosowałem w tym celu taśmę wstążkową po 5 żył na każdy pasem, dwie na + zasilania i po jednej na kolor. Taśmy te ułożone są wzdłuż zabiegowych schodów na płasko w wyżłobieniach pod stopniami i podstopnicami. Nie ma do nich dostępu po przyklejeniu trepów klejem do parkietu do betonu oraz płytek na podstopnice klejem do glazury. Dlatego całość okablowania została ułożona i przetestowana przez montażem trepów. Sterownik umieszczony jest we wnęce pod schodami zabudowanej płytą k/g za niewielkimi drzwiczkami PCV rewizyjnymi, gdzie doprowadzone jest zasilanie 230V , przewody od czujników PIR oraz skrętka LAN do RS485.
    Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów Sterownik RGB podświetlenia schodów
    Filmik pokazuje pojedyncze wykrycie jednej osoby z wchodzącej z dołu. Niestety film kręcony telefonem i występuje migotanie którego okiem nie widać oraz zmiany jasności tła.

    Link

    Tutaj gdy minie czas ponowne zadziałanie PIR-a na parterze:

    Link
    Załączniki:

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    Jacek Rutkowski napisał 863 postów o ocenie 155, pomógł 50 razy. Mieszka w mieście Kotuń. Jest z nami od 2003 roku.
  • HELUPOWER
  • #2
    Thorgus
    Poziom 12  
    Nie prościej kupić arduino due i zaprogramować na gotowym module?
  • #3
    Jacek Rutkowski
    Poziom 25  
    Czy posiada on wyjścia 60 szt 12V co najmniej 500mA wydajności prądowej oraz interfejs RS485? Żeby sterować taśmą RGB 20 odcinków na 12V po metrze długości takie wyjścia są potrzebne...
    Ponad to zapłacić 170zł za płytkę, gdzie cena elementów z mojego sterownika:
    TLC5971 5 szt x 10,50zł
    ATMega128 21,40zł
    SN75176 5,30zł
    ceny w/g mouser electronics a ja za TLC nie płaciłem, ATMegi kupiłem 10szt za 36zł z dostawą...
  • #4
    elektronik999
    Poziom 26  
    Thorgus napisał:
    kupić arduino due


    Według mnie jedyne co to można było by się zainspirować na przyszłość montażem na kanapkę, mniej miejsca by zajmowała płytka i była by możliwość rozbudowy o kolejne moduły wykonawcze. Konstrukcja bardzo ładna!
  • #5
    LA72
    Poziom 40  
    Fajny i przemyślany projekt.
    Mam pytanie odnośnie działania.
    Czasy wygaszania podświetlenia stopni jakoś dobierałeś doświadczalnie czy w inny sposób?
    Chodzi o to, że ludzie chodzą z różną prędkością.
  • HELUPOWER
  • #7
    kj1
    Specjalista elektryk
    Bardzo ładnie i starannie wykonany projekt

    piterek-23 napisał:
    Chętnie zobaczyłbym film z działania tego oświetlenia


    Przyłączam się do prośby
  • #8
    tmf
    Moderator Mikrokontrolery Projektowanie
    Projekt wyszedł fajnie, ale IMHO strasznie przekombinowany. Ta płytka z modułami to nawet interesująca koncepcja, tylko nie dało się jej zrobić mniejszej? Na pierwszy rzut oka, problemem jest ten wystający kondensator, ale można be było poobracać o 180 stopni, wtedy na podobnej powierzchni zmieściłyby się dwa moduły, możnaby też zastosować kondensator leżący lub w innej obudowie.
    Kolejna sprawa - przy pomocy prostej logiki możesz istniejące w ATMega128 kanały PWM podać na dowolną liczbę bramek MOSFETów. To by uprościło układ. Ale oczywiście każdy robi jak uważa.
    Z ciekawości - rozważałeś użycie taśm WS2812? Masz tam indywidualnie adresowane diody, więc odpada plątanina kabli, a cały projekt redukuje się do małego procesorka i zasilacza... Tu zresztą DIY umieszczone kilka dni temu:
    https://www.elektroda.pl/rtvforum/topic3526215.html
    Jak widać użycie tych diod znacznie upraszcza układ.
  • #9
    FastProject
    Poziom 28  
    Efekt końcowy na pewno fajny fajnie że wykorzystałes co miałeś na stronie, ale ogólnie za bardzo rozbudowany i dużo przewodów.
    Jak już nie chciałeś używać modułów z ws2812 itp to sterowanie zrobiłbym inaczej. 1 sterownik master i tyle slave ile schodów jeden duży procek do sterowania i efektów. A na slave male jakieś attiny. Komunikacja między master a slave po RS485.
  • #10
    Erbit
    Poziom 34  
    Super projekt - mnie podoba się tym bardziej, że szukam czasu na zbudowanie podobnego - z jedną różnicą. Na każdym stopniu chciałbym umieścić czujnik (nie zdecydowałem jeszcze o rodzaju ale stawiam albo na PIR albo na IR) dzięki któremu schody zapalały by się 3 stopnie nad i trzy stopnie pod miejscem wykrycia. W ten sposób uzyskałbym "ruch na schodach".
    Pierwotnie zakładałem źródło światła monochromatyczne ale RGB może być ciekawym dodatkiem.
  • #11
    paluszasty
    Poziom 24  
    Projekt bardzo ciekawy.

    Kilka uwag do autora:
    1) Czy nie lepiej było dać dedykowane gniazd do tych złącz (NS25 chyba) były by bardziej stabilne.

    2) Ja bym dał jakiś mały uchwyt kątowy albo najtańsza prowadnice do płytek (90gr.szt) żeby poprawić stabilność tych modułów, Jakoś nie wierze goldpinów, szczególnie ze na płytce wiszą kable.

    3)Ten kondensator faktycznie nieszczególny. Całość ładnie wdrobnym SMD a tu taka krową. Nie wiem jaka jest pojemność. Ale jeśli jest do 220uF a napięcie jest max 12V to spokojnie można by dać kondensator tantalowy taki:
    https://www.tme.eu/pl/details/t491x227k016at/kondensatory-tantalowe-smd/kemet/
    albo 2x100uF takie (cenowo trochę lepiej)
    https://www.tme.eu/pl/details/t495x107k016ate100/kondensatory-tantalowe-smd/kemet/
    Są w obudowie X która ma tylko 4mm wysokości. Oczywiście te kondensatory są sporo droższe niż elektrolity, ale przy kosztach samych taśm led, oraz okablowania to by to niewiele zmieniło.

    tmf jak byś chciał z atmegi128 wycisnąć 60 kanałów PWM? bo zakładam że w zamyśle autora była możliwość sterowania podświetleniem każdego stopnia osobno.
  • #12
    tmf
    Moderator Mikrokontrolery Projektowanie
    paluszasty napisał:
    spokojnie można by dać kondensator tantalowy taki:

    Też o tym pomyślałem, ale to chyba nienajlepszy pomysł. Tantalowe mogą się zapalić - niekoniecznie chciałbym ponosić takie ryzyko.
    paluszasty napisał:
    tmf jak byś chciał z atmegi128 wycisnąć 60 kanałów PWM? bo zakładam że w zamyśle autora była możliwość sterowania podświetleniem każdego stopnia osobno.

    Ale w tym projekcie nie ma 60 kanów PWM, bo widać coś koło 1/3 tego. Ale nieważne. Mamy w tym procku chyba 6 kanałów PWM, czyli dla RGB można sterować niezależnie dwa paski. Ale ten sygnał PWM można rozprowadzić przy pomocy bramek logicznych na bramki dowolnej liczby tranzystorów sterujących. Wtedy przy pomocy PWM sterujemy efektem, a przy pomocy zwykłych wyjść cyfrowych (których rzeczony procesor ma aż nadto) wybieramy stopnie na które ten PWM można doprowadzić.
    Oczywiście można to zrobić jeszcze prościej i po prostu dobrać procesor, który takie możliwości po prost ma - zwykle procki posiadające układy sterowania silnikami mają podsystemy dystrybucji PWM. Lub, jak pisałem, po prostu WSy.
  • #13
    paluszasty
    Poziom 24  
    Jeśli chodzi o bezpieczeństwo tantali, to faktycznie są one dość wrażliwe na przekroczenie napięcia znamionowego. Ale ten kondensator jest za stabilizatorem 12V a napięcie znamionowe proponowanego kondensatora to 16V, mamy 33% zapasu. Ale jak ktoś chciał by mieć większy poziom bezpieczeństwa to wtedy trzeba by zastosować kondensator na 25V i mamy 110% margines bezpieczeństwa. Np taki:
    https://www.tme.eu/pl/details/tajv107k025r/kondensatory-tantalowe-smd/avx/tajv107k025rnj/


    Autor pisał że każdy odcinek (stopień) ma możliwość niezależnego sterowania, 20x 3 kolory = 60 kanałów PWM.

    Ale Twój (tmf) pomysł z logiką jest też fajny, rozumiem że chciał byś robić coś na zasadzie multiplexowania? Mając 6 kanałów PWM na raz obsłużyć można by 2 paski, czyli multipleksować trzeba by 10 pasków. Jasność maksymalna spadała by do 10% a kolega używa 23%, ale to by można obejść w ten sposób ze w czasie multipleksowanie zmienia sie czas przez jaki świeci się każdy segment. Do wyboru który stopień jest podświetlony potrzebne było by z 30x bramek AND co daje 8 typowych układów 74HC08. Tu aż miło było by zastosować jaki stary układ CPLD XC9536 np.

    Ale nie w zasadzie to nie potrzeba tych bramek, 10 tranzystorów (PMOS) do sterowania anodami diod powinno wystarczyć. Uprościło by to by znacznie "kablologie" Bo katody R/G/B połączone były by równolegle, co wymaga tylko 3 linii, i dodatkowe 10 linii na anody. W sumie 13 linii zamiast 100 linii jak tutaj.

    Trochę było by przeliczania ile który stopień ma się świecić, ale to nawet tabelaryzować by można było, Atmega128 ma dość Flash na takie rzeczy.
  • #14
    tmf
    Moderator Mikrokontrolery Projektowanie
    paluszasty napisał:
    Ale Twój (tmf) pomysł z logiką jest też fajny, rozumiem że chciał byś robić coś na zasadzie multiplexowania? Mając 6 kanałów PWM na raz obsłużyć można by 2 paski, czyli multipleksować trzeba by 10 pasków. Jasność maksymalna spadała by do 10% a kolega używa 23%, ale to by można obejść w ten sposób ze w czasie multipleksowanie zmienia sie czas przez jaki świeci się każdy segment. Do wyboru który stopień jest podświetlony potrzebne było by z 30x bramek AND co daje 8 typowych układów 74HC08. Tu aż miło było by zastosować jaki stary układ CPLD XC9536 np.

    Można multipleksować oczywiście, spadek jasności można łatwo skompensować zwiększając w rozsądnych granicach prąd. Ale myslałem o czymś innym. Zakładam, że nikt nie chce mieć każdego schodka inaczej podświetlonego, bo możnaby dostać szału :) Powiedzmy, że mamy 2 możliwości: wyłączony i włączony. Wtedy wystarczy tylko po bramce na tranzystor. Na jedno wejście wszystkich bramek podaję PWM, na drugie sterowanie on/off z pinu. Oczywiście pomysł upada, jeśli ktoś chce mieć dyskotekę. Ale i wtedy, biorąc pod uwagę, że procek się nudzi można zrobić PWM programowy (jeśli ktoś ma np. wstręt do procków, które mają np. 32 kanały PWM). Chociaż IMHO najprościej jedank te WSy dać.
  • #15
    Jacek Rutkowski
    Poziom 25  
    LA72 napisał:
    Czasy wygaszania podświetlenia stopni jakoś dobierałeś doświadczalnie czy w inny sposób?
    Chodzi o to, że ludzie chodzą z różną prędkością.

    Tak doświadczalnie, najpierw sam kilka razy przeszedłem a później żona z córka przez kilka dni testowały. Dokładnych czasów nie pamiętam ale dziś postaram się nagrać filmik z działania.

    Dodano po 9 [minuty]:

    tmf napisał:
    Z ciekawości - rozważałeś użycie taśm WS2812? Masz tam indywidualnie adresowane diody, więc odpada plątanina kabli, a cały projekt redukuje się do małego procesorka i zasilacza...

    Tak ale przy 20m taśmy i tak trzeba zastosować stosunkowo grube przewody zasilające nie wystarczy spiąć taśm szeregowo. Nie testowałem ich ale ile czasu trwa zapis do 600 szt WS? Zakładam że płynne rozjaśnienie wszystkich diod wymaga podobnie jak u mnie co najmniej 15 poziomów jasności na stopień czyli ok 25-40 diod na stopień ponieważ część jest dłuższa na zabiegu.
    Cena zwykłej taśmy RGB to pojedyncze złotówki a tej z WS przy 20m?
  • #16
    Erbit
    Poziom 34  
    Jacek Rutkowski napisał:
    LA72 napisał:
    Czasy wygaszania podświetlenia stopni jakoś dobierałeś doświadczalnie czy w inny sposób?
    Chodzi o to, że ludzie chodzą z różną prędkością.

    Tak doświadczalnie, ...

    Co w przypadku gdy będą wchodziły dwie osoby (jedna jest w połowie, druga zaczyna)?
    Co w przypadku gdy na schody wejdą dwie osoby, jedan z góry a druga z dołu ?

    Druga sprawa - w swoim zamyśle z powodu komplikacji z użyciem PIR (co Twój opis potwierdza) zastanawiałem się nad użyciem bariery IR (lub czujnika odległości) na każdym stopniu. Takie rozmieszczenie obsłużyłoby każde zdarzenie na schodach.
  • #17
    Jacek Rutkowski
    Poziom 25  
    tmf napisał:
    Projekt wyszedł fajnie, ale IMHO strasznie przekombinowany. Ta płytka z modułami to nawet interesująca koncepcja, tylko nie dało się jej zrobić mniejszej? Na pierwszy rzut oka, problemem jest ten wystający kondensator, ale można be było poobracać o 180 stopni, wtedy na podobnej powierzchni zmieściłyby się dwa moduły, możnaby też zastosować kondensator leżący lub w innej obudowie.
    Kolejna sprawa - przy pomocy prostej logiki możesz istniejące w ATMega128 kanały PWM podać na dowolną liczbę bramek MOSFETów. To by uprościło układ. Ale oczywiście każdy robi jak uważa.

    Prawdę mówiąc zależało mi aby te małe moduły zmieściły się z resztą w 1dcm2 PCB a sam rozmiar całości nie ma znaczenia wnęka pod schodami ma ok 30x120cm :)
    W jaki sposób z 6 kanałów PWM chcesz uzyskać 60 niezależnych kanałów jak w tym projekcie, chociaż obecnie wykorzystuję kanały RGB każdej taśmy z taką samą wartością czyli 20 kanałów wystarczyło by.

    Dodano po 4 [minuty]:

    Erbit napisał:
    Co w przypadku gdy będą wchodziły dwie osoby (jedna jest w połowie, druga zaczyna)?
    Co w przypadku gdy na schody wejdą dwie osoby, jedan z góry a druga z dołu ?

    Druga sprawa - w swoim zamyśle z powodu komplikacji z użyciem PIR (co Twój opis potwierdza) zastanawiałem się nad użyciem bariery IR (lub czujnika odległości) na każdym stopniu. Takie rozmieszczenie obsłużyłoby każde zdarzenie na schodach.

    Gdy wejdzie w czasie pełnego świecenia czas świecenia jest liczony od zadziałania drugiego czujnika a gdy już następuje wygaszanie zapalane są wszystkie stopnie w jednym cyklu na max jasności 23% i po odczekaniu czasu świecenia wygaszane od ostatnio wyzwolonego PIRa.
    Nie mam jak użyć barier, schody są zabiegowe i w części zabiegu nie ma z żadnej strony ściany.
  • #18
    paluszasty
    Poziom 24  
    Też pomyślałem o rozwiązaniu programowym. Szczególnie że 16 bitowy PWM nie jest tu potrzebny. Teoretycznie autor projektu ma 48 bitową paletę kolorów (2.8x10^14 kolorów...).

    Ale najniższa jasność używana to 0.7%, pewnie 0.8% tez będzie ok, co oznacz ze potrzebny jest PWM o rozdzielczości 7 bit (dając teoretycznie ponad 2 mln kolorów). Spokojnie do zrobienia programowo.

    32 kanały PWM ma chyba xmega128a3u, co prawda w trybie 8 bitowym ale to też aż nadto.

    WSy oczywiście najlepsze, ale pewnie z 15-20m takiej taśmy było by sporo droższe niż taśmy RGB.
  • #19
    Jacek Rutkowski
    Poziom 25  
    paluszasty napisał:
    WSy oczywiście najlepsze, ale pewnie z 15-20m takiej taśmy było by sporo droższe niż taśmy RGB.

    Właśnie znalazłem że WS da się sterować do ok 30000 instrukcji na sekundę czyli przy 20m i 600 punktach powinno dać się uzyskać ok 50Hz odświeżanie, u mnie jest 100Hz i nie ma skokowej zmiany jasności przy rozjaśnianiu gdy na całości chcemy zmieniać kolor lub jasność.
    Chociaż może by je podzielić na np 8 łańcuchów i sterować równolegle wtedy 8 na raz?
  • #20
    paluszasty
    Poziom 24  
    Zgodnie z notą katalogową:
    (https://cdn-shop.adafruit.com/datasheets/WS2812.pdf)
    To przy prędkości odświeżania 30fps możesz mieć do 512 diod (dla wersji wolnej).

    Ale raczej tak szybko odświeżać nie musisz, myślę ze 1/4 sekundy wystarczy. Na każda diodę potrzebujesz wysłać 24 bity danych, czyli w sumie dla 600 diod, wychodzi 14.0625kb, musisz zrobić to 4x na sekundę, to prędkość transmisji wychodzi 56.25kbps. WS2812 najlepiej sterować przez USART. 56kbbs to nie jest duża prędkość dla USART
  • #21
    Jacek Rutkowski
    Poziom 25  
    Przy 4x sekundę nie da się płynnie rozjaśniać będzie migać u mnie co 10ms jest odświeżanie jasności a sam PWM ma ponad 20kHz.
  • #22
    paluszasty
    Poziom 24  
    Ok, jak nie chcesz skokowej zmiany to trzeba zwiększyć prędkość odświeżania. 4fps to za mało. Z danych producenta wynika że dla 600 diod to będzie maksymalnie jakieś 25fps. Myślę ze to w zupełności wystarczy, w końcu to nie monitor....

    Ale przewaga Twojego rozwiązania to na pewno koszty. Nie wiem jaką masz szerokość stopnia ale liczę ze przynajmniej 15-20m takiej taśmy potrzebowałeś.

    Dodano po 2 [minuty]:

    Zeby kolega nie pomyślał że mi projekt się nie podoba. Podoba się jak najbardziej. Po prostu ja (i pewnie kolega tmf, ale nie chce wypowiadać się za niego) wypisałem swoje przemyślenia.
  • #23
    tmf
    Moderator Mikrokontrolery Projektowanie
    paluszasty napisał:
    Zeby kolega nie pomyślał że mi projekt się nie podoba. Podoba się jak najbardziej. Po prostu ja (i pewnie kolega tmf, ale nie chce wypowiadać się za niego) wypisałem swoje przemyślenia.


    Projekt dziala zgodnie z zamierzeniami autora i realizuje sensowną funkcję - więc nie ma mi się co niepodobać, zresztą plusa kliknąłem :)
    Widomo, rozmawiamy, bo zapewne wiele osób jest czymś takim zainteresowanych, więc pewne uwagi na temat ulepszeń mogą im się przydać.
    WSy nie są takie drogie, a upraszczają cały układ i dramatycznie redukują liczbę przewodów, więc czy finalnie to wyjdzie drożej, czy nie to trzebaby policzyć. Używam 600 Wsów w łańcuchach jako oświetlenie świateczne i robiąc na tym różne efekty, nie zauważyłem żeby były problemy z częstotliwością odświeżania. Ciągną spory prąd (przy pełnej jasności), stąd też przy tak długim łańcuchu niezbędne jest zasilanie dwustronne. Jednak sumaryczny przekrój przewodów i ich liczba , idę o zakład, jest mniejsza niż w pokazanym projekcie. Oczywiście można łańcuchy podzielić - ponieważ mamy tu do czynienia z machaniem pinem IO, więc teoretycznie możemy mieć tyle łańcuchów ile pinów IO.
    Jacek Rutkowski napisał:
    W jaki sposób z 6 kanałów PWM chcesz uzyskać 60 niezależnych kanałów jak w tym projekcie, chociaż obecnie wykorzystuję kanały RGB każdej taśmy z taką samą wartością czyli 20 kanałów wystarczyło by.

    Już napisałem jak. Oczywiście zakładając, że nie potrzebujemy dyskoteki. Jak potrzebujemy, to jednak procek z odpowiednią liczbą kanałów., lub rozwiązanie programowe. Szczególnie jeśli, któś nie ma tak komfortowej sytuacji jak ty, a całość musi zmieścić np. w puszce podtynkowej.
  • #24
    paluszasty
    Poziom 24  
    tmf napisał:
    Cytat:
    Ciągną spory prąd (przy pełnej jasności), stąd też przy tak długim łańcuchu niezbędne jest zasilanie dwustronne.

    Ja tu bym nawet myślał o zasilaniu każdego stopnia osobno, a połączeniu szeregowym tylko linii danych (no i ewentualnie spięcie razem mas tez szeregowo jako dodatek, tu raczej problemu pętli masy bym się nie obawiał)
  • #25
    Jacek Rutkowski
    Poziom 25  
    Jeśli schody są proste a przynajmniej z balustradą po całości można pomyśleć nad daniem paska LED z WS-ami w poręczy. Wtedy sterowanie płynnie da się rozwiązać i taśmy potrzeba tylko kilka metrów. Niestety u mnie nie wchodzi takie rozwiązanie w rachubę z powodu budowy schodów.
    W innym miejscu mam zrobioną wnękę 25x25cm głęboką na 20cm zrobioną w 25cm ścianie z porothermu przykrytą z wierzchu zdjęciem. W środku siedzi switch 5 portowy z WiFi aby na parterze i piętrze był zasięg WiFi :)
    Przy budowie a nawet remoncie takie rzeczy można zrobić. W kilku miejscach pod puszkami na gniazdka mam otwory 20cm głębokie i puszki z wyciętym dnem. Schowane tam są czujniki temperatury oraz zasilacze dla podświetlenia półek.
  • #26
    tmf
    Moderator Mikrokontrolery Projektowanie
    Jacek Rutkowski napisał:
    W kilku miejscach pod puszkami na gniazdka mam otwory 20cm głębokie i puszki z wyciętym dnem. Schowane tam są czujniki temperatury

    Pomiar temperatury w ścianie to chyba nienajlepszy pomysł. No chyba, że chcesz mierzyć temperaturę ściany :)
  • #27
    Jacek Rutkowski
    Poziom 25  
    Nie, mam DS18B20 które zainstalowane są w podciętej ramce gniazdka i służą do pomiaru temperatury w pomieszczeniach do sterowania piecem. Gniazdka są 30cm od podłogi i wskazywane temperatury są poprawne ponieważ są to ściany nośne ale wewnętrzne. Odczyty są ok 4°C mniejsze niż na wysokości 1 m w powietrzu ale ja to koryguję. Ponad to przy ogrzewaniu podłogowym bezwładność jest na poziomie godzin i nie stanowi to problemu.
  • #28
    tmf
    Moderator Mikrokontrolery Projektowanie
    @Jacek Rutkowski W warunkach statycznych różnica temperatur będzie stała , lecz ściana ma zupełnie inną bezwładność cieplną niż powietrze w pomieszczeniu. W efekcie może być tak, że w domu zimno, bo ściana jeszcze nie zdążyła się schłodzić, lub jest za ciepło, bo jeszcze nie zdążyła się nagrzać. Faktem jest, że bezwładność podłogówki może ten efekt lekko kompensować, jednak lepiej mierzyć to co odczuwamy.
  • #29
    Slawek K.
    Poziom 31  
    Podoba mi sie ten projekt, widać dużo pracy i wszystko przemyślane juz na etapie budowy. Poleciał zasłużony plusik ;)

    Pozdr
  • #30
    LChucki
    Poziom 30  
    paluszasty napisał:
    Na każda diodę potrzebujesz wysłać 24 bity danych, czyli w sumie dla 600 diod, wychodzi 14.0625kb, musisz zrobić to 4x na sekundę, to prędkość transmisji wychodzi 56.25kbps. WS2812 najlepiej sterować przez USART. 56kbbs to nie jest duża prędkość dla USART

    Coś tu źle liczysz. Aby sterować WSami z USART potrzeba przepływności 2,4Mb/s a takiej, na AVR 16MHz nie osiągniesz. Na 20MHz uzyskasz 2,5Mb ale WS maja dużą tolerancję czasów i wystarczy 18,4321MHz.

    Dodano po 1 [minuty]:

    Jacek Rutkowski napisał:
    Z racji że zastosowany procesor ATMega128 nie posiada nawet takiej ilości wyjść (60) zastosowałem 5 szt układów TLC5971.

    Aby sterować 20 taśmami RGB wystarczą 23 wyprowadzenia w tym 3 PWM.