2013 m. balandžio 3 d., trečiadienis

Projektų informaciniai duomenys ir diagnostika



Tikslai:
  1. Suprasti informacinių ir diagnostinių duomenų svarbą ir panaudojimo galimybes
  2. Paaiškinti, kaip šie duomenys generuojami ir kokia jų gavimo metodika
  3. Įgyti darbo su kintamųjų deklaravimo lentelėmis įgūdžių
  4. Išmokti dirbti su diagnostine informacija ir pasinaudojus ja, esant reikalui, redaguoti programas, didinti sistemos darbo stabilumą.
  Temos studijoms reikalingas laikas
Paskaitos
2val
Praktika
2val
Savarankiškas darbas
2 val

   Informacija apie vartotojo sukurtą programą (Reference Data) yra naudinga ne tik ją testuojant ar derinant, bet ir kaip papildoma dokumentacija. Informaciniuose duomenyse galima rasti informaciją apie:
Ø  Programos struktūrą (Program Structure). Čia  pateikiami duomenys apie visus naudojamus blokus ir kreipimosi į juos lygius;
Ø  Visų adresų sąrašą (Cross. Reference List), kuriame pateikiami visi I, Q, M, P, T, C ir DB adresai, naudojami programoje;
Ø  Įėjimų, išėjimų, atminties, taimerių ir skaitiklių adresų sąrašą (Assignment List), kuriame pateikiami I, Q, M, T ir C užimti atminties bitai - tai ypač aktualu darant pakeitimus ar ieškant klaidų vartotojo programoje;
Ø  Nepanaudotų adresų sąrašą (List of Unused Adresses), kuriame pateikiami simboliniai adresai, esantys simbolių lentelėje, bet nepanaudoti vartotojo programoje;
Ø  Trūkstamų simbolių sąrašą (List of Addresses without Symbols), kuriame pateikiami absoliutiniai adresai, naudojami vartotojo programoje, bet neįtraukti į simbolių lentelę.

Galima vienu metu matyti ekrane keletą sąrašų. Tai labai patogu, kai reikia:
Ø  Palyginti tuos pačius sąrašus, bet priklausančius skirtingoms vartotojo programoms;
Ø  Optimizuoti kelis sąrašus vienu metu, pavyzdžiui, ekrane stebint įėjimų ir išėjimų sąrašus;
Ø  Vienu metu atverti keletą skirtingų sąrašų.
Šie sąrašai gali būti atverti dviem būdais:
1. SIMATIC Manager lange įvykdžius komandą Options->Reference Data->Display, jei netiesioginiame režime yra išrinktas vartotojo programos blokų sąrašas (Blocks katalogas).
2.  Esant atvertam Blocks katalogui netiesioginiame (off-line) režime ir įvykdžius komandą Options->Reference Data->Display, atsidaro visų adresų sąrašas, nes taip yra iš anksto nustatyta. Jei informacijos apie vartotojo programą ieškoma pirma karta, tai duomenų bazė generuojama automatiškai. Tačiau jei duomenų bazė egzistavo, pasirodo pranešimas Do you want update the reference data?,  klausiantis, ar reikia atnaujinti duomenų bazę. Jei nenorima atnaujinimo, tai pasirodo kitas pranešimas, reikalaujantis kurti naują duomenų bazę, nes programoje galėjo būti padaryti pakeitimai po paskutinio Reference data lango atvėrimo.
    Norint pakeisti Reference Data aktyvuoto lango vaizdą, išrenkamas meniu arba nuspaudžiamas atitinkamas klavišas įrankių juostoje:
  View ->Cross Reference;
  View-> Assignment->Inputs, Outputs and Bit Memory;
  View-> Assignment List->Taimers and Counters;
  View->Program Structure;
  View->Unused Addresses;
  View->Addresses Without Symbols.
