ARIES PLC110[M02]-MS4, HMI, OPC dan SCADA, atau berapa banyak teh Chamomile yang dibutuhkan seseorang. Bagian 1

Selamat siang para pembaca artikel ini yang budiman. Saya menulis ini dalam format ulasan.

Sedikit peringatanSaya ingin memperingatkan Anda bahwa jika Anda segera memahami apa yang kita bicarakan dari judulnya, saya menyarankan Anda untuk mengubah poin pertama (sebenarnya, inti PLC) menjadi sesuatu dari kategori harga satu langkah lebih tinggi.
Tidak ada jumlah uang yang ditabung yang sebanding dengan kegelisahan, secara subyektif.

Bagi mereka yang tidak takut dengan sedikit uban dan amplitudo kegelisahan, nanti saya akan menjelaskan secara detail bagaimana keajaiban teknologi ini tercipta. Artikel ini memberikan analisis singkat proyek dengan sejumlah kritik.

Asal. Rumusan masalah

Sebenarnya, saya bekerja di biro desain, dan kami menguji peralatan otomasi untuk diintegrasikan ke dalam pabrik turnkey kami. Baru-baru ini, peralatan OWEN tiba di gudang dan diputuskan untuk merakit bangku tes dari sana:

  • PLC110[M02]-MS4 (lingkungan eksekutif MasterSCADA 4D)
  • Panel operator SP307
  • Modul input sinyal analog universal МВ110-224.2А
  • Modul masukan sinyal pengukur regangan MV110-4TD
  • Modul pengukuran listrik MV110-220.3M

