Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 24 gru 2024, o 06:36


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 
Autor Wiadomość
PostNapisane: 2 cze 2017, o 22:44 
Offline
Nowy

Dołączył(a): 02 cze 2017
Posty: 6
Pomógł: 0

Witajcie,
Nadszedł wreszcie ten czas, by pokazać tutaj mój projekt ;) Jest to projekt inżynierski, który powstał pół roku temu, ale teraz jest idealna pora na jego zaprezentowanie - zrobiło się ciepło i można jeździć rowerem. Do rzeczy

Zasada działania
Zasada działania wyświetlacza wykorzystuje bezwładność ludzkiego oka, nazywaną niekiedy zdolnością do całkowania. Wyświetlacze tej klasy nazywane są również wyświetlaczami POV (ang. Persistence of vision). Wyświetlanie obrazu polega na stworzeniu przez ludzki mózg wrażenia odbioru jednego obrazu, będącego złożeniem kilku dyskretnych i szybkozmiennych obrazów zarejestrowanych przez oko. Człowiek zamiast postrzegać pojedyncze piksele linijki, widzi cały obraz. Dzieje się tak, gdyż obraz na siatkówce oka utrzymuje się przez około 1/25 sekundy po zaniknięciu wywołującego go bodźca.

Diody
Podstawowym elementem wyświetlacza są oczywiście diody. Do projektu wybrałem diody WS2812. Linijka LED składa się z 32 diod. Całość umieszczona jest na promieniu koła.

Mikrokontroler i pamięć
Do sterowania diodami wybrałem oczywiście AVR'a, a dokładnie ATmegę 1284. Dlaczego ten? Głównym powodem jest duża pamięć danych SRAM, która wynosi 16 kB. Potrzebna ona jest do przechowywania aktualnie wyświetlanego obrazu. Taktowana jest zewnętrznym kwarcem 20 MHz. W pamięci można zapisać tylko jeden obraz, co jest oczywiście niesatysfakcjonujące. Można byłoby wykorzystać ogromną pamięć programu dostępną w mk, ale to oznaczałoby obrazy zapisane na stałe w momencie programowania układu. Tego też nie chcemy. Zdecydowałem się zatem wykorzystać dodatkową pamięć EEPROM 25AA1024 o pojemności całkowitej 1 Mb. Pozwala ona na zapis 10 obrazów oraz parametrów konfiguracyjnych wyświetlacza. AVR wczytuje odpowiednie obrazy z EEPROMa do pamięci SRAM i z niej go wyświetla.
Sposób wyświetlania obrazu na kole został zorganizowany w taki sposób, że na jeden pełny obrót koła odświeżanie linijki LED następuje 128 razy. Odpowiada to rozdzielczości kątowej 2,8125 °.

Pomiar prędkości obrotowej koła
Spośród wielu dostępnych rozwiązań w tym zakresie zdecydowałem się na jedno z prostszych - kontaktron. Sam kontaktron jest oczywiście zamontowany na kole, zaś magnes stały jest umieszczony na ramie roweru. Do eliminacji wpływu drgań styków zastosowany został filtr RC, gdyż to rozwiązanie nie wymaga dodatkowych obliczeń wykonywanych przez układ sterowania. Do mikrokontrolera trafiają impulsy o częstotliwości proporcjonalnej do prędkości obrotowej koła. Na tej podstawie, z wykorzystaniem odpowiednio skonfigurowanych liczników sprzętowych, wyliczane są momenty odświeżania linijki LED. Przy prędkości jazdy 20 km/h częstotliwość odświeżania wynosi ok. 2,7 Hz. Minimalna prędkość, przy której obraz jest wyświetlany to 15 km/h.

Całość umieściłem na zaprojektowanej i wytrawionej płytce PCB. Umieszczone na niej są dwie informacyjne diody LED - zielona informuje o gotowości układu do pracy, a czerwona o nawiązaniu połączenia z komputerem.

ObrazekObrazekObrazekObrazekObrazekObrazekObrazek

Oprogramowanie
Właśnie, słowo się rzekło - komputer. Wraz z projektem powstało oprogramowanie komputerowe. Głównymi zadaniami programu są: dokonanie konwersji obrazu do postaci zapisywanej w pamięci układu sterowania wyświetlaczem i przesłanie tegoż obrazu do wyświetlacza. Obraz można wczytać z pliku graficznego lub stworzyć go samemu przy użyciu prostego edytora graficznego. Użyteczną opcją programu jest możliwość wizualizacji wyświetlanego na kole rowerowym obrazu. Okno wysyłania obrazu umożliwia podstawową konfigurację wyświetlacza – wybór banku pamięci dla obrazu, tryb zmiany obrazów i wskazanie banków pamięci/obrazów do wyświetlania. Nie jest konieczne wgrywanie nowego obrazu, można zmienić jedynie ustawienia. Można również wgrać nowy obraz, bez zmiany ustawień. Obrazy mogą być zmieniane automatycznie ze wskazanym okresem lub po zatrzymaniu roweru. Komunikacja została zorganizowana od strony mikrokontrolera poprzez interfejs UART, od strony komputera przez USB oraz konwertera pomiędzy nimi.

ObrazekObrazekObrazekObrazekObrazek

Warto jeszcze wspomnieć o zasilaniu. Został do tego użyty pakiet 4 akumulatorków AA umieszczonych również na kole. Koszyk z bateriami łatwo jest zdjąć, gdyż swobodnie można rozpisać przewód zasilania.

