Spisu treści:

Tylne światło rowerowe z niespodzianką: 9 kroków (ze zdjęciami)
Tylne światło rowerowe z niespodzianką: 9 kroków (ze zdjęciami)

Wideo: Tylne światło rowerowe z niespodzianką: 9 kroków (ze zdjęciami)

Wideo: Tylne światło rowerowe z niespodzianką: 9 kroków (ze zdjęciami)
Wideo: ***Rowerowy mistrz świata*** | #shorts 2024, Lipiec
Anonim
Tylne światło rowerowe z skrętem
Tylne światło rowerowe z skrętem
Tylne światło rowerowe z skrętem
Tylne światło rowerowe z skrętem
Tylne światło rowerowe z skrętem
Tylne światło rowerowe z skrętem

Spojrzmy prawdzie w oczy. Tylne światła są nudne.

W najlepszym razie mrugają, mrugną - spójrz na mnie! Cały czas mrugam - woohoo. I zawsze są czerwone. Bardzo kreatywne. Możemy to zrobić lepiej, może niewiele, ale i tak lepiej niż tylko „mrugnięcie mrugnięciem”. Jeździłem na rowerze podczas uroczystości sylwestrowych i ludziom się podobało i nie wszyscy byli pijani;-) Reszta jest całkiem prosta: 2x ogniwa AA, konwerter boost na 5V, trochę diod RGB, obowiązkowy mikrokontroler, custom płytki drukowane z BatchPCB, perfboard i zwykły sprzęt lutowniczy.

Krok 1: Główny schemat

Główny schemat
Główny schemat
Główny schemat
Główny schemat
Główny schemat
Główny schemat
Główny schemat
Główny schemat

Naprawdę nic specjalnego. Jeśli wiesz, jak podłączyć układ AVR na płytce stykowej lub Arduino na płytce stykowej, jeśli wolisz to bardziej, nie będziesz miał z tym żadnych problemów. Użyłem KICADa do projektowania schematu i płytek drukowanych. KICAD jest open source i w przeciwieństwie do eagle, który również ma darmową (jako darmową) wersję, nie ma absolutnie żadnych ograniczeń co do wielkości plansz, które możesz zrobić. Ty też dostajesz pliki gerber, które działają z każdym fantastycznym domem. Np. BatchPCB nie miał z nimi problemów.

Na schemacie znajdziesz tylko procesor, diody LED, kilka rezystorów i kondensatorów. To wszystko. Jest też kilka nagłówków. Płyty mają nagłówek ICSP do flashowania bootloadera i nagłówek 6-pinowy do wygodnego przesyłania szeregowego. Ostatnie 2 nagłówki są zdublowane i zawierają zasilanie, I2C i dwa dodatkowe piny GPIO/ADC. Do zasilania wszystkich 8 anod jednego koloru służą 3 piny GPIO z 3 rezystorami ograniczającymi prąd. Poszczególne diody LED są włączane lub wyłączane za pomocą 8 pinów GPIO do napędzania katod. W zależności od rodzaju pracy diody LED są albo multipleksowane (PWM dla większej liczby kolorów) albo całkowicie włączone (wyższa jasność). Trochę informacji o pakietach, których użyłem dla tej płyty: - ATmega168-20AU: TQFP32 SMD - LED: PLCC6 5050 SMD - Rezystory: 0805 SMD - Kondensatory: 0805 SMD, 1206 SMD

Krok 2: Radzenie sobie z diodami LED

Radzenie sobie z diodami LED
Radzenie sobie z diodami LED

Nie będę tu wchodzić w szczegóły, ponieważ zostało to wielokrotnie omówione w innych miejscach. Musisz tylko upewnić się, że nie przekroczysz maksymalnego prądu wyjściowego mikrokontrolera na pin (około 35mA lub więcej dla AVR). To samo dotyczy prądu diod LED. Jak można się domyślić na zdjęciu, użyłem jednej z diod SMD, aby obliczyć współczynnik rezystora, aby uzyskać dobrze zbalansowane białe światło. Po drugiej stronie są trzy potencjometry 2k. To wszystko. W tym przypadku skończyłem z opornikami od 90 do 110 Ω, ale to zależy od rodzaju diody, jaką otrzymamy. Wystarczy użyć standardowego multimetru, aby określić napięcie przewodzenia diody LED V_led i można rozpocząć pracę.

