Pengawalan FBD Secara Berurutan: Tutorial Pemrograman Mesin Keadaan

Seorang pelatih pernah bertanya mengapa program mesin pengisian kadang-kadang melewatkan langkah dan mengisi botol sebelum botol diposisikan. Jawapannya bukanlah kerana pemasa yang hilang — ia adalah keadaan yang hilang. Programnya adalah sekumpulan syarat yang bebas; mesin berurutan yang sebenar adalah mesin keadaan, dan perbezaannya adalah perbezaan antara program yang berfungsi di atas kertas dan program yang berfungsi pada hari Isnin.

Pengawalan berurutan ada di mana-mana dalam automasi: barisan pengisian, meja putar, tekan stamping, kabin cat. Kesilapan klasik adalah menulis setiap output sebagai syarat yang longgar — "apabila sensor A dan pemasa B, buka injap C" — dan kemudian menyahpepijat kombinasi yang mustahil pada pukul 2 pagi. Penyelesaiannya adalah untuk berhenti berfikir dalam output dan mula berfikir dalam keadaan.

Apa Itu Mesin Keadaan Sebenarnya

Mesin keadaan adalah satu set langkah yang dinamakan dan peraturan untuk bergerak di antara mereka. Mesin sentiasa berada dalam satu langkah yang tepat: TUNGGU, POSISI, ISI, SEAL, EJECT. Setiap langkah mempunyai tindakan masuk, syarat keluar, dan pengawal. Botol hanya diisi dalam langkah ISI, dan langkah ISI hanya boleh dicapai dari POSISI apabila sensor botol mengesahkan posisi. Ia kedengaran seperti birokrasi; ia berkelakuan seperti kejuruteraan.

Dalam FBD xLogicSoft, mesin keadaan dipetakan dengan jelas ke corak Pendaftaran Shift klasik atau kepada bendera F yang digunakan sebagai bit langkah. Coraknya: satu bendera F bagi setiap langkah, satu set syarat peralihan, dan blok peralihan satu tembakan supaya mesin maju tepat satu langkah bagi setiap acara. Kerana langkah semasa sentiasa dapat dilihat — LCD menunjukkan bendera F yang aktif — pengendali dan juruteknik penyelenggaraan dapat melihat dengan cepat di mana mesin berfikir ia berada. Ciri tunggal itu mengurangkan masa penyelesaian masalah lebih daripada mana-mana manual diagnostik.

Membinanya: Tiga Stesen Pengisian

Ambil contoh tiga stesen yang mudah: botol tiba, diisi, ditutup. Langkah-langkah:

  • Langkah 0 IDLE: semua output dimatikan. Peralihan: sensor botol ada, butang mula.
  • Langkah 1 POSISI: konveyor berfungsi sehingga botol berhenti di kepala pengisian. Peralihan: sensor kedudukan.
  • Langkah 2 ISI: injap pengisian dibuka untuk tempoh masa yang ditetapkan atau sehingga sensor tahap terpicu. Peralihan: pemasa selesai.
  • Langkah 3 PENUTUP: penutup diturunkan dan ditekan. Peralihan: tekanan disahkan, pemasa selesai.
  • Langkah 4 EJECT: konveyor berfungsi untuk mengeluarkan botol. Peralihan: sensor keluar bersih.

Setiap peralihan menggunakan blok On-Delay atau Wiping Relay (satu tembakan) supaya kemajuan berlaku tepat sekali. Pengawal pada setiap peralihan adalah langkah itu sendiri — Langkah 2 tidak boleh bermula melainkan mesin berada dalam Langkah 1, titik. Botol tidak boleh diisi lebih awal kerana "awal" tidak wujud sebagai syarat; ia tidak ada dalam jadual langkah, dan botol tidak diposisikan sehingga mesin telah meninggalkan POSISI.