Efekt finalny
Poniżej zamieszczam kilka przykładowych zdjęć zrobionych podczas pracy wyświetlacza. Zdjęcia są przykładowe i nie mają na celu promocji kogokolwiek. Niestety nie mam żadnego filmu, bo jest go po prostu ciężko sensownie wykonać. Potrzeba byłoby odpowiedniego sprzętu, a tego nie posiadam :P Niemniej zdjęcia pokazują ten efekt WOW, który udało się uzyskać ;)

ObrazekObrazekObrazekObrazek

W planach kolejne projekty, ale o tym przy następnej okazji :)
Pozdrawiam!

Dawid Michałowski
michalowskidawid@gmail.com
Wszelkie prawa do projektu zastrzeżone



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 cze 2017, o 23:44 
Offline
Moderator zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 18 lip 2012
Posty: 3206
Lokalizacja: Kraków - obok FAB5 ATMEL'a
Pomógł: 91

No pięknie. Szkoda że nie ma schematu.

Widać jakieś migotanie czy nie?

_________________
http://www.jaglarz.info



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 cze 2017, o 09:55 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27319
Lokalizacja: Szczecin
Pomógł: 1041

Jednym słowem mówiąc REWELACYJNY projekt, piękne narzędzia do przygotowywania obrazów na PC ... cudeńko ! ;) Gratulacje !

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 cze 2017, o 10:45 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 maja 2012
Posty: 471
Lokalizacja: ZGY/ZS
Pomógł: 30

Bardzo fajny projekt. Możesz napisać coś więcej o obróbce obrazów w programie na PC (C#?)? Jak podszedłeś do tematu, jakie techniki wykorzystałeś?

_________________
eDiyCraft.blogspot.com



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 cze 2017, o 14:24 
Offline
Nowy

Dołączył(a): 02 cze 2017
Posty: 6
Pomógł: 0

A faktycznie zapomniałem dodać - program napisany w C#. Generalnie problem konwersji obrazu to wyznaczenie odpowiednich pikseli obrazu, z których należy pobrać kolory i je zapisać. Piksele muszą być wyznaczone w kartezjańskim układzie współrzędnych. Aby to zrobić wykorzystuję układ zmiennych biegunowych, który naturalnie odpowiada powierzchni koła. Należy tylko wyznaczać odpowiednio promień i kąt oraz zwiększać je z określonym krokiem zależnym od parametrów (wielkości i rozdzielczości) wyświetlacza i zapisywać je w ustalonej kolejności.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 cze 2017, o 14:39 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2590
Pomógł: 128

Super projekt i realizacja od a do z. Jak byś sie zdecydował na opublikowanie źródeł to byłoby to bardzo fajnym i ciekawym materiałem edukacyjnym.

Sent from my Mi-4c using Tapatalk



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 cze 2017, o 21:02 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 mar 2014
Posty: 334
Lokalizacja: Rybnik
Pomógł: 55

Widać ogrom wiedzy i włożonej pracy. Gratuluje udanego projektu.
Tak się tylko zastanawiam, jak wygląda wodoszczelność całości? Można z powodzeniem jeździć w deszczu/ po kałużach?
Ciekawe, czy jakaś firma nie zainteresowałaby się tym projektem do wyświetlania reklam, w końcu jadąc takim rowerem po zmroku przez miast musi wzbudzać zainteresowania :P

_________________
Amatorska stacje meteorologiczna



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 cze 2017, o 14:15 
Offline
Nowy

Dołączył(a): 26 lut 2014
Posty: 8
Pomógł: 0

Super projekt. Przypomniał mi się mój wyświetlacz widmowy którego prototyp wykonałem jakiś rok temu. Jest wyposażony w bluetooth więc można przesyłać obrazy i tekst bez kabla w trakcie działania. Do tego dodatkowa kość eeprom która mieści 5 obrazów. Obrazy także można tworzyć, konwertować i przesyłać z programu na PC, ale wygląda on o wiele bardziej surowo niż Twój :) Nigdy nie byłem dobry jeżeli chodzi o design... Następna wersja miała być na koło roweru, ale planowałem użyć APA102 zamiast WS2812 z uwagi na mniej wymagającą obsługę. Dzięki Tobie chyba wrócę do projektu :)

https://www.youtube.com/watch?v=0bPvmFBpYQU



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 cze 2017, o 14:23 
Offline
Użytkownik

Dołączył(a): 24 lip 2013
Posty: 60
Lokalizacja: Okolice Gliwic
Pomógł: 3

Szkoda, że nie ma filmiku z przejazdu po wsi/mieście :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 cze 2017, o 13:12 
Offline
Nowy

Dołączył(a): 02 cze 2017
Posty: 6
Pomógł: 0

anonimowy - Dziękuję bardzo :) Przyznać muszę, że urządzenie nie jest odporne na nic większego :D I tak naprawdę jeśli chciałoby się używać go do normalnej jazdy, należałoby zabezpieczyć całość przed kurzem i wodą. Póki co projekt jest zrobiony koncepcyjnie, ta strona czysto użytkowa i techniczna jeszcze do ewentualnego dopieszczenia.

m2c - Dobra robota, gratulacje! Bluetooth to fajna opcja, bez kabli, podłączania i w ogóle. Rower to wymagające środowisko, trzeba to zamocować (siła odśrodkowa), umieścić baterie, mierzyć prędkość obrotową i w ogóle :) Ale polecam hehe Co do designu - projekt jest w miarę skończony, bo to projekt inżynierski. Nie chciałem zostawić tego tak byle jak - musi wyglądać :) Niemniej też chcąc coś robić na kole, trzeba najpierw wszystko w miarę zamocować, żeby dało się robić cokolwiek. W efekcie wyszło to, co widać ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO