1. Pengertian RS 485
RS485 atau EIA (Electronic
Industries Association) RS485 adalah jaringan balanced line dan dengan sistem
pengiriman data secara half-duplex. RS485 bisa digunakan sebagai jaringan
transfer data dengan jarak maksimal 1,2 km.
Sistem transmisi saluran ganda yang
dipakai oleh RS485 ini juga memungkinkan untuk digunakan sebagai saluran
komunikasi multi-drop dan multipoint ( party line ). Saluran komunikasi
multipoint ini dapat dihubungkan sampai dengan 32 driver/generator dan 32
receiver pada single ( two wires ) bus. Dengan perkenalan terhadap repeater ‘
otomatis ‘ dan driver / receiver high – impedance, keterbatasan ini dapat
diperluas sampai ratusan ( bahkan ribuan ) titik pada jaringan.
2. Pengertian Half Duplex
Half duplex adalah sistem dimana
antara beberapa transmitter (pembicara) dapat berkomunikasi dengan satu atau
banyak receivers (pendengar) dengan hanya satu transmitter yang aktif
berkomunikasi dengan receiver dalam satu siklus waktu (waktu komunikasi).
Sebagai contoh, pembicaraan dimulai dengan sebuah pertanyaan, orang yang
bertanya tersebut kemudian akan mendengarkan jawaban atau menunggu sampai dia
mendapat jawaban atau sampai dia memutuskan bahwa orang yang ditanya tidak
menjawab pertanyaan tersebut. Dalam jaringan RS485, “master” akan memulai
“pembicaraan” dengan sebuah “Query” (pertanyaan) yang dialamatkan pada salah
satu “slave”, “master” kemudian akan mendengarkan jawaban dari “slave”. Jika
“slave” tidak merespon dalam waktu yang ditentukan, (diseting oleh kontrol
software dalam “master”), “master” akan memutus pembicaraan.
3.
RS485 dan Komunikasi Multipoint
Saluran RS232 hanya dipakai untuk menghubungkan DTE dengan
DCE dalam jarak pendek, untuk jarak lebih jauh bisa dipakai saluran arus
(current loop) tapi tidak untuk kecepatan transmisi tinggi. RS485 bisa dipakai
untuk saluran sampai sejauh 4000 feet dan kecepatan lebih dari 1 Megebit/detik.
Standard RS485 ditetapkan oleh
Electronic Industry Association dan Telecomunication Industry Association pada
tahun 1983. Nama lengkapnya adalah EIA/TIA-485 Standard for Electrical
Characteristics of Generators and Receivers for use in a Balanced Digital
Multipoint System. Standard RS485 hanya membicarakan karakteristik sinyal
dalam transmisi data secara Balanced Digital Multipoint System, jadi
jauh lebih sederhana dibanding dengan stadard RS232 yang mencakup ketentuan
tentang karakteristik sinyal, macam-macam sinyal dan konektor yang dipakai,
serta konfigurasi sinyal pada kaki-kaki di konektor dan juga penentuan tata
cara pertukaran informasi antara komputer dan alat-alat pelengkapnya. Standard
RS232 dan RS485 keduanya sama sekali tidak membicarakan protokol (tata cara)
transmisi data. Ditinjau dari standard electonic, dewasa ini dikenal dua macam
saluran data, yang pertama adalah transmisi saluran tunggal
(single-ended/unbalanced data transmission) yang dipakai RS232, saluran data
yang kedua adalah saluran ganda (diffrential-balanced data transmission) yang
dipakai RS485. Dalam saluran jenis pertama, satu sinyal dikirim dengan satu
utas kabel ditambah kabel ground, atau 4 sinyal dikirim dengan 4 utas kabel
ditambah kabel ground. Sedangkan dalan jenis saluran kedua, setiap sinyal
dikirim dengan dua utas kabel atau 4 sinyal dikirim dengan 8 utas kabel, belum
termasuk ground. Meskipun balanced data transmission lebih rumit, tapi
mempunyai sifat yang sangat kebal terhadap gagguan listrik, sehingga bisa
dipakai untuk menyalurkan data lebih jauh dengan kecepatan lebih tinggi.
Transmisi saluran tunggal Transmisi
saluran tunggal (Single-ended/unbalanced transmission) memakai satu utas kabel
untuk mengirim satu sinyal, informasi logika ditafsirkan dari beda tegangan
terhadap ground. Dengan cara ini, untuk pengiriman banyak sinyal cukup dipakai
kabel sebanyak jumlah sinyal yang dikirim plus satu utas kabel untuk ground
yang dipakai bersama.
4.
Saluran komunikasi multi-drop
Saluran komunikasi multi-drop adalah
sepasang kabel yang panjangnya tidak lebih dari 4000 feet, pada kedua ujung
saluran masing-masing dipasang resistor 120 Ohm yang menghubungkan kedua kabel.
Resistor tersebut dimaksud untuk mengurangi terjadinya gelombang pantul dalam
saluran, yang sering terjadi pada transmisi dengan kecepatan tinggi.
Selanjutnya pada saluran tersebut bisa dipasangkan sebanyak-banyaknya 32 chip
SN75176 Multi-drop RS485 Tranceiver, kaki A (kaki nomor 6) dari masing-masing
IC harus dihubungkan pada seutas kabel pembentuk saluran yang sama, dan kaki B
(kaki nomor 7) dihubungkan ke kabel yang lain. Karena saluran dipakai bersama
oleh banyak transceiver, agar output Line Generator dari masing-masing
tranceiver tidak berbenturan, dalam rangkaian saluran komunikasi multidrop
ditentukan semua output Line Generator harus dalam keadaan non-aktip (GE=0,
meng-ambang – high impedance state), kecuali Line Generator dari tranceiver
yang berfungsi sebagai induk (Master) yang boleh aktip (GE=1). Saat beroperasi
Master secara bergilir menghubungi Slave, setelah itu Master me-nonaktip-kan
Line Generatornya, Slave yang terpanggil akan meng-aktip-kan Line Generatornya
dan mengirimkan informasi kesaluran, setelah itu Slave tersebut me-nonsktip-kan
kembali Line Generatornya dan kembali Master meng-aktipkan generator untuk
menghubungi Slave yang lain. Dengan demikian Master berfungsi untuk mengendalikan
saluran, dan komunikasi yang terjadi di saluran adalah komunikasi half-duplex,
yakni komunikasi dua arah secara bergantian. Pada saat pergantian aktivitas
Line Generator Master dan Slave, bisa terjadi satu saat secara bersamaan semua
Line Generator tidak aktip, akibatnya saluran menjadi mengambang dan keadaan
logika dari saluran tidak menentu. Untuk mencegah terjadinya hal tersebut, pada
saluran ditambahkan 2 buah resistor masing-masing bernilai 82 Ohm, resistor
yang terhubung ke A dihubungkan ke +5 Volt dan resistor yang terhubung ke B
dihubungkan ke ground, dengan cara begini kalau semua Line Generator tidak
aktip bisa dipastikan saluran dalam keadaan ‘1’. Meskipun kerja dari Line
Receiver tidak memerlukan ground, tapi untuk menjamin agar pertukaran sinyal
antara tranceiver bisa terjadi dengan baik, biasanya disamping sepasang
kabel saluran multidrop ditambah lagi seutas kabel ground. Mengingat
masing-masing tranceiver letaknya bisa berjauhan satu sama lain, bisa mendapat
catu daya dari instalasi jala-jala listrik yang berlainan, sehingga antara
tranceiver satu dengan yang lainnya bisa mempunyai selisih potensial listrik
yang cukup besar, untuk mencegah aliran arus besar yang bisa merusak
transceiver, ground tranceiver biasanya tidak dihubungkan langsung ke kabel
ground, tapi dipasang seri resistor sebesar 100 Ohm.
Pemrogaman Rs485
Ketika kita ingin menghubungkan PC
dengan sebuah microcontroller kita bisa menggunakan RS232 , tapi jika
kita ingin menghubungkan PC dengan bayak microcontroller maka Rs232 tidak bisa
digunakan. Untuk menghubungkan PC dengan lebih dari 1 microcontroller
kita perlu menggunakan RS485.
Kelebihan RS485 dibandingkan
RS232
- Bisa menghubungkan 1
master dengan 32 slave.
- Kecepatan data bisa sampai 1
mbps
- Maksimal panjang kabel data
1200 meter.
- menggunakan metoda master-slave
Secara hardware maupun pemrograman
Rs485 sangatlah simple tapi sangat bermanfaat buat pengontrolan.
Kecepatan
transfer data rs485
Grafik kecepatan transfer data Vs
panjang kabel data.
Topologi
jaringan Rs485
Topologi jaringan Rs485
Sinyal
Grounding
Sinyal Grounding tipikal
alternatif grounding :
alternatif ground
Penjelasan
Hardware / Rangkaian
Jaringan Rs485 dibentuk oleh IC
max485 , tiap master dan slave masing masing memiliki 1 ic max485 dan saling
terhubung melalui kaki 6 dan kaki 7.
Komunikasi antara master dan slave
dilakukan secara half duplex atapun Full duflex.
HALF
DUFLEX
Half duflex artinya pada satu
saat hanya ada 1 node yang mengirim data secara bergantian. Mengirim dan
menerima data dgn pengaturan pada pin RE dan DE .
Rangkaian Rs485 dgn ic max485
Penjelasan
kaki ic max485 :
- kaki 1 digunakan untuk menerima
data , kaki ini dihubungkan dengan pin Rx dari comm port /rs232
dari Pc atau Rx dari microcontroller.
- kaki 2 (RE) digunakan
untuk kontrol penerimaan data . jika di beri 0 maka siap
menerima data jika 1 maka tdk bisa mnerima data.
- kaki 3 (DE) digunakan untuk
kontrol pengiriman data jika pc atau microcontroller ingin mengirim data
maka kaki ini harus diberi logika 1.
- kaki 4 digunakan untuk jalur
pengiriman data , kaki ini dihubungkan ke Tx dari pin comm port rs232
atau Tx microcontroller.
- kaki 5 di hubungkan ke ground.
- kaki 6 dihubungkan dengan
kaki 6 dari ic max485 node lainnya melalui kable data, biasanya
dinamakan jalur A
- kaki 7 dihubungkan dengan kaki
7 dari ic max485 nodelainya melalui kabel data. bisanya dinamakan jalur B.
- kaki 2 pada master biasanya
dihubungkan ke 0 / ground . Artinya master selalu siap menerima data.
Pemrograman
rs485
Secara pemrograman Rs485 persis sama
dengan rs232 , hanya perlu ditambah perintah untuk membuat kaki 3 (DE)
dari ic max485 diset menjadi 1 ketika akan mengirim data .
Jika kita ingin mengirim data dari
komputer lewat program visual basic 6 bisa dengan baris perintah :
MSComm1.RTSEnable = False
dan sebaliknya ketika penerimaan
data kaki 2 (RE) dari ic max485 diset ke 0. dengan
baris perintah :
MSComm1.RTSEnable = True.
sebelumnya jangan lupa hubungkan
pin RTS pada serial port PC kita dengan Pin 3 (DE ) dari ic
max485 seperti tampak pada contoh jaringan Rs485 gambar dibawah
ini:
rangkain Rs485 network
Penjelasan Rangkaian diatas:
- Master pada rangkaian diatas
adalah sebuah PC dan sebagai slavenya adalah 2
buah microcontroller.
- IC Max232 digunakan merubah
tegangan dari 12v port serial PC ke TTL (5 volt) . karena tegangan
yang keluar dari Comm port PC kita 12v , sedangkan max485 menggunakan
tegangan TTL (5v). Ada cara yang lebih praktis : anda bisa membeli modul
Rs232 to rs485 converter harganya relatif murah.
- Kaki RE ic max485 dihubungkan
ground artinya PC sebagai master selalu siap (defaultnya) menerima
data
- Pada ujung kabel data
jangan lupa diberi tahanan 120 ohm supaya sinyal tidak mantul.
- Pada slave misalnya sebuah
Microcontroller dgn Icmax485 , gabungkan kaki RE dan DE dari
max485 lalu hubungkan ke pin tertentu misal portD.7
maka ketika Micon akan mengirim data , portD.7 harus dibuat 1
terlebih dahulu sebelum micon mengirim data .
PortD.7 = 1; // DE dan
RE dibuat 1
putchar(‘a’); // kirim
data ‘a’
PortD.7=0; //DE dan Re
= 0 ( kembalikan ke default siap terima data).
Akan tetapi jika kita menggunakan
rangkaian rs232 to rs 485 yg otomatis maksudnya seting DE dan Re secara
otomatis , kita tdk perlu lagi menset kaki RTS spt kode program diatas (MSComm1.RTSEnable
= False/TRUE) . ini contoh rangkaian rs232 to rs485
converter secara automatis .