Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Walentynkowy wyświetlacz widmowy POV na ATtiny13

jacu007 26 Feb 2013 22:32 9567 2
Helukabel
  • Walentynkowy wyświetlacz widmowy POV na ATtiny13
    Co prawda już jakiś czas po walentynkach, ale projekt jest znacznie bardziej uniwersalny i myślę, że jest godny uwagi.
    Nie ma nic wspanialszego niż powiedzieć ukochanej „I love you!” i wręczyć jej pudełko czekoladek. Można sobie tylko wyobrazić, jaka będzie reakcja naszej drugiej połówki, jeżeli napis „I love you!” (lub “I ❤ U” jak to jest w przedstawianym projekcie) wyświetli się na pudełku czekoladek. Jak twierdzi autor, przygotowanie tego prezentu walentynkowego nie zajęło mu więcej niż 2 godziny. Projekt bazuje na małym mikrokontrolerze Atmel ATtiny13, a kod źródłowy był pisany i kompilowany w środowisku programistycznym Arduino IDE. Napis jest wyświetlany za pomocą wyświetlacza widmowego POV (persistence of vision) znajdującego się w pudełku po czekoladkach. Oto krótkie video przedstawiające efekt końcowy. Ze względu na ograniczenia kamery nie oddaje ono pełnego efektu, który można poznać dopiero po obserwacji „na żywo”.



    Elementy wykorzystane w opisywanym projekcie:
    1. Mikrokontroler Atmel ATtiny 13 MCU – można użyć wersji w obudowie PDIP8 bądź SOIC-8. Mikrokontrolery ATtimy występują w wielu odmianach, dlatego należy się wcześniej upewnić, jakiej będziemy używać.
    2. Koszyk baterii 1xCR2032 lub innej baterii pastylkowej o napięciu 3V. Należy dobrze przemyśleć mocowanie baterii, ponieważ jest to najcięższa część układu i trzeba uważać, aby nie wypadła podczas potrząsania pudełkiem. W prezentowanym projekcie zamocowano ją prostopadle do ściany pudełka za pomocą kleju elastycznego.
    3. 6 diod LED - należy dobrać diody o dużej jasności (co najmniej 5000mcd) ponieważ muszą one świecić przez plastikową przykrywkę pudełka.
    4. Wyłącznik kulkowy - stosowany jest, aby wyłączać urządzenie, gdy będzie leżało na stoliku a także do sterowania wyświetlaniem napisu.
    5. 14-pinowa podstawka DIL - jest większa, niż 8-pinowy mikrokontroler, ponieważ dodatkowe piny będą potrzebne do montażu dodatkowych elementów.
    6. Perforowana płytka PCB - do montażu 6 diod LED. Dla wyświetlaczy widmowych najważniejsze jest zamontowanie diod w równomiernych odległościach, użycie płytki perforowanej daje pewność, że tak będzie.
    7. 3 rezystory 22Ω - do ograniczenia prądu diod.
    8. Rezystor 470kΩ - podciągający pull-up do wyłącznika kulkowego. Wyższy rezystor gwarantuje niższy prąd pobierany podczas załączenia, co jest ważne dla dłuższej żywotności baterii.
    9. Kilkadziesiąt centymetrów cienkiego kabelka o średnicy 0,5 mm (tutaj użyty czerwony żeby maskował się z kolorem pudełka).
    10. Opcjonalnie 2 rzędowa 6-pinowa złączka męska goldpin do złącza ICSP - jeżeli chcemy programować mikrokontroler w układzie.

    Autor zamieszcza na swojej stronie internetowej również schemat płytki PCB, której nie wykonał ze względu na brak czasu.

    Budowę układu rozpoczęto od montażu diod LED na płytce perforowanej. W prezentowanym projekcie diody nie są ustawione w jednej linii ze względu na to, że będą umiejscowione w zagłębieniu po czekoladce. Dla wyświetlaczy widmowych niezwykle ważne jest, aby każdy punkt świetlny miał jednakową wielkość. Jednakowa odległość od czerwonego plastiku opakowania gwarantuje, że tak właśnie będzie.
    Rezystory ograniczające prąd zamontowano z prawej strony diod na pozostałym miejscu płytki perforowanej. Teraz należy jeszcze połączyć kabelkami diody pomiędzy sobą i rezystorami. Jest to najbardziej uciążliwa część montażu. Reszta jest już dużo łatwiejsza.
    W kolejnym kroku podłączono kabelki z koszyka baterii do odpowiednich pinów podstawki DIL. Należy pamiętać, że podstawka jest 14-pinowa, a ATtimy13 ma tylko 8 wyprowadzeń. W dodatkowe miejsce będzie przymocowany wyłącznik kulkowy oraz rezystor pull-up. Biegun dodatni jest przypięty do pinu nr 11, a biegun ujemny do pinu nr 7.
    Zdjęcie poniżej przedstawia, gdzie przylutować rezystor podciągający oraz wyłącznik kulkowy. Pozostałe kable to przymocowane wcześniej zasilanie i oraz wyprowadzenia diod. Kabel jest tak cienki, że bez trudności pozwala na przylutowanie mostka pomiędzy wyprowadzeniami podstawy (kabel żółty). Autor sugeruje, aby po zakończeniu lutowania zagiąć nóżki podstawki, ponieważ każde miejsce jest tu na wagę złota.

    Walentynkowy wyświetlacz widmowy POV na ATtiny13

    Zdjęcie poniżej pokazuje ułożenie wszystkich 3 elementów w pudełku. Miejsce montażu diod LED zostało wcześniej zaplanowane, aby zapewnić odpowiednie oddalenie ich od plastiku. Pozostałe elementy można zamocować w dowolnym dostępnym miejscu. Należy zwrócić szczególna uwagę podczas montażu wyłącznika kulkowego. Trzeba tak wyprofilować jego położenie, aby układ rozłączał styki, gdy pudełko leży płasko na stole. Jeżeli ktoś weźmie pudełko w dłonie, kulka zamyka styki, a prąd zaczyna przez nie płynąć. Nie jest to duży prąd (który dodatkowo zmniejszamy poprzez rezystor pull-up o wysokiej wartości), ale i tak lepiej go unikać, aby nie rozładować zbyt szybko baterii.
    Walentynkowy wyświetlacz widmowy POV na ATtiny13
    Ułożenie wyłącznika kulkowego jest również ważne ze względu na inny aspekt. Program synchronizuje wyświetlanie tekstu poprzez uderzenia kulki wyłącznika w styki. Napis pojawia się tylko podczas ruchu ręki w dół. Z tego powodu należy tak zamocować wyłącznik kulkowy, aby był skierowany w kierunku, w którym będzie przekazywana informacja. Tutaj jest on osadzony z prawej strony diod LED i ustawiony pod kątem 90o w ich kierunku.

    Oprogramowanie jest tak napisane, że próbuje obliczyć średni czas cyklu ruchu ręki (góra-dół). Wyświetlanie napisu zaczyna się po upłynięciu 1/8 pełnego cyklu (czyli ¼ ruchu ręki w dół). Ma to na celu wyświetlanie napisu jak najbardziej na środku powstałej „huśtawki”. Ponieważ układ potrzebuje kilku iteracji, aby poprawnie obliczyć średni cykl, pierwsze pojawiające się napisy mogą być nieco zniekształcone.
    Jak twierdzi autor, pewnie dałoby się poprawić jeszcze kilka rzeczy, jednak dużym ograniczeniem jest tutaj pamięć wewnętrzna mikrokontrolera, która wynosi tylko 1024 bajty. Kod programu zajmuje 1006 bajtów, dlatego każda instrukcja mniej jest tu bardzo cenna. Pozostałe 18 bajtów można wykorzystać na linie wyświetlanego tekstu. Program umożliwia wyświetlenie dłuższego tekstu niż tylko „I ❤ U” jak, np. (“I LOVE BEER”), jednak nawet pod tym względem jego możliwości są bardzo ograniczone.
    Na stronie internetowej autora znajduje się kompletny kod źródłowy, dzięki któremu można zaprogramować mikrokontroler np. za pomocą środowisk Arduino IDE. W udostępnianej paczce znajduje się również schemat płytki PCB do programu Eagle.


    Źródło

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    jacu007
    Level 22  
    Offline 
    Has specialization in: systemy mikroprocesorowe, raspberry pi
    jacu007 wrote 688 posts with rating 77, helped 0 times. Live in city Dąbrowa Górnicza. Been with us since 2007 year.
  • Helukabel