Introduction to OPC

Anda pernah mendengar OPC (OLE for Process Control)?

Saya pribadi belum pernah menggunakannya, namun topik ini sangat menarik untuk dipelajari dan dijadikan riset (bagi Anda yang berminat) ke depan, meski teknologinya tidak sama sekali baru. Jadi saya memberanikan diri menuliskan sedikit yang saya pelajari di posting ini.

opc_logo

Latar belakang munculnya OPC

Salah satu hal yang mengganjal dalam factory automation adalah begitu beragamnya jenis protokol yang dikembangkan oleh masing – masing vendor otomasi. Jika Anda memiliki PLC dengan merk yang berbeda, hampir dapat dipastikan protokol komunikasinya akan berbeda pula. Protokol ini sering disebut I/O driver, yaitu program dari PLC atau peralatan tertentu yang perlu digunakan saat ingin membaca/menulisi (read/write) data I/O dari PLC tertentu.

Misalnya, jika saya menggunakan software HMI Wonderware InTouch, maka saya akan memakai OmronHL sebagai I/O driver PLC Omron, dan RS Linx untuk PLC Allen Bradley.

Hal ini sangat menyulitkan pengguna (pabrik) saat akan menggunakan produk dari beberapa vendor yang berbeda. Dengan demikian juga terjadi “ketergantungan” yang kurang sehat dari pabrik terhadap vendor, bukan karena kualitas produknya yang selalu terbaik, tetapi lebih karena tidak punya pilihan lain.

Perhatikan gambar berikut untuk menunjukkan heterogenitas protokol komunikasi sistem.

picture5

Tujuan OPC

OPC memungkinkan suatu program aplikasi untuk mengakses sumber data (peralatan ataupun database) dengan protokol yang sama dan konsisten. OPC bersifat seperti  “software bus”, dimana program aplikasi (OPC client) hanya perlu mengerti bagaimana mengambil data dari OPC data source (OPC server). Dimana OPC server ini dikembangkan oleh vendor masing – masing peralatan (misal : PLC) yang diakses oleh komputer, sehingga pengguna cukup membangun aplikasi OPC client sendiri untuk mengaksesnya.

Berikut ini gambaran sistem setelah menggunakan OPC.

picture6

Satu OPC client dapat mengakses secara langsung beberapa OPC server vendor yang berbeda seperti nampak pada gambar di bawah.

opc

Macam – macam OPC Interfaces pada OPC Server

Pada OPC Server, terdapat beberapa macam OPC interface utama :

  • OPC Data Access Server
    • Mengatur pembacaan dan penulisan data antar aplikasi dan peralatan kontrol proses secara efisien dan fleksibel
    • Pada level tinggi OPC DAS terbagi menjadi beberapa object (dalam bahasa OOP) : server, group dan item. Obyek server memelihara informasi tentang server dan menjadi tempat bagi kumpulan obyek group. Obyek group melakukan hal yang sama terhadap obyek item.

opc3

  • OPC Alarm and Event Handling Server
    • Mekanisme untuk “memberitahu” OPC Client terhadap terjadinya suatu event (kondisi normal yang signifikan) dan alarm (kondisi abnormal) dalam suatu proses.
  • OPC Historical Data Access Server
    • Pembacaan, pengolahan, dan perubahan data dari historian engine.

OPC server seolah – olah seperti I/O driver yang dapat digunakan “bersama” oleh berbagai vendor. Berikut ini susunan layer dari suatu OPC server.

opc4

Spesifikasi OPC

Spesifikasi OPC meliputi :

  • Sekumpulan COM interfaces khusus yang digunakan oleh penulis client dan server.
    • Pada masa sekarang, COM telah digantikan dengan API
  • Referensi terhadap sekumpulan OLE Automation interfaces untuk mendukung client yang dibuat dengan aplikasi bisnis dengan level yang lebih tinggi seperti MS Excell dan Visual Basic.

Dalam implementasinya, spesifikasi OPC berisi 2 set interfaces : custom interfaces dan automation interface seperti nampak pada gambar berikut.

opc2

Sebuah OPC client berkomunikasi dengan OPC server melalui custom interface (misal dibuat dengan C++) dan automation interface (misal dibuat dengan VB) yang telah ditentukan.

Sumber :

Catatan penulis : bahan di atas masih dalam proses pembelajaran penulis, harap maklum jika dalam beberapa hal penulis masih belum memahami sepenuhnya 🙂