Korzystając z prawa Ohma, możesz obliczyć wartości rezystorów ograniczających prąd dla małych diod LED, takich jak: R = (V_bat - V_led) / I_led I_led nie powinien przekraczać żadnego ograniczenia prądu używanych części. Również to podejście jest dobre tylko dla aplikacji niskoprądowych (może do 100mA) i nie powinno być stosowane w przypadku diod LED Luxeon lub CREE! Prąd płynący przez diody LED jest zależny od temperatury i należy użyć sterownika prądu stałego. Jeśli potrzebujesz więcej informacji na ten temat, w Wikipedii znajdziesz kilka informacji. Pomocne może być poszukiwanie przewodnictwa elektrycznego półprzewodników (niskie/wysokie domieszkowanie itp.) lub ujemnego współczynnika temperaturowego. Użyłem 6-pinowych diod SMD RGB bez niczego wspólnego. Jeśli poszukasz ich w Google, uzyskasz wiele wyników. Magiczne słowa to „SMD, RGB, LED, PLCC6 5050”. 5050 są wymiarami metrycznymi dla x i y w jednostkach 0,1 mm. W serwisie eBay znajdziesz je również za jedyne 50¢ za sztukę przy dużych zamówieniach. Opakowania po 10 sztuk sprzedają się obecnie za około 10 dolców. Dostałbym co najmniej 50;-)

Krok 3: płyta montażowa i źródło zasilania

Płyta montażowa i źródło zasilania
Płyta montażowa i źródło zasilania

Płyta montażowa zapewnia zasilanie i wspólną magistralę I2C dla obu płyt. Każda płyta ma 8 diod LED RGB i mikrokontroler ATmega168 pracujący z wewnętrznym oscylatorem o częstotliwości 8 MHz. To ostatnie wymaga synchronizacji między płytami i/lub rekalibracji oscylatorów. Ten problem pojawi się ponownie w sekcji kodu.

Schemat konwertera doładowania 5V został zaczerpnięty z arkusza danych Maxima MAX756 bez żadnych modyfikacji. Możesz użyć dowolnego innego układu, który uznasz za odpowiedni, który może zapewnić około 200 mA przy 5 V. Tylko upewnij się, że liczba części zewnętrznych jest niska. Zazwyczaj potrzebne są co najmniej 2 kondensatory elektrolityczne, dioda Schottky'ego i cewka indukcyjna. Wzór odniesienia w arkuszu danych zawiera wszystkie liczby. Do tej pracy użyłem wysokiej jakości płyt FR4 (z włókna szklanego). Tańsze deski na bazie kalafonii mogą również działać, ale zbyt łatwo się łamią. Nie chcę, żeby deski rozpadły się na wyboistej jeździe. Jeśli posiadasz już „MintyBoost”, możesz go również użyć, jeśli zmieścisz go na swoim rowerze.

Krok 4: Musisz mieć trochę kodu

Musisz mieć jakiś kod!
Musisz mieć jakiś kod!
Musisz mieć jakiś kod!
Musisz mieć jakiś kod!

W trybie wysokiej jasności płyta obsługuje 6 różnych kolorów + biały. Kolor wybiera się ustawiając 3 piny GPIO na wysoki lub niski. W ten sposób wszystkie osiem diod LED może być w pełni włączonych, ale pokazuje tylko ten sam kolor.

W trybie PWM kolor jest ustawiany poprzez podanie sygnału o modulowanej szerokości impulsu na 3 piny GPIO i multipleksowanie 8 diod LED. Zmniejsza to ogólną jasność, ale teraz możliwa jest indywidualna kontrola kolorów. Odbywa się to w tle przez procedurę przerwania. Dostępne są podstawowe funkcje do ustawiania diod LED określonej wartości koloru, za pomocą trypletu RGB lub wartości HUE. Dla wygody urządzenie jest programowane w C z wykorzystaniem Arduino IDE. Załączam aktualny kod, którego używam. Aktualne wersje są dostępne na moim blogu. Możesz przeglądać repozytorium GIT za pomocą interfejsu gitweb. Pojawi się wiele głupich błędów programistycznych, jestem tego pewien;-) Drugi rysunek ilustruje generację PWM. Licznik sprzętowy liczy od DOŁU do GÓRY. Gdy licznik jest większy niż pewna liczba reprezentująca żądany kolor, wyjście jest przełączane. Gdy licznik osiągnie najwyższą wartość, wszystko zostanie zresetowane. Postrzegana jasność diody LED jest w pewnym stopniu proporcjonalna do czasu włączenia sygnału. Ściśle mówiąc, to kłamstwo, ale łatwiejsze do zrozumienia.

