Mikroprocesorowy sterownik latarki (Flagiusz)

co i jak zrobiłem...
Awatar użytkownika
df
Posty: 307
Rejestracja: piątek 23 lis 2007, 15:38
Lokalizacja: z nienacka
Kontakt:

Post autor: df »

Calineczka pisze:Darku, czyli u siebie zrobiłeś wersję z tranzystorkiem informującym o zmianie trybu/zaniku zasilania?Czemu taka wersja a nie z detekcją obecności zasilania na samym Attiny, przed diodą 1n4148?
Pierwotnie tak właśnie chciałem zrobić, ale w trybach impulsowych (gdy LED jest dłużej zgaszony niż zapalony) napięcie na kondesatorze wyjściowym nie spada na tyle szybko, aby przekroczyć próg poziomu CMOS - czyli Vcc/2.
Co więcej, gdy LED świeci jest na nim - przyjmijmy dla uproszczenia - 3,5V
U mnie z dokładnie tego samego napięcia jest zasilany mikrokontroler (spadki na diodzie krzemowej od zasilania uC i Uce(sat) dla sterującego LED`em tranzystora bipolarnego pomijam - oba są ok.0,7V)
A więc żeby sterownik "zobaczył" wyłączenie zasilania po stronie wyjścia przetwornicy, napięcie to musiałoby spaść co najmniej do połowy Vcc czyli 3,5/2=1,75V
Tylko, że ... charakterystyka LED`a jest nieliniowa i o ile szybko spada do ~2,7V o tyle niżej już schodzi dość wolno.

Aby to rozwiązanie dobrze działało, trzeba by dać mniejszą pojemność na wyjściu przetwornicy lub rezystor "gaszący" lub sprowadzić próg niżej na dzielniku resystorowym lub rezystorze + zenerce.
Mniejsza pojemność, to słabsza stabilność i sprawność step-up`a, a rezystor gaszący, to strata energii - czyli spadek sprawności.

Przesuwanie napięcia na dzielniku rezystancyjnym w celu dopasowania progu napięcia odcięcia, to 2 elementy - czyli dokładnie tyle samo co jeden rezystor i jeden tranzystor.
Tranzystor jest oczywiście 10x droższy od rezystora, ale przy SMD kupowanych w ilościach min.100szt różnica ta wyniesie pewnie z 10 groszy ;-)
Tak więc uznałem, że bezpieczniej będzie sprawdzać napięcie na wejściu układu (tuż przy baterii) i sobie je dopasowywać do napięcia portu przez rezystor i tranzystor.
Rozwiązanie to jest energetycznie rówie bardzo oszczędne - R=10k, Ube=0,7V h21e>100, a więc prąd idący przez tą gałąź dla 1,2V ma zaledwie (1,2-0,7)/10k=50uA

Przy zasilaniu z wyższych napięć (>1,8V, czyli 2x/3xAA, czy Litowe) takiego problemu nie ma - co mialeś okazję empirycznie sprawdzać.
Calineczka pisze:Zamiast tranz.BC proponuje mosfety, liste masz w mailu;-)
Oczywiście - wersja, którą robie jest "lajtowa" i bardziej traktuje ją jako w pełni funkcjonalny prototyp.
Finalna wersja będzie w lepszej obudowie i z lepszą diodą (pewnie Romisen RC-2 lub UF-502B).
Calineczka pisze:Tryby wg. mnie:
I grupa
1. światło ciągłe 1 o jasności definiowanej przez użytkownika
2. światło ciągłe 2 o jasności definiowanej przez użytkownika
3. światło ciągłe 3 o jasności definiowanej przez użytkownika

II grupa
1. S.O.S.
2. Emergency - 4x krótkie błyski z 0,5s przerwą (jak na amerykańskich filmach ;-)
3. Emergency 2 - 4x krótkie błyski naprzemiennie ze 100% jasnością i 50% z 0,2s przerwą (efekt podobny do 6)
4. Jedno krótkie mignięcie co 5 sek. (umożliwia lokalizację i pobiera b.mało prądu) - tryb ten jest używany przy automatycznym wyłączaniu latarki po 30 minutach braku aktywności
5. Alert - krótkie błyski co 1s
6. Miganie ok. 1Hz z wypełnieniem 50/50 (jak kierunkowskaz)
7. coś co trochę wygląda jak błyskanie żarówką - krótkie błyski z gasnącą w czasie poświatą powtarzane co 1s
8.....itd.stroboskopy

III SETUP
Arku, nie zapominaj, że grup może być więcej niż 2 ;-)
W przesłanej dziś wersji masz np.3 grupy (1.ciągłe, 2.sekwencje alarmowe, 3.strobe`y o różnej częstotliwości) + setup
Calineczka pisze:spawarka i flash też brzmia ciekawie, hehe...ja nie mam nic przeciwko ;-)
OK ;-)
po optymalizacjach mamy jeszcze w tej wersji 7% wolnej pamięci - spokojnie wejdą oba :-)

