Setelah pada posting yang lalu saya membahas komunikasi 2 buah PLC Modicon M221 dengan protokol Modbus RTU, kali ini saya akan membahas komunikasi dengan Modbus TCP. Sebagian besar proses sebenarnya sama, hanya ada sedikit perbedaan konfigurasi saja. Silahkan menyimak untuk lebih lengkapnya.
Persiapan
Peralatan yang dibutuhkan:
- 2 buah PLC M221 yang memiliki port komunikasi ethernet
- 1 buah kabel RJ 45
Tancapkan kabel RJ 45 ke ethernet port PLC 1 dan PLC 2.
Membuat Program “Modbus_RTU_Write” di PLC 1
Supaya PLC 1 dan PLC 2 dapat bertukar data dengan protokol Modbus, digunakan instruksi WRITE_VAR dan READ_VAR. PLC 1 akan menuliskan nilai di alamat tertentu dengan instruksi WRITE_VAR, sedang PLC 2 akan membaca nilai di alamat yang sama dengan instruksi READ_VAR.
Mulanya kita perlu melakukan konfigurasi hardware. Pada bagian “Configuration”, pilih ETH1, dan masukkan IP address dan kelengkapannya. Pada PLC 1, IP address yang digunakan:
192.168.0.10
Kemudian kita pilih bagian “Modbus TCP” dan kita masukkan IP address dari peralatan yang akan kita akses: 192.168.0.11. Setelah itu tekan tombol “Add” sehingga alat tersebut masuk ke dalam daftar. Lihat gambar berikut.

Kemudian kita membuat program seperti gambar di bawah. %S6 akan memberikan pulsa setiap 1 detik, dan nilai %MW0 akan bertambah satu setiap detiknya (dengan instruksi INC). Pulsa dari %S6 juga digunakan untuk mengaktikan instruksi WRITE_VAR, dikarenakan instruksi akan dieksekusi setiap pin EXECUTE mendapat sinyal yang berubah dari 0 ke 1 (rising edge).

Pada instruksi WRITE_VAR, diisikan pengaturan berikut:
- Link: 3 – ETH1 (diisikan port Ethernet)
- Id: 1 (Id dari Modbus slave yang kita miliki)
- ObjType (semacam function code)
- FirstObj: alamat data pertama yang akan dituliskan
- Quantity: jumlah data yang akan ditulis
- IndexDat: lokasi alamat data baru

Berikut ini tampilan program jika dieksekusi:

Membuat Program “Modbus_RTU_Read” di PLC 2
Konfigurasi hardware hampir sama dengan PLC 1, hanya di PLC 1 IP address dari “ETH1” ialah 192.168.0.11, dan IP address yang didaftarkan di “Modbus TCP” ialah 192.168.0.10.


Berikut ini program yang saya buat. %S6 digunakan untuk mengaktifkan instruksi READ_VAR. Pada rung 2, nilai yang terakumulasi di %MW0 akan dipindahkan ke %MW10.

Berikut ini pengaturan konfigurasi READ_VAR (keterangan sama dengan perintah WRITE_VAR):

Berikut ini hasil uji program dalam kondisi running:

Nilai %MW0 yang berubah juga bisa ditampilkan di Animation Table:

Semoga bermanfaat!
Catatan: tutorial ini pertama kali saya tuliskan di https://learnautomation.wordpress.com/2024/11/11/tutorial-komunikasi-2-buah-plc-modicon-m221-dengan-modbus-tcp/


Terimakasih telah berbagi ilmu
Sama sama mas, senang jika bermanfaat