18 thoughts on “Introduction to OPC

  1. pak mau tanya bgaimana carannya plc LS/lg seri XGB bisa komunikasi dengan wonderware intoch?
    i/o servernya pakai apa mas?
    kalau plc omron kan servernya pakai omronHL tp kalau PLC LS/LG pakai apa mas?
    trimakasih

    Like

  2. lutfi

    have a nive day
    mas saat ini saya menggunakan PLC LS type XGR CPUH/T dengan aplikasi ladder editor menggunakan XG5000 (bawaan LS).
    saya juga menggunakan HMI dari ICONICS (GENESIS64) karena selain support web dan animasi 3d juga karena tuntutan kantor
    masalahnya muncul pada saat saya ingin menggabungkan HMI dari iconics dan PLC dari LS, bagaimana caranya saya membaca data dari PLC dan menganimasikannya di ICONICS? apakah opc client dan opc server dapat kita jalankan pada komputer PC yang sama?
    thanks lot
    regards Lutfi

    lutfi@brilyan.com
    lutfi741986@gmail.com

    Like

    1. Mas Lutfi, saya belum pernah menggunakan PLC dan HMI yang anda tanyakan. mungkin ada teman lain bisa bantu?
      OPC server dan OPC cient bisa diletakkan dalam 1 komputer untuk aplikasi standalone.
      Salam..

      Like

  3. azhar

    mas mau tanya mengenai Protocol PLC. saya sedang ngerjain skripsi tentang SCADA ni mas,,
    apakah termasuk protokol MODBUS juga yang dapat ditangani oleh OPC?

    jika misalnya saya punya beberapa merk PLC,, untuk koneksi ke PC ada yang pakai MODBUS TCP/IP, RS232, dll. Nah dengan OPC itu tidak perlu menginstall I/O Driver lagi ke PC. Apakah seperti itu mas??

    Terimakasih sebelumnya…

    Like

    1. Mas Azhar, sebenarnya saya gak tahu jawabannya tuh, cuman dari googling sekilas dan nemu halaman :
      http://www.matrikonopc.com/drivers/opc-modbus.aspx
      Untuk koneksi modbus dengan OPC tidak bisa semudah yang mas sebutkan di atas. Mungkin tidak bisa ya kalau modbus TCP/IP digabung dengan RS232 karena dari physical layer sudah beda.
      Kalau sesama modbus, dengan berbagai merk ada kemungkinan bisa. Di artikel di atas ada produk OPC server yang sudah diadaptasi dengan modbus itu sendiri.
      Begitu yang bisa sedikit saya bantu..

      Like

  4. Pingback: Komunikasi Wonderware InTouch – PLC dengan OPC (1) « Ayo Belajar PLC dan SCADA!

  5. Arif

    Maaf mas,mau tanya2.
    saya masih awam tentang OPC.
    saya ada tugas komunikasi OPC di Wonderware InTouch.
    konsep dasarnya,PLC dihubungkan ke mikro,mikro komunikasi 2 arah ke PC (HMI Wonderware nya). rencananya dari mikro ke PC mau pke serial via VB 6.0.yang saya tanya kita bisa kominikasi OPC dari dan ke VB 6.0?

    Like

    1. Mas Arif, mengapa harus menggunakan mikro? Menurut saya bisa tanpa mikro. Tulisan sederhana bisa lihat di :

      Komunikasi Wonderware InTouch – PLC dengan OPC (1)


      Komunikasi OPC ke VB 6 bisa, tapi saya juga belum pernah nyoba :). Dari googling, saya dapat kalau OPC client yang bisa kita buat di VB 6, untuk akses OPC server yang connect dengan PLC. Tapi OPC client ini kebanyakan harus beli dalam bentuk VB – Active X. Berikut beberapa alamat diskusi :
      http://www.faweb.net/us/opc/sample_vb.html
      http://www.opcactivex.com/Support/AdditionalExamples/additionalexamples.html
      http://www.control.com/thread/1026230217#1026231879
      Semoga sedikit membantu..

      Like

  6. Yopy

    Mas Handy, terkait dengan OPC, saya mau titip informasi tentang sebuah sistem yang dapat meneruskan data-data OPC ke tempat yang jauh untuk keperluan remote monitoring menggunakan koneksi internet. Sistem itu disebut RACCOON (www.raccoonet.com). Jadi misalkan ada PLC di kota A, ingin dilihat datanya di kota B. Cukup install aplikasi Publisher di komputer yang terhubung dengan PLC, kemudian install aplikasi Subscriber di komputer client di kota B. Kemudian login, setelah tersambung dengan server, maka data-data PLC dapat dilihat di komputer kota B. Aplikasi subscriber sekaligus juga merupakan OPC server sehingga bisa digunakan dengan HMI semisal Wonderware. Syarat utama :
    1. Tersedia OPC Server di komputer yang terhubung
    dengan PLC
    2. Koneksi jaringan Internet.

    Untuk keterangan lebih lanjut bisa lihat website-nya.

    Like

    1. Akhmad

      mas yopy Yang dimaksud dengan aplikasi Publisher & Subcriber itu apa?. soalnya dipabrik tempat saya bekerja menggunakan sistem Direct On line(tidak menggunakan aplikasi lain). Mohon penjelasanya untuk pengetahuan & pengembangan buat saya. Terimakasih

      Like

  7. ksatria_kambing

    mas handy, saya masih baru belajar nih, klo wonderware itu tingkat software OPC atau cuman HMI aja???karena HMI kantor gak bisa komunikasi dengan master, (dulunya bisa) setelah masternya ganti ke realflex terbaru, wonderware gak bisa konek data yg dari realflex…kira2 butuh OPC kah???ada source bwt downloadnya gak??

    matur suwun mas hendy, terima kasih sebelumnya

    Like

    1. Mas ksatria kambing :),
      Wonderware ini masuk tingkatan SCADA, jadi meliputi HMI, database, dll. Sedang OPC yang mas maksud adalah semacam protokol komunikasi supaya SCADA ini dapat berhubungan dengan sistem lain. Jadi OPC server mendukung untuk komunikasi Wonderware ke PLC atau sistem lain.

      Untuk relaflex, saya sendiri kurang tahu. Mungkin ada teman lain yang bisa bantu?

      Salam..

      Like

Leave a comment