Protokol industri

Komunikasi Modbus RS-485 putus: cara troubleshooting

Sebagian besar gangguan Modbus RS-485 berawal dari lapisan fisik. Daftar periksa lapangan untuk terminasi, bias, topologi, grounding, setelan serial, dan exception code.

Topik
Protokol industri
Diperbarui
13 November 2026
Waktu baca
6 menit
Bagian
7
Deretan blok terminal I/O berkode warna pada rel DIN.
Ringkasan

Sebagian besar gangguan Modbus RS-485 berasal dari lapisan fisik: terminasi dan bias yang salah, topologi bintang, ground yang tidak sama, atau pengaturan baud rate dan parity yang berbeda antar perangkat. Software dan register map lebih jarang menjadi penyebab putusnya komunikasi dibanding kabel, konektor, dan konverter.

Modbus RTU berjalan di RS-485 sebagai protokol tanya-jawab: master membaca setiap slave berdasarkan alamatnya, dan setiap frame diakhiri CRC. Ketika nilai membeku di HMI, gangguannya bisa berada di lapisan mana pun antara sensor dan layar. Periksa dari bawah ke atas. Mulai dari kabel dan desain jalur, lalu setelan serial, baru kemudian balasan Modbus.

Mulai dari lapisan fisik

Metode

Mulai dari lapisan fisik

Troubleshooting RS-485 lebih cepat jika setiap lapisan diuji satu per satu dan hasil setiap uji dicatat.

Mulai dari gejala dan polanya. Perangkat yang tidak pernah menjawab mengarah ke kabel, alamat, atau setelan. Perangkat yang kadang menjawab kadang tidak mengarah ke noise, pantulan sinyal, bias yang tidak ada, atau timeout yang terlalu pendek. Error yang bertambah saat pompa atau VSD menyala mengarah ke grounding dan shielding.

Ukur sebelum mengubah apa pun. Saat jalur diam, pasangan kabel yang diberi bias berada pada tegangan diferensial yang stabil, sedangkan pasangan tanpa bias mengambang. Setelah itu matikan catu daya jalur dan ukur resistansi di antara pasangan kabel dengan multimeter. Dua terminasi yang paralel terbaca kira-kira separuh nilai satu resistor; bacaan yang mendekati nilai satu resistor berarti terminasi di ujung lain tidak terpasang.

Jika jalur memuat banyak perangkat, bagi jalurnya. Lepas separuh trunk yang paling jauh, pasang terminasi di ujung barunya, lalu uji lagi. Jika separuh yang dekat menjadi stabil, gangguannya berada di bagian yang dilepas. Ulangi sampai tersisa satu segmen atau satu perangkat. Cara membagi dua ini lebih cepat menemukan junction box yang rusak atau perangkat yang membebani jalur dibanding memeriksa terminal satu per satu dari awal.

  1. Catat gejalanya

    Perangkat mana yang gagal, seberapa sering, kapan, dan peralatan apa yang sedang beroperasi.

  2. Periksa kabel dan topologi

    Daisy chain, stub pendek, polaritas pasangan kabel, kabel common terpasang, shield utuh.

  3. Periksa terminasi dan bias

    Dua terminasi di ujung trunk, satu pasang bias untuk seluruh jalur.

  4. Periksa setelan serial

    Baud rate, parity, dan stop bit sama di semua perangkat; alamat tidak kembar.

  5. Uji satu perangkat sendirian

    Baca register yang sudah diketahui dari laptop sebagai master dengan hanya perangkat itu yang terhubung.

  6. Baca balasannya

    Tidak ada balasan, CRC error, dan exception code masing-masing menunjuk lapisan yang berbeda.

Pasang RS-485 sebagai daisy chain, bukan bintang

Topologi

Pasang RS-485 sebagai daisy chain, bukan bintang

RS-485 dirancang sebagai satu kabel panjang yang singgah ke setiap perangkat secara berurutan, bukan sebagai hub dengan banyak cabang.

Spesifikasi Modbus over Serial Line V1.02 menggambarkan satu kabel trunk dengan terminasi di kedua ujungnya. Perangkat terhubung langsung ke trunk atau melalui kabel cabang (derivation) yang pendek, tidak lebih dari 20 m. Topologi bintang, ketika beberapa kabel panjang keluar dari satu junction box, menciptakan banyak ujung terbuka yang memantulkan sinyal kembali ke jalur.

