Showing posts with label PowerMeter. Show all posts
Showing posts with label PowerMeter. Show all posts

Friday, April 9, 2021

MASTER-SLAVE READ DATA USING S7-1200 MODBUS RTU | INSTRUMENT PART 9

Read Data using MODBUS Remote Terminal Unit Communication

Pada bagian ini, saya mencoba sharing pemahaman saya terkait dengan MODBUS. MODBUS sendiri merupakan komunikasi serial yang banyak digunakan pada otomasi industri. Beberapa jenis komunikasi yang banyak digunakan diantaranya HART, Modbus/Profibus (Siemens), dan Ethernet/Profinet (Siemens). 

Industrial topology network

Sebelum saya menjelaskan tentang modul komunikasi, izinkan saya menjelaskan konfigurasi PLC yang saya gunakan.

Modbus Module (kiri),PLC S7-1200 CPU 1212C DC/DC/RLY (tengah), dan ET 200S (kanan) 

Sesuai dengan foto di atas, disebelah kiri PLC merupakan modul komunikasi Modbus, yang mana menggunakan komunikasi serial RS-485 (kabel ungu). Di sebelah kanan PLC, merupakan remote I/O modul, ET 200 SP. Oiya remote I/O dibuat dengan 2 tujuan, pertama karena keterbatasan slot modul I/O yang dapat melekat pada induk PLC. Misalnya pada seri S7-1200 ini, hanya dapat menampung 1 slot modul Digital Input (DI), dan 1 slot modul digital output (DO). Jadi untuk modul Analog Input, Analog Output, dan modul DI/DO tambahan harus ditempelkan pada modul Remote I/O. Kedua, tujuan remote I/O adalah untuk meminimalisir penggunaan kabel yang tentunya memakan banyak anggaran biaya. Jadi untuk hubungan PLC----Remote I/O cukup menggunakan satu kabel ethernet ataupun dengan switch hub ketika terdapat PLC Redundant didalam sistem.

Saya disini menggunakan PLC S7-1200C DC/DC/RLY. Artinya : 

DC : PLC menggunakan tegangan supply DC

DC : PLC memberikan power looping DC ke instrumen slave

RLY : Output PLC memiliki fitur relay. 

Beberapa jenis PLC yang lain di antaranya :

AC/DC/DC

AC/DC/RLY

DC/DC/DC

DC/DC/RLY

PLC S7-1200 CPU 1212C DC/DC/RLY pin terminal

AC-DC Converter (kiri), SCALANCE Switch Hub (kanan)
        
        Karena PLC ini menggunakan supply power DC, maka dibutuhkan adaptor 220 VAC phase ke 24 VDC. Disebelah kanan adaptor merupakan Switch Hub SCALANCE. Fungsi dari SCALANCE ini seperti terminal yang menghubungkan semua device di dalam sistem. Mengapa? Jawabannya karena port pada masing-masing terbatas jumahnya. Komponen yang dapat dihubungkan biasanya seperti HMI (Human Machine Interface), Kontroler (PLC), Remote I/O, Personal Computer dengan koneksi ETHERNET kabel RJ-45 , dan lainnya. Oiya untuk kabel hijau merupakan kabel ethernet, dan kabel ungu merupakan kabel modbus/profibus.

