Industrijska elektronika

Autor: Jovica Lazić, ing.el

 

Kontakt: jlazic@eunet.yu

RS485 interfejs

Industrijski standard RS485 je specijalizovan interfejs koji nije sadržan u opremi današnjih kućnih PC računara, ali je veoma korišćen u sistemima za prikupljanje podatakauopšte u industriji.

Ako želite da vašu mikrokontrolersku ploču povežete sa drugom mikroko-ntrolerskom pločom ili računarom, najednostavnije je da to uradite preko RS232 porta. Ovakva komunikacija ima određena ograničenja. Kao prvo zamišljena je kao komunikacija sa lokalnim uređajima, tako da je maksimalna udaljenost između uređaja 80m kod asinhrone komunikacije. Drugi nedostatak je što je napravljena kao point to point komunikacija, tj. za komunikaciju sa jednim uređajem ( kao primer je PC na kojem je na COM1 priključen miš, a na COM2 modem ili neki drugi uređaj). RS485 ova ograničenja su prevaziđena tako da ovaj sistem može da podrži do 32 uređaja (pa čak i 128) sa maksimalnom dužinom mreže do 1500m. RS485 postoji u dve izvedbe:
2-žičnoj, koristi jednu uvrnutu paricu,
4-žičnoj, kada koristi dve uvrnute parice kao kod RS422.
Mi ćemo se zadržati kod 2-žične izvedbe prikazane na slici 1.

5b41.gif (4182 bytes)
Slika 1. "Parity line" mreža

Ovakav način paralelnog povezivanja naziva se i party-line mreža. Upotreba oklopljenih parica (u tom slučaju shield se spaja sa uzemljenjem ili sa masom) nije neophodna, ali se preporučuje za smanjenje smetnji. RS485 je half-duplex bidirekciona komunikacija koja za prenos podataka koristi dve linije (označavaju se sa A i B) kroz koje se istovremeno prenosi isti podatak, a informacija na strani prijemnika da li je podatak binarna jedinica ili ne, dobija se razlikom napona između linija A i B. Ako je ulazna razlika napona na prijemniku VAB veća od 200 mV dobija se binarna jedinica ili ako je VAB manji od -200mV dobija se binarna nula. Ovakav pristup je veoma dobar za eliminisanje velikog broja smetnji koje mogu da se pojave na liniji.Iz razloga što se za prijem i predaju koriste iste dve linije, mora da se reguliše način predaje i prijema da ni bi došlo do sudaranja podataka na liniji. Drajveri za komunikaciju kod svakog uređaja koji je priključen na mrežu moraju da se postave u stanje prijema ili predaje. Jedno od tipičnih rešenja je master/slave komunikacija, gde jedna stanica preuzima upravljanje dok ostale stanice dobijaju adrese na osnovu kojih se prozivaju. U novijim sistemima ulogu master stanice preuzima PC na kojeg je povezano više adresabilnih stanica. U početnom stanju sve slave stanice su postavljene na prijem dok je master postavio drajver za predaju i započinje prozivanje. Nakon što je prozvana određena stanica, master se postavlja za prijem, a prozvana stanica za predaju. Nakon što slave stanica pošalje paket podataka stavlja se opet u stanje prijema. Ovakav tip komunikacije je asinhroni i mora da se odvija po određenom protokolu, o čemu će biti kasnije više reči.Uobičajen metod terminacije dvožične party-line RS485 mreže je sa završnim otpornikom RT postavljenim na krajeve mreže. Završni otpornik treba da podesi karakterističnu impendansu na liniji, i pretežno se postavlja vrednost od 100 - 120 oma. Za linije kraće od 300m nije potrebno postavljati završni otpornik. Otpornici Rb su postavljeni za slučaj kada su svi drajveri postavljeni za prijem (stanje visoke impendanse) da ne bi došlo do pogrešnog očitavanja ako bi razlika napona na linijama A i B bez podataka bila +/- 200mV. Vrednost ovih otpornika treba da je 620 oma ako se postavljaju samo na jednom uređaju ili 4,7K ako se postavljuju na više od 8 uređaja u mreži. Na dugačkim kabelima važnu ulogu u prenosu podataka čini kapacitet kabela iz razloga deformisanja signala. Ovaj kapacitet se kreće obićno oko 100pF/m i na osnovu njega je napravljena orijentirna tablica o mogućnostima brzine komunikacije.

Baud rate (baud) ukupan maximalan kapacitet kabela (pF)
1200 250000
2400 120000
4800 60000
9600 30000
19200 15000
38400 7500

Svi ovi podaci variraju u zavisnosti od proizvođača drajvera, tako da je najbolje proveriti u specifikacijama onih za koje se odlučite. Kao što je ranije rečeno ulogu master-a često preuzima PC. Kako na PC ne postoji izlaz za RS485 potrebno je napraviti konvertor sa RS232.

5b42.gif (3908 bytes)
Slika 2. Konvertor RS232 u RS485

Na slici 2 data je shema jednog takvog konvertora. Napajanje je +5V a korišćena integralna kola su: za RS232 drajver je MAX232 (MAXIM) i za RS485 je SN75176 (TI). Pored prijemne i predajne linije sa računara do konvertora dolazi i RTS linija kojom se drajver za RS485 komunikaciju prebacuje u stanje prijema ili predaje. Vrlo je važno da se RTS linija aktivira pre nego što računar počinje slanje podataka, a to se rešava softverski na računaru a ne konverterom, kao i što je treba postaviti neaktivnom za prijem podataka. Raspored potrebnih linija na 25-pinskom serijskom portu računara (obično COM2) je kao u Tabeli 2.

linija 25-pinski port
TX 2
RX 3
RTX 4
GND 7

Konvertora sa RS232 na RS485 ima dosta na tržištu sa raznim dodatnim mogućnostima, kao što su povećanje brzine, povećanje broja uređaja ili dužine linija. Za jedan od takvih postoji uputstvo i shema na adresi http://rs-485.com/48525a.htm

Pročitajte više o ovoj temi
AT89C2051 uvod 
Programiranje Atmelovog mikrokontrolera AT89C2051 
Mikrokontrolerski regulator brzine i smera DC motora 
Programator Atmel mikrokontrolera 
ATMEL Flash RISC MCU 

C o p y r i g h t  1998 mikroElektronika. All Right Reserved. Za sva pitanja obratite se redakciji