RS-485 Design Guide dari Texas Instruments memberi saran yang sama: daisy chain dengan stub pendek. Pantulan sinyal jarang memutus jalur sepenuhnya. Pantulan merusak sebagian frame, sehingga gejalanya berupa perangkat yang sesekali hilang.

KriteriaDaisy chainBintang
Jalur kabelSatu trunk dari perangkat ke perangkatBanyak cabang panjang dari satu kotak
Ujung jalurDua, keduanya diterminasiSatu per cabang, tidak bisa diterminasi semuanya
StubPendek, maksimal 20 mCabang panjang menjadi stub
Gejala khasStabil jika setelan benarCRC error acak dan perangkat sesekali hilang
Terminasi dan bias: dua resistor, satu pasang

Desain jalur

Terminasi dan bias: dua resistor, satu pasang

Resistor terminasi mencegah sinyal memantul kembali di ujung kabel, sedangkan sepasang resistor bias menjaga jalur yang diam tetap pada kondisi yang jelas.

Spesifikasi serial mewajibkan terminasi di dekat setiap ujung bus dan tidak membolehkan lebih dari dua terminasi pada satu pasang kabel. Nilai yang disarankan adalah resistor 150 ohm, atau 120 ohm yang diseri dengan kapasitor 1 nF jika jalur diberi bias. Jangan pernah memasang terminasi di kabel cabang.

Bias, yang di spesifikasi disebut line polarization, memakai pull-up ke 5 V pada D1 dan pull-down ke common pada D0, keduanya bernilai 450 sampai 650 ohm. Pasang satu pasang saja untuk seluruh jalur, biasanya di master. Banyak perangkat punya saklar terminasi dan bias bawaan, dan tiga atau empat saklar yang aktif bersamaan membebani jalur sampai master tidak sanggup lagi menggerakkannya.

Nilai terminasi
150 ohm (0,5 W), atau 120 ohm (0,25 W) + 1 nF seri jika diberi bias
Jumlah terminasi
Dua per pasang kabel, satu di dekat setiap ujung trunk
Resistor bias
450-650 ohm, pull-up di D1, pull-down di D0
Lokasi bias
Satu titik untuk seluruh jalur, biasanya di master
Perangkat tanpa repeater
32 selalu diizinkan; berkurang 4 jika jalur diberi bias
Panjang trunk
Hingga 1000 m pada 9600 baud, AWG26 atau lebih besar
Common, shield, dan proteksi surja

Grounding

Common, shield, dan proteksi surja

RS-485 membutuhkan kawat ketiga, yaitu common, karena dua perangkat yang berjauhan jarang memiliki potensial ground yang sama.

Spesifikasi serial mewajibkan konduktor common yang menghubungkan semua perangkat, dan common itu dihubungkan ke ground proteksi di satu titik saja, biasanya di master. Kabel wajib berpelindung (shielded), dengan shield yang di-ground di satu ujung. RS-485 Design Guide mengingatkan bahwa beda potensial ground antar node yang berjauhan menambah noise common-mode. Receiver hanya mentoleransi rentang common-mode -7 V sampai +12 V; di luar itu frame gagal atau transceiver rusak.

Jalur luar ruangan di area tangki juga butuh proteksi surja. Induksi petir dan switching beban besar mendorong tegangan transien ke kabel yang panjang. Transceiver atau gateway terisolasi membantu ketika beda potensial ground besar, misalnya antara panel jetty dan control room.

Jalur komunikasi MOV di Fuel Terminal Jambi memperlihatkan polanya. Surge protection device dipasang di jalur RS-485 sebelum gateway Advantech ECU-1051. LAN arrester melindungi sisi Ethernet yang menuju SCADA InduSoft.

  • Kabel common ke setiap perangkat

    Di-ground di satu titik, biasanya master.

  • Shield di-ground di satu ujung

    Rumah konektor tersambung ke shield.

  • Proteksi surja di kabel panjang

    Di sisi RS-485 dan sisi Ethernet.

Setelan serial yang wajib sama di semua perangkat

Setelan

Setelan serial yang wajib sama di semua perangkat

Satu perangkat dengan baud rate atau parity yang berbeda bisa membuat seluruh jalur tampak rusak, karena balasannya yang kacau bertabrakan dengan frame yang benar.

Spesifikasi serial mewajibkan dukungan 9600 dan 19200 baud, dengan 19200 sebagai bawaan, serta parity even sebagai format bawaan. Tanpa parity boleh dipakai, tetapi harus dengan 2 stop bit. Alamat berkisar 1 sampai 247 dan wajib unik dalam satu jalur. Dua perangkat dengan alamat yang sama akan menjawab bersamaan dan saling merusak balasan.

