
Veřejné osvětlení, světelné znečištění, cirkadiánní rytmus, modrá složka. Tyhle pojmy se teď skloňují pořád. Sodíkové výbojky nahrazují LED, které šetří energii, ale často svítí studeněji a s větším podílem modrého světla. To ovlivňuje cirkadiánní rytmus lidí i živočichy a rostliny v okolí lampy.
Aktualizace: nový program a výpočty – zaúkoloval jsem Claude Opus 5.5 ať to celé projde a najde chyby nebo možná vylepšení. Výsledkem je nový FW a upravený článek.
Po rozhovoru s jedním odborníkem na osvětlení (který shodou okolností prodává vlastní svítidla) mě napadlo postavit si vlastní analyzátor světla a podívat se na lampy před domem sám.
Nápad jsem měl, znalosti z fotometrie ne 🙁 Výpočty jsem proto připravoval s pomocí AI (Claude, ChatGPT, Perplexity) a nechal je kontrolovat navzájem. Později jsem je ověřil simulací na standardních světelných zdrojích CIE.
Výsledkem je přenosný analyzátor světla, který měří spektrum v rozsahu 410–940 nm v 18 kanálech a počítá z něj podíl modré složky, teplotu chromatičnosti (CCT), odchylku od Planckovy křivky (Duv) a odhad osvětlenosti. Podle tvaru spektra pozná, jestli svítí LED, sodíková výbojka nebo žárovka.
Použitý hardware
Inkplate 5 Gen2
Řídicí deska i displej v jednom: Inkplate 5 Gen2 s ESP32 a 5″ ePaper displejem nalepeným přímo na desce.

Na desce najdete RTC, slot pro microSD, GPIO header a konektor easyC, kompatibilní se SparkFun Qwiic a Adafruit STEMMA QT (pinout). Senzor se tak připojí jedním kabelem.
Parametry:
- rozlišení 1280 × 720 px
- ESP32
- spotřeba v deep sleep 18 µA
- 1bitový režim pro rychlé překreslení a režim s odstíny šedi
- full refresh do 1 s, partial refresh za 0,22 s
- vypínací a probouzecí tlačítko
- podpora v Arduino IDE i MicroPython
- vestavěná baterie 1200 mAh
Proč ePaper a ne TFT? Displej nesvítí, takže neovlivňuje měření a senzor není potřeba stínit před vlastním displejem. Je čitelný na slunci a obraz drží i bez napájení.
Výdrž na baterii zatím není silná stránka. ESP32 měří každých 10 sekund a deep sleep nepoužívá, takže počítejte spíš s hodinami než se dny provozu.
Inkplate 5 Gen2 je open-source. Podklady včetně modelu krabičky pro 3D tisk jsou na GitHubu Soldered. Upravenou krabičku jsem vytiskl bez problémů.
ePaper se hodí i jinam, třeba pro meteostanici, vlastní informační displej nebo panel pro Home Assistant.
Spektrální senzor AS7265x

Základem projektu je modul SparkFun AS7265x. Jsou na něm tři čipy, každý se šesti kanály:
- AS72653: 410, 435, 460, 485, 510, 535 nm
- AS72652: 560, 585, 645, 705, 900, 940 nm
- AS72651: 610, 680, 730, 760, 810, 860 nm

Čipy se v pořadí vlnových délek prokládají. Bude to důležité u kalibrace.
AS7265x není spektrometr. Každý kanál je fotodioda s interferenčním filtrem s FWHM zhruba 20 nm. Mezi kanály jsou mezery a sousední pásma se částečně překrývají. Typ zdroje rozliší spolehlivě, jednotlivé spektrální čáry ale ne.
Dál modul nabízí:
- 18 kanálů od 410 do 940 nm, tedy i blízkou infračervenou oblast (NIR)
- rozhraní I2C (Qwiic)
- tři LED pro přisvícení (bílou, UV a IR) pro měření odraženého světla, tady se nepoužívají

