Cześć,
Parę lat temu kupiłem w Szwajcarii scyzoryk Victorinox Manager, który był moim wiernym kompanem przez lata - do czasu, kiedy zorientowałem się, że go zgubiłem. Kupno takiego samego modelu okazało się niemożliwe, ponieważ wycofano go z produkcji - pewnie dlatego, że był po prostu za dobry i zbyt uniwersalny... Kupiłem wobec tego inny model, Rambler, jednak z racji na brak długopisu, to już nie "to"
Funkcje
- pendrive z USB-A i USB-C (miniaturowy, wygodny do PC i do komórki),
- latarka ze światłem wąskokątnym (mniejsza i większa jasność), szerokokątnym (podobnież) i czerwonym (ciągłym i błyskającym).
- długopis i wykałaczka po jednej stronie (inaczej niż w oryginalnym scyzoryku).
Konstrukcja mechaniczna
Okładziny wykonałem z kątownika ze stopu aluminium, o grubości 1 mm. Pomiędzy okładzinami a ciałem scyzoryka znajdują się części wydrukowane na drukarce 3D z PET-G. Wydruki łączone są na wcisk z oryginalnym sercem scyzoryka (nie są od tej pory rozłączne), ale aluminiowe okładziny są do wydruków przykręcane - w elementy drukowane wtopione są inserty. Dzięki możliwości rozłączania bez problemu mogłem eksperymentować z elektroniką i mechaniką.
Elementy aluminiowe wyfrezowałem z użyciem miniaturowej frezarki Proxxon MF70, przerobionej przez mnie na CNC. Druk 3D wykonany został na drukarce DIY którą opisałem na łamach Elektrody.
Okienko na diody LED szerokokątne wykonałem z żywicy UV-utwardzalnej. Okienko służy dodatkowo za połączenie klejone między okładziną a osłoną przycisku. Diodę LED wąskokątną dobrałem eksperymentalnie spośród kilku diod o kącie świecenia od 15 do 25 stopni dostępnych w TME. Przyznam jednak, że na moje oko szału nie ma i sumaryczny strumień światła wydaje mi się sporo słabszy niż ten z diody szerokokątnej - chociaż oczywiście punktowo dioda wąskokątna świeci jaśniej.
EDIT: zmierzyłem natężenie światła od obydwu diod za pomocą telefonu i aplikacji phyphox, co potwierdziło moje subiektywne odczucie. Dioda wąskokątna generuje 600 luksów w odledłości około 15 cm od telefonu, podczas gdy dioda szerokokątna - 200 luksów... tylko że dioda szerokokątna świeci półsferą. Możliwe jednak, że pomiar jest obarczony błędem z racji na różnice spektralne generowanego światła.
Pendrive, poza opcją gromadzenia danych służy też jako przedłużacz do USB, dzięki któremu można ładować latarkę z portu USB-A bez użycia kabla. Pendrive posiada wypukłość na górze i dole obudowy, dzięki temu zamyka się z przyjemnym klikiem i nie ma tendencji do otwierania i wysuwania się.
Elektronika
Sercem latarki jest ATtiny10 w obudowie SOT-23. Dokonując wyboru procesora popełniłem pierwszy błąd
Jako źródło zasilania służy akumulator litowo-jonowy o pojemności 25 mAh. Maksymalny prąd białych LED to 25 mA, zaś w trybie mniejszej mocy jest to około 7 mA, zatem latarka powinna świecić przez mniej więcej 1 bądź 3 godziny. Dioda czerwona pobiera mniej prądu (odpowiednio 10 mA w trybie ciągłym i około 2 mA w trybie migania). Za ładowanie odpowiada układ TP4057, który jest odpowiednikiem TP4056 w mniejszej obudowie.
Program
Diody białe sterowane są za pomocą sprzętowego generatora PWM, przy czym kontroluję ich prąd poprzez pomiar spadku napięcia na rezystorze R7. Zaimplementowałem sterownik PI (bez D), dzięki czemu świecenie jest w miarę niezależne od napięcia baterii. Aczkolwiek - nie do końca, bo tutaj, jak się okazało, popełniłem drugi błąd - a mianowicie wybrany przeze mnie procesor, jakkolwiek posiada ADC, tak nie ma wbudowanego źródła napięcia odniesienia (jako odniesienie służy napięcie zasilania). Dlatego prąd LED trochę zależy od napięcia zasilania, ale w stopniu znacznie mniejszym, niż gdyby w szereg z diodą był po prostu podłączony rezystor. Z powodu braku źródła napięcia odniesienia, niestety nie znam również poziomu energii baterii.
Dioda czerwona sterowana jest po prostu za pomocą programowo zrealizowanego PWM i nie kontroluję jej prądu. Założyłem, że z racji na jej mniejszy spadek napięcia (niż dla diod białych) jasność zależy od napięcia zasilania w stopniu, który nie powinien przeszkadzać w użytkowaniu.
Zdarzenia procesora
Każde naciśnięcie przycisku, jak również podłączenie ładowarki, wywołuje zresetowanie procesora. Dzieje się tak, ponieważ zarówno przycisk, jak i wyjścia statusu ładowarki (charge i standby) przy zmianie stanu na "zero" zwierają na chwilkę pin RESET do masy. Ale, jako że zwierają go przez kondensatory 100 nF, to krótką chwilkę po zboczu opadającym, napięcie na wejściu reset stabilizuje się na poziomie powyżej progu zerowania procesora. Dlatego po wystąpieniu RESET, procesor może zmierzyć napięcie na wejściu reset za pomocą wbudowanego ADC i stwierdzić: czy wystąpiło jedynie krótkie naciśnięcie przycisku, czy też przycisk jest przytrzymany oraz czy ładowanie jeszcze trwa, czy też już się skończyło. Pomiędzy resetami trzeba w jakiś sposób przechować status programu. Zrealizowałem to za pomocą zmiennej stanu z atrybutem section(".noinit"), która nie ulega wyczyszczeniu w trakcie resetu.
PCB i lutowanie
Użyłem elementów w obudowach SOT-23 oraz rezystorów i kondensatorów w obudowach 0402. To jest pierwszy mój układ z elementami 0402 i przyznam, że różnica względem 603 jest spora - znacznie większa, niż miedzy np. 0805 a 0603. Dałem radę to zlutować, ale łatwo nie było. Płytka drukowana o grubości 1 mm wykonana została przez JLCPCB.
Do zrobienia
Płytkę z elektroniką trzeba będzie zalać żywicą UV, albo zabezpieczyć w inny sposób - ale to zrobię dopiero, kiedy będę mieć pewność, że program działa jak należy.
Powinienem również rozważyć przeróbkę płytki drukowanej, by wyposażyć ją w brakujące pola lutownicze dla programatora (przy okazji można by przesunąć gniazdo USB o jakieś 0.5 mm, by pendrive znajdował się nieco dalej od PCB), ale przyznam, że ponowne lutowanie tych malutkich kondensatorów i rezystorów trochę mnie odrzuca
Wnioski
- Udało mi się bez większego problemu upchnąć wykałaczkę i długopis po jednej stronie scyzoryka, ale Victorinox tego w ten sposób nie realizuje. Trochę dziwne
- LED 3mm świeci nieco za słabo... znaczy jak najbardziej wystarcza, by znaleźć w trawie zgubiony przedmiot. Bardziej precyzyjnie powiem, że rozczarowuje mnie dysproporcja jasności między nowoczesną diodą w obudowie MLCC, a tą 3mm THT. Czyżby DIY soczewka odlana z żywicy + dioda MLCC była tu rozwiązaniem
- przydałoby się znać poziom napięcia akumulatora - no ale to nie z tym procesorem. No chyba, że dałoby się wykorzystać czerwoną diodę (tę która i tak jest w latarce), albo jakieś źródło napięcia odniesienia podłączone równolegle do niej, w roli referencji - tylko gdzie ja znajdę na to miejsce
- Uważam że dość sprytnie rozwiązałem problem przycisku i maszyny stanów programu
Obsługę i trochę detali konstrukcyjnych przedstawiają zdjęcia i załączony film.
Pozdrawiam,
Fimek
Film YouTube:
Fajne? Ranking DIY