Pengontrol industri. Sistem pengumpulan data. ACS

Selamat siang, Habr!



Pengembangan pengontrol industri dengan tampilan untuk mengumpulkan dan menganalisis data, serta untuk mengelola beban yang dikelompokkan. Siapa yang peduli dengan apa yang terjadi, tolong, di bawah kucing.

Topik pengontrol industri telah lama dikembangkan untuk digunakan dalam sistem kontrol otomatis (ACS). Ketika saya melihat pengontrol berikutnya dari Siemens, ViewPAC atau produsen lain, saya hanya melihat tablet besar (saya menulis tentang faktor bentuk ini, yaitu, bukan opsi rack-mount) dengan perangkat lunak khusus di dalam, tetapi ini hanya pada pandangan pertama. Bahkan, paling sering, hanya penampilan dari sisi tampilan yang serupa, tetapi panel belakang memiliki konektor antarmuka, kompartemen untuk menghubungkan modul ekspansi, sensor, media penyimpanan eksternal, dll. Ada pengontrol industri universal dan sangat khusus, yaitu, dirancang untuk melakukan serangkaian tugas, paling sering dari jenis yang sama.

Itu adalah pengontrol (sangat khusus) yang kami kembangkan. Sebagai permulaan, beberapa kata tentang implementasi. Secara global, perangkat ini dibagi menjadi dua bagian. Yang pertama adalah modul pada iMX6D, yang kami kembangkan hanya untuk pelaksanaan tugas-tugas tersebut, yang kedua adalah mikrokontroler STM32F103RBT7. Seperti yang saya tulis sebelumnya (dalam artikel sebelumnya), itu adalah sistem blok (modular) yang memungkinkan Anda untuk dengan cepat mengimplementasikan proyek yang kompleks. Dalam sistem seperti itu, sebagian besar kompleks perangkat keras-perangkat lunak sudah didebug, dan tetap hanya mengoordinasinya dengan modul lain dan memodifikasinya untuk pelanggan akhir.

iMX6D

Modul prosesor lengkap (dua inti pada 1 GHz), yang menangani sejumlah tugas untuk berinteraksi dengan pengguna:

  • output data pada pemrosesan layar / layar sentuh;
  • Ethernet 10/100/1000;
  • sinkronisasi waktu;
  • penyimpanan log peristiwa;
  • antarmuka web + pembaruan;
  • penyimpanan data profil;
  • perhitungan kompleks untuk mikrokontroler.


Dan ini bukan daftar lengkap tentang apa yang dilakukan modul.



Fig. 1. Modul prosesor

Antarmuka berbasis web hampir sepenuhnya mengulangi gambar dari tampilan, yang membuatnya mudah bagi pengguna untuk bernavigasi dan dengan cepat mengubah pengaturan. Implementasinya, seperti dalam proyek-proyek sebelumnya, didasarkan pada mesin 11-bagian. Karena mikrokontroler melakukan bagian terbesar dari tugas, menjadi perlu untuk memperbarui firmware-nya (serta yang utama) melalui web. Tugas ini sangat akut, karena pelanggan berencana untuk meningkatkan perangkat untuk memperluas fungsionalitas. Modul prosesor terhubung ke mikrokontroler melalui UART (yang terakhir juga di-flash-kan).

STM32

Mikrokontroler dalam proyek ini sangat penting. Pertama, penggunaannya memungkinkan untuk memparalelkan tugas untuk programmer dan membedakan dua bidang utama:

  • Interaksi pengguna.
  • Pengumpulan data, pemrosesan dan manajemen.


Kedua, sistem modular lebih nyaman untuk debugging, pengujian dan perluasan fungsionalitas.

Pengontrol industri ini (selanjutnya disebut PC) memungkinkan servis empat kamar independen (kelompok) dengan sejumlah besar sensor elemen penggerak.

Khusus untuk proyek ini untuk setiap kelompok tersedia:

  • 6 sensor suhu digabungkan menjadi satu kesatuan untuk menentukan rata-rata;
  • 2 sensor suhu independen;
  • 2 sensor kelembaban;
  • 1 sensor CO2;
  • 12 saluran kontrol untuk aktuator eksternal.


Juga beberapa sensor jalan:

  • 2 sensor suhu independen;
  • 2 sensor kelembaban.


Secara total, ternyata mikrokontroler mengumpulkan data dari 48 sensor dan mengontrol 48 aktuator. Semua sensor suhu adalah analog. Sensor kelembaban dan CO2 memiliki antarmuka saat ini 4-20mA.

