Cara Membaca Sinyal 4-20mA dengan Modul Waveshare + Modbus RTU

Banyak yang bertanya cara baca sinyal 4-20mA ke Modbus RTU setelah paham kenapa 4-20mA jadi standar, cara kalibrasi, cara scaling ke satuan fisik, dan perbedaan konfigurasi wiring sensor. Sekarang saatnya masuk ke bagian paling praktis: bagaimana caranya sinyal analog 4-20mA itu benar-benar bisa dibaca oleh sistem digital seperti PLC, SCADA, atau dashboard monitoring — menggunakan modul converter Waveshare 4-20mA to Modbus RTU.

📌 Artikel ini adalah bagian 5 dari 7 seri 4-20mA Current Loop: Panduan Lengkap untuk Engineer & Teknisi Industri Indonesia. Sebelumnya kita sudah bahas rumus scaling 4-20mA ke engineering unit dan perbedaan sensor 2-wire, 3-wire, dan 4-wire.

Artikel ini adalah panduan step-by-step dari wiring fisik sampai membaca data lewat software — cara baca sinyal 4-20mA ke Modbus RTU yang bisa langsung kamu praktikkan.

Kenapa Butuh Modul Converter?

Sinyal 4-20mA murni adalah sinyal analog — dia tidak membawa informasi digital apapun, hanya arus listrik yang besarnya berubah sesuai nilai fisik yang diukur. Supaya sinyal ini bisa dibaca oleh sistem berbasis komputer (PLC, SCADA, dashboard IoT), sinyal analog itu harus dikonversi jadi data digital yang bisa “dibicarakan” lewat protokol komunikasi.

Modul Waveshare 4-20mA to Modbus RTU menjalankan peran ini: dia membaca arus analog di terminal inputnya, mengubahnya jadi nilai digital di internal register, lalu mengekspos nilai itu lewat protokol Modbus RTU melalui jalur RS-485 — protokol dan jalur komunikasi yang sudah jadi standar de facto di dunia industri untuk komunikasi jarak menengah yang andal.

Modul Waveshare Modbus RTU Analog Input 8CH untuk baca sinyal 4-20mA

Yang Kamu Butuhkan

  • Modul Waveshare 4-20mA to Modbus RTU
  • Sensor 4-20mA (tekanan, suhu, level, atau flow — sesuaikan dengan project)
  • Power supply DC sesuai spesifikasi modul dan sensor (cek datasheet, umumnya 12-24V DC)
  • USB to RS-485 converter (untuk koneksi ke laptop/PC saat konfigurasi awal)
  • Software Modbus Poll atau QModMaster (untuk uji baca register)
  • Kabel twisted pair untuk jalur RS-485 (A dan B)

Langkah 1: Wiring Fisik

Sisi Sensor ke Modul

Hubungkan output sinyal sensor (loop 4-20mA) ke terminal input analog pada modul Waveshare. Kalau sensor tipe 2-wire (loop powered), modul biasanya juga menyediakan tegangan suplai untuk sensor lewat terminal yang sama — cek datasheet modul untuk konfigurasi terminal yang tepat, karena posisi terminal bisa berbeda antar versi/model modul.

Sisi Modul ke Jalur RS-485

Hubungkan terminal A dan B pada modul ke jalur RS-485 yang sama dengan USB-to-RS485 converter (untuk setup awal) atau ke port RS-485 pada PLC/gateway (untuk instalasi permanen). Pastikan polaritas A-A dan B-B tidak tertukar — ini kesalahan wiring paling umum yang menyebabkan modul “tidak merespons” meski secara fisik semua kabel sudah tersambung.

Diagram wiring modul converter Modbus RTU dari sensor 4-20mA hingga RS-485 ke PC

Power Supply

Suplai daya ke modul sesuai spesifikasi (biasanya terpisah dari power sensor jika sensor bertipe 3-wire/4-wire, atau bisa satu sumber untuk sensor 2-wire loop powered — lihat kembali pembahasan di perbedaan sensor 2-wire, 3-wire, dan 4-wire kalau masih bingung soal ini).

Langkah 2: Konfigurasi Parameter Modbus

Sebelum modul bisa dibaca, kamu perlu tahu (atau atur) beberapa parameter komunikasinya:

  • Slave ID/Device Address — alamat unik modul dalam jaringan RS-485 (default biasanya 1, bisa diubah kalau ada lebih dari satu modul dalam satu bus)
  • Baud rate — kecepatan komunikasi (umumnya 9600 bps sebagai default pabrik, tapi bisa diubah)
  • Parity, data bits, stop bits — parameter serial standar, biasanya default 8N1 (8 data bit, no parity, 1 stop bit)

Semua parameter ini harus sama persis antara modul dan software/perangkat yang membacanya — kalau salah satu saja beda, komunikasi akan gagal meski wiring sudah benar.