Struktur sistem dipilih dengan pembedaan jaringan berdasarkan tujuan:

  1. Modbus RTU berdasarkan RS-485 - komunikasi antara PLC dan perangkat budak (modul, konverter frekuensi, sensor pintar, panel HMI SP307), master jaringan PLC.
  2. Modbus TCP berdasarkan Ethernet - Komunikasi PLC yang berbeda satu sama lain dan dengan server OPC
  3. Server PC sistem OPC dan SCADA secara bersamaan merupakan gerbang antara dua jaringan yang berbeda (LAN Perusahaan perusahaan dan jaringan pengontrol Modbus TCP (dua adaptor jaringan dengan perutean data menggunakan alat Windows standar)
  4. LAN perusahaan memiliki akses Internet melalui server proxy

Struktur umum sistem ditunjukkan pada gambar di bawah ini:

ARIES PLC110[M02]-MS4, HMI, OPC dan SCADA, atau berapa banyak teh Chamomile yang dibutuhkan seseorang. Bagian 1

Fungsionalitas bawaan

  • Pengumpulan dan pengalihan data dari PLC ke server OPC
  • Kontrol dan pemantauan lokal melalui panel HMI
  • Kontrol dan pemantauan dari SCADA melalui server OPC
  • Kontrol dari PC mana pun dari LAN perusahaan dan melalui Internet menggunakan klien SCADA
  • Menghubungkan monitor OPC seluler melalui LAN dan Internet
  • Tentu saja, pengarsipan dan pembuatan laporan

Sepertinya tidak ada yang terlewatkan. Ada gambaran umum tentang sistem, dan sekarang, sebenarnya, tentang topiknya (saya akan menjelaskan metode eliminasi dalam artikel dengan implementasi setiap node):

Kesulitan yang dihadapi

1. Dokumentasi PLC

Pengujian beta dari PLC yang dinyatakan pada inti MasterSCADA 4D diindikasikan oleh pabrikan pada tahun 2012. Terlepas dari umur konsep yang sangat mengesankan, yang dimiliki pengembang pada tahun 2019 hanyalah manual pemrograman sebanyak 28 (!?), yang di dalamnya terdapat sedikit informasi berguna, dan tangkapan layar dalam manual tersebut berasal dari MasterSCADA 3D, yang cukup lucu mengingat antarmukanya telah berubah.

Utas forum yang terdiri dari 20 topik juga didukung secara aktif oleh tiga pengikut dan seorang manajer penjualan.

2. Arsitektur modul PLC

Ini adalah topik terpisah untuk diskusi. Secara singkat: PLC berkomunikasi dengan modul sebagai perangkat budak Modbus RTU, yang terlebih dahulu harus dikonfigurasi oleh utilitas secara terpisah dengan menghubungkan masing-masing modul ke PC melalui konverter RS-485.

Orang pintar, tentu saja, mungkin tahu bagaimana melakukan ini tanpa konverter melalui PLC, menghubungkan modul secara berurutan ke jaringan dan menulis register yang diperlukan, tetapi ini memerlukan pengalaman dan banyak kesulitan.

Bagi pengembang yang melihat arsitektur seperti itu untuk pertama kalinya, arsitektur ini sama sekali tidak ramah pengguna.
Selain itu, semua modul analog suka gagal karena alasan yang tidak diketahui, membawa serta seluruh jaringan RS-485 di Terra Incognita, tetapi saya juga ingin membicarakan hal ini secara terpisah, tentu saja secara keseluruhan epik. Masalahnya, ngomong-ngomong, sudah berumur 10 tahun, pabrikan menertawakannya “Kami harus mengakui bahwa templat tersebut tidak berfungsi untuk kami”, namun, ini adalah satu-satunya antarmuka untuk berkomunikasi dengan modul, dan orang-orang, dengan cukup serius, telah lama menulis implementasi Modbus RTU mereka.

Sementara itu, teh kamomil sudah habis... Matahari mulai terbenam

3. IDE MasterSCADA

Kami tidak akan berbicara tentang alat grafis; Saya belum mengujinya secara ekstensif, tapi saya akan langsung mengatakan bahwa saya tidak menyukainya.

Kita berbicara tentang implementasi pertukaran data dan bahasa standar IEC:

Input dan output fisik pengontrol bukan merupakan variabel global dan tidak dapat diakses dari bagian program mana pun dengan menulis alias, misalnya “DI1”. Anda harus menyeret ini ke setiap program menggunakan pegangan, variabel lokal dibentuk di sana, yang mewarisi atau mentransfer nilainya. Itu. inti dari PLC, dalam pandangan saya, sedikit hilang: perangkat harus menyederhanakan pemrograman logika pengoperasian saluran fisik ke tingkat yang lebih tinggi. “Jika input DI1 terpicu, hidupkan output DO1”dan sepertinya ini "Masukan DI1 - Variabel LI1 - Variabel LO1 - Keluaran DO1", juga, karena ketidaktahuan akan prinsip IDE ini, Anda dapat melihat peringatan yang menyenangkan "Konversi Boolean-Boolean tidak mungkin" (kemungkinan besar, salah satunya adalah penunjuk, tapi saya bayangkan di editor pembuatnya, ini lebih harmonis) .

Pustaka bahasa ST, FBD, SFC cukup banyak dan ada pilihan untuk kemudahan pemrograman, namun komponen ini bukanlah fungsi, tetapi kelas di mana metode tertanam, dan kedua, sebagian besar tidak memiliki bantuan untuk menjelaskan fungsionalitas dan tipe data. Kegigihan membawa saya ke perpustakaan kernel CodeSys, tempat semua fungsi ini diambil, bantuan mereka membantu.

4. Tukarkan dengan panel SP307

Acara yang cukup menarik bagi mereka yang tidak punya tempat untuk menghabiskan beberapa hari.

Pengujian GUI standar (HMI atau SCADA) bagi saya adalah melakukan 6 tes:

  1. Membaca Sinyal Diskrit
  2. Merekam sinyal diskrit
  3. Membaca Nilai Integer
  4. Menulis Nilai Integer
  5. Membaca adalah sebuah nilai yang nyata
  6. Menulis memiliki nilai yang nyata

Oleh karena itu, saya menggambar 6 komponen primitif di layar dan memeriksa masing-masing komponen secara berurutan
Pertukarannya benar-benar sama dengan modul, tetapi dari port PLC RS-232/485 yang terpisah, dan tampaknya lebih stabil. Karena ini adalah budak HMI, saya menulisnya berdasarkan perubahan, dan membacanya dalam polling 500ms, agar tidak ketinggalan tindakan operator.

4 poin pertama diselesaikan dengan sempurna, namun poin 5 dan 6 menimbulkan kendala.

Kami mengirimkan data bertipe Single Float, menampilkannya di layar dan melihat bahwa datanya tidak sama, meskipun semua pengaturan output (Float, register dimensi 1, dll) sudah benar. Bohong jika mengatakan bahwa presedennya tidak dijelaskan dalam dokumentasi, namun coba cari yang mana dan di mana, lucu dari luar.

Setelah pencarian histeris terhadap semua pengaturan mengenai data itu sendiri dan pengirimannya, Kami menulis ke dukungan teknis, responsnya rata-rata 5-6 hari kalender, kami bekerja sesuai dengan skrip dukungan teknis standar “Periksa apakah daya menyala - periksa versi perangkat lunak - harap tunggu seminggu lagi - Mari kita cari tahu sendiri ”.

Ngomong-ngomong, diputuskan dengan memasang satu tanda centang di tempat yang benar-benar tidak memadai dengan tanda tangan yang sama sekali tidak memadai.

Dalam fungsionalitas layar Input sinyal analog format “Slider” tidak disertakan, hanya dapat dimasukkan pada kolom teks menggunakan angka. Ini sungguh menakjubkan, baik kita menulis sendiri tombol “±” dan skripnya, atau kita memasukkan nomor dari keyboard, dan melupakan kontrol lunak pada beberapa drive.

Saya tidak akan membebani artikel secara berlebihan, jadi saya akan menjelaskan masalah dengan level teratas di bagian 2.

Meringkas, Saya ingin mencatat bahwa saya memiliki kebebasan yang cukup dan banyak waktu untuk menyelesaikan masalah ini, yang sekilas tampak lucu, namun menimbulkan banyak penderitaan bagi korbannya. Dalam kondisi waktu yang terbatas, permasalahan seperti ini sangat penting untuk dihadapi.

PS: Semua tesis yang disajikan di sini bersifat subyektif, dan hanya upaya untuk memperingatkan mereka yang tidak siap, dan tidak mendiskriminasi produsen, saya mohon Anda mengambil artikel ini dari sudut pandang ini.

Bagian kedua sudah ada di sini: klik

Sumber: www.habr.com

Tambah komentar