Interface Serial RS485



Penjelasan Interface Serial RS-485
 
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. Berbeda dengan komunikasi serial RS232 yang mampu berhubungan secara one to one, maka komunikasi RS485 selain dapat digunakan untuk komunikasi multidrop yaitu berhubungan secara one to many dengan jarak yang jauh teknik ini juga dapat digunakan untuk menghubungkan 32 unit beban sekaligus hanya dengan menggunakan dua buah kabel saja tanpa memerlukan referensi ground yang sama antara unit yang satu dengan unit lainnya.
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.
Gambar 2 Diagram komunikasi data RS485
Gambar 3 IC 75176, industri standar RS485
Bus RS485 adalah mode transmisi balanced differential. Bus ini hanya mempunyai dua sinyal, A dan B dengan perbedaan tegangan antara keduanya. Karena line A 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.
Gambar 6 Terminating resistor terhadap karakteristik 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
Rangkaian
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 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:

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      ;
Start:
        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  TMOD,#20H           ; T1 Mode 2
  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 komunikasi serial RS485.
·         Dapat mencapai jarak sangat jauh hingga 1000 feet
·         Tahan terhadap noise dan perbedaan tegangan
·         Di implementasikan pada hardware dan software
·         Mudah di implementasikan
·         Banyak digunakan pada industri otomatisasi
·         Kecepatan tinggi hingga 115200 baud rate.
·         Lebih cocok untuk komunikasi sistem ke sistem, dari pada chip ke chip atau chip ke 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 ground
0 – 5 V relatif terhadap sinyal ground
2.
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





 
Back to top Copyright © 2013 | PT.ALIA TEKNIK All Rights Reserved