Norint atverti naują langą, naudojama komanda Window->New Window. Panašiai atveriami anksčiau naudoti tos pačios ar kitų vartotojo programų Reference data langai, vartojant komandą Reference Data->Open, o po to - View-»...
Komanda Edit->Search aktyviame lange galima atlikti tekstinę paiešką, todėl informacija įvedama į dialogo langą turi būti tiksli. Paieška gali būti atliekama visame dokumente arba nuo žymeklio pozicijos į viršų (į apačią). Paieškos dialogo langas aktyvuojamas nuspaudus klavišą <Search>.
Sąrašai gali būti surūšiuoti stulpeliuose tik pagal abėcėlę (laukelis Address) arba pagal skaitinę vertę (reikia spragtelėti ties stulpelio pavadinimu). Tačiau jei tas pats adresas pasikartoja, pavyzdžiui, keliuose blokuose, tai reikia pirmiausiai nurodyti, kokia tvarka juos parodyti ekrane iš pradžių: Address ar Block. Stulpeliai Statement ir Acces type yra nerūšiuojami.
 Nors sąrašai ekrane rodomi pagal išankstinį nustatymą, tačiau vartotojas   turi   galimybę nufiltruoti rodomą bei pakeisti nustatytą informaciją pagal savo pageidavimus. Filtravimas vykdomas po komandos View->FiIter atsivėrusiame dialogo lange ...Properties. Filtravimo galimybės priklauso nuo sąrašo tipo. Nustatytus kortelėse parametrus galima išsaugoti ateičiai, įjungus laukelį Save as Default. Rekomenduojama sąrašų languose palikti tik tą informaciją, kuri yra būtina, nes tai žymiai sutrumpina duomenų bazės generavimo laiką.
Derinant sudėtingas programas įprastinės derinimo on-line režime priemonės nesudaro galimybės stebėti skirtinguose blokuose esančių kintamųjų reikšmių. Tuo labiau nėra galimybės priskirtas fiksuotas reikšmes kintamiesiems (I,Q, M, C, T) bei DB elementams.
Tokios galimybės atsiranda į kuriamo projekto struktūrą įterpus kintamųjų lentelę VAT (Variable table). Komanda Insert-> S7 Block -> Variable Table atvėrus dialogo langą, kuriame yra lentelių vardai, pasirenkama VAT1 ir du kart spragtelėjus pasirinktą objektą, belieka užpildyti atvertą lentelę.
Užpildyta lentelė komanda PLC -> Conect TO... sujungiama su CPU ir atsiranda galimybė stebėti kintamųjų reikšmių kaitą veikiant programai.
Dėmesio! Reikia būti ypač atsargiems naudojant Modify ir Force funkcijas, kad dirbant su realiu valdomu objektu nesusidarytų pavojingos situacijos.
            Vartotojas taip pat gali sukurti savo duomenų tipą UDT. Tiek VAT, tiek UTD blokai yra vieninteliai, kurie nėra pakraunami į valdiklį, o lieka programatoriaus atmintyje
STEP 7 diagnostinė sistema leidžia nustatyti, lokalizuoti ir įvertinti klaidas bei sutrikimus, tuo pačiu sumažinti derinimo ir sistemos atstatymo laiką.
Programuoti diagnostinę sistemą standartiniame lygyje nereikia, nes ji automatiškai sukuriama.
Kai kurios diagnostinės funkcijos yra integruotos CP, o kitos -moduliuose (SM, FM ir kt.). Vidiniai ir išoriniai modulių darbo sutrikimai yra rodomi modulio priekiniame panelyje.
CP atpažįsta sistemines klaidas ir klaidas vartotojo programoje ir įveda atitinkamą  pranešimą į diagnostinį buferį ir sistemos būvio sąrašą. Šiuos diagnostinius pranešimus galima perskaityti programatoriaus (kompiuterio ) ekrane.
6.1 pav. STEP 7 diagnostika
            Po diagnostinio įvykio, CP suformuoja pranešimą, o SM, FM ar kiti moduliai - diagnostinį pertraukimą. Prie diagnostinių įvykių priklauso:
Ø      Vidiniai ir išoriniai sutrikimai modulyje;
Ø      Sisteminės klaidos;
Ø      CP darbo režimo pasikeitimas;
Ø      Klaidos vartotojo programoje;
Ø      Modulio būvis ir darbo režimas;
Ø      Modulių pašalinimas arba pridėjimas.
Reikia pažymėti, kad vartotojas, jei tai leidžia CP, naudodamas S7 Message Configuration dialogo langą, atveriamą komanda Edit->Special Object Properties->Message, gali sukurti tokius pranešimus:
Ø  Susietus su blokais (Block-related), kurie programuojami tam skirtuose SFB33÷37 ir SFC17 ir SFC18. Šie pranešimų blokai yra parenkami priklausomai nuo galimų kanalų skaičiaus, patvirtinimo bei papildomų verčių (Accompanying values) įvedimo galimybių.
Ø  Susietus su simboliais (Symbol-related), kurie yra formuojami simbolių lentelėje ir tik dvejetainiams signalams (I, Q arba M);
Ø  Vartotojo nustatyti diagnostiniai (User-defined diagnostic), kurie yra formuojami panaudojant SFC 52. Šiuo atveju į diagnostinį buferį galima įvesti vartotojo nustatytus pranešimus. Tik skirtingai nuo pirmųjų dviejų pranešimų tipų, kuriuos galima išvesti į bet kokį OP ar monitorių, šio tipo pranešimai išvedami tik į programavimo įtaisą.
     CP informacija leidžia greitai diagnozuoti, lokalizuoti ir ištaisyti klaidas, gedimus, be papildomo laiko programavimui. Tai atliekama tik tiesioginiame režime. Yra vartojami šie meniu:
1.       Funkcija CPU Messages ekrane parodo asinchroninius įvykius, kuriuos užprogramavo vartotojas;  .
2.       Funkcija Module Information atveriamos kelios dialogo lango kortelės, iš kurių diagnostikai svarbiausios yra šios:
Ø  Diagnostic Buffer - parodomas diagnostinio buferio turinys;
Ø  Stacks - parodomas B, I ir L stekų turinys;
3.   Funkcija: Diagnosing Hardware ekrane parodo realią modulių konfigūraciją bei jų būvius ir režimus.


CPU Messages funkcija leidžia konfigūruoti tokių tipų pranešimus:
Ø  Kai sujungimas su CP yra defektyvus;
Ø  Kai CP perėjo į STOP režimą;
Ø  Tokius, kurie užprogramuojami vartotojo naudojant tam skirtus SFC. Tokio pranešimo pavyzdys: "Siurblys įjungtas".
Vartotojo pranešimai kuriami dialogo lange, kuris atsiveria po komandos Options-> Message Configuration CPU Messages lange. Šie pranešimai nėra susieti su moduliu, o susieti su programa, todėl jie atsiranda, ją paleidus. Juos galima rašyti ne tik anglų, bet, pavyzdžiui, ir lietuvių kalba, jei tai užprogramuota dialogo lange, kuris atveriamas komanda Options->Display Language.
Norint stebėti CP pranešimus, kuriuos vartotojas užprogramavo, yra vykdomi šie veiksmai:
Ø   SIMATIC Manager lange tiesioginiame režime išrenkama vartotojo programa S7Program (...);
Ø   Įvykdoma komanda PLC-»CPU Messages;
Ø   Atsivėrusio dialogo lango Customize kairėje pusėje esančiame laukelyje pažymimas CP modulis, kurio pranešimai gali būti priimti;
Ø   Pažymimas laukelis: W (naudojant SFC52), jei yra aktyvuojami diagnostikos sistemos ir vartotojo panešimai, ir (arba) R (naudojant SFC17 arba SFC18), jei aktyvuojami iš anksto numatyti avariniai pranešimai;

Dešiniojoje lango pusėje nurodoma, kaip pranešimai turi būti parodomi ekrane (vienu metu gali būti rodoma iki 10 pranešimų):
1.  Top  -   naujas  pranešimas  rodomas  kitų  pranešimų  fone (Foreground);
2.   Background - naujas pranešimas rodomas bendrame fone;
3.   Ignore  - pranešimai nėra rodomi ir skirtingai nuo  Top ir Background būdo nėra archyvuojami.
Ø  Nustatomas archyvo dydis (nuo 40 iki 2000 pranešimų);
Ø  Nuspaudžiamas klavišas <Close>.
Archyve telpa iki 2000 pranešimų. Jei šis nustatytas skaičius viršyjamas, paskutinis pranešimas panaikinamas, o naujas pranešimas tampa pirmu.
Pranešimai iš archyvo nuskaitomi atvertame CPU Messages lange, panaudojus komandą Options->Customize ir užpildžius aukščiau minėtą langą. <Delete> klavišu galima panaikinti pasirinktą CP modulį, jei jų sąraše yra keletas.
Ši funkcija iškviečiama iš SIMATIC Manager lango komanda PLC->Diagnosing Hardware tiesioginiame režime, jei yra išrinkta S7 programa. Tą patį rezultatą galima gauti atveriant Hardware objektą arba komanda Edit->Open Object. Jei konfigūravimo lentelė yra atverta netiesioginiame režime, tai į On-line režimą pereinama komanda Station->Online. Ekrane galima   stebėti   PLV   esančią   konfigūraciją, nustatyti modulių būvį ir darbo režimą pagal atitinkamą simbolį . Vartojant Help meniu, galima rasti daugiau informacijos apie simbolių prasmę, nustatyti modulių būvį ir darbo režimą pagal atitinkamą simbolį.
Du kartus spragtelėjus ties pasirinktu moduliu arba atlikus komandą PLC->Module Information, yra pateikiama visa galima informacija apie jį.

