Animasi skema di SCADA

Saat membuat HMI, cukup sering tugasnya adalah membangun pemetaan rangkaian kompleks elemen terkait. Ini dapat berupa skema pipa bercabang, listrik, dll.

Anda dapat, tentu saja, membatasi diri Anda untuk menampilkan elemen-elemen kunci (katup gerbang, pemutus sirkuit), tetapi semakin besar sirkuitnya, semakin sulit untuk membuat gambar yang lengkap dan memastikan tindakan yang benar dari operator.

gambar

Artikel ini menjelaskan pewarnaan elemen skema tersebut, menjelaskan metode solusi untuk Simatic WinCC v7 dan implementasinya dalam Simargl SCADA. Jika Anda tidak harus bekerja dengan WinCC, maka Anda dapat melihat tepat di akhir artikel - ada video yang ingin tahu.

Untuk representasi yang lebih visual tentang mengapa semua ini diperlukan, kami menggunakan skema sederhana yang kecil.

gambar

Sekarang bayangkan apa yang akan terjadi jika ada operasi. Berapa lama untuk melacak jalur produk melalui sistem pipa? Kami mempersenjatai diri dengan stopwatch.

Siap? Pergilah!
image


Menurut pengamatan saya, dibutuhkan 10 - 15 detik.

Dan sekarang ingat bahwa (tiba-tiba) operasi dapat dilakukan beberapa sekaligus. Ini "sedikit" menyulitkan tugas. Sudah siap untuk menguji diri sendiri lagi?

Pergilah!
image


Menerjemahkan ke dalam bahasa yang layak kata-kata rekan saya: β€œItu adalah kesempatan! Saat Anda melacak rute kedua, Anda akan sangat melupakan yang pertama. Skema yang luar biasa dan nyaman! ”

Tetapi skemanya sangat sederhana - bahkan tidak memiliki bacaan instrumen dan berbagai tanda tangan (halo khusus untuk penggemar untuk menggambar pipa "tiga dimensi"). Dalam praktiknya, keadaan bisa lebih buruk. Saya telah bertemu dengan skema yang jauh lebih besar (lebih dari 400 katup).

Apa yang bisa dilakukan operator pada tiruan seperti itu? Dalam kasus terbaik, perlahan-lahan buka katup gerbang di sepanjang rute dan berharap dia tidak salah. Tetapi bagaimana jika switching perlu dilakukan dengan cepat dan biaya kesalahan tinggi?

Jalan keluar dari situasi ini jelas - perlu untuk mewarnai garis di sepanjang rute, dan disarankan untuk melakukan ini sebelum tindakan kontrol. Anehnya, saya tidak melihat solusi yang sudah jadi dari kotak, bahkan dengan paket SCADA mahal. Upaya untuk mewarnai secara manual untuk setiap baris mengancam untuk menunda pengaturan hampir tak terbatas.

Solusi untuk WinCC v7


Saya memecahkan masalah seperti itu berdasarkan WinCC v7. Sayangnya, di bawah ketentuan kontrak, saya tidak punya hak untuk mengeluarkan solusi yang sudah jadi, tetapi saya bisa menggambarkan solusi yang mungkin. Tiba-tiba seseorang akan membantu.

Saya akan segera mencatat bahwa ini adalah tentang keluarga produk WinCC versi 7, karena ada peluang untuk menggunakan VBA. Perlu diingatkan, semua yang dijelaskan di bawah ini lebih merupakan peretasan, digunakan dari keputusasaan dan tidak cocok untuk semua kasus.

Saya akan melanjutkan diskusi dalam hal pipa dan katup, meskipun, tentu saja, semuanya akan sama untuk skema catu daya.

Bagilah skema secara mental menjadi beberapa bagian sehingga pada setiap sisi hanya ada satu input / output. Itu jika outlet dipotong ke dalam pipa, tiga bagian harus dibuat: sebelum cabang, maka cabang itu sendiri.
Untuk membuat diagram, Anda harus menggunakan dua jenis objek grafik standar:
Connector (untuk menggambar garis) dan Circle (untuk membuat titik kontrol diagram). Konektor diperlukan karena memungkinkan Anda untuk menentukan objek mana dalam rangkaian yang terhubung, berbeda dengan garis yang biasa. Lingkaran standar harus diulang di CustomObject - ini akan menghindari kebingungan saat menyortir elemen skema mnemonik dan memberikan nama yang nyaman untuk properti.

Bagian dari titik kontrol akan sesuai dengan sambungan pipa, dan sebagian - ke katup gerbang. Untuk yang terakhir, kami memilih properti yang tidak digunakan dan menetapkan aksi VBS, di mana kami membuat konstanta dan memberinya nilai string dengan nama katup:

gambar

Selanjutnya, kami menulis skrip pada VBA yang akan melewati semua elemen layar dan untuk setiap Connector membuat daftar kait yang terhubung secara tidak langsung, memungkinkan Anda untuk akhirnya membuat teks VBS untuk properti BorderColor. Ini dapat dicapai karena fakta bahwa Connector memiliki dua properti - TopConnectedObjectName dan BottomConnectedObjectName, tersedia di VBA.

Hasil skrip ini akan terlihat seperti ini:

gambar

D1 dan D2 - array dengan nama-nama katup; TubeColor - fungsi yang mengembalikan warna dan gaya garis tergantung pada keadaan katup.

Poin penting: saat menulis skrip VBS ke suatu elemen, Anda juga harus mengubah pemicu.

Dalam fungsi TubeColor, perlu untuk mengatur semua aturan pewarnaan tergantung pada situasi teknologi. Tentu saja, TubeColor perlu dirender dalam skrip Global.

Maka perjuangan akan dimulai untuk kinerja, optimalisasi VBS, dll., Karena WinCC hampir tidak dapat mentransfer diagram mnemonik besar. Tetapi kita harus membayar upeti kepada kolega dari Siemens, kecepatan VBS telah meningkat secara signifikan, jika saya tidak salah, dari versi 7.3, yang sangat menyederhanakan kehidupan pengembang proyek terapan.

Deskripsi implementasi dalam Simargl SCADA


Untuk menggambar skema animasi, Simargl SCADA mencakup dua widget:
SPipeScene - sebuah adegan untuk menggambar garis dan mengatur aturan pewarnaan;
SPipe - untuk menentukan titik nodal dan menampilkan perubahan dalam kondisi peralatan lapangan.

Intinya, proses bermuara hanya dengan menempatkan titik-titik nodal dari rangkaian, mengikat properti ke nilai tag, dan menempatkan widget di atas layar yang menampilkan status peralatan. Itu semua terlihat seperti ini:


Sangat mengherankan bahwa untuk membuat sirkuit yang sebenarnya, tidak perlu menulis kode sama sekali.

Anda bisa mendapatkan versi demo dari Simargl SCADA, dokumentasi dan sumber proyek dari video dari halaman facebook .

Source: https://habr.com/ru/post/undefined/


All Articles