[ Dodano: Sob Lut 09, 2008 4:19 pm ]
night_82 pisze:można rzec że driver full wypas, kilka trybów przydatnych a reszta bajery :mrgreen: ale ogółem fajny projekt
Oczywiście - ciężko jest raz jeszcze wymyślić koło ;-)
Ale jeżeli możliwości układu i chęci osoby go programującej są większe niż "wymagane minimum" to dlaczego by nie?
Tym bardziej, że nic to specjalnie więcej nie kosztuje.
Na razie jest to faza koncepcyjno-testowa - w wersji docelowej łatwiej będzie z czegoś szybko zrezygnować niż na szybko coś niesprawdzonego dodawać - a jak widzisz wszystko jeszcze ewoluuje.

Druga sprawa, to atrakcyjność i konkurencyjność - funkcjonalnie robi dobrze wszystko to, co ma robić, a do tego ma szereg "wodotrysków" z których większość być może jest bajerem i tylko bajerem.

Celem tego projektu było (w kolejności):
1. łatwość obsługi / ergonomia - sterowanie zrobione zostało inaczej niż w innych rozwiązaniach - co z pozoru może wydawać się trudniejsze, ale jak się zrozumie lub zobaczy tą koncepcję bardzo szybko staje się ona jasna i intuicyjna
2. funkcjonalność - czyli ma to z czego zwykły i mniej zwykły użytkownik potrzebuje lub chciałby mieć, a dotychczas nie miał - typu programowanie jasności, konfiguracja pamięci trybów itd.
3. uniwersalność - a więc możliwość łatwego dodania do latarek z niskim i wyższym napięciem zasilania
4. możliwie szeroki wachlarz dodatkowych trybów pracy / sekwencji, ale zaimplementowany tak, aby nie wchodził w konflikt z pkt.1,2 i 3 - czyli nie coś kosztem czegoś, ale to co ma być plus coś extra.

[ Dodano: Wto Lut 12, 2008 8:52 pm ]
Skończyłem dzisiaj składać swojego mod`a na Powerlight HX-G011.

Oto co zostało zrobione:
- w całości zrobiona od zera nowa elektronika: przetwornica step-up na MAX1796 oraz własny sterownik na mikrokontrolerze (v2.1.006)
- wymieniona dioda LED z jakiejś chińskiej przewlekanej fi.5mm (3 segmenty) na 0,5W / 25lm w stylu luxeona
- spiłowany reflektor (skrócony cokół o ok. 4mm i rozwiercony otwór) - piłowane stopniowo i często sprawdzane, tak by uzyskać możliwie dokładne ustawienie emitera dokładnie w ogniskowej

Efekt końcowy - pozytywny, choć czas pracy poświęcony na tego mod`a mocno przekroczył pierwotne szacunki.
Latarka ta jest bardzo niewdzięczna do przerabiania z uwagi na niewielką ilość miejsca w środku na elektronikę.