Kryt senzoru jsem převzal z projektu AS7265x-triad-ui. Omezuje světlo z boku, takže senzor měří hlavně zdroj, na který míří.
Software a knihovny
Projekt používá dvě Arduino knihovny:
- InkplateLibrary ve verzi 11.x (starší verze mají jiné API pro RTC)
- SparkFun AS7265x
InkplateLibrary obsahuje i spoustu vzorových programů pro Inkplate 5 Gen2.
Podporu desek Inkplate přidáte v Arduino IDE přes File → Preferences → Additional boards manager URLs:
https://github.com/SolderedElectronics/Dasduino-Board-Definitions-for-Arduino-IDE/raw/master/package_Dasduino_Boards_index.json

Projekt kompiluji s tímto nastavením desky:

Kód je na GitHubu. Výpočty jsou v samostatném souboru SpectralMath.h, takže je jde otestovat i na PC. Na začátku sketche jsou nastavení: interval měření, logování na microSD, korekce kalibrace a kalibrace luxů.
Co zařízení měří
Spektrum
Levá část displeje ukazuje sloupcový graf všech 18 kanálů. Hodnoty jsou v µW/cm², přepočtené na stejné podmínky (gain 16×, integrační čas 166 ms), takže se dají porovnávat mezi měřeními. Kanály NIR 810–940 nm jsou šrafované.
Podíl modré složky (Blue)
Podíl světla v pásmu 410–485 nm ze všeho viditelného světla 410–760 nm:
Blue = součet(410–485 nm) / součet(410–760 nm)
Kanály nejsou rozmístěné rovnoměrně (rozestupy 25–50 nm), proto se každý kanál při sčítání násobí šířkou intervalu, který zastupuje.
Blue je orientační ukazatel. Biologický účinek na cirkadiánní rytmus přesně nepopisuje, na ten jsou melanopické veličiny (melanopic EDI), které firmware nepočítá.
Cold index
Poměr modré a červené složky:
Cold index = součet(410–485 nm) / součet(610–705 nm)
Teplé světlo má Cold index kolem 0,1–0,3, studené LED a denní světlo kolem 1 a víc.
Teplota chromatičnosti (CCT) a Duv
CCT (náhradní teplota chromatičnosti) říká, jak teplé nebo studené bílé světlo je, v kelvinech. Duv je vzdálenost barvy světla od Planckovy křivky. Kladné Duv znamená nádech do zelena, záporné do purpurova.
Postup výpočtu:
- Z kanálů 410–760 nm se spočítají trichromatické složky CIE 1931 XYZ. Váhy kanálů jsou spočítané metodou nejmenších čtverců na modelu senzoru (gaussovské kanály s FWHM 20 nm) a sadě spekter: Planckovy zářiče, denní světlo, bílé LED a výbojky.
- Z XYZ se spočítají souřadnice chromatičnosti a převedou se do diagramu CIE 1960 uv.
- Firmware najde nejbližší bod na Planckově křivce. Jeho teplota je CCT, vzdálenost od křivky je Duv.
CCT se zobrazí jen tehdy, když má smysl: pro |Duv| ≤ 0,05 a rozsah 1 000–15 000 K. Jinak displej ukáže „—“, třeba u čistě zeleného nebo modrého světla.
Přesnost jsem ověřil simulací na standardních zdrojích CIE, které ve výpočtu vah nebyly:
| Zdroj | Chyba CCT |
|---|---|
| Žárovka, Planckův zářič 1 800–10 000 K | do 1 % |
| Bílé LED | do 2 % |
| Vysokotlaká sodíková výbojka | do 2 % |
| Metalhalogenidová výbojka, zářivky, RGB LED | až 10 % |
K tomu je potřeba připočíst toleranci senzoru. Středy kanálů se podle datasheetu mohou lišit až o 10 nm.
Odhad osvětlenosti (Ev)
Z fotopické složky Y se dá odhadnout osvětlenost v luxech. Je to jen odhad: tovární kalibrace senzoru má toleranci ±12 % a bez cosine correctoru platí jen pro světlo dopadající kolmo. Přesnější čísla dostanete po porovnání s luxmetrem.
Podíl NIR
Podíl blízké infračervené oblasti 810–940 nm. Žárovky a slunce ho mají vysoký, LED téměř nulový. U sodíkové výbojky je vysoký kvůli její vlastní čáře na 819 nm.
Jak poznat zdroj podle spektra
- Bílá LED: úzký modrý pík kolem 450–460 nm, propad kolem 485 nm a široký pás luminoforu 500–650 nm. V NIR skoro nic.
- Sodíková výbojka: většina energie kolem 589 nm (kanál 585 nm), u vysokotlaké výbojky rozšířená čára zasahuje i do kanálů 560 a 610 nm. V NIR ostrá čára na 819 nm, kterou zachytí kanál 810 nm. Modré málo.
- Žárovka, halogen: spojité spektrum, které stoupá od modré přes červenou až do NIR.
- Denní světlo: spojité spektrum s větším podílem modré, v NIR postupně klesá.
Orientační hodnoty, které by měl analyzátor ukazovat (spočítané modelem senzoru ze standardních spekter CIE):
| Zdroj | CCT | Blue | Cold index |
|---|---|---|---|
| Sodíková výbojka | 1 900–2 200 K | 6 % | 0,15 |
| Žárovka | 2 700 K | 6 % | 0,14 |
| Teplá bílá LED | 2 700–3 000 K | 11–13 % | 0,23–0,29 |
| Neutrální bílá LED | 4 000 K | 21 % | 0,62 |
| Zatažená obloha | 6 500 K | 30 % | 1,08 |
| Studená bílá LED | 6 500 K | 33 % | 1,45 |
| Jasná modrá obloha bez slunce | 10 000 K | 40 % | 1,79 |
Ukázky měření
Všechny ukázky jsou měřené bez difuzoru.
Sodíková výbojka na ulici

