AVT-966.pdf

(1679 KB) Pobierz
010-015_karta_przekaz_eth.indd
Karta przekaźników z interfejsem Ethernet
Karta przekaźników
z interfejsem Ethernet
AVT–966
Kontynuując serię projektów
opartych na interfejsie Ethernet
proponujemy tym razem kartę
przekaźników sterowaną poprzez
stronę internetową. Karta
zawiera 4 przekaźniki i jest
dodatkowo wyposażona w 4
wejścia cyfrowe. Oprócz głównej
funkcji sterującej może więc
pełnić także funkcję nadzorującą
cztery linie wejściowe.
Rekomendacje:
przedstawiamy kolejny projekt
realizujący sterowanie układami
domowej automatyki poprzez
Internet.
Zastosowane na karcie przekaź-
niki mogą sterować zarówno ob-
wodami stałoprądowymi (na przy-
kład 12 V), jak również zasilanymi
z sieci energetycznej 230 V. Obcią-
żalność styków pozwala przełączać
prądy o maksymalnym natężeniu
równym 10 A.
Stany wejść cyfrowych, stany
przekaźników oraz przycisków umoż-
liwiających zmianę stanów przekaź-
ników prezentowane są na genero-
wanej przez procesor stronie inter-
netowej. Zaletą takiego rozwiązania
jest uniwersalność, gdyż do obsługi
karty nie jest wymagane dodatko-
we oprogramowanie uruchamiane
na komputerze sterującym, wystar-
czy sama przeglądarka internetowa.
Dzięki temu do obsługi karty prze-
kaźników można zastosować dowol-
ny komputer z dowolnym systemem
operacyjnym (np. Windows, Linux).
Bez przeszkód, do sterowania moż-
na także zastosować komputer typu
PocketPC, czy nawet telefon komór-
kowy. Jedynym wymaganiem urzą-
dzenia sterującego jest dostęp do
Internetu i możliwość wyświetlenia
strony internetowej. Podstawowym
ogniwem, w którym może odbywać
się komunikacja z kartą przekaźni-
ków jest lokalna sieć LAN przy-
porządkowana do jednego routera.
Jeśli taka sieć udostępnia dodatko-
wo dostęp bezprzewodowy, to kartę
można kontrolować również w spo-
sób bezprzewodowy (karta jest do-
łączana przewodowo, ale komputer
może mieć bezprzewodowy dostęp
do sieci LAN). Poza obsługą w ob-
rębie jednej sieci możliwe jest też
sterowanie z odległego miejsca po-
przez sieć Internet. W takim jednak
przypadku konieczne jest odpowied-
nie skonfigurowanie routera, tak
aby przekierowywał port o numerze
80 na wewnętrzny adres IP przy-
dzielony dla karty przekaźników.
Pomimo tego, że układ stano-
wi gotowe rozwiązanie, to istnieje
możliwość jego modyfikacji poprzez
zmianę sposobu wyświetlania strony
internetowej. W domyślnej stronie,
stany wejść oraz stany przekaźni-
ków są reprezentowane w postaci
dwóch tabel. Strona jest zapisywana
w nieulotnej pamięci EEPROM, tym
samym można ją wielokrotnie mo-
dyfikować. W dalszej części artykułu
zostanie opisana budowa domyślnej
strony ze wskazaniem parametrów,
których należy użyć we własnym
projekcie, aby poprawnie wyświe-
tlać stan wejść i wyjść karty.
Zastosowany interfejs etherneto-
wego został zaimplementowany na
układzie RTL8019, który umożliwia
PODSTAWOWE PARAMETRY
• Płytka o wymiarach 110x100 mm
• Zasilanie 12 V/200 mA
• Tryb dynamicznego pobierania adresu
sieciowego (DHCP)
• Możliwość pracy ze stałym adresem IP
• Możliwość zmiany adresu MAC urządzenia
• Liczba wejść cyfrowych: 4
• Liczba wyjść przekaźnikowych: 4
• Obciążalność wyjść przekaźnikowych: 10 A
• Obsługa przez przeglądarkę internetową
• Możliwość sposobu wyświetlania strony
internetowej
• Konfigurowanie karty przez port szeregowy
• Zapis strony internetowej przez port szere-
gowy lub sieć LAN (FTP)
• Sygnalizacja stanu pracy diodami LED
10
Elektronika Praktyczna 2/2007
PROJEKTY
180909366.051.png 180909366.061.png
Karta przekaźników z interfejsem Ethernet
komunikację z prędkością 10 Mb/s.
Przewidziano pracę karty zarówno
w trybie dynamicznego pobierania
adresu IP, jak również ustalania
statycznego. Z uwagi na fakt,
że wszystkie karty domyślnie
posiadają ten sam adres MAC,
istnieje możliwość jego zmiany.
Dzięki temu będzie możliwa
praca kilku kart w jednej sieci
LAN. Do konfiguracji parame-
trów karty został zastosowany
port szeregowy RS232.
PIC18F452. Posiada on 32 kB pa-
mięci programu oraz 1,5 kB pamięci
RAM. Ze względu na to, że w ro-
dzinie układów PIC18 jedno sło-
wo pamięci programu ma długość
16 bitów, więc do dyspozycji jest
Budowa
Schemat elektryczny karty
jest przedstawiony na rys. 1 .
Można podzielić go na dwa
bloki funkcjonalne: blok inter-
fejsu sieci LAN i blok sterują-
cy.
Za komunikację w warstwie
sieciowej odpowiada gotowy
moduł ethernetowy. Zastoso-
wano układ RTL8019AS wraz
z elementami wymaganymi do
jego pracy. Od strony siecio-
wej znajduje się złącze RJ45,
które służy do podłączenia ze
switchem sieciowym. Sygnały
służące do komunikacji z pro-
cesorem zostały wyprowadzone
na dwa złącza szpilkowe. Mo-
duł nie jest skonfigurowany do
pracy w trybie umożliwiającym
bezpośrednią współpracę z pro-
cesorem, w związku z czym od-
powiednie stany na wejściach
adresowych wykonane są ze-
wnętrznie na płytce karty prze-
kaźników.
Układ RTL8019AS jest kon-
figurowany do pracy w trybie
8–bitowym, co pozwala na do-
łączenie do niego mikrokon-
trolera, używając do tego mi-
nimalnej liczby wyprowadzeń.
Sygnały SD0...SD7 stanowią
dwukierunkową magistralę ko-
munikacyjną, dla której kieru-
nek przesyłania danych wyzna-
czają sygnały IOR i IOW. Linie
A0...A4 są wejściami adresowy-
mi umożliwiającymi ustawienie
adresów rejestrów wewnętrz-
nych służących do konfigura-
cji parametrów pracy układu
RTL8019AS. Pozostałe linie ad-
resowe są ustawione na stałe
poprzez dołączenie do masy
lub do plusa zasilania.
G ł ó w n y m e l e m e n -
tem całego urządzenia
jest mikrokontroler typu Rys. 1. Schemat elektryczny karty przekaźników
Elektronika Praktyczna 2/2007
11
180909366.069.png 180909366.070.png 180909366.001.png 180909366.002.png 180909366.003.png 180909366.004.png 180909366.005.png 180909366.006.png 180909366.007.png 180909366.008.png 180909366.009.png 180909366.010.png 180909366.011.png 180909366.012.png 180909366.013.png 180909366.014.png 180909366.015.png 180909366.016.png 180909366.017.png 180909366.018.png 180909366.019.png 180909366.020.png 180909366.021.png 180909366.022.png 180909366.023.png 180909366.024.png 180909366.025.png 180909366.026.png 180909366.027.png 180909366.028.png 180909366.029.png 180909366.030.png 180909366.031.png 180909366.032.png 180909366.033.png 180909366.034.png 180909366.035.png 180909366.036.png 180909366.037.png 180909366.038.png 180909366.039.png 180909366.040.png 180909366.041.png 180909366.042.png 180909366.043.png 180909366.044.png 180909366.045.png 180909366.046.png 180909366.047.png 180909366.048.png 180909366.049.png 180909366.050.png 180909366.052.png 180909366.053.png 180909366.054.png 180909366.055.png 180909366.056.png 180909366.057.png 180909366.058.png
 