Komunikasi

        Mungkin kita bertanya  kenapa modul komunikasi ini penting? Saya akan mencoba menjelaskan sedikit pemahaman saya. Analoginya adalah seperti ini : Ketika orang Indonesia yang tidak bisa berbahasa inggris jumpa dengan orang inggris yang tidak bisa berbahasa indonesia, maka tidak mungkin terjadi pertukaran informasi yang signifikan di antara mereka. Apa yang diperlukan agar orang indonesia memahami apa yang orang inggris sampaikan? Ya jawabannya seorang transalator. Apa kekurangan ketika ada dua orang yang menggunakan translator saling berkomunikasi? Ya jawabannya informasi/maksud/makna tersirat yang disampaikan oleh A, bisa jadi tidak diterjemahkan translator dengan baik ke B, dan sebaliknya. Artinya pertukaran informasi tidak terjadi secara utuh. Bagaimana solusinya? Ya tentunya salah satu pihak harus memahami bahasa lawan bicaranya agar pertukaran informasi terjadi secara utuh.

        Begitu juga dengan pertukaran informasi antara field instrument dengan kontroler (kebanyakan disebut hubungan Master (plc) - Slave (instrument device). Lah bukannya PLC bisa menerjemahkan sinyal yang dikirim instrument? Jawabannya tentu bisa, tapi tidak utuh. Kembali ke topik flowmeter yang pernah saya buat di Part 7, flowrate yang di kirimkan ke analog input (AI) PLC tentunya harus diterjemahkan dulu menggunakan Norm dan Scale diagram block, dan totalizer yang dikirimkan ke PLC melalui DI (Digital Input), angkanya kemungkinan besar tidak tepat seperti yang dibaca instrument di lapangan karena ada nilai liter/pulse. Ketidaktepatan maupun konversi ini digunakan ketika tidak ada modul komunikasi antara PLC dan instrumen di lapangan. Kalau misalnya ada modul komunikasi jadi gimana? Ya PLC tentunya tidak perlu menejermahkan bit flowrate dan pulse totalizer lagi, istilahnya PLC langsung menerima satu box informasi yang sudah mengandung semua informasi hasil pengukuran flowmeter di lapangan. Syaratnya? Ya tentunya PLC dan field instrument kalian harus sama-sama dilengkapi dengan modul komunikasi.

SIEMENS SENTRON PAC 31OO POWER METER

Oke kali ini saya akan coba sharing penarikan data (read) antara master PLC (S7-1200) dengan slave Siemens SENTRON PAC 3200 (power meter) menggunakan komunikasi serial modbus RTU. Protokol komunikasi yang digunakan adalah RS-485. Data-data yang akan ditarik tentunya berupa parameter arus 1 phase yang diberi beban (HP yang di charging) seperti Vp-p, Arus, Frekuensi, Rated Power, dll. Langkah-langkah yang dilakukan adalah seperti di bawah :

1. Wiring PAC 3200

Untuk wiringnya kita harus melihat datasheet pac 3100. 

PAC 3100 PIN TERMINAL

Sesuai dengan hukum pengukuran arus dan tegangan, wiring untuk pengukuran arus menggunakan rangkaian seri, dan wiring pengukuran tegangan menggunakan rangkaian paralel. 

Nomor terminal yang digunakan sesuai gambar di atas adalah : 
no 1&2 : arus
no 7&10 : tegangan
no 11&12 : Supply power

untuk wiring lengkapnya seperti gambar di bawah :

Power meter wiring


Power meter wiring to load

2. PLC programming Read Data from Slave

Untuk membuat program PLC for read data from slave, kita harus memahami diagram block untuk pembacaan data master-slave menggunakan MODBUS RTU. 

2.1 Diagram block Load dan Master
FB Comm_Load and Master

FB Comm_Load
Diagram block load digunakan untuk inisiasi awal. Parameter yang penting pada diagram load adalah : bit character, baudrate, parity, dan stop bit. Ini harus disamakan dengan  nilai parameter slave. Misalnya pada slave disetting nilai 8N1 dengan baudrate 9600 bit per second. Artinya bit character = 8, parity = none, dan stop bit = 1. Disini saya setting PAC 3100 dengan slave address = 2.
Slave setting



FB Master
Parameter yang harus dipahami pada bagian ini adalah address slave dan address data.  Address slave merupakan address instrumen, dan address data adalah variabel mana dari slave yang mau kita tarik. Misalnya kita punya 2 slave, yaitu berupa flow transmitter dan power meter. Flow transmitter kita setting dengan alamat slave = 1, dan power meter kita setting dengan alamat slave = 2. Sedangkan untuk data address, kita harus melihat datasheet produk yang bersangkutan.

Data address of slave

Misalnya pada data address Sentron PAC 3100 di atas, kita ingin mengambil data Tegangan Va-n, Va-b, arus A, dan frekuensi terukur pada stop kontak. Karena Sentron dan beberapa instrumen lain menggunakan nilai awal address data 40001, maka untuk mengambil address data di atas : 

nilai address data = 40001 + offset 

Maka diinput address data Va-n = 40002, Va-b = 40008,arus A = 40014, frekuensi = 40040. Pada diagram block di atas, data_len saya isi dengan nilai 100. Artinya, saya ingin mengambil nilai data dari offset 40002 hingga 40102 secara langsung. 

2.2 Diagram block step dan collection data

Diagram block step dibuat dengan tujuan agar PLC menginput data secara berulang hingga PLC selesai mengambil semua data address yang kita perintahkan. Penjelasannya seperti ini : PLC membutuhkan waktu untuk mengambil banyaknya data address yang kita perintahkan. Semakin banyak data address yang kita ambil, maka semakin lama waktu yang dibutuhkan PLC untuk mengambil data. Jadi algoritma PLC adalah : Ambil semua data (busy), selesai ambil data (done), ulang ambil data lagi begitu seterusnya. Jadi selama PLC belum selesai mengambil semua data, PLC tidak akan mengubah nilai parameter. Artinya perubahan nilai terbaca terjadi secara serentak.

Step and data collection function block


3. Wiring to PLC

Karena modbus RTU RS-485 menggunakan konektor DB-9, maka kita harus melihat pin mana yang digunakan pada komunikasi modbus RTU. 
DB 9 connector pin out

terminal positif  pin 3 (modul modbus PLC) dihubungkan dengan terminal positif pada Sentron PAC 3100. Pin 8 terminal negatif dihubungkan dengan terminal negatif pada Sentron PAC 3100. 

Slave terminal

Hasil Pembacaan Read Data from Slave Sentron PAC 3100

Data PAC 3100

Voltage measurement

Current measurement

PLC Read

Master read data from slave

Data ini berubah secara real time tergantung berapa lama PLC mengambil 100 data dari slave. Nilai 0 tersebut dikarenakan data address Sentron PAC memiliki jarak sebesar 2 address untuk setiap parameternya.

Jikalau kita ingin menambah slave, maka block master cukup ditambahkan sejumlah banyaknya slave yang datanya ingin kita tarik.