Waktu sama pentingnya dengan setelan. Master membutuhkan response timeout yang cukup panjang untuk perangkat paling lambat, dan spesifikasi menyebut satu sampai beberapa detik pada 9600 baud sebagai nilai yang umum. Timeout yang terlalu pendek muncul sebagai gangguan sesekali yang hanya terjadi pada perangkat paling lambat.

Simpan satu lembar data (line sheet) untuk setiap jalur serial, seperti contoh di bawah, dan perbarui setiap ada perubahan. Lembar ini mengubah pencarian dua jam menjadi perbandingan lima menit.

Text
RS-485 line sheet: one page per serial line (example layout)

Line          : TK-FARM-A, gateway port 1
Master        : gateway, Modbus RTU master
Settings      : 19200 baud, 8 data bits, even parity, 1 stop bit
Timeout       : 1000 ms per request, 2 retries
Termination   : at gateway (end 1) and at device 4 (end 2) only
Biasing       : one pair, at gateway only
Common / shield: common to protective ground at gateway; shield grounded at one end

Order on cable  Address  Device          Register block read
1               1        Tank gauge T-01  0-7 (FC 03)
2               2        Tank gauge T-02  0-7 (FC 03)
3               3        Tank gauge T-03  0-7 (FC 03)
4               4        Power meter      per vendor map (FC 04)
Contoh line sheet untuk satu jalur RS-485. Nilainya hanya ilustrasi; catat nilai sebenarnya dari setiap perangkat.
Arti timeout, CRC error, dan exception code

Diagnosis

Arti timeout, CRC error, dan exception code

Balasan dari perangkat, atau tidak adanya balasan, menunjukkan lapisan mana yang perlu diperiksa berikutnya.

Tidak ada balasan sama sekali berarti permintaan tidak pernah tiba dalam bentuk yang diterima perangkat: alamat salah, baud rate atau parity salah, pasangan kabel tertukar, kabel putus, atau perangkat mati. CRC error berarti byte tiba dalam keadaan rusak, yang mengarah ke noise, pantulan, atau grounding. Balasan exception justru kabar baik untuk kabel. Balasan itu membuktikan frame melintasi jalur dengan utuh dan perangkat sengaja menjawab.

Program uji Modbus di laptop berperan sebagai master sementara dan memperlihatkan byte mentah. Sambungkan di dekat satu perangkat, baca satu register dari register map vendor, lalu bandingkan. Jika uji dari laptop berhasil tetapi master sistem gagal, masalahnya ada di konfigurasi master atau jalur di antara keduanya.

Perhatikan juga beban polling. Setiap pengulangan (retry) setelah timeout menahan jalur selama satu periode timeout lagi, sehingga satu perangkat yang mati bisa memperlambat pembaruan data semua perangkat sehat di jalur yang sama. Atur jumlah retry secukupnya, dan biarkan master menandai perangkat yang gagal sebagai offline alih-alih terus memanggilnya di setiap siklus polling.

KriteriaArtiPeriksa lebih dulu
Tidak ada balasan (timeout)Permintaan tidak diterima atau balasan hilangAlamat, baud, parity, polaritas pasangan, kabel
CRC errorByte rusak di jalurTerminasi, bias, grounding, stub
Exception 01Function code tidak didukungFC 03 atau FC 04 di register map vendor
Exception 02Alamat tidak adaBergeser satu, blok melewati register terakhir
Exception 03Nilai tidak valid di permintaanJumlah terlalu besar, permintaan cacat
Exception 0BPerangkat di belakang gateway tidak menjawabSisi serial gateway
Catatan lapangan dari proyek Citia

Di lapangan

Catatan lapangan dari proyek Citia

Dalam proyek Citia, memulihkan jalur Modbus biasanya berarti mengganti konverter atau gateway, lalu membuktikan jalurnya dari ujung ke ujung.

Di Jambi, penggantian gateway ATG dimulai dengan pemasangan Advantech ECU-1051 baru dan konfigurasi ulang gateway secara penuh. Tim lalu memeriksa koneksi RS-485 Modbus dari ATG dan koneksi Ethernet ke TMS, kemudian menambahkan surge protector di kedua jalur. Catatan proyek menyebutkan bahwa proteksi jalur sebaiknya dipasang sejak awal di area yang rawan petir.