Karta przekaźników z interfejsem Ethernet
się natomiast przez port RS232,
do obsługi którego został zasto-
sowany typowy konwerter napięć
– układ MAX232. Sygnały pocho-
dzące z komputera kierowane są do
złącza CON2, dalej do układu US2
i do procesora. Do transmisji da-
nych wykorzystano tylko linie RxD
i TxD bez linii sprzętowego stero-
wania przepływem danych (CTS,
RTS). Interfejs szeregowy służy do
ustawiania parametrów sieciowych
karty za pomocą komputera. Wy-
magane jest do tego wprowadzenie
procesora w tryb programowania, co
wykonuje się za pomocą przycisku
„S”. Do sygnalizacji pracy proceso-
ra służy dioda D2. Układy cyfrowe
karty oraz moduł ethernetowy są
zasilane napięciem 5 V uzyskanym
ze stabilizatora (US3). Na jego wej-
ściu znajduje się dioda zabezpie-
czająca przed dołączeniem napięcia
zasilającego o nieprawidłowej pola-
ryzacji.
Rys. 2. Rozmieszczenie elementów na płytce karty przekaźników
Montaż
Karta przekaźników została
zmontowana na płytce przedstawio-
nej na rys. 2 . Dzięki zastosowaniu
zintegrowanego modułu etherneto-
wego uniknięto konieczności mon-
towania elementów SMD. Pozostaje
tylko wlutowanie kilku elementów
„przewlekanych”, do czego nie jest
potrzebna specjalna lutownica, ani
też nadzwyczajna precyzja. Mon-
taż elementów należy rozpocząć
od elementów najmniejszych (rezy-
story, diody, ale bez LED–ów). Na-
stępnie wlutowywane są podstaw-
ki pod układy scalone, tranzystory
i kondensatory. Stabilizator US3
powinien być zamontowany w po-
zycji leżącej. W ostatnim etapie
umieszczamy na płytce wszystkie
złącza oraz przekaźniki. Moduł
ethernetowy jest umieszczony nad
procesorem. W miejscu przeznaczo-
nym dla złączy należy wlutować
dwa gniazda typu Goldpin. Na
samym końcu do płytki powinny
być wlutowane diody świecące,
których wysokość należy dostoso-
wać tak, aby wystawały ponad po-
zostałe elementy.
Do zasilania układu wymagany
jest zasilacz o napięciu wyjścio-
wym 12 V i wydajności prądowej
minimum 200 mA. Dodatkowo do
połączenia z hubem lub switchem
będzie potrzebny kabel sieciowy
(skrętka komputerowa zakończona
wtykami RJ45).
16 k słów. Procesor jest taktowany
sygnałem o częstotliwości 20 MHz
wygenerowanym przy pomocy rezo-
natora kwarcowego X1. Zerowanie
po włączeniu zasilania następuje
w wyniku wytworzenia odpowied-
niego impulsu poprzez wewnętrzny
blok zerowania, dlatego na wejściu
!MCLR jest na stałe wymuszony
stan wysoki poprzez dołączony re-
zystor R3. Magistrala danych jest
obsługiwana przez port RD oraz
sygnały sterujące (IOR i IOW) połą-
czone z portem RE. Linie adresowe
są dołączone do portu RB.
Wejścia pomiarowe zostały utwo-
rzone z wyprowadzeń RA0...RA4
portu RA. Sygnały wejściowe kie-
rowane są ze złączy CON3 i CON4
do procesora przez układ zabezpie-
czający przed zbyt wysokim napię-
ciem. Na każdej z linii została za-
stosowana dioda Zenera, która wraz
z szeregowym rezystorem ogranicza
wartość napięcia wejściowego do
około 5 V. Sterowanie przekaźnikami
odbywa się poprzez wyprowadzenia
RC0, RC1, RC2, RC5. Na każdym
z wyjść znajduje się wzmacniacz
tranzystorowy oraz dioda świecą-
ca, sygnalizująca stan
przekaźnika. Dodatko-
we diody prostowni-
cze D3...D5 służą do
zabezpieczenia tranzy-
storów przed wysokim
napięciem indukowa-
nym w cewkach prze-
kaźników. Ich styki
zostały dołączone do
złączy CON5...CON8.
Zawartość strony inter-
netowej jest przecho-
wywana w zewnętrz-
nej pamięci EEPROM
(US4) o pojemności
32 kB. Komunikacja
z pamięcią odbywa
się poprzez magistralę
I 2 C. Wymiana danych
z komputerem odbywa
Rys. 3. Przykładowa konfiguracji programu Hyperter-
minal
12
Elektronika Praktyczna 2/2007
180909366.059.png 180909366.060.png 180909366.062.png 180909366.063.png
Karta przekaźników z interfejsem Ethernet
Rys. 4. Menu wyświetlone w oknie Hyperterminala umoż-
liwiające zmianę konfiguracji karty
adres jest pobie-
rany dynamicz-
nie z routera. Je-
śli karta zostanie
skonfigurowana do
takiego przydziela-
nia adresów, to po
włączeniu zasila-
nia karty, pobierze
ona adres automa-
tycznie, a informa-
cja o tym zostanie
wysłana do kom-
putera przez port
szeregowy. Pozwo-
li to na ustalenie,
pod jakim adresem
znajduje się karta
bez konieczności
sprawdzania tego
w routerze. Informacja o przydzie-
lonym adresie IP jest wysyłana do
komputera po każdym jego pobra-
niu (przy włączeniu zasilania) lub
zmianie. Z reguły router zapamiętu-
je adres MAC urządzenia i przy ko-
lejnym jego „pojawieniu” się przy-
dziela ten sam adres. W przypadku
jednak rekonfiguracji urządzeń sie-
ciowych, przydzielony adres może
ulec zmianie i ponownie trzeba
będzie „odnaleźć” adres karty. Aby
mieć pewność, że karta zawsze bę-
dzie miała ten sam adres, można
zastosować adres statyczny, który
jest ustalany w trybie konfiguracyj-
nym karty przekaźników. W tryb
ten procesor jest wprowadzany po-
przez włączenie zasilania po wcze-
śniejszym naciśnięciu i przytrzy-
maniu przycisku „S”. W oknie Hy-
perterminala zostanie wyświetlone
menu umożliwiające zmianę opi-
sanych parametrów ( rys. 4 ). Dioda
„System” będzie świeciła w sposób
ciągły. Daną pozycję menu wybiera
się z klawiatury komputera poprzez
wskazanie przypisanej do niej cyfry.
Pierwsza pozycja „Change Board se-
rial number” służy do zmiany nu-
meru seryjnego sterownika. Podana
liczba może się zawierać w prze-
dziale od 0 do 65535. Zmiana nu-
meru seryjnego jest tak naprawdę
zmianą MAC adresu urządzenia. Za-
programowany procesor jako MAC
adres przyjmuje domyślną wartość
00–04–A3–00–00–00. MAC adres jest
identyfikatorem danego urządzenia
i w jednej sieci każde urządzenie
musi mieć inny adres. Aby moż-
liwe było użycie więcej niż jednej
karty, konieczna jest zmiana jej
adresu. Wykonuje się to zmienia-
jąc numer seryjny. Zmiana dotyczy
czterech ostatnich znaków tego ad-
resu (00–04–A3–00–XX–XX). Należy
zwrócić uwagę na to, że wartości
są zapisane w kodzie hexadecymal-
nym, możliwe jest więc uzyskanie
65535 różnych adresów.
Opcja „Change default IP ad-
dress” pozwala na ustawienie sta-
tycznego adresu IP. „Change de-
fault gateway address” umożliwia
ustawienie adresu bramy interne-
towej dla pracy ze statycznym ad-
resem IP. „Change default subnet
mask” pozwala na ustawienie ma-
ski podsieci dla pracy ze statycz-
nym adresem IP. „Enable DHCP &
IP Gleaning” konfiguruje procesor
do dynamicznego pobierania adresu
IP. „Disable DHCP & IP Gleaning”
powoduje wyłączenie dynamicznego
pobierania adresu IP i przełączenie
procesora w tryb statyczny, stosując
wcześniejsze ustawienia parametrów
trybu statycznego.
Przykładowe parametry dla pra-
cy ze stałym IP mogą być następu-
jące:
Adres IP: 192.168.1.5
Maska podsieci: 255.255.255.0
Adres Bramy: 192.168.1.1
Ustawienia te są jednak zależne
od konfiguracji sieci lokalnej, i dla-
tego maska podsieci i adres bramy
mogą być inne. Niezbędne informa-
cje o sieci można uzyskać logując
się do routera.
Po prawidłowym zmontowaniu
układu i dołączeniu zasilania dioda
świecąca D2 będzie błyskała. Do
pełnego uruchomienia układu nale-
ży dodatkowo połączyć go z kom-
puterem poprzez port szeregowy za
pomocą złącza CON2. Pozwoli to na
ustawienie i odczytanie parametrów
pracy układu. Do tego celu w kom-
puterze musi zostać uruchomiony
program terminala obsługujący port
szeregowy (na przykład Hypertermi-
nal). Przykład konfiguracji programu
jest przedstawiony na rys. 3 .
Oprogramowanie karty umożli-
wia pracę ze statycznym oraz dy-
namicznym adresem IP. Domyślnie
List. 1. Zawartość pliku index.htm
<HTML>
<HEAD>
<TITLE>Karta przekaźników</TITLE>
</HEAD>
<FRAMESET rows="10%,10%" border=1>
<FRAME name="left" src="Status.cgi" marginheight=2 marginwidth=2>
<FRAME name="top" src="Commands.cgi" marginheight=2 marginwidth=2>
</FRAMESET>
</HTML>
List. 2. Zawartość pliku status.cgi
<html><meta http–equiv="refresh" content="3">
<head><title>Web Server Status</title></head>
<body><center>
<font face=helvetica>
<table border=1>
<caption align="bottom">&nbsp; </caption>
<thead align=center>
<tr><td colspan=4>Wejścia</td></tr>
</thead>
<tfoot align=center>
<tr><td colspan=4></td></tr>
</tfoot>
<colgroup width=100 align=center>
<col>
<col>
<col>
<col width=100>
</colgroup>
<tbody>
<tr><th> IN1 </th><th> IN2 </th><th> IN3 </th><th> IN4 </th></tr>
<tr><td> %00 </td><td> %01 </td><td> %02 </td><td> %03 </td></tr>
</tbody>
</table>
</center></body></html>
Elektronika Praktyczna 2/2007
13
180909366.064.png 180909366.065.png
Karta przekaźników z interfejsem Ethernet
List.3 Zawartość pliku command.cgi
<html>
<head><title>Web Server I/O Control</title></head>
<body><center>
<font face=helvetica>
<FORM METHOD=GET action=0>
<table border=1>
<caption align="bottom">&nbsp; </caption>
<thead align=center>
<tr><td colspan=4>Stan przekaźników</td></tr>
</thead>
<tfoot align=center>
<tr><td colspan=4></td></tr>
</tfoot>
<colgroup width=100 align=center>
<col>
<col>
<col>
<col width=100>
</colgroup>
<tbody>
<tr><th> %04 </th><th> %05</th><th> %06 </th><th> %07 </th></tr>
<tr><td> <input type=submit name=4 value=&nbsp;&nbsp;P1&nbsp;&nbsp;>
</td>
<td> <input type=submit name=5 value=&nbsp;&nbsp;P2&nbsp;&nbsp;> </td>
<td> <input type=submit name=6 value=&nbsp;&nbsp;P3&nbsp;&nbsp;> </td>
<td> <input type=submit name=7 value=&nbsp;&nbsp;P4&nbsp;&nbsp;> </td>
</tr>
</tbody>
</table>
</form>
</body></html>
Uruchomienie pliku index.htm
w przeglądarce internetowej powo-
duje wyświetlenie zawartości pliku
status.cgi oraz poniżej command.
cgi. Modyfikując zawartość pliku
status.cgi można zmienić sposób
wyświetlania stanów wejść cyfro-
wych, natomiast modyfikując plik
command.cgi zmieniony zostanie
sposób wyświetlania stanów i ste-
rowania przekaźnikami.
Podczas modyfikacji należy pa-
miętać, że wszystkie operacje są
wykonywane na rejestrach, które
mają przypisane adresy. Przy od-
czycie informacji, podanie kon-
kretnego adresu zwróci wartość
parametru do niego przypisanego.
W pliku źródłowym strony, są to
parametry poprzedzone znakiem
„%”. I tak adresy %00, %01, %02,
%03 odpowiadają stanom wejść
cyfrowych, natomiast adresy %04,
%05, %06, %07 stanom przekaźni-
ków. Do zmiany stanów przekaźni-
ków przypisanie adresów jest takie
samo, ale procesor traktuje to jako
polecenie zmiany stanu. Działa-
nie procesora jest uzależnione od
tego, czy adres został podany do
odczytu, na przykład wypełnienia
komórki tabeli, czy do zapisu, na
przykład poprzez naciśniecie przy-
cisku. Konkretne parametry należy
podać przy definiowaniu przyci-
sków oznaczonych jako P1...P4 lub
odpowiednich komórek tabeli. Zmo-
dyfikowaną stronę należy następnie
skompilować i wgrać do pamięci
EEPROM karty.
Po dokonaniu zmian w wersji
źródłowej strony należy uruchomić
kompilator z odpowiednimi parame-
trami. Aby ułatwić ten proces, na
Rys. 5. Okno przedstawiające stany sygnałów
wejściowych doprowadzonych do karty oraz stany
przekaźników
informacja o ich aktu-
alnym położeniu. Jeśli
przekaźnik jest załączo-
ny, to pojawi się napis
„ON”, w przeciwnym
przypadku widoczny bę-
dzie napis „OFF”. Stro-
na jest automatycznie
odświeżana co trzy se-
kundy, zapewniając tym
samym aktualizację wy-
świetlania stanów wejść
cyfrowych w takim od-
stępie czasu. Informa-
cja o stanie przekaźni-
ków jest aktualizowana
w trzech przypadkach:
w momencie urucho-
mienia strony, zmiany stanu do-
wolnego przekaźnika oraz ręcznego
odświeżenia strony.
Z uwagi na róż-
norodność zasto-
sowań karty prze-
kaźników, sposób
wyświetlania sta-
nów poszczególnych
wejść oraz sposób
sterowania przekaź-
nikami można dosto-
sować do własnych
potrzeb poprzez
modyfikację strony
zapisanej w pamię-
ci EEPROM. Strona
domyślna składa się
z trzech plików: in-
dex.htm, status.cgi
i command.cgi. Ich
źródła są przedsta-
wione na list. 1...3 .
Funkcja „Download MPFS ima-
ge” służy do zapisania strony in-
ternetowej do pamięci EEPROM
sterownika.
„Save & Quit” powoduje zapi-
sanie wcześniej podanych parame-
trów do pamięci i wyjście z trybu
programowania.
Po ustawieniu wszystkich para-
metrów, wybranie przydzielonego
do karty adresu w formacie htt-
p://192.168.1.5 spowoduje wyświe-
tlenie strony przedstawionej na
rys. 5 . Storna jest podzielona na
dwie części. W górnej tabeli przed-
stawiono stan wejść karty, w której
„0” reprezentuje stan logicznego
zera na wejściu karty, a „1” stan
logicznej jedynki. W drugiej tabe-
li znajdują opcje dotyczące stanu
przekaźników. Przyciski P1...P4 słu-
żą do zmiany stanu przekaźników,
natomiast nad nimi znajduje się
Rys. 6. Okno wyświetlane podczas transferu danych
do pamięci umieszczonej na karcie przekaźników przy
wykorzystaniu portu szeregowego
14
Elektronika Praktyczna 2/2007
180909366.066.png 180909366.067.png 180909366.068.png
Zgłoś jeśli naruszono regulamin