Krok 5: Zobacz to w akcji

Zobacz to w akcji
Zobacz to w akcji

Tylko kilka wstępnych testów. Tak, może też robić pełne kolory RGB;-)

Testy w świecie rzeczywistym. Tak, mieliśmy trochę śniegu, ale to było przed Bożym Narodzeniem. Teraz znowu mamy trochę śniegu. Ale jak zwykle podczas świąt Bożego Narodzenia i obchodów Nowego Roku mieliśmy tylko deszcz. Proszę, zignoruj moje jęki mniej więcej w połowie filmu, starzeję się, więc kucanie staje się trochę trudne. Wreszcie trochę poprawionych efektów. Misja zakończona. Geekowe tylne światła i nielegalne tam, gdzie mieszkam;-) Jestem prawie pewien, że nie będę już ignorowany przez sennych lub nieświadomych kierowców. Dostrajając trochę taktowanie, możesz tworzyć dość irytujące efekty, które przyciągają wzrok. Zwłaszcza nocą. Ponieważ na płytkach znajdują się 4 piny GPIO/ADC (2 mogą być użyte do budowy małej sieci I2C), podłączenie przycisku do wyzwalania wszelkiego rodzaju efektów powinno być łatwe. Równie dobrze działałoby podpięcie fotorezystora CdSe. Całkowity koszt materiału to około 50$. Największy kawałek trafił na płytki z obwodami drukowanymi. Jak zwykle kara za niskie zamówienia. W analogii do niegdyś szeroko rozpowszechnionej reklamy telewizyjnej firmy zajmującej się telefonami komórkowymi w USA, pozwól, że zadam ci następujące pytanie: „Czy możesz mnie teraz ZOBACZYĆ? - Dobrze”.

Krok 6: Zaktualizowany projekt

Zaktualizowany projekt
Zaktualizowany projekt
Zaktualizowany projekt
Zaktualizowany projekt
Zaktualizowany projekt
Zaktualizowany projekt
Zaktualizowany projekt
Zaktualizowany projekt

Zmieniłem kilka rzeczy tu i tam.

Najważniejszym jest dodanie regulatora napięcia o niskim spadku. Teraz płyta może pracować z dowolnym napięciem od 4 do 14 V DC. Zmieniłem również kolor PCB na żółty i dodałem zworki, aby wyłączyć auto reset i ominąć regulator napięcia, jeśli nie jest potrzebny. Kod demonstracyjny do chwytania i instrukcja montażu. Znajdziesz tam również pliki KiCAD i schemat. Jeśli chcesz, możesz znaleźć więcej informacji na moim blogu.

Krok 7: Powiększony

Następna rzecz na liście: kółko i krzyżyk

Krok 8: Więcej lekkich hacków

Dodając 3 przewody i 3 dodatkowe rezystory można podwoić jasność. Teraz dwa piny GPIO na kolor są używane do zasilania prądem.

Krok 9: Więcej aktualizacji

Więcej aktualizacji
Więcej aktualizacji

Więc w końcu przełączyłem się z „głupich” PWM sterowanych przerwaniami na BCM (modulacja kodu binarnego). To drastycznie skraca czas procesora spędzany na kręceniu pinów LED i znacznie zwiększa jasność. Cały ulepszony kod można znaleźć na github. Pierwsze kilka sekund filmu pokazuje poprawę na lewej planszy. Dopóki nie zostanie wydana następna wersja sprzętowa tej płyty (czekanie na przybycie płyt), spowoduje to trochę potrzebę „więcej światła”. Patrzenie na nowe deski pracujące pełną parą będzie bolesne.

Zalecana: