Mag-compile ng isang control program para sa isang programmable controller
Ang mga programmable controller ay idinisenyo para sa cyclically programmed control ng mga metal-cutting machine at iba't ibang teknolohikal na kagamitan, na nilagyan ng mga sensor at actuator na gumagana sa dalawang posisyon na "on-off" na prinsipyo. Sa artikulo, ang proseso ng pag-compile ng isang control program ay isinasaalang-alang sa halimbawa ng isang controller ng MKP-1 na modelo.
Depende sa bersyon, pinapayagan ka ng controller na ito na kontrolin ang 16, 32 o 48 na device. Ang bilang ng mga input circuit para sa pagkonekta ng mga sensor ay tumutugma sa bilang ng mga output. Ang bawat input at output ay may sariling address.
Ang controller ay nagbibigay ng kontrol sa mga drive, pagtanggap ng impormasyon mula sa mga sensor tungkol sa estado ng kagamitan, pagbuo ng mga pagkaantala, pag-aayos ng kondisyon at walang kondisyon na mga transition ayon sa control program, at gumaganap din ng iba pang mga function.
Ang disenyo ng control device ay nabawasan sa dalawang yugto: 1 — pagguhit ng isang diagram para sa pagkonekta ng mga sensor at actuator sa controller, 2 — pagguhit ng isang control program ayon sa algorithmic scheme.
Pagkonekta ng mga sensor
Ang mga pindutan at sensor ng DIP ay konektado sa mga konektor ng input ng controller ayon sa Talahanayan 1. Ang bawat input ay may sariling address.
Para mapagana ang mga input circuit, kinakailangan ang power supply na may output voltage Un = 20 … 30 V. Ang pag-trigger sa sensor ay tumutugma sa pagsasara ng input circuit (binary level 1), ang open state ng circuit ay katumbas ng binary level 0 .
Ang isang halimbawa ng pagkonekta ng contact ng sensor sa input ng controller ay ipinapakita sa fig. 1
Fig. 1. Diagram ng koneksyon ng contact ng sensor
Talahanayan 1. Mga circuit ng input ng controller
Koneksyon ng mga executive device
Ang mga actuator (relay coils, input circuits ng mga non-contact device) ay konektado sa output connectors ng controller alinsunod sa talahanayan 2.
Talahanayan 2. Output circuits ng controller
Ang isang halimbawa ng pagkonekta sa mga relay coils sa mga output ng controller ay ipinapakita sa fig. 2.
Fig. 2. Wiring diagram ng relay coils
Isang halimbawa ng kumpletong scheme para sa pagkonekta ng mga panlabas na device sa controller
Digital System Controller
Gumagana ang controller sa mga numerong ipinahayag sa hexadecimal notation. Ang batayan ng system ay ang decimal na numero 16, ang alpabeto ay binubuo ng sampung digit (0 ... 9) at anim na Latin na titik (A, B, C, D, E, F). Ang mga titik ay tumutugma sa mga decimal na numero 10, 11, 12, 13, 14, 15.
Matuto nang higit pa tungkol sa hexadecimal number system: Mga sistema ng numero
Sa panahon ng programming, ang lahat ng mga numerong halaga ay tinukoy sa hexadecimal. Ipinapakita ng talahanayan 3 ang isang hanay ng mga numero sa hexadecimal N16 at ang kanilang mga katumbas na decimal na Nl0.
Talahanayan 3. Mga numero sa hexadecimal notation
Isang hanay ng mga utos ng controller
Ang programmable controller ay nilagyan ng control system na idinisenyo upang malutas ang mga problema sa pagkontrol ng software. Ipinapakita sa talahanayan 4 ang isang maliit na bahagi ng mga command ng controller.
Ang utos ay binubuo ng dalawang bahagi: ang code ng operasyon na isasagawa (CPC) at ang operand, na nagpapahiwatig ng address ng bagay kung saan ginaganap ang operasyon. Sa kasong ito, ang parehong mga sensor at ang mga actuator at mga utos ng programa mismo ay kumikilos bilang isang bagay. Kapag tinutukoy ang mga agwat ng oras, ang operand ay ang tagal ng mga agwat na iyon.
Talahanayan 4. Set ng command ng controller
Mga diagram ng mga algorithm
Ang pagkakasunud-sunod ng pagpapatakbo ng bawat aparato ay maaaring ilarawan gamit ang mga graphic na simbolo na bumubuo ng isang algorithm diagram. Apat na uri ng mga simbolo na tinatawag na vertices ang maaaring gamitin kapag gumagawa ng diagram (Larawan 3).
kanin. 3. Vertices ng algorithmic scheme
Ang "Start" vertex ay tumutugma sa unang estado ng control device bago ang epekto dito ng mga control, halimbawa ang "Start" na buton.
Ang "End" vertex ay tumutugma sa dulo ng proseso ng kontrol, halimbawa, pagkatapos ng pagpindot sa "Stop" button.
Ang operating point ay tumutugma sa pagpapatupad ng isang tiyak na elementarya na operasyon ng mga device na bumubuo sa control device, halimbawa, pag-on o off ng isang relay. Ang operasyon na ginawa ay naitala sa chart sa loob ng tuktok na icon.
Tinutukoy ng conditional vertex ang kundisyon para sa paglipat mula sa isang operating vertex patungo sa isa pa. Ang kundisyon ay itinakda ng sensor, pindutan ng kontrol o iba pang device. Ang estado ng sensor o button at ang mga output ng vertices, ayon sa pagkakabanggit, ay ipinahiwatig ng mga numero 1 o 0.
Halimbawa: motion switch «on» — 1; "Naka-off" - 0.
Ang pag-compile ng isang algorithm diagram ay binabawasan sa pagkonekta ng mga vertex alinsunod sa kinakailangang pagkakasunud-sunod ng pagpapatakbo ng automated na device. Ang isang fragment ng diagram ng algorithm ay ipinapakita sa fig. 4. Sa diagram, ang simbolo na X1 ay kumakatawan sa switch, Δt ay ang agwat ng oras.
Compilation ng isang control program
Ang bawat utos sa programa ay nakasulat sa ilalim ng sarili nitong serial number, na siyang address nito. Ang programa ay pinagsama-sama ayon sa scheme ng algorithm at dapat maglaman ng isang hanay ng mga command na nagsasagawa ng lahat ng mga operasyon na tinukoy sa scheme.
Bago ang pagbuo ng programa, kinakailangan upang gumuhit ng isang diagram ng koneksyon ng mga sensor at drive. Depende sa kung saan nakakonekta ang mga device na ito, nakakakuha sila ng sarili nilang numero, na kanilang address sa programa.
Ang paglikha ng programa ay dapat magsimula mula sa tuktok ng «Start» diagram at pagkatapos ay sunud-sunod na i-program ang mga operasyon sa tuktok na «End».
Kung ang isang operasyon ay isinagawa pagkatapos ng isang button, limit switch, o iba pang sensor ay pinaandar, pagkatapos ay itatakda ang command 02 at ang bilang ng sensor na iyon ay isusulat bilang operand. Sa kasong ito, isasagawa ng controller ang command na i-on o i-off ang mga executive device pagkatapos lamang makatanggap ng trigger signal mula sa sensor na ito.
Naka-on o naka-off ang mga device gamit ang mga command na 05 o 06, ayon sa pagkakabanggit. Ang numero ng naka-on na device ay nakasulat sa operand
Ang mga agwat ng oras ay itinakda gamit ang command 07. Ang koepisyent ay nakasulat sa operand, na kapag pinarami ng 0.1 sec. nagbibigay ng kinakailangang oras ng pagkaantala.
Halimbawa, kapag nagtatakda ng t = 2.6 sec.ang operand ay naglalaman ng numero 1A (26 sa decimal notation). Ang maximum na oras ng pagkaantala na itinakda ng isang 07 command ay 25.5 sec (07 FF command). Kung kinakailangan upang makakuha ng pagkaantala na higit sa 25.5 segundo, kung gayon ang ilang 07 na utos ay dapat na magkakasunod na isama sa control program, na magkakasamang nagbibigay ng kinakailangang agwat ng oras.
Upang ipatupad ang mga conditional jump sa programa (sa algorithm diagram, isang conditional vertex na may parehong «1» at «0» na operasyon), kailangan mo munang itakda ang check command sa vertex 04 na ito.
Kung ang sensor na tumutugma sa vertex na ito ay nasa estado na «1», ang kundisyon na bit BU = 1 ay bubuo. Kung ang sensor ay nasa estado na «0», ang BU = 0 ay bubuo.
Ang utos ng OA ay ibibigay, na, kung ang BU = 1 ay itinakda sa nakaraang utos, ililipat ang controller upang isagawa ang utos na tinukoy sa operand ng utos na iyon.
Sa BU = 0, isasagawa ng controller ang command pagkatapos ng OA command.
Kapag nag-compile ng isang programa, inirerekumenda na magsulat muna ng isang pagkakasunod-sunod ng mga utos para sa controller na isakatuparan kapag ang BU = 0, nang hindi tinukoy ang operand sa OA command. nakasulat, ang utos , natupad ayon sa kondisyon «1», ay ipinasok sa programa. Ang address ng command na ito ay tinukoy sa operand ng OA command.
TANDAAN: Para sa bit ng kundisyon, ang paunang estado ay BU = 1, na itinakda pagkatapos i-on ang controller at pagkatapos isagawa ang mga conditional jump command.
Isang halimbawa ng pagsulat ng isang programa para sa isang fragment ng algorithm diagram sa Fig. 4 ay ipinapakita sa Talahanayan 5.
kanin. 4. Fragment ng diagram ng algorithm
Talahanayan 5. Fragment ng programa ng pamamahala
