Interface Serial RS485
Interface Serial RS485
Penjelasan Interface Serial RS-485 Penjelasan Interface Serial RS-485
RS485 adalah teknik komunikasi data serial yang dikembangkan di tahun 1983 dimana RS485 adalah teknik komunikasi data serial yang dikembangkan di tahun 1983 dimana dengan teknik ini, komunikasi data dapat dilakukan pada jarak yang cukup jauh yaitu 1,2 Km. dengan teknik ini, komunikasi data dapat dilakukan pada jarak yang cukup jauh yaitu 1,2 Km. Berbeda dengan komunikasi serial RS232 yang mampu berhubungan secara
Berbeda dengan komunikasi serial RS232 yang mampu berhubungan secaraone to one,one to one,makamaka komunikasi RS485 selain dapat digunakan untuk komunikasi
komunikasi RS485 selain dapat digunakan untuk komunikasimultidropmultidropyaitu berhubunganyaitu berhubungan secara
secara one to manyone to manydengan dengan jarak jarak yang jauh yang jauh teknik ini teknik ini juga juga dapat dapat digunakan digunakan untukuntuk menghubungkan 32 unit beban sekaligus hanya dengan menggunakan dua buah kabel saja tanpa menghubungkan 32 unit beban sekaligus hanya dengan menggunakan dua buah kabel saja tanpa memerlukan referensi ground yang sama antara u
memerlukan referensi ground yang sama antara unit yang satu dengan unit lainnnit yang satu dengan unit lainnya.ya.
Sistem komunikasi dengan menggunakan RS485 ini dapat digunakan untuk komunikasi Sistem komunikasi dengan menggunakan RS485 ini dapat digunakan untuk komunikasi data antara 32 unit peralatan elektronik hanya dalam dua kabel saja. Selain itu, jarak komunikasi data antara 32 unit peralatan elektronik hanya dalam dua kabel saja. Selain itu, jarak komunikasi dapat mencapai 1,6 km dengan digunakannya kabel AWG-24 twisted pair.
dapat mencapai 1,6 km dengan digunakannya kabel AWG-24 twisted pair.
Gambar 2 Diagram komunikasi data RS485 Gambar 2 Diagram komunikasi data RS485
Gambar 3 IC 75176, industri standar RS485 Gambar 3 IC 75176, industri standar RS485 Bus RS485 adalah mode transmisi
Bus RS485 adalah mode transmisibalanced differential balanced differential . Bus ini hanya mempunyai dua. Bus ini hanya mempunyai dua sinyal, A dan B dengan perbedaan tegangan antara keduanya. Karena
sebagai referensi terhadap B maka sinyal akan high bila mendapat input low demikian pula sebaliknya. Pada komunikasi RS485, semua peralatan elektronik berada pada posisi penerima hingga salah satu memerlukan untuk mengirimkan data, maka peralatan tersebut akan berpindah ke mode pengirim, mengirimkan data dan kembali ke mode penerima. Setiap kali peralatan elektronik tersebut hendak mengirimkan data, maka terlebih dahulu harus diperiksa, apakah jalur yang akan digunakan sebagai media pengiriman data tersebut tidak sibuk. Apabila jalur masih sibuk, maka peralatan tersebut harus menunggu hingga jalur sepi.
Agar data yang dikirimkan hanya sampai ke peralatan elektronik yang dituju, misalkan ke salah satu Slave, maka terlebih dahulu pengiriman tersebut diawali dengan Slave ID dan dilanjutkan dengan data yang dikirimkan. Peralatan elektronik yang lain akan menerima data tersebut, namun bila data yang diterima tidak mempunyai ID yang sama dengan Slave ID yang dikirimkan, maka peralatan tersebut harus menolak atau mengabaikan data tersebut. Namun bila Slave ID yang dikirimkan sesuai dengan ID dari peralatan elektronik yang menerima, maka data selanjutnya akan diambil untuk diproses lebih lanjut.
Gambar 4 Topologi jaringan RS485
Gambar 4 memperlihatkan topologi jaringan RS485, stasiun manapun dapat berkomunikasi dengan stasiun lainnya tetapi tidak pada waktu yang bersamaan.
Gambar 5 Terminating resistor pada jaringan RS485
Pada jaringan komunikasi RS485, diperlukan adanya terminating resistor (RT). Nilai terminating resistor yang sesuai dengan impedansi karakteristik kabel adalah sangat penting pada jaringan RS485. Sebaliknya, jika nilai terminating resistor ini tidak sesuai maka akan dihasilkan sinyal terdistorsi yang dapat menyebabkan terjadinya data error . Gambar 5 di atas memperlihatkan penempatan terminating resistor pada jaringan RS485, dan gambar 6 memperlihatkan hasil percobaan pengaruh nilai terminating resistor terhadap sinyal.
Perangkat Interface
Jaringan LocalTalk menggunakan RS485 yang kompatibel dengan sinyal diferensial pada 4 kawat standar konektor RJ11 dan kabel telepon. LocalTalk hanya menghubungkan ke pasangan terluar kabel berikutnya ("pasangan luar" pada kabel 4 kawat standar).
Pasangan terdalam kabel diabaikan oleh LocalTalk, sehingga pasangan terdalam sering digunakan untuk telepon analog standar.
Koneksi RJ45 sering digunakan untuk RS485, karena kemudahan menggunakan konektor modular dan ketersediaan kabel dan konektor. Sebuah antarmuka RS485 biasanya akan menggunakan pin 7 dan 8 untuk dua baris data, karena mereka terdiri dari twisted pair. Hal ini untuk menghindari konflik dengan kedua Ethernet (Pins 1-3, 6) dan telepon analog (Pins 4-5). Grounding dapat menjadi masalah tergantung pada aplikasi. Seringkali, penggunaan kabel terlindung CAT5 / 6 dapat memberikan sinyal ground yang memadai, meskipun hal ini tidak dianjurkan.
Gambar 7 Konektor RJ45
Komunikasi serial membutuhkan port sebagai saluran data. Gambar 8 dan 9 berikut menampilan konfigurasi port serial DB9 yang umum digunakan beserta fungsi-fungsinya.
Gambar 8 Serial port DB9
Gambar 9 Fungsi masing-masing pin DB9
Gambar 10 Skema Antar Muka RS485 ke DST-51
[3]Rangkaian berikut ini adalah skema dari Modul SR-485, yaitu modul RS485 yang
didisain kompatibel dengan Modul DST-51 dan telah dilengkapi dengan pembatas tegangan dengan menggunakan dua buah dioda zener yang terpasang ditiap-tiap jalurnya. Kedua dioda tersebut terhubung saling berhadapan untuk membatasi tegangan berlebih dari sisi positif maupun negatif.
Rangkaian R-C membentuk low pass filter dengan periode cut off sebesar 0,7 x R x C atau 0,7 x 22 ohm x 220 pF yaitu 3,3 x 10 uS atau frekwensi 295,159 KHz. Untuk transmisi data dengan kecepatan yang lebih tinggi, maka nilai capacitor C1 dan C2 dapat diubah sesuai kebutuhan.
Rangkaian R-L yang terdiri dari R2, R3, R5 dan L1, L2 dibentuk untuk memberikan bias negatif maupun positif pada jalur B dan A sehingga proses pengiriman data dalam bentuk perbedaan tegangan dapat dilakukan. Selain itu L1 dan L2 juga berfungsi untuk meredam
masuknya frekwensi tinggi melalui jaringan sumber daya.
Connector JP1 pada skema tersebut adalah merupakan konektor yang dibutuhkan untuk berhubungan dengan Modul DST-51, yaitu suatu sistem berbasis mikrokontroler AT89C51 pada bagian port serialnya. Sedangkan konektor J2 digunakan untuk berhubungan dengan antar muka
RS485 yang lainnya.
SN75176
SN75176 adalah IC yang menjadi komponen utama Modul SR-485 yang didisain untuk komunikasi data secara bidirectional atau multipoint dengan Standard ANSI EIA/TIA-422-B dan ITU V11. Data yang ditransmisikan oleh IC ini dikirim dalam bentuk perbedaan tegangan yang ada pada kaki A dan B dari SN75176.
SN75176 berfungsi sebagai pengirim data atau penerima data tergantung dari kondisi kaki-kaki kontrolnya yaitu DE dan RE. Apabila kaki DE berlogika 0 dan RE berlogika 0, maka SN75176 berfungsi sebagai penerima data sedangkan bila kaki DE berlogika 1 dan RE berlogika 1 maka SN75176 berfungsi sebagai pengirim.
Gambar 11 Diagram Komunikasi Data Master dan 32 Slave
Sistem komunikasi dengan menggunakan RS485 ini dapat digunakan untuk komunikasi data antara 32 unit peralatan elektronik hanya dalam dua kabel saja.
Selain itu, jarak komunikasi dapat mencapai 1,6 km dengan digunakannya kabel AWG-24 twisted pair.
Hubungan Modul SR-485 dengan Modul DST-51
Hubungan antara Modul SR-485 dengan Modul DST-51 dapat dilakukan hanya dengan menghubungkan kabel pita 10 pin antara header SR-485 dan header EXT PORT dari DST-51 ditambah dengan dua kabel yang dihubungkan pada I/O DST-51 (tergantung program anda) di mana kedua jalur ini berfungsi untuk mengatur kondisi kaki DE dan RE. Apabila pada program anda menggunakan T0 dan T1 untuk mengatur kondisi kaki DE dan RE maka kedua jalur ini harus dihubungkan ke kaki T0 dan T1 yang terdapat pada header Control Bus dari DST-51.
Rangkaian Half-Duplex
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 .
Gambar 12 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
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:
Gambar 13 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)
FULL DUFLEX
Full Duflex artinya komunikasi berjalan dua arah , jadi tdk perlu pengaturan spt pada half duflex dgn pin DE dan RE dari Ic485 dan RTS oleh PORT PC.
Gambar 14 Rangkaian Rs485 Full Duflex
Teknik Komunikasi dengan RS485
Agar komunikasi data pada sistem multipoint yang dapat digunakan untuk 32 unit peralatan elektronik tidak terjadi saling bentrok antar data, maka seperti layaknya pada forum diskusi yang benar, pada kondisi awal semua peserta menjadi pendengar terlebih dahulu. Kemudian pada saat salah seorang peserta diskusi berbicara, maka peserta yang lain harus menunggu peserta yang berbicara tersebut menyelesaikan pembicaraan. Apabila peserta tersebut selesai berbicara, maka peserta tersebut kembali menjadi pendengar sedangkan yang lain baru boleh berbicara untuk memberikan tanggapan atau mengajukan usul yang lain. Hal ini diperlukan agar forum diskusi dapat berjalan dengan baik dan tertib.
Demikian pula pada komunikasi RS485, semua peralatan elektronik berada pada posisi penerima hingga salah satu memerlukan untuk mengirimkan data, maka peralatan tersebut akan berpindah ke mode pengirim, mengirimkan data dan kembali ke mode penerima. Setiap kali peralatan elektronik tersebut hendak mengirimkan data, maka terlebih dahulu harus diperiksa, apakah jalur yang akan digunakan sebagai media pengiriman data tersebut tidak sibuk. Apabila jalur masih sibuk, maka peralatan tersebut harus menunggu hingga jalur sepi.
Gambar 15 Flowchart Pengiriman Data
Agar data yang dikirimkan hanya sampai ke peralatan elektronik yang dituju, misalkan ke salah satu Slave, maka terlebih dahulu pengiriman tersebut diawali dengan Slave ID dan dilanjutkan dengan data yang dikirimkan. Peralatan elektronik-peralatan elektronik yang lain
akan menerima data tersebut, namun bila data yang diterima tidak mempunyai ID yang sama dengan Slave ID yang dikirimkan, maka peralatan tersebut harus menolak atau mengabaikan data tersebut.
Gambar 16 Flowchart Penerimaan Data Namun bila Slave ID yang dikirimkan sesuai dengan ID dari peralatan
elektronik yang menerima, maka data selanjutnya akan diambil untuk diproses lebih lanjut.
Contoh Program
1. Program untuk mengirimkan data karakter A dari Master ke Slave nomor 1 menggunakan Komunikasi RS485 .DATA Org 50H SlaveID Ds 1 DE Bit T0 RE Bit T1 .CODE
Org 2000H ;Reset Vector
Ajmp Start ;
Org 2003H ;External Interrupt 0 Vector
Ret i
Org 200BH ;Timer 0 Interrupt Vector
Ret I ;
Org 2013H ;External Interrupt 1 Vector
Ret i ;
Org 201BH ;Timer 1 Interrupt Vector
Ret i ;
Org 2023H ;Serial Interrupt Vector
Ret i ;
Mov SlaveID,#01H Acall KirimKeSlave Ajmp * KirimkeSlave: Lcall Periksa_Jalur Setb DE Setb RE Mov A,SlaveID Lcall Serial_Out Mov A,#'A' Lcall Serial_Out Clr DE Clr Re Ret
;Periksa Jalur RXD, bila tidak sibuk hingga Timer 0 overflow berarti
;jalur siap untuk pengiriman data Periksa_Jalur:
Push TMOD
Mov TMOD,#21H ;Timer 0 16 bit counter
;Timer 1 Serial Port Jalur_Sibuk:
Lcall Reset_Timer0 ;
Setb TR0 ;Timer 0 aktif
Periksa_RXD:
Jb RXD,Periksa_Timer0 ;RXD tidak sibuk, pantau Timer 0
Ajmp Jalur_Sibuk ;RXD sibuk reset timer 0
dan tunggu ;RXD tidak sibuk Periksa_Timer0:
Jbc TF0,Jalur_Bersih ;Timer 0 overlow, berarti jalur bersih
Ajmp Periksa_RXD ;Belum overflow, periksa
jalur lagi Jalur_Bersih:
Clr TR0 ;Jalur bersih, matikan timer 0 dan
Pop TMOD ;kembali
Ret Reset_Timer0: Mov TH0,#00H Mov TL0,#00H Ret Init_Serial:
MOV SCON,#52H ; Mode 1 Ren, Serial Mode 1
MOV TH1,#0FDH ; 9600 Baudrate
MOV TCON,#040H ; T1 On, T0 Off
MOV PCON,#00H ; RET Serial_Out: CLR TI MOV SBUF,A JNB TI,* RET
2. Program untuk menerima data dari Master oleh Slave 1 dengan menggunakan Komunikasi RS485 Pada program ini, Slave akan menunggu sampai Slave ID yang dikirimkan benar-benar merupakan IDnya dan mengambil data selanjutnya serta menampilkan di Port 1.
SlaveID EQU 01H DE Bit T0
RE Bit T1
Org 2000H ;Reset Vector
Ajmp Start ;
Org 2003H ;External Interrupt 0 Vector
Ret i ;
Org 200BH ;Timer 0 Interrupt Vector
Ret i ;
Org 2013H ;External Interrupt 1 Vector
Ret i ;
Org 201BH ;Timer 1 Interrupt Vector
Ret i ;
Org 2023H ;Serial Interrupt Vector
Ret i ; Lcall Init_Serial Clr DE Clr RE TungguData: Acall Serial_In Cjne A,#SlaveID,TungguData Acall Serial_In Mov P1,A Ajmp TungguData Mode Handshaking
Tidak ada handshaking di RS-485. Jika handshaking diperlukan untuk RS-485 itu dapat dilakukan menggunakan X-On / X-Off protokol handshaking.
RS-485 standar awalnya digunakan half-duplex komunikasi dan sinyal handshaking seperti RTS / CTS untuk mengontrol arah aliran data. Banyak converter USB ke serial dengan ADDC (Automatic Data Direction Control) yang secara otomatis mengamati dan mengontrol arah data, yang membuat metode sinyal handshaking tidak terpakai. Kelebihan dan kekurangan
Berikut ini beberapa kelebihan dan kekurangan menggunakan komunikasi serial RS485.
Kelebihan Kekurangan
Antarmuka yang popular, sehingga
banyak piranti yang telah mendukung
Lebih cocok untuk komunikasi sistem ke
komunikasi serial RS485.
Dapat mencapai jarak sangat jauh hingga
1000 feet
Tahan terhadap noise dan perbedaan
tegangan
Di implementasikan
pada hardwaredan software
Mudah di implementasikan
Banyak digunakan pada industri
otomatisasi
Kecepatan tinggi hingga 115200 baud
rate.
sensor.
Penambahan biaya untuk chip sistem
transceiver dan kabel twisted pair dengan terminating resistors.
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
Perbedaan antara RS-232 dan kedua jenis RS-485 (full-duplex dan half-duplex)
No. Perbedaan RS-232 RS-485
1. Level sinyal -12 V
–
+12 V relatif terhadap sinyal ground0
–
5 V relatif terhadap sinyal ground2. Sistem pengkabelan sinyal menggunakan point-to-point kabel sinyal searah
Hanya ada dua perangkat yang terhubung ke kabel RS-232. TX output dari perangkat pertama yang terhubung ke input RX dari perangkat kedua, dan output TX dari perangkat kedua dihubungkan ke masukan RX dari perangkat pertama. Dalam kabel RS-232, data selalu mengalir hanya dalam satu arah pada setiap kawat tertentu, dari
TX ke RX
menggunakan jaringan kabel sinyal linear dengan dua arah
Ada banyak perangkat biasanya sepanjang kabel RS-485. "A" output dari masing-masing perangkat terhubung ke output "A" dari setiap perangkat lain. Dalam kabel RS-485, data yang biasanya mengalir di kedua arah sepanjang apapun kawat tertentu, kadang-kadang dari "A" perangkat pertama ke "A" perangkat kedua, dan kemudian dari "A" kedua perangkat ke "A" perangkat pertama
http://aliateknic.blogspot.co.id/2013/07/interface-serial-rs485.html
http://kuliahinterface.blogspot.co.id/2011/10/v-behaviorurldefaultvmlo.html
Untuk komunikasi serial ada beberapa yang sering digunakan di Industri, yaitu RS232, RS485, dan RS422. RS adalah singkatan dari Recommended Standard (klo di kaskus Recommended Seller kali ya :p). Ketiga jenis RS tersebut merupakan physical layer (Hardware) dari Layer pertama di OSI Model (Wikipedia: OSI Model) yang pada intinya pada phisycal layer bagaimana hardware tersebut mengubah data menjadi sinyal elektrik dan juga sebaliknya mengubah sinyal elektrik menjadi data. Setiap standard komunikasi serial masing masing memiliki spesifikasi yang berbeda pada RS232 sinyal electric diayunkan pada tegangan +/- 12 Volt, +/- 5Volt, dan +/- 3 Volt. pengkabelan memiliki minimal 3 kabel yaitu RX, TX, dan ground. dan panjang maksimum kabel adalah 15 meter. Sedangkan pada RS485 tegangan yang digunakan adalah +/- 5Volt dimana sinyal di konversikan pada dua kabel + (A) dan kabel – (B). Pada RS485 tidak menggunakan ground maka dari itu RS485 dapat digunakan dengan kabel hingga 1200meter (1,2Km) karena loss daya yang terjadi lebih kecil dan tidak terlalu berpengaruh karena tetap dapat terkonversi sinyalnya.
kemudian pada RS485 dapat multidrop atau dapat dicabangkan dengan beberapa hardware. untuk melihat perbedaan RS232 dengan RS485 dapat dilihat di
http://en.wikipedia.org/wiki/RS-485 dan http://en.wikipedia.org/wiki/RS-232 http://www.rifqion.com/menulis/modbus-protokol-dan-serial-standard/ http://www.nubielab.com/elektronika/rs485-communication-network-pengenalan https://en.wikibooks.org/wiki/Serial_Programming/RS-485 http://1tekadj.blogspot.co.id/2015/06/v-behaviorurldefaultvmlo.html http://kuliahinterface.blogspot.co.id/2011/10/v-behaviorurldefaultvmlo.html