Sve što je potrebno je jedan mikrokontroler PIC18F4520 i serijski eternet čip ENC28J60. Serijska komunikacija čini ovaj čip odličnim rešenjem i za mikrokontrolere iz drugih familija kao što su AVR, dsPIC itd. Za povezivanje na eternet mrežu korišćen je RJ-45 konektor firme CviLux pod oznakom CJCB A8HF1Y0. LED dioda povezana na PORTB.0 mikrokontrolera predstavljaće uređaj u kući kojim želimo da upravljamo.
Kompajler mikroC for PIC sadrži ethernet biblioteku koja će nam uveliko olakšati pravljenje samog programa za mikrokontroler. Uz pomoć svega par rutina iz ove biblioteke, napravićemo program koji će nam omogućiti paljenje i gašenje uređaja u kući putem web browser-a.
U programu je potrebno uraditi sledeće:
Korak 1. Napraviti html stranicu preko koje će se upravljati mikrokontrolerom i ubaciti je u kod u vidu string-a.
Korak 2. Setovati IP, DNS, Gateway adrese i Subnet masku dobijenu od strane internet provajdera.
Primera radi, parametri naše lokalne mreže su:
IP: 192.168.20.60 (adresa kontrolnog sistema)
DNS: 192.168.20.1 (adresa Domain Name Sistema)
GATEWAY: 192.168.20.6 (adresa Gateway-a)
SUBNET: 255.255.255.0 (subnet maska)
Korak 3. Ugasiti analogne ulaze na portu B mikrokontrolera. Postaviti nulu na pin PORTB.0 i setovati ga kao izlazni.
Korak 4. Inicijalizovati SPI modul mikrokontrolera PIC18F4520.
Korak 5. Inicijalizovati serijski eternet modul ENC28J60.
Korak 6. Unutar funkcije Spi_Ethernet_userTCP napisati kod koji će po prijemu komande poslate putem web browser-a upaliti/ugasiti LED diodu.
Korak 7. U neprekidnoj petlji iščitavati primljene podatke.
Najvažnija funkcija je Spi_Ethernet_userTCP u kojoj se odvija procesiranje svih primljenih komandi. Nakon prijema ’GET’ zahteva poslatog sa vašeg računara putem web browser-a na IP adresu kontrolnog sistema, mikrokontroler će browser-u vratiti web stranicu koja se nalazi u njegovoj memoriji. To je upravo ono što će biti prikazano na monitoru vašeg računara. Po prijemu ON komande LED dioda se pali, a po prijemu OFF komande ista se gasi. Ukoliko se umesto diode stavi relej može se ostvariti kontrola bilo kog uređaja kao što je svetlo, alarm, grejanje itd.
Sama kontrola se svodi na kucanje IP adrese kontrolnog sistema koji upravlja uređajima u kući u web browser i zadavanje željenih komandi. Naravno, kako se kontroliše jedan pin mikrokontrolera tako se može kontrolisati i više pinova čime se dolazi do kompleksne kontrole većeg broja kućnih uređaja, odnosno, do sistema kućne automatizacije.
Na slici 2 je prikazana stranica koja se dobija u web browser-u nakon unošenja IP adrese kontrolnog sistema. U opisanom primeru, klikom na tastere ON i OFF dolazi do paljenja i gašenja LED diode čime se simulira upravljanje sistemom za grejanje.
Šema povezivanja sa ethernet modulom 96.02 Kb
Više informacija o Ethernet modulu možete pronaći na ovoj adresi.
Informacije o EasyPIC5 razvojnom sistemu možete naći ovde.
NAPOMENA: Ovaj projekat postoji i varijantama za AVR i dsPIC mikrokontrolere. Više o ovome možete naći ovde.