logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Led rgb sterowana pwm. Jak uzyskać pożądany kolor?

Matheush18 03 Cze 2010 16:33 4515 18
REKLAMA
  • #1 8150779
    Matheush18
    Poziom 12  
    Witam.
    Programuje w Bascomie. Jestem początkujący. Od dłuższego czasu głowie się jak można sterując diodą led rgb (wypełnieniem 0...255) uzyskać wybrany kolor. Korzystając z palety kolorów painta (jak widać na poniższym obrazku) chcę uzyskać np. kolor zielony. Więc dla diody czerwonej (R) ustawiam wypełnienie 86/255, dla diody zielonej (G) 194/255, dla diody niebieskiej 67/255. Myślałem że te czynności wystarczą żeby osiągnąć zamierzony efekt, ale przeoczyłem fakt że należy jeszcze dobrać dla każdego koloru diody odpowiedni rezystor. I tu pojawia się moje pytanie. Czy jest jakaś zależność dzięki której można tak dobrać rezystory, że będę mógł na podstawie palety kolorów painta uzyskać dokładnie taki kolor jaki sobie wybiorę? Szukając odpowiedzi na różnych forach znajdowałem tylko rozwiązania typu "dobór rezystorów metodą prób i błędów", ale jest to dla mnie trochę droga przez mękę.

    Led rgb sterowana pwm. Jak uzyskać pożądany kolor?
  • REKLAMA
  • Pomocny post
    #2 8151164
    acid12
    Poziom 21  
    nie ma prostej odpowiedzi niestety :) pomijajac kwestie nieliniowości luminescencji diody led w zaleznosci od pradu dochodzi kwestia że ludzkie oko też odbiera światło nieliniowo.

    wiec nawet gdyby liniowe zwiekszanie pradu odpowiadało idealnie liniowemu przyrostowi natężenia koloru ... i tak bysmy tego tak nie zobaczyli.

    ludzkie oko widzi to chyba jako pewna funkcje logarytmiczna ... w necie są takie duże równania do znalezienia
  • #3 8151256
    Matheush18
    Poziom 12  
    Aha. To dlatego nikt nie chciał odpowiedzieć :D Dzięki że mnie trochę oświeciłeś. Przeszukałem trochę postów i właśnie nigdzie nie ma jednoznacznej odpowiedzi. Ale teraz przynajmniej wiem jak sprawa wygląda, bo myślałem, że odpowiedź jest prosta tylko ja źle szukam.
  • REKLAMA
  • Pomocny post
    #4 8151539
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #5 8152681
    rpal
    Poziom 27  
    Sięgnij do książek których już nikt nie czyta z zakresu fotografi to może sobie co nieco wyjaśnisz na które barwy oko jest czułe na które mniej. To chyba nie jest żadna funkcja tylko po prostu "dziury" w widzeniu :)
  • REKLAMA
  • #7 16691085
    Konto nie istnieje
    Konto nie istnieje  
  • #8 16691174
    Konto nie istnieje
    Poziom 1  
  • #9 16691458
    BlueDraco
    Specjalista - Mikrokontrolery
    Tu nie ma żadnej gammy, bo to nie luminofor. Nie ma nieliniowości diody LED, bo mamy stałe natężenie prądu. Jest tylko nieliniowość oka ludzkiego.
    Dobra rada kol Atom powyżej: dobierz rezystory tak, by przy pełnym wypełnieniu wszystkich uzyskać kolor biały.
    Kolory LED nie będą kopiami kolorów z ekranu - zbyt wiele różnic fizycznych pomiędzy oboma przypadkami. Trochę zbliżysz się do ideału, jeżeli zastosujesz korekcję jasności CIE.
  • #10 16691539
    Konto nie istnieje
    Poziom 1  
  • #11 16691574
    BlueDraco
    Specjalista - Mikrokontrolery
    Poza tym, że gamma jest parametrem funkcji, która w przypadku LED nie wymaga żadnego parametru, to już reszta się zgadza. Linearyzację jasności w CIE uzyskujemy zwykle przez złożenie funkcji liniowej i pierwiastka 3. stopnia. żadnych logarytmów ani antylogarytmów tam nie ma.
  • #12 16691587
    Konto nie istnieje
    Poziom 1  
  • #13 16691677
    Konto nie istnieje
    Konto nie istnieje  
  • #14 16692460
    BlueDraco
    Specjalista - Mikrokontrolery
    Wszystko się zgadza, poza tym, że to nie jest gamma. ;)
  • #16 16692531
    BlueDraco
    Specjalista - Mikrokontrolery
    Nt. Pana Mirka K. mam wyrobione zdanie, ale przywołany tekst zawiera jedno prawdziwe choć dość enigmatyczne stwierdzenie, z którym wypada się zgodzić:
    "Nie jest ona zgodna wprawdzie z kolei z charakterystyką postrzegania przez ludzkie oko"
  • #17 16692680
    Konto nie istnieje
    Konto nie istnieje  
  • #18 16692707
    BlueDraco
    Specjalista - Mikrokontrolery
    Wystarczy jedna linearyzacja jasności wg. krzywej czułości oka. :)
    Ogólnie to wygląda tak, że dla uzyskania n liniowych stopni jasności trzeba mieć rozdzielczość PWM ok. 9n.
  • #19 16692896
    Konto nie istnieje
    Poziom 1  
REKLAMA