W zasadzie nie wiem czy to pomysł do supladevice, czy tutaj...
Przydało by się (z poziomu samego urządzenia) ustawianie zakresu PWMu na wyjściu, który przekłada się na sterowanie (0%-100%). Tak by nie było wprost przepisywane w tym miejscu brightnessAdj = brightness;
tylko przeliczane ładnie wg funkcji
brightnessAdj_min = Min; // wartość najmniejsza, np. 250
brightnessAdj _max = Max; // wartość największa, np. 1000
zakres_brightness = 1023; // wartość maks przysyłana z Cloud/ustawiana dla brightness – jaka tam jest faktycznie w supla)
if brightnessAdj_min < brightnessAdj_max {
brightnessAdj_współczynnik_b = brightnessAdj_min;
brightnessAdj_współczynnik_a = ((brightnessAdj_max - brightnessAdj_min) / zakres_brightness);
} else {
brightnessAdj_współczynnik_b = brightnessAdj_max;
brightnessAdj_współczynnik_a = ((brightnessAdj_min - brightnessAdj_max) / zakres_brightness);
}
(oczywiście wartości zmiennych-stałych konfigurujących te zakresy - gdzieś w konfiguratorze WWW modułu zaszyte)
Po co? Przykładowo:
by móc ograniczyć minimalną jasność/wartość , bo niektóre oświetlenia przy minimum zaczynają migotać już widocznie, albo np dla regulacji wentylatora - poniżej pewnej wartości nie kręci się już, więc nie ma sensu móc ustawiać tylko np 40%-100% a wszystko poniżej to stoi
aby móc ograniczyć maksymalną jasność /wartość
Przydatne np dla przewymiarowanych ledów - szkoda by się grzały zbędnie przy 100% prądu, skoro realnie wystarczy np. 80% pradu a jasność już znacząco nie wzrasta (a za to żywotność to zwiększy znacząco).
Albo gdy zbalansować oświetlenie (gdy w jednym miejscu mamy mocniejsze, w innym słabsze realnie) - tak by ustawienie 100% na różnych dimmerach/kanałach - dawało taką samą jasność wszystkich ustawianych źródeł światła.
(zwłaszcza jakby dało się takie zmienne wprowadzić nie tylko dla brightness ale też RGB) - aby zrobić kalibrację zakresu kolorów - bo większość taśm/lamp RGB ma beznadziejny balans, i ustawienie np 100R 100G 100B nie daje w ogóle niczego podobnego do białego - a tą metodą można by skalibrować nie tylko biały dla pełnej jasności, ale też wartości minimalnej (gdzie przez inną charakterystykę ledów różnych kolorów - to się rozjeżdża) i jasności pośrednich.
aby dało się użyć "servo modelarskie" jako element wyjściowy podłączony do PWMu - przyjmują one PWM z różną częstotliwością, ale w ograniczonym zakresie wypełnienia (domyślnie - 1500us = wartość środkowa, 500us minimum, 2500us wartość maksimum, a wszystko dla impulsów co 20ms - czyli przydała by się jeszcze "regulacja czestotliwośći PWM" o której wspominałem już - ale większość serv realnie działa ok od 50Hz do 400Hz, a nawet wyżej, tylko trzeba sobie zakres pwm przeskalować by osiągnąć pełen zakres ruchu).
Dałoby to możliwość zbudowania np serva modelarskiego podłączonego do ośki potencjometru regulacji głośności w jakimś sprzęcie audio ;) Albo jakiegoś dimmera czy innego regulatora który ma gałkę - sprzęgniętego z suplą w sposób czysto mechaniczny ;)
W zasadzie nie wiem czy to pomysł do supladevice, czy tutaj... Przydało by się (z poziomu samego urządzenia) ustawianie zakresu PWMu na wyjściu, który przekłada się na sterowanie (0%-100%). Tak by nie było wprost przepisywane w tym miejscu
brightnessAdj = brightness;
tylko przeliczane ładnie wg funkcjiPo co? Przykładowo:
by móc ograniczyć minimalną jasność/wartość , bo niektóre oświetlenia przy minimum zaczynają migotać już widocznie, albo np dla regulacji wentylatora - poniżej pewnej wartości nie kręci się już, więc nie ma sensu móc ustawiać tylko np 40%-100% a wszystko poniżej to stoi
aby móc ograniczyć maksymalną jasność /wartość Przydatne np dla przewymiarowanych ledów - szkoda by się grzały zbędnie przy 100% prądu, skoro realnie wystarczy np. 80% pradu a jasność już znacząco nie wzrasta (a za to żywotność to zwiększy znacząco). Albo gdy zbalansować oświetlenie (gdy w jednym miejscu mamy mocniejsze, w innym słabsze realnie) - tak by ustawienie 100% na różnych dimmerach/kanałach - dawało taką samą jasność wszystkich ustawianych źródeł światła.
(zwłaszcza jakby dało się takie zmienne wprowadzić nie tylko dla brightness ale też RGB) - aby zrobić kalibrację zakresu kolorów - bo większość taśm/lamp RGB ma beznadziejny balans, i ustawienie np 100R 100G 100B nie daje w ogóle niczego podobnego do białego - a tą metodą można by skalibrować nie tylko biały dla pełnej jasności, ale też wartości minimalnej (gdzie przez inną charakterystykę ledów różnych kolorów - to się rozjeżdża) i jasności pośrednich.
aby dało się użyć "servo modelarskie" jako element wyjściowy podłączony do PWMu - przyjmują one PWM z różną częstotliwością, ale w ograniczonym zakresie wypełnienia (domyślnie - 1500us = wartość środkowa, 500us minimum, 2500us wartość maksimum, a wszystko dla impulsów co 20ms - czyli przydała by się jeszcze "regulacja czestotliwośći PWM" o której wspominałem już - ale większość serv realnie działa ok od 50Hz do 400Hz, a nawet wyżej, tylko trzeba sobie zakres pwm przeskalować by osiągnąć pełen zakres ruchu). Dałoby to możliwość zbudowania np serva modelarskiego podłączonego do ośki potencjometru regulacji głośności w jakimś sprzęcie audio ;) Albo jakiegoś dimmera czy innego regulatora który ma gałkę - sprzęgniętego z suplą w sposób czysto mechaniczny ;)