Typický sodík. Nejsilnější je kanál 585 nm, kanály 560 a 610 nm jsou výrazné kvůli rozšíření čáry ve vysokotlaké výbojce. Na 810 nm je ostrý pík, zatímco 760 a 860 nm jsou téměř nulové. To je sodíkový dublet na 819 nm, proto NIR vychází 37 %, i když lampa svítí žlutě.
Blue 8,9 %, Cold index 0,30, CCT 2 455 K a Duv +0,003. CCT je trochu výš než u klasické sodíkové výbojky (kolem 2 000 K). Buď jde o verzi se zlepšeným podáním barev, nebo do senzoru přisvítilo i jiné světlo.
Směs LED a halogenu

Spektrum souvisle stoupá až do 940 nm (NIR 42,6 %), tak vypadá halogen. Na 460 nm je ale zřetelný modrý pík bílé LED.
Prozradí to i Duv −0,016. Planckova křivka je prohnutá, takže smícháním teplého a studeného zdroje vyjde barva pod ní, se záporným Duv. CCT 5 136 K je pak průměr obou zdrojů a jako teplota jednoho svítidla nemá smysl.
Zuby na 560 a 610 nm, které halogen mít nemůže, jsou artefakt měření bez difuzoru.
Automatická expozice
AS7265x má čtyři stupně gainu (1×, 3,7×, 16×, 64×) a nastavitelný integrační čas. Firmware z nich skládá 8 stupňů citlivosti od 1× / 14 ms po 64× / 556 ms.
Každé měření začne na nejnižší citlivosti. Podle nejsilnějšího kanálu odhadne, o kolik může citlivost zvýšit, změří znovu a zkontroluje, že všechny kanály vzrostly úměrně. Když ne, vrátí se o krok zpět. Výsledek je průměr ze tří vzorků.
Pokryje to slabé pouliční osvětlení i svítilnu zblízka. Na displeji je vidět aktuální gain a integrační čas, případně upozornění na saturaci nebo málo světla.
Zobrazení na Inkplate
Levá část: graf spektra 410–940 nm, vlnové délky a naměřené hodnoty.
Pravá část: Blue, Cold index, CCT, Duv, Ev a NIR, pod nimi gain, integrační čas, teplota senzoru, napětí baterie a stav logování.
Měření probíhá každých 10 sekund. Displej se obnovuje přes partial refresh, aby neblikal. Před vykreslením se ale oblasti s měnícími se hodnotami smažou na bílo, jinak by na ePaperu zůstával ghosting předchozích sloupců. Jednou za 20 měření proběhne full refresh.
Každé měření se zapíše na microSD (pokud je připojená) kartu do souboru spektrum.csv, včetně všech 18 kanálů. Serial monitor vypisuje i surové (raw) hodnoty kanálů.
Kalibrace a limity měření
Tenhle analyzátor nekonkuruje profesionálním přístrojům. Je to orientační měřidlo pro porovnání zdrojů mezi sebou.
Každý čip má vlastní tovární kalibraci. U mého kusu měřil čip AS72651 zhruba 2,7× víc než ostatní dva. Ve spektru to vypadalo jako výrazná špička na 610 nm a studená bílá LED vycházela na 2 800 K s Duv −0,024. Po korekci jednou konstantou vychází 5 126 K a Duv −0,0008. Korekce platí jen pro konkrétní kus senzoru.
Bez difuzoru nefungují bodové zdroje zblízka. Nad každým čipem je malá apertura a pod ní šest fotodiod vedle sebe. Úzký svazek světla pod úhlem některé z nich zastíní a ve spektru se objeví propady, které se s každým pohybem stěhují. Se svítilnou z telefonu na 15 cm jsem dostal nesmyslná spektra, pouliční lampa nad hlavou s krytem senzoru funguje dobře.
Výrobce senzor kalibruje i měří s rozptýleným světlem. Jako difuzor stačí kus pečicího papíru, pár vrstev teflonové pásky nebo vytištěný kotouček z bílého PLA o tloušťce 0,4–0,6 mm. Po přidání difuzoru je potřeba korekci změřit znovu.
Luxy jsou jen odhad, dokud je neporovnáte s luxmetrem.
Postup kalibrace doma (halogenová žárovka pro korekci čipů, luxmetr pro luxy) je krok za krokem v README na GitHubu.
Historie úprav
25. 2. 2026: Sodíková výbojka vycházela se stejně vysokým podílem modré jako LED. Po snížení integračních cyklů ze 100 na 20 se výsledky zlepšily. Příčinu jsem tehdy přisuzoval crosstalku mezi kanály, ale firmware měl i další chyby (viz níže), takže to vysvětlení berte s rezervou.