Langkah 3: Cara Baca Sinyal 4-20mA ke Modbus RTU dengan Modbus Poll

Modbus Poll adalah software GUI yang paling umum dipakai untuk uji cepat komunikasi Modbus RTU sebelum masuk ke integrasi PLC atau dashboard. Berikut cara baca sinyal 4-20mA ke Modbus RTU menggunakan software ini:

  1. Buka Modbus Poll, pilih Connection Setup, pilih COM port yang sesuai dengan USB-to-RS485 converter
  2. Set parameter serial (baud rate, parity, dll) sesuai konfigurasi modul
  3. Buka Read/Write Definition, masukkan Slave ID modul dan alamat register yang ingin dibaca (register untuk nilai mA biasanya ada di Holding Register atau Input Register — cek datasheet modul untuk alamat register spesifiknya, karena tiap model modul bisa berbeda)
  4. Klik OK — kalau wiring dan konfigurasi benar, kamu akan melihat nilai numerik yang berubah sesuai perubahan sinyal input sensor

Konfigurasi Connection Setup di software Modbus Poll untuk baca register Modbus 4-20mA

Catatan penting: nilai yang muncul di register biasanya dalam bentuk raw integer, bukan langsung dalam mA atau satuan fisik. Kamu perlu tahu faktor konversi dari datasheet modul (misalnya nilai register dikali 0.001 untuk dapat nilai mA sebenarnya) sebelum diterapkan rumus scaling seperti yang dibahas di rumus scaling 4-20mA ke engineering unit.

Langkah 4: Integrasi ke Sistem (Pilihan Platform)

Ke PLC

Sebagian besar PLC modern (Siemens, Mitsubishi, Allen Bradley, Schneider, Omron) punya kemampuan Modbus RTU master baik built-in maupun lewat modul komunikasi tambahan. Konfigurasikan PLC sebagai Modbus master yang membaca Holding/Input Register dari modul Waveshare sebagai slave, lalu terapkan scaling di sisi program PLC.

Ke Node-RED

Gunakan node modbus-read dari package node-red-contrib-modbus, konfigurasikan Slave ID, alamat register, dan baud rate sesuai modul. Data yang masuk bisa langsung diproses dengan function node untuk scaling, lalu diteruskan ke dashboard atau database seperti InfluxDB.

Ke Python (untuk ESP32/Raspberry Pi atau server)

Library seperti pymodbus atau minimalmodbus umum dipakai untuk komunikasi Modbus RTU dari Python. Alur dasarnya: buka koneksi serial ke port RS-485, kirim request read register ke Slave ID modul, terima response, lalu konversi raw value ke nilai mA dan scaling ke satuan fisik.

Troubleshooting Umum

  • Tidak ada respons sama sekali — cek dulu koneksi fisik (A-B tidak tertukar/terbalik), lalu cek kesesuaian parameter serial (baud rate, parity) antara software dan modul
  • Respons error/timeout intermiten — biasanya soal termination resistor pada jalur RS-485 (dibutuhkan di ujung-ujung jalur bus untuk instalasi dengan kabel panjang) atau grounding yang belum benar
  • Nilai register selalu 0 atau max — kemungkinan sensor tidak terhubung dengan benar ke terminal input analog, atau sensor tidak mendapat daya yang cukup
  • Slave ID conflict — kalau ada lebih dari satu modul di jalur RS-485 yang sama dengan Slave ID sama, komunikasi akan kacau; pastikan tiap modul punya ID unik

Kesimpulan

Membaca sinyal 4-20mA lewat modul Waveshare ke Modbus RTU pada dasarnya adalah proses tiga lapis: wiring fisik yang benar, konfigurasi parameter komunikasi yang sesuai, dan pemahaman format data register untuk diterapkan scaling yang tepat. Ini adalah cara baca sinyal 4-20mA ke Modbus RTU yang paling praktis untuk kebutuhan project industri maupun IoT. Begitu satu modul berhasil dibaca lewat Modbus Poll, langkah integrasi ke PLC, Node-RED, atau Python jadi jauh lebih mudah karena prinsip dasarnya sama.

🔧 Siap praktik langsung? Ini produk yang dibahas di artikel ini. Cek modul 4-20mA to Modbus RTU di Tokopedia: tokopedia.com/bisaioti — setiap pembelian dapat akses bonus ke kelas praktik “Batch Pendiri” di bisaioti.com/lab, termasuk panduan wiring dan konfigurasi lengkap step-by-step dengan video.

🎓 Mau dipandu langsung dari nol sampai data tampil di dashboard? Gabung kelas “Dari Sensor Industri ke Dashboard: Baca Data 4-20mA via Modbus RTU” di bisaioti.com/lab.