|
Prezentarea limbajului de programare PL7 - NANO
1 Generalitati
Limbajul de programare PL7-Micro se desfasoara in jurul a patru parti principale de aplicatie: variabile, configurari, programe si documentatie.
Aceste servicii sunt realizate de un editor direct incepand cu ecranul de baza pana la icoane si bara de stare. Fereastra contine editoare care pot fi vizualizate simultan in acelasi ecran ( ex: posibilitatea de programare si definirea simultana a simbolurilor in editorul de variabile.
Editorul de variabile permite:
Simbolizarea diferitelor obiecte ale aplicatiei: biti, cuvinte, blocuri functionale, I/Q;
Simbolizarea parametrilor blocurilor functionale: temporizatoare, comparatoare, registrii;
Posibilitatea de a alege baza de afisare a valorilor constantelor: zecimal, binar, hexazecimal.
Accesarea variabilelor este facilitata de :
Calsificare dupa familie si tipul acestora.
Posibilitatea de afisare a tuturor obiectelor asociate unei aceleiasi variabile (ex: toti bitii unui cuvant, toate obiectele asociate unui bloc functional predefinit ).
Editorul de configurare permite un mod intuitiv si grafic de declarare si configurare a diferitelor elemente care constituie configurarea automatelor.
Exista doua tipuri de configurare:
Configurare hard;
Configurare soft.
Configurarea hard:
Procesoare;
Module de I/Q;
Memorie.
Configurare soft:
Editorul de configurare asigura de asemenea parametrii logici ai aplicatiei, alegerea numarului de constante, bitii si cuvintele interne, blocurile functionale dupa tip (temporizatoare, comparatoare), si obiectele Grafcet.
Editorul de programe: limbajul de contacte.
Ofera numeroase utilitati care asigura constructia usoara a unei retele de contacte:
O paleta de elemente grafice permit accesul direct cu ajutorul mouse-ului sau a tastaturii la diferite simboluri grafice a limbajului de contacte, bobine, blocuri functionale, blocuri functionale predefinite.
Desenarea unei retele poate fi realizata fara a avea informatii asupra elementului.
Obiectele limbajului pot fi vazute sub forma de simboluri, repere sau amandoua odata.
Construirea unei retele de contacte se face simplu prin selectionarea simbolurilor din paleta grafica si prin plasarea in locul dorit in grila prezentata pe ecran.
Editorul de programe : limbajul lista de instructiuni permite introducerea de la tastatura a instructiunilor si operatii ale limbajului. Punerea in forma (alinierea instructiunilor si operanzilor) este realizata automat de editor.
Editorulofera posibilitatea de a avea acces la:
Instructiunea pentru blocuri functionale (%Tmi; %Ci)
La functii prin intermediul bibliotecii de functii.
Editorul de programe: limbajul Grafcet.
Ofera numeroase posibilitati de realizare grafica:
O paleta de obiecte grafice accesibile direct de la tastatura sau cu ajutorul mouse-ului.
O numerotare automata a etapelor.
Un afisaj pentru pagina grafica cu linii pentru etape si tranzitii.
Un loc pentru comentarii.
Construirea unui grafic se face simplu selectand obiectele dorite din paleta grafica dupa care le asezam in pagina Grafcet. Vizualizarea imediata a obiectelor grafice programate este asigurata prin evolutia lor grafica (etapa fina).
Editorul Grafcet se comporta ca o zona de editare care se deplaseaza pe un modul complet de maxim 8 pagini Grafcet.
Editorul documentatie permite imprimarea totala sau pe jumatate a dosarului aplicatie si utilizeaza tehnologia 'Treu Type'. Formatul suportat este A4 sau orientare 'portrait'.
Editorul permite definirea:
Unei pagini de garda completata cu numele proiectantului si a proiectului.
Unei pagini cu informatii generale.
Un cartus.
Editorul documentatie genereaza in mod automat: un rezumat, un dosar aplicatie ce contine configurarea hard/soft, lista de variabile.
Elemente grafice de baza:
Elemente de test;
Elemente de legatura;
Elemente de actionare;
Elemente de salt;
Elemente de apelare;
Blocuri functionale;
Blocuri de comparare;
Bloc operational.
Elemente de test
Contact de inchidere
Contact realizat cand obiectul bit care il conduce este in starea 1
Contact de deschidere
Contact realizat cand obiectul bit care il conduce este in starea 0
Contact detectare schimbare a starii
N
P
Front crescator: detecteaza trecerea din 0 in 1 a bitului obiect.
Front descrescator: detecteaza trecerea din 1 in 0a bitului obiect.
Elemente de legatura
Conexiuni orizontale
Permite legarea in serie a elementelor grafice de test si de actionare intre doua bare de potential.
Conexiuni verticale
*
..
F7: permite legarea in paralel a elementelor grafice de test si de actionare.
F8: permite realizarea unei conexiuni verticale.
F9: permite legarea elementelor de test direct de elementele de actionare
Elemente de actionare.
Bobina directa
Bitul obiect asociat ia valoarea rezultatului logic al zonei de test.
Bobina inversa
Bitul obiect asociat ia valoarea inversa a rezultatului logic al zonei de test.
Bobina de aclansare
S
Bitul obiect asociat trece in starea 1 si pastreaza aceasta stare in timp ce rezultatul zonei de test este 1. Este trecut in 0 de catre bobina de declansare
Bobina de declansare
R
Bitul obiect asociat trece in starea0 si pastreaza aceasta stare in timp ce rezultatul zonei de test este 1. Este trecut in 1 de catre bobina de aclansare.
Bobina de receptivitate Grafcet
Simbolizeaza trecerea de la o etapa la alta si apare in mod automat o data cu sesizarea unei receptivitati.
Elemente de salt.
Salt catre o alta retea
%Li
- - - > >
Permite bransamentul la eticheta unei retele, amonte sau aval. Semnul '?' precede eticheta %Li atunci cand acela nu a fost in prealabil definit.
Elemente de apelare.
Bobina de apelare
(Call)
C
Permite bransamentul la inceputul programului. Executia unui apel cu ajutorul programului provoaca :
Oprirea scrutarii retelei intrerupte;
Executia cu ajutorul programului;
Reluarea cercetarii retelei intrerupte
Repetarea subprogramului
< return>
<Return>
Permite repetarea modulului asteptat.
Oprirea programului
Halt
< HALT>
Acest element provoaca oprirea executiei programului.
Blocuri functionale
Temporizator
Comparator
Registrii
Programator
Fiecare din blocurile functionale predefinite utilizeaza intrari si iesiri permitand legarea lor la alte elemente.
Blocuri de comparare.
Bloc comparator vertical
Permite comparatia a doi operanzi si umarind rezultatul , iesirea corespunzatoare trece la 1.
Bloc comparator orizontal
Permite comparatia a 2 operanzi. Iesirea trece in 1 pana cand este verificat rezultatul.
Bloc operational
Realizeaza operatii aritmetice, logice facand apel la limbajul literar structurat.
Construirea unui program in limbaj de contacte
Un program construit in limbaj de contacte (LD) se compune dintr-o suita de retele (numite Rung) executate secvential de automat. Desenata intre doua bare de potential , o retea este un ansamblu grafic reprezentat astfel:
I/Q ale automatului (butoane, detectoare);
Functii ale automatului (temporizari, comparari);
Operatii aritmetice-logice si operatii de transfer;
Variabile interne ale automatului.
Aceste elemente grafice sunt realizate intre conexiuni orizontale sau verticale. Toate elementele grafice sunt continute in paleta cu elemente grafice.
Fiecare retea in sine constituie: o eticheta (facultativ), un comentariu. 7 linii si 11 coloane (maxim). Construirea unei retele de contacte se efectueaza plecand de la paleta de elemente grafice.
Construirea unei retele de contacte.
O eticheta permite gasirea unei retele de contacte in modulul de program. Sintaxa este urmatoarea " %Li" cu 0< I > 999. Eticheta se afla la inceputul fiecarei retele de contacte. O eticheta nu se poate afla de mai multe ori in acelasi program. Eticheta trebuie sa permita un bransament dupa un salt de program.
Poate fi introdusa astfel:
De la mouse:dublu clic pe zona unde vrem sa scriem si tastam Enter pentru validare;
De la tastatura: se pozitioneaza cursorul pe zona etichetata apasand tasta Space , numim eticheta ( de la 0 la 999) si apasam tasta Enter pentru validare.
Comentariul poate fi introdus la inceputul retelei si poate ocupa maxim trei linii (222 de caractere) incadrate intre ghilimele. Elementele grafice pot fi introduse si ele de la tastatura sau cu ajutorul mouse-ului.
Modificarea unei retele de contacte.
1. modificarea unei variabile.
Se pozitioneaza cursorul pe variabila pe care vrem sa o modificam cu ajutorul tastei Space sau dublu clic cu mouse-ul. Validarea se face prin apasarea tastei Enter.
2. modificarea unei retele.
De la tastatura se pozitioneaza pe celula ce contine elementul de modificat selectionand elementul grafic in paleta grafica cu tastele F2 si F12 sau de la SHIFT+F1 la F8.
Cu mouse-ul selectionam elementul grafic din paleta grafica si facem clic pe elementul desenat. Se pozitioneaza cursorul pe elementul ce vrem sa-l modificam.
Functionarea aplicatiei
Ca prezentare generala sistemul de suprareglare a locuintei ales pentru realizarea proiectului, cuprinde urmatoarele componente:
automatul programabil de tip TELEMECANIQUE PLC-TSX NANO cu 9 intrari si 7 iesiri
sursa de tensiune generala care furnizeaza tensiunea pentru alimentarea senzorilor si detectoarelor
detectorul de gaz
detectorul de fum
detectorul de miscare
detectorul de umiditate
emitatorul pentru transmisia radio
receptorul radio
senzori pentru prezenta masina
sistemul independent de aprindere a iluminatului
Toate aceste elemente sunt cuplate intre ele printr-o schema electrica conceputa sa realizeze alimentarea blocurilor componente ale ansamblului cat si legaturile dintre ele.
Pe langa partea de hard exista si partea de soft reprezentata de soft-ul de programare de tip STEP.
Daca detectorul de fum, detectorul de gaz, detectorul de miscare si sistemul radio au fost implementate in sistem ca blocuri pre definite realizate de firme specializate, detectorul de umiditate si detectorul de iluminare au fost realizate practic de catre autorii proiectului si integrate in sistem prin intermediul unor contacte de retele normal-deschise (NO) folosite la intrarile de la automatul programabil.
Senzorii pentru detectarea masinilor, folositi pentru intrarea si iesirea din curte sunt de tip magnetic (cu releu read).
Ca mod de functionare a intregului sistem am pornit de la doua situatii. In casa se gaseste unul din proprietari si in casa nu se gaseste nimeni.
In cazul ca in casa se gaseste unul din proprietari, sistemul general de supraveghere si alarmare prin intermediul PLC-ului nu este activat, insa sistemul de supraveghere scurgeri de gaz, sistemul de supraveghere incendiu, sistemul de detectare a scurgerilor de apa lucreaza in mod independent si la aparitia unui eveniment devin active si semnalizeaza printr-un semnal acustic si luminos astfel incat persoana (persoanele) din incinta sa poata vedea ce s-a intamplat si sa intervina pentru eliminarea cauzei care a produs evenimentul si oprirea desfasurarii acesteia.
A doua situatie atunci cand masina iese din curte si se considera ca nu mai ramane nimeni acasa. In acest caz sistemul general de supraveghere se ac
tioneaza automat si activeaza alarma generala la oprirea oricarei stari de anormalitate:
persoana straina in perimetru
scurgeri de gaze explozive (aragaz)
aparitia unui incendiu
cresterea umiditati in zonele controlate (inundatie)
La aparitia oricarui eveniment din cele patru prezentate mai sus, sistemul pe langa alarmele independente ale subsistemelor de supraveghere declanseaza alarma generala , acustica si luminoasa si pe un pupitru de monitorizare aprinde semnale luminoase corespunzatoare fiecarui eveniment aparut. In acelasi timp este activat sistemul de transmisie radio in cazul nostru, care poate fi inlocuit cu alarmare prin retele GSM sau mesaj WEB (internet). Semnalul de alarmare acustic este conceput sa poata fi oprit automat dupa un timp insa ramane activa alarma wireless care nu poate fi dezactivata decat daca posesorul receptorului se intoarce cu masina in curte sau alta persoana de incredere este trimisa acasa, vede despre ce alarma este vorba pe panoul de monitorizare si prin butonul de reset poate dezactiva sistemul general. Alarma separat nu dispare decat in cazul disparitiei cauzei care a provocat-o.
Tot in acest caz cand automobilul paraseste casa si totusi cineva ramane acasa sistemul de alarma general trebuie dezactivat din butonul de reset, in aceasta situatie sistemele independente sunt active insa nu se mai transmite semnal wireless catre receptor (proprietar).
Dupa intoarcerea automobilului (proprietarului) sistemul general de supraveghere in cazul ca nu s-a produs nici un eveniment nedorit este dezactivat automat, insa raman active sistemele independente de supraveghere.
In ultima situatie cand se presupune ca proprietarii sunt acasa (de obicei noaptea), sistemul se activeaza manual de pe tabloul de supraveghere (comanda) si devine activ insa nu mai transmite semnal wireless catre receptorul portabil de alarma in cazul producerii unui eveniment vor fi active doar soneria generala si semnalizarile optice de pe tablou.
Soneria de la alarma generala se monteaza de obicei pe exterior si insotita de un semnal luminos insa la fel de bine in paralel cu ea poate fi si una de interior.
Pana in acest moment prezentarea sistemului general de supraveghere a fost in stransa legatura cu automobilul propriu care este personalizat pentru a putea fi recunoscut de sistem. In cazul urmator s-au folosit senzori magnetici pentru simplificare, insa automobilul poate fi dotat cu un emitator radio ce emite un semnal care va fi receptionat de niste bobine montate la nivelul solului, in fata sau in spatele barierei in cazul nostru (poarta de acces) si la locul de parcare (garaj).
In situatia in care un vizitator vrea sa vina in vizita, avem doua posibilitati: daca este cineva acasa poate sa-i deschida din interior bariera (poarta) prin actionarea manuala a butonului de reset (dezactivare sistem), sau daca nu este nimeni acasa nu are acces in locuinta.
Pentru proprietarul care nu are masina putem avea mai multe variante de recunoastere a acestuia (cu un emitator radio, cu o consola cu cod de acces, cu o camera pentru recunoasterea imaginii sau iris sau cu un dispozitiv de recunoastere a amprentei, etc).
Nu am optat pentru posibiliatea dezactivarii sistemului prin telecomanda pentru a nu se produce dezactivari accidentale, asa cum s-a prezentat si mai inainte s-a considerat obligatoriu aflarea cauzei care a produs eveniment si luarea masurilor pentru indepartarea acesteia.
BIBLIOGRAFIE
Cornel Cobianu, Gheorghe Cimpoaca, Alexandru Ivan,
Senzori si traductoare, Editura Printech, 2001
Paul Manolescu, Carmen Ionescu-Golovanov,
Masurari electrice si electronice, EDP, Bucuresti, 1979