Di Cikampek, pembacaan meter terhenti sampai gateway serial Moxa NPort 5160 diganti dan parameter serial serta jaringannya dikonfigurasi ulang. Di ITJ LPG Priok, transmitter tekanan dan temperatur yang baru mulai terbaca setelah tim memeriksa wiring secara menyeluruh dan menyesuaikan konfigurasi PLC dan transmitter.

Benang merahnya adalah dokumentasi. Setelah setiap perbaikan, tim Citia mencatat setelan serial, alamat perangkat, titik terminasi, dan hasil uji ujung ke ujung. Gangguan berikutnya di jalur yang sama bisa langsung ditelusuri dari data yang sudah pasti, bukan dari tebakan, dan tim operasi bisa melihat dengan jelas apa saja yang berubah.

Istilah yang perlu diketahui

Resistor terminasi
Resistor di antara pasangan kabel pada setiap ujung trunk yang menyerap sinyal dan mencegah pantulan.
Bias (line polarization)
Pasangan pull-up dan pull-down yang menjaga jalur diam pada kondisi tertentu agar receiver tidak membaca noise sebagai data.
Daisy chain
Pengkabelan ketika satu kabel berjalan dari perangkat ke perangkat secara berurutan, dengan dua ujung.
Stub (derivation)
Kabel cabang pendek dari trunk ke satu perangkat; spesifikasi serial membatasinya 20 m.
Common
Konduktor ketiga di jalur RS-485 yang memberi semua perangkat acuan tegangan bersama.
Baud rate
Kecepatan jalur serial dalam bit per detik; semua perangkat di satu jalur wajib memakai nilai yang sama.
Parity
Bit pemeriksa yang ditambahkan ke setiap karakter; parity even adalah bawaan Modbus.
Response timeout
Lama master menunggu balasan sebelum menganggap permintaan gagal.
Exception code
Alasan satu byte yang dikirim perangkat saat menolak permintaan Modbus yang valid.

Pertanyaan yang sering diajukan

Kenapa perangkat Modbus kadang membalas kadang tidak?

Balasan Modbus yang hilang timbul biasanya disebabkan pantulan sinyal, bias yang tidak ada, noise ground, atau timeout yang terlalu pendek. Periksa terminasi di kedua ujung trunk, pasangan bias, kabel common, dan apakah error bertambah saat motor besar menyala.

Perlukah resistor terminasi 120 ohm di RS-485?

Ya, jalur RS-485 butuh terminasi di setiap ujung trunk, dan hanya di sana. Spesifikasi serial Modbus menyarankan 150 ohm, atau 120 ohm diseri dengan 1 nF jika jalur diberi bias. Jalur pendek dan lambat kadang tetap jalan tanpa terminasi, tetapi lebih mudah terganggu.

Bagaimana membaca exception code Modbus?

Exception code Modbus dibaca dari byte kedua dan ketiga balasan: function code ditambah 0x80, lalu kodenya. 01 berarti fungsi tidak didukung, 02 alamat salah, 03 nilai tidak valid, 04 kegagalan perangkat.

Modbus Poll adalah apa?

Modbus Poll adalah program uji di Windows yang berperan sebagai master Modbus, sehingga register bisa dibaca dan ditulis dari laptop. Alat seperti ini memungkinkan satu perangkat diuji tanpa sistem SCADA dan memperlihatkan frame mentahnya.

Kabel RS-485 apa yang dipakai untuk Modbus?

Pakai kabel berpelindung dengan satu pasang kabel terpilin untuk data dan satu kawat ketiga untuk common. Spesifikasi serial Modbus menyebut AWG 24 selalu cukup untuk data Modbus, dan impedansi karakteristik di atas 100 ohm lebih disarankan pada 19200 baud ke atas.

Bolehkah perangkat RS-485 dipasang bintang?

Tidak, RS-485 sebaiknya tidak dipasang bintang dengan cabang panjang. Setiap cabang menambah ujung tanpa terminasi yang memantulkan sinyal. Gunakan daisy chain, jaga stub maksimal 20 m, atau gunakan hub atau repeater RS-485 yang memberi setiap cabang segmen terminasinya sendiri.

Langkah berikutnya

Siapkan pembahasan teknis untuk fasilitas Anda.

Bawa daftar perangkat, diagram, dan gejala yang Anda miliki. Tim Citia membantu memetakan langkah berikutnya.

Produk dan solusi terkait

Baca juga