10. 10. 2026: Po review kódu jsem firmware přepracoval:
- nový výpočet CCT a Duv podle CIE 1931 místo McCamyho vzorce s chybnými koeficienty (u denního světla se starý výpočet pletl o víc než 1 300 K)
- automatická expozice s kontrolou přesvícení a vlastní čekání na data
- hodnoty přepočtené na stejné podmínky nezávisle na gainu
- korekce kalibrace mezi čipy
- odhad osvětlenosti a podíl NIR místo bezrozměrné hodnoty „Intensity“
- logování na microSD, partial refresh bez ghostingu
Závěrem
Za mě je kombinace Inkplate 5 Gen2 a AS7265x dobrý základ pro bastlíře, kteří chtějí vidět, čím jim svítí lampa před domem. Za cenu dvou modulů dostanete přístroj, který odliší sodíkovou výbojku, teplou a studenou LED, žárovku i jejich směs a ukáže, kolik modré v nich je.
Laboratorní spektrometr to není. U rozptýleného světla ale už teď dává čísla, která sedí na referenční hodnoty, třeba u studené LED nebo zatažené oblohy. Pro bodové zdroje zblízka je potřeba difuzor a kalibrace podle README.
Kód a postup kalibrace najdete na GitHubu.
Hardware pro projekt dodal Botland.cz.








Komentáře na sítích