6.3.4. Organizacinių blokų panaudojimas klaidoms rasti
STEP 7 pakete numatyta įvairių OB, reaguojančių į dviejų tipų klaidas.
Sinchroninės klaidos atsiranda, vykdant vartotojo programos konkrečią instrukciją. Programavimo klaidas, pavyzdžiui, nėra pakrautas DB, fiksuoja OB121, o vykdymo klaidas, pavyzdžiui, reikia vykdyti instrukcijas, susijusias su įėjimų moduliu, kurio iš tikrųjų nėra - OB122. Jei šie blokai nėra užprogramuoti, tai, įvykus sinchroninei klaidai, PLV pareina į STOP režimą. Kadangi OB121 ir OB122 įgyja prioritetą to OB, kurį pertraukė, todėl gali naudoti duomenis, kurie buvo kaupikliuose ir registruose pertraukimo momentu. Šiuos duomenis galima panaudoti grįžimui į normalią programą.
Asinchroninės klaidos nėra tiesiogiai susijusios su vartotojo programa. Tai klaidos arba sutrikimai atsiradę PLV, pvz., defektinis modulis. Asinchronines klaidas fiksuojantieji OB80-OB87 turi aukščiausią prioritetą ir jų negali pertraukti kiti OB. Jei įvyksta, dvi ar daugiau asinchroninių klaidų, OB yra vykdomas nuosekliai pagal klaidos atsiradimo laiką. Nors pertraukto OB duomenys yra išsaugomi, bet asinchroninių klaidų OB jų naudoti negali.
Naudojant SFC (sinchroninių klaidų OB - SFC36 ir SFC37, o asinchroninių klaidų OB - SFC39->SFC42), galima pasirinktas klaidas maskuoti, išrinkti arba uždrausti pertraukimus.
Reakcija į minėtas klaidas yra tokia :
6.10 pav. Reakcijos į klaidas algoritmas