Berikan pengendali mod langkah manual sebelum anda memberikan mereka apa-apa yang lain. Input pemilih membolehkan mesin maju satu langkah pada satu masa melalui urutan, jadi juruteknik penyediaan boleh menggerakkan barisan melalui POSISI, ISI dan PENUTUP secara individu sambil memerhatikan penggerak. Mesin keadaan menjadikan ini mudah — memajukan satu langkah hanya memaksa peralihan seterusnya — dan ia mengubah pengkomisian dari misteri menjadi senarai semak. Mesin yang tidak boleh dilalui secara manual adalah mesin yang diselesaikan dengan pemutar skru.

Ujian Mod Kegagalan

Berikut adalah latihan yang mendedahkan sama ada anda telah membina mesin keadaan atau sekumpulan syarat: senaraikan kecemasan. Botol terjepit di bawah kepala pengisian? Mesin harus kekal dalam ISI, menghentikan pam, dan memberi amaran — tidak merayau ke EJECT dan membuang produk di lantai. Sensor gagal dan melaporkan "botol ada" selama-lamanya? Mesin harus menghentikan langkah POSISI dan memberi amaran, tidak mengisi botol tidak kelihatan yang sama sepanjang malam. Sensor gagal ke arah yang lain, "tidak pernah ada"? Mesin menunggu dengan sabar — itu baik, itu adalah apa yang mesin harus lakukan.

Tulis pengawas ke dalam program: jika mesin duduk dalam mana-mana langkah bukan IDLE untuk lebih lama daripada masa maksimum langkah, jatuh ke keadaan FAULT, potong output, dan kilaukan amaran. Masa maksimum adalah nombor yang anda sudah tahu dari masa kitaran — anda tidak meneka, anda sedang menguatkuasakan fizik.

Tentukan apa yang berlaku selepas kesalahan sebelum kesalahan berlaku. Pilihan biasa: mesin berhenti di tempatnya, pengendali membersihkan punca, menekan reset, dan urutan kembali ke IDLE — atau ke permulaan langkah yang terganggu jika produk masih selamat. Kembali ke IDLE lebih mudah dan lebih selamat untuk mesin kecil; menyambung semula di tengah kitaran lebih cepat tetapi memerlukan setiap keadaan output diketahui dan terbukti. Untuk mesin pengisian, IDLE adalah jawapan yang jujur — botol yang separuh penuh adalah sisa dalam kedua-dua cara.

Mengapa FBD Mengatasi Tangga untuk Ini

Satu tabiat penyahpepijatan membayar untuk dirinya sendiri dengan segera: buat langkah semasa dapat dilihat di LCD depan sebagai nombor biasa. Laporan pertama pengendali menjadi "ia terperangkap pada langkah 4," bukan "ia melakukan sesuatu yang aneh," dan langkah 4 menunjukkan terus kepada syarat peralihannya. Dalam xLogicSoft, bit bendera ada di sana dalam tetingkap pemantauan, jadi sesi laptop menunjukkan gambar yang sama yang ditunjukkan oleh LCD. Memadankan kata-kata pengendali dengan keadaan program mengurangkan pencarian selama dua jam menjadi dua puluh minit setiap kali.

Logik tangga boleh menyatakan mesin keadaan, tetapi ia memerlukan seratus anak tangga dan rajah yang tidak dibaca oleh sesiapa. Dalam FBD, struktur langkah berada di hadapan anda: Pendaftaran Shift atau blok bendera menunjukkan langkah semasa, blok peralihan adalah jelas, dan urutan dibaca dari atas ke bawah. Persekitaran xLogicSoft merangkumi sekitar tujuh puluh blok fungsi, dan mesin lima langkah dengan interlock muat dengan selesa dalam satu halaman program. Apabila mesin berubah — stesen baru, sensor baru — anda menambah satu langkah dan dua peralihan daripada menyambung semula logik.

Mulakan dengan jadual langkah di atas kertas, kemudian bendera, kemudian peralihan. Program akan menjadi betul dengan membosankan, dan betul dengan membosankan adalah pujian tertinggi yang boleh diperoleh program automasi. Mesin tidak memerlukan kepintaran; mereka memerlukan kebolehpastian.