2010.07_Rowerowy wyświetlacz widmowy.pdf
(
320 KB
)
Pobierz
451452378 UNPDF
Rowerowy
wyświetlacz
widmowy
2945
rozświetlić roweru kolorowym, wyjątkowym
napisem lub obrazem?
Oto proste urządzenie, wzorowane na
układzie z EdW 9/2008, zawierające znacznie
większą liczbę diod i oparte na mikrokontro-
lerze ATmega8L. Stworzyliśmy też interfejs
na komputer PC, który umożliwia przetwa-
rzanie obrazka na formę zrozumiałą przez
mikrokontroler. Nasz układ charakteryzuje
się: prostotą wykonania, małym kosztem eks-
ploatacji, prostotą programowania, energoo-
szczędnością, prostotą montażu.
Jak to działa?
Cały układ składa się z czterech części:
modułu sterownika, modułu listwy z dioda-
mi, programu napisanego w języku C oraz
interfejsu użytkownika na komputer PC. Na
rysunku 1
zaprezentowany jest schemat ideo-
wy sterownika, a na
rysun-
ku 2
schemat ideowy listwy z
diodami. Sercem układu jest
mikrokontroler ATmega8L.
Zdecydowaliśmy się użyć wer-
sji przewlekanej zamiast SMD,
gdyż jest ona dużo prostsza w
lutowaniu. Ponadto jest zde-
cydowanie wygodniejsza przy
testowaniu układu na uni-
wersalnej płytce stykowej w
początkowych fazach projektu.
Duża liczba programowalnych
wyjść (23) dała nam możli-
wość sterowania szesnastoma
diodami RGB, a stosunkowo
duża pamięć programu FLASH
(8KB) oraz danych EEPROM
(512B) pozwoliła zrealizować
projekt bez problemu. Jako
zasilanie wykorzystaliśmy
trzy popularne baterie LR6
AA, które zapewniły zasila-
nie 4,5V. Wybraliśmy zatem
wersję z literką L, gdyż pra-
cuje ona w niższym zakresie
napięć (2,75– 5V) niż zwykła ATmega8
(4,55–5V).
Postanowiliśmy ograniczyć się do sied-
miu odcieni uzyskiwanych za pomocą łącze-
nia barw diod RGB: czerwonego, zielonego,
niebieskiego, żółtego, różowego, seledyno-
wego, białego. Aby to osiągnąć, posłużyliśmy
się trzeba tranzystorami średniej mocy NPN
BC337 (0,8A). Przestrzegam przed zastoso-
waniem BC548 i odpowiedników, gdyż przy
tak dużej liczbie diod nieuchronnie dojdzie do
spalenia tranzystora i w efekcie nie będą świe-
cić diody koloru, za który odpowiadał spalony
tranzystor. Taki efekt możecie zobaczyć na
fotografii 1
, na której widać, że brakuje kolo-
ru zielonego.
Istotny jest właściwy dobór diod. Przy
szesnastu diodach każdego z kolorów podsta-
wowych (czerwony, zielony, niebieski) jest
możliwe wykorzystanie zwykłych diod, jed-
nak my pokusiliśmy się o zastosowanie diod
RGB SMD w obudowie PLCC6. Obudowa
jest na tyle duża, że można ją lutować w
warunkach domowych, a jednocześnie nie
zajmuje wiele miejsca na płytce. Strzałem w
dziesiątkę okazały się diody firmy Itswell,
dostępne na
www.maritex.com.pl.
W praktyce
świecą bardzo jasno i dają wspaniały efekt
na kole. Jako ciekawostkę dodam, że diody
mają tak dużą sprawność, że zaczynają lekko
świecić po podłączeniu do nich omomierza, a
nawet podczas lutowania (co zresztą pokazuje
stan uziemienia lutownicy).
Najbardziej newralgicznym momentem
doboru elementów okazał się wybór kontak-
tronu. Nasz magnes umieściliśmy na ramie
roweru jak na
fotografii 2
. Kontaktron musiał
być zatem wystarczająco czuły, by wykryć
przejście obok magnesu, a jednocześnie na
tyle wytrzymały, by się nie zewrzeć na stałe
pod wpływem dużego prądu. Na szczęście
nie okazało się to trudnym zadaniem i trafnie
postawiliśmy na dość duży kontaktron o dłu-
gości 3,5cm.
Ponieważ płytka sterownika w obudowie
jest oddzielona od listwy z diodami, należa-
Do czego to służy?
Kto nie chciałby urozmaicić wyglądu swo-
jego roweru o efektywny wyświetlacz na
kole? Chyba każdy. Taki efektowny gadżet
przyciąga oko, bawi i sprawia, że nasz bicykl
jest wyjątkowy.
Zainspirowani artykułem
Wyświetlacz dio-
dowy na kole rowerowym
z EdW 9/2008 i
zachęceni do pracy nad podobnym projektem
w ramach zajęć na uczelni postanowiliśmy
zbudować podobny wyświetlacz. Naszym
celem było zachęcenie dzieci i młodzieży
do licznych wypraw rowerowych. Jak to
osiągnąć? Czyniąc z bicykla niepowtarzalny
pojazd, przykuwający uwagę przechodniów.
W dzisiejszych czasach młodzież przywiązuje
dużą wagę do efektownych, przyciąga-
jących oko gadżetów. Czemu zatem nie
1
PC6(/RESET)
PC0(ADC0)
23
24
PC1(ADC1)
22
25
AGND
PC2(ADC2)
21
26
1
3
5
2
4
6
AREF
PC3(ADC3)
20
27
AVCC
PC4(ADC4/SDA)
28
PC5(ADC5/SCL)
7
9
8
10
9
PB6(XTAL1/TOSC1)
11
13
15
12
14
16
10
PB7(XTAL2/TOSC2)
PD0(RXD)
2
3
PD1(TXD)
4
17
19
18
20
PD2(INT0)
8
5
GND
PD3(INT1)
VCC
6
PD4(XCK/T0)
7
11
SV1
VCC
PD5(T1)
12
PD6(AIN0)
13
PD7(AIN1)
PB0(ICP)
14
15
PB1(OC1A)
16
PB2(SS/OC1B)
17
PB3(MOSI/OC2)
18
PB4(MISO)
19
PB5(SCK)
IC1
VCC
MEGA8-P
Q1
BC337
Q2
BC337
Q3
BC337
56
Lipiec 2010
Elektronika dla Wszystkich
Rowerowy
wyświetlacz
widmowy
Rys. 1
56
Top www
www.sigma.krakow.pl
Wi¹zki kablowe
Transformatory
Cewki i d³awiki
Zaciskanie z³¹czy na przewodach od 0,0123mm !!!
2
Cewki i d³awiki
ło je połączyć. Do tego
celu wykorzystaliśmy
popularną taśmę do
dyskietek przeciętą na
pół oraz dwa zestawy
20-pinowych złączy w
rastrze 2,54mm. Dla
uzupełnienia dodali-
śmy prosty przełącznik
dwustanowy, odłącza-
jący zasilanie od ukła-
du w czasie dłuższego
postoju.
Z uwagi na zasto-
sowane zasilanie, które
wymogło użycie obudo-
wy o głębokości co naj-
mniej 3cm, zdecydowa-
liśmy się wykorzystać
powszechnie dostępną
obudowę Z-79. W celu
stabilnego i bezpiecz-
nego przymocowania
płytki drukowanej ukła-
du sterującego do obu-
dowy, powiększyliśmy
płytkę, aby umieścić na
niej otwory mocujące.
Dzięki temu możliwe
jest solidne przymoco-
wanie płytki do obu-
dowy, co zabezpieczy
część sterującą przed
groźnymi wstrząsami.
Płytkę można zabez-
pieczyć roztworem
kalafonii w spirytusie
albo dedykowanym
środkiem chemicznym
ze sklepu dla elektro-
ników. Należy jednak
wykonać to po uprzed-
nim upewnieniu się, że
układ na pewno działa,
a zastosowany materiał
izolacyjny nie spowodu-
je niebezpiecznych zwarć. Należy
jednocześnie pamiętać, by ominąć
mikrokontroler, aby w przyszłości
można było zmienić wyświetlany
obrazek. Obudowę listwy z dioda-
mi wykonaliśmy z przezroczystego
pudełka po pędzlu.
PAD1
1
K1
A1
PAD4
4
nujemy następujących
operacji:
•
Jeśli układ spał, to
go budzimy, zerujemy
timer1 i ustawiamy pre-
scaler timera1.
•
LED1
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PAD1
1
K1
A1
PAD4
4
LED2
Jeśli układ był przed
chwilą obudzony, to
budzimy go na dłużej
i stopujemy timery. Na
podstawie stanu nasze-
go licznika dokonujemy
obliczenia prędkości
obrotu koła i dzielimy
je na fragmenty, a więc
określamy czas świece-
nia diod. Jednocześnie,
bez względu na poprzed-
nią pozycję obrazu,
każemy mikroproceso-
rowi rysować go zawsze
od początku.
Na końcu włączamy
obsługę przerwań.
Gdyby doszło do przepełnienia timera (co
nie powinno się zdarzyć), urządzenie ma się
zresetować. Podobnie ma się zachować w
przypadku, kiedy staniemy i koło przestanie
się obracać (nie będzie docierał sygnał z
kontaktronu).
Ostatnia funkcja określa sposób przecho-
dzenia pomiędzy kolejnymi pikselami obra-
zu. Operacja przejścia ma miejsce tylko
wówczas, gdy układ jest obudzony i polega
na sczytywaniu wartości z bitów z pamięci
programu (czyli naszego pliku „czacha.h”).
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PA
D1
1
K1
A1
4
PAD
4
LED3
PAD2
2
K2
A2
PAD5
5
Fot. 1
PAD3
3
A3
PAD6
6
K3
Fot. 2
PAD1
1
K1
A1
PAD4
4
LED4
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
6
PAD6
PAD1
1
K1
A1
PAD4
4
LED5
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PA
D1
1
K1
A1
4
PA
D
4
LED6
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
Następnie określamy, jaki
port będzie sterował dioda-
mi. Program zaświeca naj-
pierw zewnętrznych osiem
diod, następnie wewnętrz-
nych sześć, a na końcu
dwie pozostałe w środku.
Następnie odblokowuje-
my przerwania, ustalamy
opóźnienie ok. 0,5 sekun-
dy, które ma wyelimino-
wać drgania kontaktronu.
Odblokowujemy przerwa-
nie zewnętrzne – sygnał z
kontaktronu – i ustalamy
je na narastające zbocze.
Zmienna
blok
ma nam
pomóc w określaniu,
czy łapiemy przerwania
z zewnątrz, czy też nie.
Pierwszy przypadek to
sytuacja, kiedy nie łapie-
my przerwań, a układ śpi.
Jeśli coś go obudziło, ma
to zapisać w rejestrze.
Drugi przypadek to obu-
dzenie układu przed chwi-
lą – nic się nie dzieje.
Ostatnia sytuacja – układ
został trwale obudzony i
zaczyna dokonywać ope-
racji logicznych na por-
tach, by wyświetlić kolory
– najpierw zielony, potem
niebieski, a na końcu czer-
wony.
Druga funkcja obsłu-
guje przerwanie z kontak-
tronu. Na czas tej operacji
blokujemy przerwania i w
zależności od stanu doko-
PAD1
1
K1
A1
PAD4
4
LED7
PAD2
2
K2
A2
5
PAD5
PAD3
3
K3
A3
PAD6
6
PAD1
1
K1
A1
PAD4
4
LED8
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PA
D1
1
K1
A1
4
PAD
4
LED9
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PAD1
1
K1
A1
PAD4
4
Interfejs użytkownika
Za pomocą środowiska NetBeans napisaliśmy
prosty program w języku Java (
rysunek 3
).
NetBeans jest narzędziem darmowym, bardzo
dopracowanym i przyjaznym w użyciu. Ma
bogatą funkcjonalność, pozwalającą tworzyć
kod efektywnie i bezbłędnie. Środowisko to
można rozszerzać wtyczkami, dzięki temu
można je dobrze przystosować do własnych
potrzeb. Jedyną wadą Javy są niekiedy prob-
lemy z jej uruchomieniem, związane ze ścież-
ką i wersją programu.
Najpierw należy mieć oczywiście zain-
stalowaną wirtualną maszynę Javy – JRE
(niezależny od platformy system uruchomie-
niowy) dostępną na oficjalnej stronie Java SE
Downloads. Po zainstalowaniu JRE możemy
uruchamiać program, ale nie damy rady go
skompilować, w tym celu należy ściągnąć
całe JDK dostępne na wspomnianej stronie.
1
3
5
2
4
6
LED10
PAD2
2
K2
A2
PAD5
5
7
9
8
10
PAD3
3
K3
A3
6
PAD6
11
13
15
12
14
16
PAD1
1
K1
A1
PAD4
4
17
19
18
20
LED11
PAD2
2
A2
PAD5
5
K2
SV1
PAD3
3
K3
A3
PAD6
6
Rys. 2
1
4
PA
D1
PAD
4
K1
A1
LED12
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PAD1
1
K1
A1
PAD4
4
LED13
PAD2
2
K2
A2
5
PAD5
PAD3
3
K3
A3
PAD6
6
PAD1
1
K1
A1
PAD4
4
Program
Program sterownika został napisany
w języku C przy użyciu popularne-
go kompilatora WinAVR i PonyProg
i można go ściągnąć z Elportalu.
Najpierw oczywiście deklarujemy
potrzebne nam biblioteki oraz załą-
czamy nasz przetworzony obrazek.
W głównej pętli zaczynamy pracę,
zerując wszystkie użyte w progra-
mie zmienne oraz usypiamy układ.
LED14
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PA
D1
1
K1
A1
4
PAD
4
LED15
Rys. 3
PAD2
2
K2
A2
PAD5
5
PAD3
3
K3
A3
PAD6
6
PAD1
1
K1
A1
PAD4
4
LED16
PAD2
2
K2
A2
5
PAD5
PAD3
3
K3
A3
PAD6
6
Elektronika dla Wszystkich
Lipiec 2010
57
Wi¹zki kablowe
Zaciskanie z³¹czy na przewodach od 0,0123mm !!!
2
57
Rys. 6
Aby skompilować program, trzeba mu
określić ścieżkę położenia pliku javac.exe
– w pliku kompiluj.bat domyślnie jest usta-
wiona ścieżka:
cd engine
„C:\Program Files\Java\jdk1.6.0_14\bin”\
javac Main.java
cd ..
Należy ją ustawić na właściwą dla swo-
jego umiejscowienia pliku javac.exe.
Program uruchamiamy plikiem
ProjGrupowy.bat.
W celu stworzenia pliku nagłówkowego
dołączanego do programu mikrokontrolera
należy:
• stworzyć obrazek o wymiarach 80x16
pikseli (do tego może posłużyć nawet
Paint) i zapisać go w formacie bezstrat-
nym (polecany bmp, ale może być każdy
obsługiwany przez standardowe bibliote-
ki Javy), przykładem może być
rysunek
6
(należy pamiętać o czarnym tle i
ograniczonej palecie kolorów),
• wczytać go w aplikacji w Javie,
• przetworzone wartości zapisać w
pliku nagłówkowym (domyślnie
obrazek.h),
• wczytać projekt z programem mikro-
kontrolera i załączyć plik z przetwo-
rzonym obrazkiem.
Montaż i uruchomienie
Na
rysunkach 4
i
5
zamieszczone są
schematy montażowe płytek drukowa-
nych. Montaż płytek jest klasyczny.
Doświadczenie pokazało, że obu-
dowa Z-79 wchodzi między szprychy
koła o promieniu 14’’ (
fotografie 3
i
4
)
i klinuje się tam na tyle mocno, że nie
były potrzebne dodatkowe mocowa-
nia. Czytelników chcielibyśmy jednak
uprzedzić, iż montaż tej obudowy nie
jest łatwy i bez odrobiny wprawy może
sprawiać trudności. Warto zatem poszu-
kać jakiegoś innego rozwiązania, nawet
korzystając z przedmiotów codzien-
nego użytku, tak jak to zrobiliśmy z
obudową na listwę z diodami.
W obu obudowach zrobiliśmy
podłużne szczeliny, umożliwiające uży-
S
V
1
2
0
1
Fot. 3
IC1
Rys. 4
Rys. 5
cie taśmy. Ponadto w obudo-
wie listewki zrobiliśmy cztery
malutkie otwory, które posłuży-
ły do przymocowania obudowy
do szprych (
fotografie 5
i
6
).
W naszym rozwiązaniu płyt-
ka z listwami jest przyklejona
do jednej wewnętrznej strony
obudowy zwykłą taśmą, ale aby
ją zabezpieczyć przed ewen-
tualnymi wstrząsami i ociera-
niem się o obudowę, włoży-
liśmy w miejsce styku cienką
gąbkę służącą powszechnie do
zabezpieczania przewożonych
pakunków. Efekt naszych prac
możecie podziwiać na fotografii
tytułowej.
LED1
Fot. 4
LE
D
2
Fot. 5
LED3
LED4
LED5
LED6
LE
D
7
LED8
LE
D
9
Możliwe
modyfikacje
Najprostszą modyfikacją jest
dodanie zewnętrznej pamię-
ci Flash. Dzięki temu można,
wykorzystując wyprowadzenia
Rx i Tx, pokusić się o pro-
gramowanie mikrokontrolera
przez złącze służące łączeniu
modułów, a nawet za pomocą
interfejsu USB i bootloadera. Ta
druga modyfikacja, choć dużo
bardziej skomplikowana, umoż-
liwiłaby zmianę wyświetlane-
go obrazka poprzez włożenie
zwykłego pendrive’a do złącza
umieszczonego na płytce. Takie
rozwiązanie wyeliminowało-
by konieczność wyjmowania
mikrokontrolera z układu i uży-
cia programatora.
Liczymy, że już niedługo na
łamach EdW znajdziemy takie
rozwiązania. Do dzieła!
Fot. 6
LE
D
10
LED11
LED12
LED13
Wykaz elementów
K1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . kontaktron
LED1-LED16 . . . . . . . . . . . . . . dioda RGB PLCC6
Q1-Q3 . . . . . . . . . . . . . . . . . . . . . . . . . . . .BC337
IC1 . . . . . . . . . . . . . . . . . . . . . . . . . . . ATmega8L
SW1* . . . . . . . . . . . . . . . . . . . . . . . . .przełącznik
Obudowa Z-79
2×złącze 20-pinowe w rastrze 2,54mm
Podstawka precyzyjna DIL28
*elementy opcjonalne
LED14
LE
D
15
LED16
Warto dodać jeszcze, że kontaktron był
połączony ze sterownikiem dwoma przewo-
dami. Można by zamiast takiego rozwiązania
połączyć wszystko za pomocą złącza, ale
wówczas trzeba by zwiększyć złącze lub
zmniejszyć liczbę diod.
Komplet podzespołów z płytką jest dostęp ny
w sieci handlowej AVT jako kit szkolny AVT-2945.
Sylwia Babicz
sylwiababicz@gmail.com
58
Lipiec 2010
Elektronika dla Wszystkich
Plik z chomika:
megabox
Inne pliki z tego folderu:
2011.02_Pojazd z radarem IR.pdf
(2266 KB)
2011.01_Prosty sterownik pieca c.o.pdf
(2766 KB)
2010.11_Ładowarka procesorowa.pdf
(3055 KB)
2010.11_Kompas elektroniczny.pdf
(6765 KB)
2010.10_Pseudoanalogowy miernik diodowy.pdf
(2861 KB)
Inne foldery tego chomika:
-- █▬█ █ ▀█▀ █▬█ █ ▀█▀ Nowości Filmowe 2013 !!!!!!!
- BATTLEFIELD 4 [PC]
- Windows 7 SP1 ( x86 - x64 )( PL )( Wszystkie Możliwe Wersje )( Oryginał ) Pazdziernik 2013
- █ WINDOWS █ ★ ▬▬▬▬▬▬▬▬▬▬▬▬▬▬
- █ DZWONKI NA TELEFON █ ★ ▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Zgłoś jeśli
naruszono regulamin