Latarka ta z założenia miała być bardzo oszczędna, a jednocześnie miała stanowić swoisty poligon do testowania "na żywo" różnych rozwiązań implementowanych w kolejnych wersjach sterownika (firmware).
Stąd "słabszy" sterownik (MAX1796 - 0,5A na kluczu) i mniejszej mocy (0,5W) dioda LED.

W najwyższej jasności latarka pobiera z NiMH niecale 0,5A co przy założeniu pojemności akumulatorka na poziomie 2500mAh powinno dać dobry rezultat ok. 5 godzin ciągłego świecenia.
W trybie tym prąd na LED nieznacznie przekracza 150mA, a uzyskana sprawność to ok. 83% (w tym zasilanie mikrokontrolera).

Przy minimalnej jasności latarka pobiera 15mA, z czego na diodę LED idzie nieco ponad 5mA. Przy tak niskim prądzie dioda emituje dość światła by dało się przy nim spokojnie czytać gazetę. Czas pracy w tym trybie to niecały tydzień pracy non-stop.

A wszystko to z jednego ogniwa AA!

Zdecydowanie największym sukcesem tego projektu był sam sterownik, który szczególnie dzięki mocnemu wsparciu Calineczki (wielkie dzięki za motywację!) nie skończył w kolejnej mojej latarce, lecz sprawił (mam nadzieję) uśmiech na twarzach jeszcze kilku innych osób :-)

W niedalekiej przyszłości prawdopodobnie stanie się on dostępny w postaci gotowego modułu produkowanego w większych ilościach :-D

I jeszcze kilka zrobionych "na gorąco" fotek...

Polutowane płytki, mikrokontroler zaprogramowany on-board:
Obrazek

Przerobiony reflektor:
Obrazek

Jeszcze tylko połączyć obie części razem...
Obrazek

I mamy gotowy do pracy kompletny moduł:
Obrazek

Obraz promienia:
Obrazek
Flagiusz
Awatar użytkownika
Calineczka
Posty: 7578
Rejestracja: niedziela 11 lis 2007, 20:19
Lokalizacja: Wejherowo
Kontakt:

Post autor: Calineczka »

...no to beamshot sobie ładny wypracowales pilnikiem, hehe.
Gratuluje uporu, konsekwencji i rezultatów :mrgreen:
Myślę, że jak byś tam wsadził seoulka lub inna diodkę o lepszej wydajnosci zyskal bys na jasnosci...bo z tego co pamietam masz tam cos ala 0,5W diodkę?
Ladnie Ci plyteczki wyszly;-)
Panowie, nie sugerujcie sie cyferkami na dlawiku, jest przewiniety :wink:
Od kolegow ktorzy dostali driverek do testowania oczekujemy wnioskow, uwag, komentarzy, propozycji...itd;-)
Awatar użytkownika
df
Posty: 307
Rejestracja: piątek 23 lis 2007, 15:38
Lokalizacja: z nienacka
Kontakt:

Post autor: df »

I jeszcze kilka fotek...

Jak prezentuje się ładnie zogniskowany LED w przypiłowanym ręcznie reflektorku:
Obrazek

Porównanie jasności przerobionej latarki (w trybie High - po lewej) do oryginalnej - po prawej:
Obrazek

Dławik ma 22uH (przewinąłem z 10uH/1.5A, który kiedyś kupiłem do innego celu).
LED z artronic`ka przy 0,5W (150mA) wg. katalogu ma ok. 25lm (CREE P4, czeka na lepsze body).
A do płytek sporo razy lutowałem kabelki (programowanie, testy), więc nie wszystkie luty się tak ładne błyszczą się tak jak po pierwszym lutowaniu.
Ostatnio zmieniony środa 13 lut 2008, 14:59 przez df, łącznie zmieniany 1 raz.
Flagiusz
Awatar użytkownika
pawelsz
Posty: 1706
Rejestracja: wtorek 13 lis 2007, 11:36
Lokalizacja: Wrocław

Post autor: pawelsz »

Od kolegow ktorzy dostali driverek do testowania oczekujemy wnioskow, uwag, komentarzy, propozycji...itd;-)
Jak tylko dojdzie zabawka, to poklikam i na pewno wypowiem się jak fajnie to działa (no jak opanuję setup:) )
Awatar użytkownika
Bocian
Site Admin
Posty: 3157
Rejestracja: niedziela 11 lis 2007, 21:21
Lokalizacja: Wiskitki

Post autor: Bocian »

A ja muszę mojej niewdzięcznej połówce odebrać (w sumie za bardzo się pośpieszyłem z tym giftem) i przetestować go jednak dokładniej. A setup nie jest trudny a za to wielce przydatny :mrgreen:
Sometimes darkness can show you the light
Awatar użytkownika
Steff.k
Posty: 401
Rejestracja: niedziela 06 sty 2008, 13:51
Lokalizacja: Kraków

Post autor: Steff.k »

Czy będzie też wersja bez Lambdy, bardziej uniwersalna?
Np. podłączamy dowolną przetwornicę lub inne zasilanie, co najmniej 5V (dla uProcka przydałoby się coś w rodzaju 7805) i nie więcej niż wytrzymuje tranzystor kluczujący(45V), powiedzmy 12 V. Dzięki temu można by, zasilać diody podłączone szeregowo. Wystarczyłoby tylko delikatnie zmienić płytkę i dodać stabilizator na uProcka. Dzięki temu projekt zyskał by dużo na uniwersalności.

Kiedy planowane jest wydanie produktu dla ogółu, i jaka będzie jego przybliżona cena??
Awatar użytkownika
df
Posty: 307
Rejestracja: piątek 23 lis 2007, 15:38
Lokalizacja: z nienacka
Kontakt:

Post autor: df »

Steff.k pisze:Czy będzie też wersja bez Lambdy, bardziej uniwersalna?
Np. podłączamy dowolną przetwornicę lub inne zasilanie, co najmniej 5V (dla uProcka przydałoby się coś w rodzaju 7805) i nie więcej niż wytrzymuje tranzystor kluczujący(45V), powiedzmy 12 V. Dzięki temu można by, zasilać diody podłączone szeregowo. Wystarczyłoby tylko delikatnie zmienić płytkę i dodać stabilizator na uProcka. Dzięki temu projekt zyskał by dużo na uniwersalności.
Tak, taki moduł również jest w planie - szczegóły: Calineczka
Steff.k pisze:Kiedy planowane jest wydanie produktu dla ogółu, i jaka będzie jego przybliżona cena??
Myślę, że już niedługo - szczegóły: Calineczka


Więcej na temat tej (i innych) przeróbek: http://flagiusz.republika.pl/flashlight ... ght_6.html
Flagiusz
Awatar użytkownika
Calineczka
Posty: 7578
Rejestracja: niedziela 11 lis 2007, 20:19
Lokalizacja: Wejherowo
Kontakt:

Post autor: Calineczka »

Steff.k, chcial bym jak najszybciej zaczac jakas mala produkcje ale nawet mala produkcja wymaga sporych nakladow, czasowych przede wszystkim.Finalna wersja sterownika z PWM juz chyba istnieje...o ile pawelsz, Midi i Bocian wiecej uwag miec nie beda....bo maja co testowac.
Poki co skupimy sie na jednej plytce...przyszlosc pokaze czy bedzie wersja na wyzsze napiecia.teoretycznie oczywiscie to latwo zrobic a praktycznie, jak sie ma prace zawodowa i male dzieci(np. dodatkowo chore) sprawa sie komplikuje.
Tylko cierpliwosc moze nas uratowac...;-)
Byc moze wczesniej zaproponuje kilka plytek z driverkiem na bazie AMC7135, cos takiego lub podobnego jak dostal Pawelsz, Bocian i Midi-info o tym driverku w watku:
http://www.swiatelka.pl/viewtopic.php?t=284

Cena...nie wiem.
Probowalem same Maximy zamowic i juz okazalo sie ze to spory wydatek....jeden ukladzik to chyba kolo 7$+przesylka...drogo.
Byc moze zamiast lambdy+driver by Df wyjdzie najpierw driverek bez lambdy za to z ustawionym ogr.pradowym do np. 1A max...albo nawet z opcj zworki(ustawianie Imax)
Awatar użytkownika
df
Posty: 307
Rejestracja: piątek 23 lis 2007, 15:38
Lokalizacja: z nienacka
Kontakt:

Post autor: df »

Kolejnym krokiem rozbudowy sterownika będzie automatyczna detekcja zastosowanych ogniw oraz informowanie użytkownika o niskim stanie oraz zabezpieczenie przed nadmiernym rozładowaniem.
Funkcje te będą realizowane przez procesor za pomocą 10-bitowego przetwornika ADC.

Kalibracja (detekcja typu ogniwa) następowałaby automatycznie po każdorazowym włączeniu lub po wybraniu opcji w konfiguracji latarki.

Aby móc poprawnie wykryć typ ogniwa i jego stan potrzebne są dla każdego z nich następujące napięcia:

Umax - ogniwo w pełni naładowane (bez obciążenia)
Unorm - naładowane ogniwo w stanie "normalnym" pod obciążeniem
Uwarn - napięcie, poniżej którego sygnalizowany będzie niski poziom energii
Umin - minimalne napięcie ogniwa, przy którym zasilanie układu powinno zostać odłączone (ograniczenie przed nadmiernym rozładowaniem)

I w tej kwestii poprosiłbym Was o pomoc - jak powinny wyglądać progi napięć dla poszczególnych (typowych) ogniw: bateria Alkaiczna, NiCd/NiMH, Litowe itd.

Myślę, że informacja o niskim stanie zasilania byłaby sygnalizowana użytkownikowi w podobny sposób jak zbliżający się stan uśpienia - czyli pojedynczymi krótkimi "ciemnymi" błyskami powtarzanymi co kilka sekund, po czym układ automatycznie przechodziłby do ustalonej (minimalnej?) jasności, aż do osiągnięcia napięcia wyłączenia Umin.

Ograniczenie jasności dotyczyłoby wszystkich trybów - zarówno ciągłych jak i sekwencji.

W takim rozwiązaniu detekcja odłączenia zasilania (obsługa trybów "na wyłączniku") mogłaby być zrealizowana także w oparciu o pomiar napięcia, z odpowiednio przyjętym progiem np. <Umin lub <n[%]*Umin
Flagiusz
Awatar użytkownika
Dominik
Posty: 860
Rejestracja: środa 14 lis 2007, 21:22
Lokalizacja: Wrocław

Post autor: Dominik »

Li-Ion - układy zabezpieczające zwykle odcinają zasilanie przy min. 3,2V
max 4,25V, ostrzegawcze 3,5 - bo od tego bardzo szybko spada.
NiMH - niejeden flame był o to toczony ale można przyjąć min. 1,05V
napięcie max 1,4V, ostrzegawcze 1,15V
użytkownik zbanowany za niekoleżeńskie zachowanie (m.in. wykasowanie wartościowych treści ze swoich postów)
toosh
Posty: 138
Rejestracja: poniedziałek 10 gru 2007, 17:03
Lokalizacja: B-stok
Kontakt:

Post autor: toosh »

dominik- masz moze jakieś charakterystyki wyładowania li-on? 18650. itp?
Awatar użytkownika
night_82
Posty: 335
Rejestracja: czwartek 13 gru 2007, 20:46
Lokalizacja: Warszawa

Post autor: night_82 »

toosh, poszukaj w sieci, np u Sanyo, powiedzmy coś takiego : http://www.sanyo-component.com/fileadmi ... lion_E.pdf
Hoffer007

Post autor: Hoffer007 »

Panowie a zrobil by ktos dla mnie taki driver-ek :D?
Niestety sam tego nie poskladam :( a fajnie by bylo miec przynajmniej jedna taka zbajerowaną latarke ;)

Jesli by ktos byl taki zyczliwy to bardzo prosze o wiadomosc (koszta czas realizacji)

Pozdrawiam.
Awatar użytkownika
Calineczka
Posty: 7578
Rejestracja: niedziela 11 lis 2007, 20:19
Lokalizacja: Wejherowo
Kontakt:

Post autor: Calineczka »

...powoli zbliza sie ten moment, ze zacznie sie komercyjna produkcja driverka.Dopracowywane sa juz szczegoly, dograna firma ktora zrobi obwody drukowane, pozostalo zakupic czesci, zaprojektowac plytke...i zaczac je skladac.Dopingujcie z jednej strony, z drugiej-cierpliwosci.;-)
JUz w zamyslach kolejny driver...z detekcja rodzaju akumulatora, pewnie wskaznikiem naladowania-i mozliwe ze RGB :mrgreen:
Poki co-ostatnie pytania.
Jako ze pawelsz jest zwolennikiem MOCY i JASNOSCI, i chwala Mu za to, zaczelismy sie zastanawiac nad dodatkowym menu w setupie.Docelowo driverek bedzie wypuszczany prawdopodobnie z predefiniowanym pradem maksymalnym, np. 1A. Zastanawiamy sie, czy zrobic mozliwosc dodatkowego wyboru przez "kapniecie cyną" np. 1,2A max...lub tez dodatkowe menu w setupie, gdzie mozna by wlaczac badz wylaczac np. "+50% wiekszy prad maksymalny". A moze specjalny-dodatkowy tryb wywolywany z kazdego miejsca menu-4 klikniecia i latarka odpala sie na 150% pradu maksymalnego o ile akkus pozwala?
Dawajcie pomysly to moze zobaczycie je w swoim driverku :mrgreen:
Awatar użytkownika
pawelsz
Posty: 1706
Rejestracja: wtorek 13 lis 2007, 11:36
Lokalizacja: Wrocław

Post autor: pawelsz »

Jesteście Wielcy
JUz w zamyslach kolejny driver...z detekcja rodzaju akumulatora, pewnie wskaznikiem naladowania
dobra myśl- dodałbym wykrywanie, ew.setup typu akusa (NiMh/lion ew bateria -tej nam nie szkoda...) i ostrzeganie przy np szacowanych 20% stanu akusa ostrzeżenie- np.mryganie w trakcie pracy
W sumie nawet jesli driver miałby te 1.2A max, to przecież można predefionować tryby na max 1A a i tak można ustawić tryb max mniej, ale jeśli ktoś lubi inaczej, to sugeruję kropelkę cyny byle nie 4kliki- PROSZĘ - 3 już są dość trudne- 4 niewiele osób przejdzie bez extra treningu (a myślałem , że klikanie myszką szybkie mam opanowane a i z latarakami też niezgorzej...)
Extra opcja zamiesza w setupie, ale jest to myśl niezła- w sumie ustawia się tam rzadko i potem używa, zresztą high rzadko jest używany (z wyj.latarek w teren, ale one są większe z reguły) - na ogół low, czasem mid.
A jakby jeszcze był czujnik termiczny w driverze, to byłby mega wypas - no na ogół dioda jest blisko drivera (w jednym złowie niejako) i jeśli drivera wykryje za duża temp. to przejdzie w niższy tryb i dioda nie padnie- to ukłon dla ludzi chcących używać max mocy i mieć te reklamowane 50.000h życia diody (przy moim używaniu lampki jako EDC w trybie high raczej tego nie dożyję...)
ps
piszę się na 2sztuki - może być pre-produkcja :D
ODPOWIEDZ