Logik Tangga XOR Tiga Suis: Reka Bentuk Pariti Ganjil yang Betul
Panduan yang diperbetulkan tentang logik tangga XOR tiga suis untuk platform SLC 500 dan Logix, meliputi pariti ganjil, pengaturan bit dalaman, had XOR pada ...
Tiga suis kekal yang mengawal satu output sering dipersembahkan sebagai latihan logik tangga, tetapi persoalan kejuruteraan sebenar adalah lebih tepat: adakah output perlu hidup apabila bilangan input yang benar adalah ganjil, atau adakah pengendalian mana-mana suis hanya perlu membalikkan keadaan output sebelumnya? Kedua-duanya ialah keperluan yang berbeza. Yang pertama ialah XOR kombinasi, atau pariti ganjil. Yang kedua memerlukan memori keadaan dan pengesanan tepi.
Untuk tiga suis pemilih kekal, spesifikasi biasa ialah pariti ganjil: lampu hidup apabila satu atau tiga suis tertutup dan mati apabila sifar atau dua suis tertutup. Menulis keperluan itu terlebih dahulu sebelum melukis sesentuh dapat mengelakkan rung yang kelihatan munasabah tetapi melaksanakan fungsi Boolean yang salah.
XOR tiga input adalah benar apabila bilangan input benar adalah ganjil; ia bukan perkara yang sama dengan arahan togol yang mengingati keadaan.
Mulakan dengan lapan keadaan input
Jujukan output yang dijangka untuk input S1, S2 dan S3 ialah 0, 1, 1, 0, 1, 0, 0, 1 apabila keadaan input perduaan bergerak daripada 000 hingga 111. Dalam bahasa mudah, satu suis tertutup menghidupkan output, dua suis tertutup mematikannya, dan ketiga-tiga suis tertutup menghidupkannya semula.
Keadaan terakhir itulah yang menyebabkan banyak penerangan tersilap. XOR tiga input ialah fungsi pariti ganjil, jadi 111 mesti menghasilkan keputusan benar. Pelaksanaan yang hanya mengenali “tepat satu input benar” bukan XOR; ia sengaja mengecualikan keadaan tiga benar. Sebaliknya, melakukan OR terhadap tiga ungkapan XOR berpasangan menghasilkan fungsi yang berbeza: ia benar apabila input tidak semuanya sama, termasuk keadaan dua benar, dan oleh itu juga gagal memenuhi jadual kebenaran yang diperlukan.
Amalan pentauliahan paling selamat ialah menganggap jadual kebenaran sebagai ujian penerimaan. Jangan menilai program berdasarkan dua atau tiga kedudukan suis yang mudah.
Rangkai peringkat XOR dua input
XOR bersifat asosiatif, yang membolehkan ungkapan (S1 XOR S2) XOR S3. Dalam program SLC 500, satu bit dalaman boleh menyimpan hasil peringkat pertama. Rung kedua kemudian menggabungkan bit itu dengan S3. Ini memberikan setiap rung tujuan yang kecil dan mudah diperiksa serta memudahkan keadaan dalam talian didiagnosis.
Untuk pelaksanaan berasaskan sesentuh, setiap peringkat XOR dua input menggunakan dua laluan selari: laluan pertama memeriksa input A sebagai benar dan input B sebagai palsu; laluan kedua memeriksa A sebagai palsu dan B sebagai benar. Kedua-dua laluan bercantum pada satu gegelung. Ulangi corak yang sama dengan bit perantaraan dan input ketiga.
Bit perantaraan mendedahkan hasil S1 XOR S2 sebelum peringkat kedua menggabungkannya dengan S3.
Contoh pelan alamat
Dalam projek latihan RSLogix 500 biasa, S1, S2 dan S3 mungkin masing-masing ialah I:1/0, I:1/1 dan I:1/2. Rung pertama menulis B3:0/0 sebagai hasil perantaraan, dan rung kedua menulis O:2/0 sebagai arahan lampu. Alamat ini hanyalah contoh; konfigurasi I/O yang dipasang mesti menentukan pemetaan sebenar.
Alamat perantaraan hendaklah mempunyai satu penulis. Menggunakan semula B3:0/0 di tempat lain, atau meletakkan arahan output lain untuk O:2/0 kemudian dalam program, boleh menulis ganti hasil yang betul dalam imbasan yang sama. Rujuk silang kedua-dua alamat sebelum menyalahkan corak XOR.
XOR aras perkataan bukan pintasan Boolean secara automatik
Set arahan SLC 500 merangkumi arahan XOR untuk OR eksklusif bit demi bit antara operan perkataan. Manual Rujukan Set Arahan SLC 500 Rockwell Automation mendokumenkan operan dan destinasi yang disokong. Arahan itu berguna untuk topeng dan perkataan status berbungkus, tetapi ia tidak menghapuskan keperluan untuk menentukan bit input yang mengambil bahagian dalam satu keputusan pariti.
Untuk tiga input diskret, logik sesentuh berangkai biasanya lebih jelas kepada kakitangan penyelenggaraan. Pelaksanaan aras perkataan boleh dipertimbangkan apabila program sudah membungkus banyak bit status dan mengurangkannya secara jelas kepada keputusan pariti, tetapi langkah pengurangan itu masih perlu kelihatan dan diuji.
Jangan kelirukan pariti dengan fungsi togol
Susunan pencahayaan tiga hala menggunakan suis kekal mengubah output setiap kali mana-mana suis fizikal berubah kedudukan. Dari segi Boolean tulen, output pada bila-bila masa boleh diwakili oleh pariti tiga kedudukan suis tersebut. Tiada keadaan tersimpan diperlukan kerana kedudukan suis itu sendiri menyimpan keadaan.
Butang tekan sesaat adalah berbeza. Jika menekan mana-mana daripada tiga butang perlu menogol lampu, PLC mesti mengesan tepi menaik dan menyongsangkan bit arahan tersimpan sekali bagi setiap tekanan yang sah. Menggunakan XOR secara langsung pada tiga input sesaat hanya menerangkan butang yang ditekan semasa imbasan itu; ia tidak mengingati keadaan lampu sebelumnya.
Butang tekan sebenar juga mungkin mengalami lantunan. Oleh itu, reka bentuk togol memerlukan penyelarasan input, denyut sekali, pemilikan bit tersimpan dan keadaan permulaan yang ditentukan. Untuk corak imbasan dan pengendalian data yang berkaitan, panduan menggunakan satu nilai pemasa SLC untuk menetapkan pemasa lain menunjukkan sebab pemindahan data dan susunan rung perlu dinyatakan dengan jelas.
Uji dan sahkan logik sebagai fungsi, bukan gambar rajah
Mula-mula uji bit perantaraan dua input itu secara berasingan. Ia hendaklah benar untuk 01 dan 10, serta palsu untuk 00 dan 11. Kemudian uji output akhir merentasi kesemua lapan keadaan tiga input. Catat keadaan yang diperhatikan dan jangan hanya bergantung pada sorotan rung berwarna hijau, kerana pemaksaan, gegelung pendua dan penyegaran paparan dalam talian boleh menyamarkan pemilikan output sebenar.
Seterusnya, sahkan tingkah laku ketika kuasa dihidupkan, peralihan mod program, penggantian input dan tindak balas terhadap litar medan yang gagal atau terputus. Logik XOR boleh mengesan ketidaksetujuan, tetapi ia bukan diagnostik keselamatan dengan sendirinya. Jika suis tersebut terlibat dalam fungsi perlindungan, reka bentuk memerlukan input berkadar keselamatan, pemantauan percanggahan, pengesanan kerosakan dan penilaian risiko yang sesuai untuk mesin itu.
Pilihan perkakasan dan migrasi untuk pengawal lama dan semasa boleh disemak melalui koleksi sistem PLC dan PAC, tetapi keluarga pemproses, voltan I/O, pengalamatan dan pemilikan program mesti disahkan sebelum contoh ini diubah suai.
Mengapa versi bit dalaman lebih mudah diselenggara
Satu rung yang dikembangkan boleh menyatakan pariti ganjil tiga input secara terus, tetapi ia memerlukan empat gabungan selari dan menjadi lebih sukar untuk diperiksa apabila lebih banyak syarat ditambah. Merangkai peringkat dua input menjadikan maksud Boolean lebih jelas, menyediakan titik semakan diagnostik dan memudahkan pemetaan antara alamat RSLogix 500 dengan tag BOOL bernama dalam Logix Designer.
Pandangan editorial: penyelesaian tangga terbaik ialah penyelesaian yang jadual kebenaran, tingkah laku memori dan tindak balas kegagalannya dapat diterangkan semasa serah tugas penyelenggaraan. Bit dalaman bukan pembaziran memori apabila ia menghalang jurutera seterusnya daripada menganggap pariti ganjil, logik tepat satu dan togol tersimpan sebagai fungsi yang sama.
Soalan lazim
Adakah output perlu hidup apabila ketiga-tiga suis tertutup?
Ya, jika keperluannya ialah XOR tiga input atau pariti ganjil. Tiga input benar ialah bilangan ganjil, jadi output adalah benar. Jika 111 mesti palsu, fungsi yang diperlukan ialah “tepat satu”, bukannya XOR.
Bolehkah arahan XOR SLC 500 menggantikan dua peringkat tangga?
Arahan itu melaksanakan XOR bit demi bit pada operan perkataan. Ia boleh menjadi sebahagian daripada penyelesaian bit berbungkus, tetapi tiga bit input individu masih perlu disusun dan dikurangkan supaya bit destinasi mewakili pariti yang diperlukan. Untuk litar diskret kecil, dua peringkat sesentuh biasanya lebih jelas.
Adakah bit perantaraan menambah kelewatan satu imbasan?
Tidak, jika rung yang menulis bit perantaraan dilaksanakan sebelum rung yang membacanya dalam rutin dan tugas yang sama. Rung kedua melihat nilai yang ditulis lebih awal dalam imbasan tersebut. Susunan program mesti kekal didokumenkan dan dikawal.
Apakah perubahan jika peranti medan ialah butang tekan sesaat?
Togol menggunakan butang sesaat memerlukan pengesanan tepi dan keadaan output tersimpan. XOR kombinasi semata-mata tidak dapat mengingati sama ada lampu sebelum ini hidup atau mati.
Adakah XOR sesuai untuk litar pengundian keselamatan?
Tidak dengan sendirinya. XOR biasa hanya menilai keadaan Boolean. Aplikasi keselamatan memerlukan seni bina keselamatan yang disahkan, liputan diagnostik, pemasaan percanggahan, perkakasan yang sesuai dan pengesahan terhadap penilaian risiko yang berkenaan.