Compilați un program de control pentru un controler programabil
Controlerele programabile sunt proiectate pentru controlul programat ciclic al mașinilor de tăiat metale și al diferitelor echipamente tehnologice, echipate cu senzori și actuatoare care funcționează pe principiul „pornit-oprit” cu două poziții. În articol, procesul de compilare a unui program de control este luat în considerare pe exemplul unui controler al modelului MKP-1.
În funcție de versiune, acest controler vă permite să controlați 16, 32 sau 48 de dispozitive. Numărul de circuite de intrare pentru conectarea senzorilor corespunde numărului de ieșiri. Fiecare intrare și ieșire are propria sa adresă.
Controlerul asigură controlul unităților, primește informații de la senzori despre starea echipamentului, generează întârzieri, organizează tranziții condiționate și necondiționate conform programului de control și îndeplinește și alte funcții.
Proiectarea dispozitivului de control se reduce la două etape: 1 — elaborarea unei scheme de conectare a senzorilor și actuatoarelor la controler, 2 — elaborarea unui program de control conform schemei algoritmice.
Conectarea senzorilor
Butoanele DIP și senzorii sunt conectați la conectorii de intrare ai controlerului conform Tabelului 1. Fiecare intrare are propria sa adresă.
Pentru alimentarea circuitelor de intrare este necesară o sursă de alimentare cu tensiune de ieșire Un = 20 … 30 V. Declanșarea senzorului corespunde închiderii circuitului de intrare (nivel binar 1), starea deschisă a circuitului este echivalentă cu nivelul binar 0 .
Un exemplu de conectare a contactului senzorului la intrarea controlerului este prezentat în fig. 1
Smochin. 1. Schema de conectare a contactului senzorului
Tabel 1. Circuite de intrare controler
Conectarea dispozitivelor executive
Actuatoarele (bobinele releului, circuitele de intrare ale dispozitivelor fără contact) sunt conectate la conectorii de ieșire ai controlerului în conformitate cu tabelul 2.
Tabelul 2. Circuitele de ieșire ale controlerului
Un exemplu de conectare a bobinelor releului la ieșirile controlerului este prezentat în fig. 2.
Smochin. 2. Schema de conexiuni a bobinelor releului
Un exemplu de schemă completă pentru conectarea dispozitivelor externe la controler
Controler de sistem digital
Controlerul lucrează cu numere exprimate în notație hexazecimală. Baza sistemului este numărul zecimal 16, alfabetul este format din zece cifre (0 ... 9) și șase litere latine (A, B, C, D, E, F). Literele corespund numerelor zecimale 10, 11, 12, 13, 14, 15.
Aflați mai multe despre sistemul numeric hexazecimal: Sisteme numerice
În timpul programării, toate valorile numerice sunt specificate în hexazecimal. Tabelul 3 prezintă un interval de numere în hexazecimal N16 și echivalentele lor zecimale Nl0.
Tabelul 3. Numerele în notație hexazecimală
Un set de comenzi pentru controler
Controlerul programabil este echipat cu un sistem de control conceput pentru a rezolva problemele de control software. Tabelul 4 prezintă o mică parte din comenzile controlerului.
Comanda este formată din două părți: codul operației de efectuat (CPC) și operandul, care indică adresa obiectului pe care se efectuează operația. În acest caz, atât senzorii, cât și actuatoarele și comenzile programului însuși acționează ca un astfel de obiect. Când se specifică intervale de timp, operandul este durata acelor intervale.
Tabelul 4. Set de comenzi controler
Diagrame de algoritmi
Ordinea de funcționare a fiecărui dispozitiv poate fi descrisă folosind simboluri grafice care formează o diagramă de algoritm. La construirea unei diagrame pot fi folosite patru tipuri de simboluri numite vârfuri (Fig. 3).
Orez. 3. Vârfurile schemei algoritmice
Vârful «Start» corespunde stării inițiale a dispozitivului de control înainte de impactul asupra acestuia de către comenzi, de exemplu butonul «Start».
Vârful „Sfârșit” corespunde sfârșitului procesului de control, de exemplu, după apăsarea butonului „Oprire”.
Punctul de funcționare corespunde executării unei anumite operațiuni elementare a dispozitivelor care alcătuiesc dispozitivul de comandă, de exemplu, pornirea sau oprirea unui releu. Operația efectuată este înregistrată pe diagramă în interiorul pictogramei de sus.
Un vârf condiționat definește condiția pentru trecerea de la un vârf de funcționare la altul. Condiția este stabilită de senzor, butonul de control sau alt dispozitiv. Starea senzorului sau a butonului și, respectiv, ieșirile vârfurilor sunt indicate prin numerele 1 sau 0.
De exemplu: comutator de mișcare «pornit» — 1; „Oprit” — 0.
Compilarea unei diagrame de algoritm se reduce la conectarea vârfurilor în conformitate cu ordinea necesară de funcționare a dispozitivului automat. Un fragment din diagrama algoritmului este prezentat în fig. 4. În diagramă, simbolul X1 reprezintă comutatorul, Δt este intervalul de timp.
Compilarea unui program de control
Fiecare comandă din program este scrisă sub propriul număr de serie, care este adresa sa. Programul este compilat conform schemei algoritmului și trebuie să conțină un set de comenzi care efectuează toate operațiunile specificate în schemă.
Înainte de a dezvolta programul, este necesar să se întocmească o diagramă de conectare a senzorilor și acționărilor. În funcție de locul în care sunt conectate aceste dispozitive, ele primesc propriul număr, care este adresa lor în program.
Crearea programului ar trebui să înceapă din partea de sus a diagramei „Start” și apoi să programeze secvențial operațiunile în partea de sus a „Sfârșit”.
Dacă o operație este efectuată după ce un buton, un comutator de limită sau un alt senzor este acționat, atunci comanda 02 este setată și numărul acelui senzor este scris ca operand. În acest caz, controlerul va executa comanda de pornire sau oprire a dispozitivelor executive numai după primirea unui semnal de declanșare de la acest senzor.
Dispozitivele sunt pornite sau oprite cu comenzile 05 sau 06. Numărul dispozitivului pornit este scris în operand
Intervalele de timp sunt setate folosind comanda 07. Coeficientul este scris în operand, care atunci când este înmulțit cu 0,1 sec. oferă timpul de întârziere necesar.
De exemplu, la setarea t = 2,6 sec.operandul conține numărul 1A (26 în notație zecimală). Întârzierea maximă stabilită de o singură comandă 07 este de 25,5 secunde (comandă 07 FF). Dacă este necesar să se obțină o întârziere mai mare de 25,5 secunde, atunci mai multe comenzi 07 trebuie incluse succesiv în programul de control, furnizând împreună intervalul de timp necesar.
Pentru a implementa salturi condiționate în program (în diagrama algoritmului, un vârf condiționat cu operații atât «1» și «0»), trebuie mai întâi să setați comanda de verificare la acest vârf 04.
Dacă senzorul corespunzător acestui vârf se află în starea «1», atunci va fi generat bitul de condiție BU = 1. Dacă senzorul este în starea «0», atunci va fi generat BU = 0.
Apoi este emisă comanda OA, care, dacă BU = 1 a fost setat în comanda anterioară, va comuta controlerul pentru a executa comanda specificată în operandul acelei comenzi.
Cu BU = 0, controlerul va executa comanda după comanda OA.
La compilarea unui program, se recomandă să scrieți mai întâi o secvență de comenzi pentru ca controlerul să le execute când BU = 0, fără a specifica operandul în comanda OA După ce toate comenzile executate de controler conform condiției «0» sunt scrisă, comanda , îndeplinită conform condiției «1», este introdusă în program. Adresa acestei comenzi este specificată în operandul comenzii OA.
NOTĂ: Pentru bitul de condiție, starea inițială este BU = 1, care este setată după ce controlerul este pornit și după ce sunt executate comenzile de salt condiționat.
Un exemplu de scriere a unui program pentru un fragment din diagrama algoritmului din Fig. 4 este prezentat în tabelul 5.
Orez. 4. Fragment din diagrama algoritmului
Tabelul 5. Fragment din programul de management