Kiekvienas   CP   turi   tam   tikrą  asinchroninėms klaidoms nustatyti OB   skaičių, pavyzdžiui CPU 314 yra OB80-OB87 blokai. Žr. lentelę 6.1.
6.1 lentelė. OB asinchroninėms klaidoms nustatyti
OB
Klaidos tipas
Pavyzdys
OB80
Laiko klaidos
Viršytas skanavimo ciklo laikas
OB81
Maitinimo klaida
Baterija sugedusi
OB82
Diagnostinis pertraukimas
Užtrumpintas įėjimas modulyje
OB85
Prioriteto klaida
Kreipimasis į OB, kuris nepakrautas
OB87
Komunikacijų klaida
Neteisingas pranešimas tinkle
1.            Informacija apie vartotojo sukurtą programą (Reference Data) yra naudinga ne tik ją testuojant ar derinant, bet ir kaip papildoma dokumentacija prie listingų. Galima rasti tokią informaciją apie: programos struktūrą (Program Stmcture), pateikiant visus naudojamus blokus ir kreipimosi įjuos lygius; visų adresų sąrašą (Cross. Reference List), kuriame pateikiami visi I, Q, M, P, T, C ir DB adresai, naudojami programoje; įėjimų, išėjimų, atminties, taimerių ir skaitiklių adresų sąrašą (Assignment List), kuriame pateikiami I, Q, M, T ir C užimti atminties bitai - tai ypač aktualu darant pakeitimus ar ieškant klaidų vartotojo programoje; nepanaudotų adresų sąrašą (List of Unused Adresses), kuriame pateikiami simboliniai adresai, esantys simbolių lentelėje, bet nepanaudoti vartotojo programoje ir pan.
2.            Galima vienu metu matyti ekrane keletą sąrašų.
3.            Norint pakeisti Reference Data aktyvuoto lango vaizdą, išrenkamas meniu arba nuspaudžiamas atitinkamas klavišas įrankių juostoje: View ->Cross Reference; View-> Assignment->Inputs, Outputs and Bit Memory; View-> Assignment List->Taimers and Counters;  View->Program Structure; View->Unused Addresses; View->Addresses Without Symbols.
4.            Sąrašai gali būti surūšiuoti stulpeliuose tik pagal abėcėle (laukelis Address) arba pagal skaitinę vertę (reikia spragtelėti ties stulpelio pavadinimu).
5.            Nors sąrašai ekrane rodomi pagal išankstinį nustatymą, tačiau vartotojas   turi   galimybę nufiltruoti rodomą bei pakeisti nustatytą informaciją pagal savo pageidavimus.
6.            Derinant sudėtingas programas įprastinės derinimo on-line režime priemonės nesudaro galimybės stebėti skirtinguose blokuose esančių kintamųjų reikšmių. Tokios galimybės atsiranda į kuriamo projekto struktūrą įterpus kintamųjų lentelę VAT (Variable table). Komanda Insert-> S7 Block -> Variable Table atvėrus dialogo langą, kuriame yra lentelių vardai, pasirenkama VAT1 ir du kart spragtelėjus pasirinktą objektą belieka užpildyti atvertą lentelę.
7.            Užpildyta lentelė komanda PLC -> Conect to sujungiama su CPU ir atsiranda galimybė stebėti kintamųjų reikšmių kaitą veikiant progtamai.
8.            Dėmesio! Reikia būti ypač atsargiems naudojant Modify ir Force funkcijas, kad dirbant su realiu valdomu objektu nesusidarytų pavojingos situacijos.
9.            Vartotojas taip pat gali sukurti savo duomenų tipą UDT. Tiek VAT, tiek UTD blokai yra vieninteliai, kurie nėra pakraunami į valdiklį, o lieka programatoriaus atmintyje.
10.        STEP 7 diagnostinė sistema leidžia nustatyti, lokalizuoti ir įvertinti klaidas bei sutrikimus, tuo pačiu sumažinti derinimo ir sistemos atstatymo laiką.
11.        CP atpažįsta sistemines klaidas ir klaidas vartotojo programoje ir įveda atitinkamą pranešimą į diagnostinį buferį ir sistemos būvio sąrašą. Šiuos diagnostinius pranešimus galima perskaityti programatoriaus (kompiuterio) ekrane.
12.        Signaliniai ir funkciniai moduliai, kurie turi diagnostines galimybes, taip pat gali nustatyti vidinius ir išorinius modulio sutrikimus ir pareikalauti diagnostinio pertraukimo, kad atitinkamas klaidos OB į tai sureaguotų.
13.        CP informacija leidžia greitai diagnozuoti, lokalizuoti ir ištaisyti klaidas, gedimus, be papildomo laiko programavimui. Tai atliekama tik tiesioginiame režime.
14.        Archyve telpa iki 2000 pranešimų. Jei šis nustatytas skaičius viršijamas, paskutinis pranešimas panaikinamas, o naujas pranešimas tampa pirmu.
15.        Aparatinės diagnostikos funkcija iškviečiama iš SIMATIC Manager lango komanda PLC->Diagnosing Hardware tiesioginiame režime, jei yra išrinkta S7 programa. Tą patį rezultatą galima gauti atveriant Hardware objektą arba komanda Edit->Open Object.
16.        STEP 7 pakete numatyta įvairių OB, reaguojančių į sinchronine ir asinchronines klaidas.
17.        Sinchroninės klaidos atsiranda, vykdant vartotojo programos konkrečią instrukciją. Programavimo klaidas, pavyzdžiui, nėra pakrautas DB, fiksuoja OB121, o vykdymo klaidas, pavyzdžiui, reikia vykdyti instrukcijas, susijusias su įėjimų moduliu, kurio iš tikrųjų nėra - OB122.
18.        Asinchroninės klaidos nėra tiesiogiai susijusios su vartotojo programa. Tai klaidos arba sutrikimai atsiradę PLV, pvz., defektinis modulis. Asinchronines klaidas fiksuojantieji OB80-5-87 turi aukščiausią prioritetą ir jų negali pertraukti kiti OB.
  1. Kam gali būti naudinga informacija apie vartotojo sukurtą programą?
  2. Kaip tokia informacija pasinaudoti prireikus modifikuoti programą?
  3. Kada ypač naudinga dirbti su VAT lentelėmis?
  4. Ar VAT lentelės įkeliamos į valdiklį?
  5. Kam tarnauija PLC diagnostinė sistema?
    Kokie yra pagrindiniai diagnostinės informacijos langai ir kaip galima pasinaudoti juose gautais duomenimis?
  6. Kada ir dėl ko atsiranda sinchroninės ir asinchroninės klaidos ir kaip jas galima surasti?

Komentarų nėra:

Rašyti komentarą

Etiketės