Obsah:
Video: Kalibrácia jasu LED: 5 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Keď som robil rozprávkové svetlo, uvedomil som si, že hodnota PWM je nelineárne úmerná jasu LED. Jednoducho povedané, ak je hodnota PWM dvojnásobná, jas nie je dvojnásobný; zvlášť keď je PWM blízko maxima, žiadna zmena nie je mojimi očami rozpoznateľná. Myslel som si, že by to mal byť jednoduchý problém s kalibráciou! a takto som urobil tento projekt! Cieľom je zmerať jas LED pomocou nejakého zariadenia (snímač svietivosti alebo fotorezistor) a nájsť koreláciu medzi hodnotou PWM a jasom. Potom neskôr Ak nastavím jas na 50%, Arduino vypočíta zodpovedajúci PWM a podľa toho stlmí LED.
Na meranie jasu preto potrebujem senzor svietivosti a LED diódu. Použitím karty SD uložím údaje pre neskorší postup montáže. Prispôsobenie sa vykoná v programe Excel (alebo v inom programe). Výstup bude použitý v kóde Arduino, a to je všetko! Malo by sa to urobiť raz. Potom môžete kalibračný parameter používať navždy!
Krok 1: Diely
1- WEMOS mini D1: Aliexpress 3 €
2- TSL 2561 (senzor svietivosti): Aliexpress 3 €
3- Modul karty SD: Aliexpress 1 €
4- LED
5- Rezistor 220 ohm
6- drôty
celkové náklady: 8 -10 €
Krok 2: Zapojenie
Káble modulu karty SD a senzora jasu by ste nemali meniť (väčšina z nich). LED dióda by mala byť pripojená k kolíku PWM.
Krok 3: Kód
Skombinoval som tri kódy:
Karta SD: použitý príklad> SD> ReadWrite v Arduino IDE
TSL 2561: použitý príklad knižnice Adafruit TSL2561 Library (sensorapi); nájdete to v príkladoch, ak nainštalujete knižnicu (predpokladám, že viete, ako nainštalovať knižnicu v Arduino IDE).
LED blednutie: použité príklady> Analógové> vyblednutie
Kód po inicializácii modulov stlmí LED diódu a bude čítať jas a uloží ho na kartu SD. týmto spôsobom zhromaždím niekoľko údajov na kalibráciu.
Každý z kódov som zmenil podľa svojich potrieb. priložený konečný kód.
Signál by mal vyzerať ako na priloženom obrázku. Žiaľ, zabudol som odfotiť, a tak ho v Exceli vykreslím, aby som vám ukázal, ako by to malo byť.
POZNÁMKA: Používam wemo mini D1 namiesto Arduina. z nejakého dôvodu, ktorý neviem, je PWM medzi 0 a 1023. V Arduine by to malo byť medzi 0-255. Ak chcete kód použiť pre arduino, mali by ste sa o to postarať (riadok 90).
Krok 4: Prispôsobenie a používanie
po zozbieraní údajov som súbor otvoril v programe Excel a údaje vykreslil (pozrite sa na obrázok). prvý stĺpec je hodnota PWM a druhý je lux (čítanie senzora, na jednotke veľmi nezáleží). Preto vykreslite lux (os y) vs. PWM (os x). Ako vidíte, jas je lineárne úmerný hodnote PWM. Namontoval som k tomu linku.
Ak chcete vložiť riadok, postupujte takto:
1- vykreslite údaje (vložte> bodový graf), predpokladám, že viete ako.
2- kliknite pravým tlačidlom na vykreslené údaje
3- kliknite na trendovú čiaru.
4- (v programe Excel 2013) na pravej strane vyskočí panel. Vyberte lineárne. V spodnej časti zvoľte „zobraziť rovnicu na grafe“.
Lineárny vzťah sa líši od môjho vnímania. Preto si myslím, že medzi mojím vnímaním a jasom by mal existovať logaritmický vzťah (toto je najjednoduchší spôsob, ako ma napadol!). Vzal som teda sklon fitka. Intercept nie je dôležitý, pretože závisí od okolitého svetelného znečistenia! namiesto toho som pridal 1. Pretože Log10 (0) je nekonečný. Na vyriešenie problému teda potrebujem zachytenie. V mojom prípade rovnica vyzerá takto:
y = Log10 (0,08 x +1), y je jas a x je hodnota PWM (0-1023)
Rovnicu som normalizoval na maximálnu hodnotu. potom je výstupný rozsah vždy medzi 0-100. týmto spôsobom môžem požiadať arduino o určitý relatívny jas, bez ohľadu na maximálny absolútny jas.
y = Log10 (0,08 x +1)*100/1,914
Pretože v arduine je mojím vstupom relatívny jas, musím znova usporiadať rovnicu pre x (PWM):
x = (10^(y*1,914 / 100) - 1) / 0,08
pomocou tejto rovnice v kóde sme schopní získať lineárnu zmenu jasu. Požiadate teda arduino o jas (y) medzi 0-100 a arduino vypočíta zodpovedajúcu hodnotu PWM. týmto spôsobom, ak zdvojnásobíte jas, vaše vnímanie je tiež rovnaké.
ak ho chcete použiť vo svojom kóde, je lepšie pridať tieto riadky:
jas = 50; // v percentách
PWM = prach (10, jas*1,914/100) -1)/0,0793;
analogWrite (ledpin, PWM);
POZNÁMKA: Normalizácia sa robí pre maximálny PWM 1023 (pre Wemos mini D1). Pre Arduino je PWM medzi 0-255. podľa toho to musíš vypočítať.
POZNÁMKA 2: Pridal som log-lineárny graf, aby som ukázal, ako spolu súvisí naše vnímanie a hodnota PWM. nemali by ste ho používať na montáž!
Krok 5: Záver
kalibrácia mi funguje dobre. Keď sú hodnoty PWM veľké, vidím rozdiel. Predtým ako veľké hodnoty som nevidel efekt stmievania. V podstate väčšina zmien bola vykonaná v malom rozsahu PWM. teraz je to kalibrované!
každá dióda LED, špeciálne odlišné farby, by mala mať svoje vlastné kalibračné parametre. Kalibroval som však modrú LED a použil som parameter pre bielu LED a výsledok bol prijateľný. takže možno môžete použiť môj kalibračný parameter bez toho, aby ste sa obťažovali !!
Odporúča:
KALIBRÁCIA SNÍMAČA ARDUINO PH: 7 krokov
KALIBRÁCIA SNÍMAČA ARDUINO PH: V tomto návode budeme kalibrovať pH senzor EZO spoločnosti Atlas Scientific pomocou Arduino Uno. TEORIA KALIBRÁCIE Najdôležitejšou súčasťou kalibrácie je sledovanie hodnôt počas procesu kalibrácie. Kalibrácia zariadenia je najľahšia v
Kalibrácia senzora pôdnej vlhkosti: 5 krokov
Kalibrácia senzora pôdnej vlhkosti: Na trhu je veľa meračov pôdnej vlhkosti, ktoré záhradníkovi pomôžu rozhodnúť sa, kedy zalievať svoje rastliny. Uchopenie hrsti pôdy a kontrola farby a textúry je bohužiaľ rovnako spoľahlivá ako mnohé z týchto pomôcok! Niektoré sondy dokonca registrujú
KALIBRÁCIA SNÍMAČA SALINITY ARDUINO: 9 krokov
KALIBRÁCIA SNÍMAČA SALINITY ARDUINO: V tomto tutoriáli budeme kalibrovať senzor EZO salinity/vodivosti K1.0 spoločnosti Atlas Scientific pomocou teórie kalibrácie Arduino Uno. KALIBRÁCIA Najdôležitejšou súčasťou kalibrácie je sledovanie hodnôt počas procesu kalibrácie. Najľahšie je
Ako vyrobiť stroj s hmotnosťou dieťaťa pomocou Arduino Nano, snímača zaťaženia HX-711 a OLED 128X64 -- Kalibrácia HX-711: 5 krokov
Ako vyrobiť stroj s hmotnosťou dieťaťa pomocou Arduino Nano, snímača zaťaženia HX-711 a OLED 128X64 || Kalibrácia HX-711: Dobrý deň, návod, pred niekoľkými dňami som sa stal otcom roztomilého dieťaťa? Keď som bol v nemocnici, zistil som, že hmotnosť dieťaťa je taká dôležitá pre sledovanie rastu dieťaťa. Takže mám nápad? aby som vyrobil stroj na hmotnosť dieťaťa. V tomto návode som
Kalibrácia snímača vlhkosti: 7 krokov
Kalibrácia senzora vlhkosti: Mám 3 senzory, ktoré môžu merať relatívnu vlhkosť vzduchu: BME280, SHT21, DHT22. Udávali schopnosť merania s presnosťou +/- 3% z rozsahu 20 až 80%. Avšak pri testovaní za rovnakých podmienok pre 3 senzory som získal 3 rôzne výsledky. Možno o