
Protokol · Modbus
Modbus RTU dan TCP — Panduan Integrasi Praktis
Cara kerja Modbus RTU dan TCP, cara membaca peta register, serta detail penskalaan, polling, dan kegagalan mana yang paling banyak menyebabkan kesalahan integrasi.
Jawaban singkat
Modbus adalah protokol permintaan-respons sederhana yang dibangun di atas coil dan register. RTU berjalan melalui tautan serial; TCP berjalan melalui Ethernet. Modbus membawa data tetapi tidak membawa makna, sehingga peta register, penskalaan, urutan kata, dan izin tulis harus dikonfirmasi secara tertulis. Modbus ideal untuk meter, inverter, dan plant sederhana, bukan untuk interlock cepat.
Model register, bukan model data
Modbus mengekspos coil, masukan diskret, register masukan, dan register holding. Modbus tidak mendefinisikan arti sebuah register; produsen perangkatlah yang mendefinisikannya. Satu meter dapat menempatkan energi di dua register holding, meter lain dapat menggunakan urutan kata yang berbeda, dan yang ketiga mungkin memerlukan faktor penskalaan. Itulah sebabnya proyek Modbus dimulai dengan peta register, bukan dengan kabel. Peta tersebut harus menyatakan alamat, tipe data, skala, satuan, akses, dan perilaku ketika perangkat berhenti menjawab. Peta register yang hanya menyebut energi tanpa satuan, skala, atau urutan kata bukanlah spesifikasi; itu adalah harapan yang akan diuji saat pengujian dan serah terima, biasanya pada saat yang paling tidak tepat.
- Mulai dari peta register produsen
- Catat skala, satuan, dan tipe data untuk setiap titik
- Definisikan perilaku offline setiap nilai
RTU dan TCP adalah tautan yang berbeda
Modbus RTU berjalan di RS485 atau RS232. RS485 adalah bus bersama: terminasi, bias, jalur kabel, dan ID unit berpengaruh, dan satu master melakukan polling slave secara bergiliran. Modbus TCP berjalan melalui Ethernet dan menggunakan pengenal unit di dalam frame TCP, sering untuk mencapai gateway serial. TCP lebih mudah dirutekan dan didiagnosis, tetapi tidak otomatis lebih cepat jika gateway di belakangnya lambat. Pilih tautan berdasarkan perangkat, jarak, dan infrastruktur yang ada, dan dokumentasikan gateway di antaranya. Jika gateway dipasok oleh vendor meter, pemetaan register dan firmware-nya tetap termasuk dalam daftar titik, bukan hanya di manual vendor.
- RS485 memerlukan terminasi dan rencana segmen
- TCP tetap bergantung pada gateway di belakangnya
- Dokumentasikan titik konversi
Penskalaan, tanda, dan urutan kata
Sebagian besar kesalahan integrasi bukanlah kesalahan protokol; melainkan kesalahan interpretasi. Nilai dapat bertanda atau tidak bertanda, 16-bit atau 32-bit, dan terbagi di dua register dalam urutan mana pun. Suhu dapat datang dalam sepersepuluh derajat, tekanan dalam seperseratus bar, dan kata status dapat mengemas beberapa alarm ke dalam satu bilangan bulat. Peta register harus mendefinisikan semua ini, dan daftar titik harus mencatat konversinya. Uji dengan nilai yang diketahui, bukan dengan angka yang masuk akal di layar. Catat nilai mentah di samping nilai rekayasa selama pengujian dan serah terima; ini membuat kesalahan penskalaan di masa depan mudah terlihat dan memberi insinyur berikutnya titik referensi.
- Konfirmasi tanda dan lebar bit
- Konfirmasi pasangan register dan urutan kata
- Uji terhadap nilai fisik yang diketahui
Polling, penulisan, dan perilaku kegagalan
Modbus menggunakan polling, sehingga setiap titik memiliki biaya waktu dan beban jaringan. Kelompokkan pembacaan, hindari polling lebih cepat daripada kemampuan perangkat menjawab, dan perlakukan timeout sebagai peristiwa kualitas data, bukan nilai nol. Penulisan memerlukan izin, pemeriksaan rentang, dan pembacaan kembali. Jika kontroler menulis setpoint, definisikan apa yang terjadi ketika perangkat menolaknya atau offline. Jauhkan interlock keselamatan dari loop polling yang lambat. Modbus adalah perekat yang sangat baik untuk data metering dan plant; ia fondasi yang buruk untuk rangkaian yang harus merespons dalam waktu deterministik. Protokol yang lambat tetap dapat andal; kesalahannya adalah memintanya melakukan tugas cepat, lalu menyalahkan protokol ketika rangkaian tertinggal.
- Kelompokkan pembacaan dan patuhi anggaran polling
- Perlakukan timeout sebagai flag kualitas, bukan nol
- Jauhkan interlock keselamatan dari loop lambat
Area data Modbus
6 rows| Area | Akses | Penggunaan tipikal | Perhatian |
|---|---|---|---|
| Coil | Baca/tulis | Perintah start/stop dan bit status | Konfirmasi apakah 0 atau 1 berarti menyala |
| Masukan diskret | Hanya-baca | Bukti operasi, alarm, dan batas | Periksa polaritas dan debounce |
| Register masukan | Hanya-baca | Nilai terukur dan penghitung | Penskalaan dan tanda |
| Register holding | Baca/tulis | Setpoint, mode, dan konfigurasi | Izin tulis dan pembacaan kembali |
| Nilai 32-bit | Baca/tulis | Energi, aliran, dan penghitung besar | Urutan kata dan pasangan register |
| Status perangkat | Hanya-baca | Flag komunikasi dan gangguan | Bedakan offline dari nol |
Gambar proyek
3 images


Pertanyaan umum
01RTU atau TCP?
RTU cocok untuk perangkat lapangan serial dan jalur kabel panjang; TCP cocok untuk jaringan Ethernet dan gateway. Banyak lokasi menggunakan keduanya, dengan gateway yang menghubungkan keduanya.
02Berapa banyak perangkat yang dapat berbagi satu segmen RS485?
Tergantung pada driver, kabel, baud rate, dan anggaran polling. Rencana segmen harus dihitung, bukan diasumsikan dari angka generik.
03Apakah Modbus aman?
Tidak secara inheren. Modbus tidak memiliki autentikasi atau enkripsi. Perlakukan sebagai fieldbus dan lindungi dengan segmentasi jaringan serta gateway.
04Mengapa nilai saya sepuluh kali terlalu besar?
Penskalaan. Register mungkin dalam sepersepuluh atau seperseratus, atau nilai 32-bit mungkin dirakit dalam urutan kata yang salah.
05Dapatkah Modbus dibuat nirkabel?
Ya, melalui jembatan serial nirkabel atau gateway. Konfirmasi latensi, percobaan ulang, dan kondisi kegagalan sebelum menggunakannya untuk kontrol.
Langkah berikutnya
Bawa gedung Anda kepada kami.
Beri tahu kami jenis gedung, sistem dalam ruang lingkup, dan hasil yang Anda butuhkan. Kami akan memetakan jalur terpendek menuju sistem yang berfungsi.