Sekarang sirkuit kecil. Untuk beralih sensor, diputuskan untuk menggunakan multiplexer analog HCF4051 (mereka memiliki penundaan switching, tetapi ini tidak penting untuk tugas kami). Seri inilah yang sudah dihentikan, bedanya, misalnya, dari CD4051 hanya dalam kecepatan switching (yah, di pabrikan). Ada enam multiplexer dalam pengontrol. Pengalihan semua multiplexer terjadi secara bersamaan (dengan kaki mikrokontroler yang sama), yang secara signifikan mengurangi sumber daya dan waktu baca. Pada mikrokontroler, masing-masing, enam saluran ADC terlibat.



Fig. 2. Sirkuit switching multiplekser

Untuk setiap sensor suhu, sumber referensi tegangan TL431 yang terpisah (dalam paket SOT-23) digunakan, dengan demikian, dengan korsleting pada salah satu sensor, yang lain terus bekerja seperti sebelumnya. Untuk memasok daya ke semua oporniku digunakan LM1117 3.3V. Papan ini ditenagai dari sumber DC24V eksternal, oleh karena itu, untuk catu daya sekunder, dua DC / DC TPS54560DDAR yang identik (membentuk 12V dan 5V) digunakan, karena saya menggunakannya bukan pada proyek pertama. 3.3V diperoleh dari 5V menggunakan ST1S10.



Fig. 3. Lokasi pengumpan di papan tulis

Untuk mengontrol beban eksternal, relay biasanya digunakan, dipicu oleh pasokan arus bolak-balik 24V. Oleh karena itu, AC24V dipasok ke masing-masing kelompok, yang diaktifkan oleh BT138-600 triac melalui isolasi optocoupler. Skema disajikan di bawah ini. Semuanya bekerja dengan stabil.



Fig. 4. Sirkuit kontrol triac



Fig. 5. Kelompok sensor dan konektor kontrol di papan tulis

Program manajemen disimpan pada EEPROM terpisah yang terhubung ke mikrokontroler. Parameter awal selama mulai panas dan keadaan terakhir dari seluruh sistem disimpan di sana (sehingga program dapat terus dieksekusi).

Jelas bahwa mikrokontroler tidak memiliki GPIO yang cukup untuk mengontrol banyak optocoupler (dan tidak manusiawi untuk menyeret sebanyak mungkin kabel di papan), sehingga ekspander port TCA6424ARGJR digunakan, satu untuk dua kelompok dan satu sistem (memproses beberapa sinyal input, memproses tombol sistem, Indikator LED, dll.).

Relai, yang terlihat jelas pada Gambar. 5. (satu untuk setiap kelompok), digunakan untuk menentukan keberadaan tegangan input AC24V dan kesehatan sekering untuk masing-masing kelompok. Ketika dipicu, ia mengirim sinyal ke mikrokontroler, yang, pada gilirannya, memberitahukan kerusakan.

Waktu disinkronkan menggunakan protokol NTP, tetapi ada juga chip RTC PCF8523 (juga digunakan berulang kali) untuk menghitung waktu tanpa adanya tegangan suplai.



Fig. 6. Sirkuit RTC

Tampilan

Kontrol PC dilakukan dengan cepat menggunakan layar sentuh dan dari jarak jauh melalui web. Seperti yang saya katakan, antarmuka browser (fungsi ini masih difinalisasi) mengulangi layar. Saat ini, sebuah aplikasi ditulis dalam Qt, yang berkomunikasi dengan PC secara langsung melalui mqtt dan sedekat mungkin dengan kenyataan. Di web, saat ini, ada pengaturan perangkat umum, pengaturan akses dan pembaruan perangkat lunak.



Gbr. 7. Tampilkan data dalam aplikasi pada Qt



Gbr. 8. Tampilkan data

Jenis-jenis pengontrol ini memungkinkan Anda untuk membangun ACS lengkap untuk kompleks industri. Fungsionalitas dan satu set sensor, sebagai suatu peraturan, berbeda dan sesuai dengan tugas yang diperlukan, tetapi tujuannya sama - pemantauan dan / atau kontrol. Untuk sistem besar, Anda dapat menambah jumlah pengontrol yang disatukan oleh satu tugas. Pengontrol mungkin tidak mengandung tampilan, tetapi dapat dikontrol melalui jaringan (Ethernet).



Gambar 9. Pesta kecil

Terima kasih dan sampai jumpa lagi!

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


All Articles