Binäärioperaatiot SITRAIN
Transcription
Binäärioperaatiot SITRAIN
SITRAIN Binäärioperaatiot © Siemens Osakeyhtiö 2011. Kaikki oikeudet pidätetään. Sisältö Sivu Anturit ja symbolit..................................................................................................................................... 3 Binäärioperaatiot: AND, OR.................................................................................................................... 4 Binäärioperaatio: Exclusive - OR (XOR)................................................................................................. 5 Teoriaharjoitus 1: Anturit ja symbolit ...................................................................................................... 6 Ohjaus, Set, Reset, NOT ....................................................................................................................... 7 SR, RS.................................................................................................................................................... 8 Harjoitus1-2: "FC_Tila" (FC15) .............................................................................................................. 10 Harjoitus 3: Kuljetin AUTO käytössä (FC 16 laajennus) ......................................................................... 12 Signaalin reunan tunnistus ................................................................................................................... 14 RLO – Reunan tunnistus ...................................................................................................................... 15 Harjoitus 4: Kappaleen kuljetus valokennon ohi "FC_Kuljetin" (FC16) .................................................. 16 Harjoitus 5: Merkkilamppujen ohjaus "FC_Merkkilamppu" (FC14)......................................................... 18 SET_BF, RESET_BF.............................................................................................................................. 20 JMP, JMPN, RET .............. .................................................................................................................... 21 SITRAIN Training for Automation and Industrial Solutions Sivu 1 Oppilaitosmateriaali Binäärioperaatiot Oppimistavoitteet Kurssille osallistujan pitäisi ... ... ymmärtää ero ‘todellisten‘ kytkentöjen NC kytkentä (normaalisti kiinni) ja NO kytkentä (normaalisti auki), ja ohjelmoinnissa käytettävät symbolit ... pystyä selittämään termit lukitustulos (Result of Logic Operation, RLO), ja tilatieto (Status, STAT). ... pystyä ohjelmoimaan perus binäärioperaatioilla ... pystyä tekemään yksinkertaisia ohjelmatestejä yksiköiden monitorointi toiminnalla (Monitoring a block) SITRAIN TIA-S7-1200 / Binäärioperaatiot SITRAIN Training for Automation and Industrial Solutions Sivu 2 Sivu 2 Siemens Osakeyhtiö © 2011 Oppilaitosmateriaali Binäärioperaatiot Anturit ja symbolit Tulkinta PLC -ohjelmassa Prosessi Anturi on ... NO kytkentä Anturi on ... Jännite tulossa? Signaalin tila tulossa aktiivinen 1 kyllä Tarkistetaan signaalin tilaa “1” Tarkistetaan signaalin tilaa “0” Symboli / käsky Symboli / käsky LAD: Tulos “kyllä” 1 “NO kytkentä” ei aktiivinen ei 0 FBD: NC kytkentä aktiivinen ei aktiivinen 0 kyllä 1 “ei” 0 A I x.y SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 3 FBD: “kyllä” 1 & “ei” 0 STL: “ei” 0 “NC kytkentä” & ei LAD: Tulos “kyllä” 1 “kyllä” 1 STL: AN I x.y “ei” 0 Siemens Osakeyhtiö © 2011 Prosessi Prosessin turvavaatimukset vaikuttavat siihen käytetäänkö anturista avautuvaa vai sulkeutuvaa kosketin tyyppiä. Normaalisti kiinni olevia koskettimia käytetään tyypillisesti rajakytkimissä ja turvakytkimissä, sillä silloin vältetään vaaralliset tilatiedot esim johdinkatkos tilanteessa. Samaa kosketin tyyppiä käytetään myös laitteiden pysäytyksissä. Symbolit LAD-ohjelmointikielessä symbolia "NO contact" käytetään tarkistamaan signaalitilaa "1" ja symbolia "NC contact" tarkistamaan signaalitilaa "0". Ko.symbolit eivät erottele, mikä on prosessissa olevan koskettimen tyyppi eli tuleeko prosessisignaali "1" aktiiviselta NO koskettimelta vai deaktiiviselta NC koskettimelta. Esimerkki Jos koneen NC kosketinta ei ole aktivoitu, signaalintila tulojen prosessikuvassa on "1“ ja jos ohjelmassa halutaan tutkia tätä signaalitilaa ”1” käytetään LADohjelmoinnissa NO –kosketinta. Yleisesti: NC-symbolin tilakyselyn tulos on "1“, kun tarkistettavan osoitteen tila on "0". SITRAIN Training for Automation and Industrial Solutions Sivu 3 Oppilaitosmateriaali Binäärioperaatiot Binäärioperaatiot: AND, OR AND FBD LAD Operaation vaihtaminen Operaation vaihtaminen FBD OR LAD SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 4 Siemens Osakeyhtiö © 2011 JA ja TAI loogiset operaatiot JA ja TAI loogisilla operaatioilla pystytään tutkia kaikki binääriset tilatiedot, myös lähdöt. Loogisten operaatioiden lukitustulokset (RLO) voidaan kytkeä edelleen uusiin loogisiin operaatioihin. Loogisten operaatioiden kaikki tulot voivat tutkia joko tilaa '0' tai '1', huolimatta siitä onko prosessissa olevan anturin kosketintyyppi avautuva vai sulkeutuva. JA (AND) operaatio JA operaation lukitustulos (result of logic operation,RLO) = '1', kun kaikki tulosignaaleilla on tila '1'. TAI (OR) operaatio TAI operaation lukitustulos (result of logic operation,RLO) = '1', kun vähintään yksi tulo on tilassa '1'. SITRAIN Training for Automation and Industrial Solutions Sivu 4 Oppilaitosmateriaali Binäärioperaatiot Binäärioperaatiot: Exclusive - OR (XOR) FBD LAD SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 5 Siemens Osakeyhtiö © 2011 XOR operaatio XOR –operaatiolla voidaan tarkistaa kaikkia binäärisisä tiloja, jopa lähtöjä. Loogisten operaatioiden lukitustulokset (RLO) voidaan kytkeä edelleen uusiin loogisiin operaatioihin Loogisten operaatioiden kaikki tulot voivat tutkia joko tilaa '0' tai '1', huolimatta siitä onko prosessissa olevan anturin kosketintyyppi avautuva vai sulkeutuva. XOR -operaatio 2 tulolla saa lukitustuloksen (result of logic operation, RLO) = '1', kun yksi ja vain yksi kahdesta tulosta on tilassa '1'. XOR –operaatio useammalla kuin kahdella tulolla saa lukitustuloksen, RLO ... = '1', kun pariton lukumäärä tarkistettavista tiloista on tilassa '1' = '0', kun parillinen lukumäärä tarkistettavista tiloista on tilassa '1'. XOR ohjelmointikielissä FBD ja LAD LAD:ssa ei ole olemassa erillistä XOR -operaatiota. Se täytyy rakentaa erillisistä käskyistä ylläolevan kuvan mukaisesti. SITRAIN Training for Automation and Industrial Solutions Sivu 5 Oppilaitosmateriaali Binäärioperaatiot Teoriaharjoitus 1: Anturit ja symbolit Tehtävä: Kaikissa kolmessa esimerkissä, valon pitäisi palaa, kun S1 on aktiivinen ja S2 on ei aktiivinen! Laite S1 S2 EI1.1 1.1 E 1.0 I1.0 S1 S1 S2 E 1.1 I1.1 E 1.0 I1.0 S2 EI1.0 1.0 EI1.1 1.1 Ohjelmoitava logiikka Ohjelmoitava logiikka Ohjelmoitava logiikka Q 4.0 Q 4.0 Q 4.0 Lamppu Lamppu Ohjelma I 1.0 I 1.1 I 1.0 Q 4.0 I 1.1 Lamppu Q 4.0 I 1.0 I 1.1 Q 4.0 LAD I 1.0 & FBD I 1.1 SITRAIN TIA-S7-1200 / Binäärioperaatiot I 1.0 Q 4.0 I 1.1 Sivu 6 & I 1.0 Q 4.0 I 1.1 & Q 4.0 Siemens Osakeyhtiö © 2011 Tehtävä Täydennä ylläolevat ohjelmat, huomioiden että:Valon tulee palaa kaikissa kolmessa tilanteessa, kun kytkin S1 on aktiivinen ja kytkin S2 on ei-aktiivinen. Huomaa ! Termeillä avautuva ja sulkeutuva kosketin on erilainen merkitys, kun puhutaan prosessin laiteympäristöstä tai ohjlelmoinnin symboleista. SITRAIN Training for Automation and Industrial Solutions Sivu 6 Oppilaitosmateriaali Binäärioperaatiot Ohjaus, Set, Reset, NOT FBD LAD NOT operaation vaihtaminen operaation vaihtaminen SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 7 Siemens Osakeyhtiö © 2011 Ohjaus Ohjauksen tila on aina sama kuin edeltävän ehtokyselyn lukitustulos, RLO. Ohjauksen tilaa voidaan käyttää edelleenkytkentään. Set Jos RLO = "1", ohjattava operandi menee tilaan '1'; jos RLO = "0", operandin tila jää ennalleen. Reset Jos RLO = "1", ohjattava operandi menee tilaan ' 0'; jos RLO = "0", operandin tila jää ennalleen. NOT NOT-käsky invertoi lukitustuloksen (RLO). Esimerkkiohelmassa yllä, AND-operaation RLO= '1', NOT-käsky invertoi sen ja RLO= '0' , tällöin Set-käskyä ei suoriteta (muuttujan "Tag_3" (Q20.0) tila jää ennalleen). Jos AND-operaation RLO= '0', NOT-käsky invertoi sen ja RLO= '1' ja Set-käsky suoritetaan (muuttujan "Tag_3" (Q20.0) tila ='1'). SITRAIN Training for Automation and Industrial Solutions Sivu 7 Oppilaitosmateriaali Binäärioperaatiot SR, RS hallitseva RESET hallitseva SET FBD LAD SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 8 Siemens Osakeyhtiö © 2011 Kiikku, Flip Flop Flip flop –käskyssä on tulot Set ja Reset. Käytettävä muisti joko asetetaan tai nollataan, riippuen siitä kummassa tulossa RLO=1. Prioriteetti Lohko prioriteetti täytyy huomioida sellaisten tilanteiden varalta, jos molemmissa tuloissa on samanaikaisesti RLO=1. LAD ja FBD-ohjelmointitavoissa on omat symbolit dominoivalle Set ja Reset toiminnoille. Käskylista (STL) ohjelmoinnissa komennolla, joka on ohjelmoitu käskylistassa viimeiseksi on suurempi prioriteetti. Huomaa CPU:n uudelleenkäynnistyksessä lähtöjen tilatiedot nollataan eli niiden tilat ylikirjoiteteen tilalla ‘0’. SR / RS “Set” ja “reset” toimintoja käytetään, kun halutaan asettaa määritellyn operandin bitti. Kun loogisen operaation lukitustulos (RLO) tulossa on "1", määritellyn operandin signaalitila asetetaan tilaan "1". Kun tulon tila on "0“, määritellyn operandin bitti resetoidaan tilaan "0". Operaatio ei vaikuta lukitustulokseen RLO. Tulon lukitustulos RLO siirretään välittömästi lähdölle. Set (S) "Set" käskyä käytetään, kun halutaan asettaa valitun operandin signaalitila tilaan "1". Operaatio suoritetaan vain jos loogisten operaatioiden tulos tulossa on "1". Operaatio ei vaikuta lukitustulokseen RLO. Tulon lukitustulos RLO siirretään välittömästi lähdölle. Reset (R) "Reset" käskyä käytetään, kun halutaan asettaa määritellyn operandin signaalitila tilaan "0". Operaatio suoritetaan vain, jos loogisten operaatioiden tulos tulossa on "1". Operaatio ei vaikuta lukitustulokseen RLO. Tulon lukitustulos RLO siirretään välittömästi lähdölle. SITRAIN Training for Automation and Industrial Solutions Sivu 8 Oppilaitosmateriaali Binäärioperaatiot Tehtävän kuvaus: "FC_Tila" (FC15) DI 0V I 0.0 T_ON I 0.1 T_OFF (NC) I 0.2 T_Oikea I 0.3 T_Vasen 0V +10V Poti DO ML_Auto SITRAIN TIA-S7-1200 / Binäärioperaatiot SITRAIN Training for Automation and Industrial Solutions Q 4.1 Sivu 9 Sivu 9 Siemens Osakeyhtiö © 2011 Oppilaitosmateriaali Binäärioperaatiot Harjoitus 1: "FC_Tila" yksikön (FC15) lisäys SITRAIN TIA-S7-1200 / Binäärioperaatiot Tehtävän kuvaus Sivu 10 Siemens Osakeyhtiö © 2011 Luodaan tuotantolinjan kuljettimen automaatti-/ käsiajon valintaa varten toiminta "FC_Tila" (FC15) ja ohjelmoidaan se toimimaan seuraavasti: Automaattiajo (LED Q 4.1) valitaan simulaattorin kytkimellä I 0.0, ja resetoidaan simulaattorin kytkimellä I 0.1. Suoritus 1. Kaksoisklikataan hiirellä "Add new block" "Program blocks" kansiosta. 2. Syötetään ylläkuvatun mukaiset arvot avautuvaan “Add new block” ikkunaan SITRAIN Training for Automation and Industrial Solutions Sivu 10 Oppilaitosmateriaali Binäärioperaatiot Harjoitus 2: "FC_Tila" yksikön (FC15) ohjelmointi SITRAIN TIA-S7-1200 / Binäärioperaatiot Tehtävän kuvaus Sivu 11 Siemens Osakeyhtiö © 2011 Ohjelmoidaan "FC_Tila" (FC15) yksikköön tuotantolinjan tilanvalinta: Merkkilamppu “ML_Auto" (LED Q 4.1) aktivoidaan simulaattorin painikkeella “T_ON” (I 0.0), ja sammutetaan simulaattorin painikkeella “T_OFF" (I 0.1). Suoritus 1. Avataan FC15 kaksoisklikkaamalla sitä hiirellä. 2. Avataan "Instructions“ valintaikkuna ja ohjelmoidaan yllä olevan kuvan mukaiset käskyt. SITRAIN Training for Automation and Industrial Solutions Sivu 11 Oppilaitosmateriaali Binäärioperaatiot Harjoitus 3: Kuljetin AUTO käytössä (FC 16 laajennus) Kuljetin käyntiin Siirtovaihe Kuljetin seis “INI1” (I 8.5) “S1” (I 8.1) “INI2" (I 8.6) “S2" (I 8.2) “VK1" (I 8.0) "Kuljetin_OIKEA" (Q 8.4) SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 12 Siemens Osakeyhtiö © 2011 Toiminnan kuvaus tähän saakka Kun käyttötapa “ML_Auto" (Q4.1) on pois päältä, voidaan kuljetinta liikuttaa käsiajolla oikealle ja vasemmalle simulaattorin kytkimillä "T_Oikea" (I0.2) ja "T_Vasen" (I0.3). Tehtävän kuvaus Laajennetaan FC_Kuljetinmoottori (FC16) seuraavasti: Kun automaatti käyttötapa “ML_Auto" (Q4.1) on aktivoituna, voidaan kappaleet, jotka on asetettu paikalle “INI1” (I8.5) tai “INI2” (I8.6) kuitata automaattikuljetukseen valitun paikan kuittauspainikkeella. Paikka “INI1” painike “S1” (I8.1) ja paikka “INI2” painike “S2” (I8.2). Kuljetuskuittauksen jälkeen osa kuljetetaan valokennolle. (katso toimintakuvaus yllä olevasta kuvasta). Kuljetus käynnistetään, kun kuljetettava osa asetetaan kuljettimelle anturin eteen ja vastaavan paikan kuittauspainiketta on painettu. Vain yksi paikka kerrallaan voi olla varattuna. Jos molemmat paikat on varattuina, kuljetusta ei voida aloittaa. Kuljetin pysähtyy, kun osa saapuu valokennolle “VK1” (I8.0) tai “ML_Auto" (Q4.1) on kytketty pois. Suoritus 1. Avataan "FC_Kuljetinmoottori" (FC16) editoriin. 2. Ohjelmoidaan siihen määritellyt laajennukset. 3. Ladataan yksikkö CPU:lle ja testataan toiminnot. 4. Tallennetaan projekti. SITRAIN Training for Automation and Industrial Solutions Sivu 12 Oppilaitosmateriaali Binäärioperaatiot Harjoitus 3: Kuljetin AUTO käytössä (FC 16 laajennus) Network x Käsiajolla kuljetin oikealle "M_Kasi_oikea" (M16.2) Ehdot käsiajo ohjaukselle, OIKEA = Network y Muistibitti: Kuljetin oikealle käsiajolla Automaattiajolla kuljetin oikealle "M_Auto_oikea" (M16.4) Ehdot automaattiajolle, OIKEA S Automaattiajo päällä Muistibitti: Kuljetin oikealle automaattiajolla R Automaattiajo pois Kuljettimen ohjaus OIKEALLE Network z " M_Kasi_oikea " (M16.2) >=1 “Kuljetin_oikea" (Q8.5) " M_Auto_oikea " (M16.4) SITRAIN TIA-S7-1200 / Binäärioperaatiot SITRAIN Training for Automation and Industrial Solutions Kuljetinta ajetaan oikealle = Sivu 13 Sivu 13 Siemens Osakeyhtiö © 2011 Oppilaitosmateriaali Binäärioperaatiot Signaali – Reunan tunnistus LAD FBD "T_ON" !!! "T_OFF" "L_Operation" SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 14 Siemens Osakeyhtiö © 2011 Signaalin reunan tunnistus (P, N) Signaalin reunan tunnistuksella on mahdollista havaita yksittäisen signaalin tilan muutos. Esimerkissä yllä "T_ON“ vaihtaa tilansa '0' -> '1' (nouseva tai positiivinen reuna) tai tila vaihtuu '1' -> '0' (laskeva tai negatiivinen reuna). Kun muutos tapahtuu, molemmat reunan tunnistukset antavat RLO ='1' , ja sitä voidaan käyttää edelleen muissa loogisissa operaatioissa (esim. Asetus ehtona) tai ohjaamaan toisen operandin (esim. Muistibittiä ) tilaa. Seuraavalla syklillä käskyn tulos RLO= '0' , vaikka "T_ON" on edelleen tilassa '1'. Käsky vertailee operandin "T_ON“ hetkellistä tilaa edellisen syklin tilatietoon, joka on tallennettuna ns. reunantunnistusmuistiin (esim "M_Fl_ON"). Tätä apuna käytettävää muistibittiä ei saa käyttää tai ylikirjoittaa muualla ohjelmassa. Jokaisessa reunan tunnistus-käskyssä on oltava käytössä oma, yksilöllinen muistibitti! SITRAIN Training for Automation and Industrial Solutions Sivu 14 Oppilaitosmateriaali Binäärioperaatiot RLO – Reunan tunnistus "LB" (I 8.0) "K_Right" (Q8.5) & RLO "M_Imp_Count_ pos" (M19.1) OB1 Cycle "M_Imp_Count_ neg" (M19.3) OB1 Cycle OB1 Cycle SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 15 OB1 Cycle Siemens Osakeyhtiö © 2011 RLO:n reunan tunnistus (P=, P_TRIG) RLO:n reunan tunnistus huomioi yksittäisen signaalitilan tai loogisen operaation RLO:n muutoksen “'0‘ -> '1' (nouseva tai positiivinen reuna) tai muutoksen '1' -> '0' (laskeva tai negatiivinen reuna). Kun muutos tapahtuu, molemmat reunan tunnistukset antavat RLO ='1' tuloksena yhden syklin ajan. Seuraavalla syklillä käskyn tulos RLO= '0' , vaikka loogisen operaation tai operandin tila ei muuttuisikaan. Käsky vertailee operandin tai loogisen operaation lukitustulosta hetkellistä tilaa edellisen syklin tilatietoon, joka on tallennettuna ns. reunantunnistusmuistiin (esim. "M_Fl_Count_pos" tai "M_Fl_Count_neg). Tätä apuna käytettävää muistibittiä ei saa käyttää tai ylikirjoittaa muualla ohjelmassa. Jokaisessa reunan tunnistus-käskyssä on oltava käytössä oma, yksilöllinen muistibitti! Esimerkki kuvassa: Käskyllä P= reunantunnistuksen tulos tai RLO kirjoitetaan välittömästi toiselle operandille (esim. operandi "M_Imp_Count_pos") ja sitä voidaan käyttää edelleen muissa loogisissa operaatioissa. Käskyllä P_TRIG, tulos tai RLO täytyy ohjata edelleen toiselle operandille (esim. "M_Imp_Count_neg") tai linkittää edelleen loogiseen operaatioon. P “P” käskyä käytetään kun halutaan tunnistaa, tapahtuuko signaalitilan muutos "0" → "1" määritellyssä operandissa <operand1>. Käsky vertaa operandin <operand1> nykyistä signaalitilaa edellisessä kyselyssä tallennettuun operandiin <operand2>. Jos käsky tunnistaa signaalimuutoksen "0" → "1", positiivinen nouseva reuna, saa operaation lähtö signaalitilan "1".Muissa tapauksissa lähdön tila on "0". P= “P=" käskyä käytetään määritellyn operandin asettamiseksi, kun havaitaan signaalitilan muutos "0" →"1". Käsky vertaa nykyisten loogisten operaatioiden lukitustulosta (RLO) aikaisemman kyselyn tulokseen, joka on tallennettuna reunan bitti muistiin. Kun käsky havaitsee signaalitilan muutoksen "0" → "1", positiivinen nouseva reuna, <operand1> asetetaan signaalitilaan "1" yhden ohjelma syklin ajaksi. Muissa tapauksissa operandin signaalitila on "0". P_TRIG “P_TRIG" käskyä käytetään kun halutaan tiedustella loogisten operaatioiden tuloksen signaalitilan muutosta “0" → "1". Käsky vertaa nykyisten loogisten operaatioiden lukitustulosta (RLO) aikaisemman kyselyn tulokseen, joka on tallennettuna reunan bittimuistiin. Kun käsky havaitsee signaalitilan muutoksen "0" → "1", positiivinen nouseva reuna, lähtö saa signaalitilan "1". Muissa tapauksissa operandin signaalitila on "0". SITRAIN Training for Automation and Industrial Solutions Sivu 15 Oppilaitosmateriaali Binäärioperaatiot Harjoitus 4: Kappale siirretään valokennon ohi "FC_Kuljetin" (FC16) Kuljetin käynnistyy Siirtovaihe “INI1" (I 8.5) Kuljetin seis Kappale valokennon edessä “S1" (I 8.1) "INI2" (I 8.6) " S2 " (I 8.2) “VK1" (I 8.0) “Kuljetin_oikealle" (Q 8.5) vanha SITRAIN TIA-S7-1200 / Binäärioperaatiot Tehtävän kuvaus Sivu 16 UUSI Siemens Osakeyhtiö © 2011 Korjataan FC_Kuljetinmoottori (FC16) ohjausta seuraavasti: Paikoilta 1 ja 2 siirrettävät kappaleetkuljetetaan jatkossa valokennon ohi. (katso toimintakuvaus yllä olevasta kuvasta). Kuljetus käynnistetään kuten edellisessä harjoituksessa ohjelmoitiin. Muutos tulee kuljettimen pysäyttämiseen. Kuljetin pysähtyy, kun osa on ohittanut valokennon “VK1” (I8.0) tai “ML_Auto" (Q4.1) on kytketty pois. Suoritus 1. Avataan "FC_Kuljetinmoottori" (FC16) editoriin. 2. Ohjelmoidaan siihen määritellyt laajennukset. 3. Ladataan yksikkö CPU:lle ja testataan toiminnot. 4. Tallennetaan projekti. SITRAIN Training for Automation and Industrial Solutions Sivu 16 Oppilaitosmateriaali Binäärioperaatiot Tehtävän kuvaus: Merkkilamppujen ohjaus “INI1" (I 8.5) “INI2" (I 8.6) “H1" (Q 8.1) “H2" (Q 8.2) “H4" (Q 8.3) Kun “ML_Auto" (Q4.1) käyttötapa on valittuna: - Paikkojen “INI1” ja “INI2” lamput palavat yhtäjaksoisesti (jos molemmat paikat ovat vapaana). - Kun kuljetettava osa asetetaan vapaaseen paikkaan, vilkkuu sen merkkivalo 1 Hz taajuudella - Kun kuljetin liikkuu, vilkkuvat kaikkien paikkojen merkkivalot 2 Hz taajuudella SITRAIN TIA-S7-1200 / Binäärioperaatiot SITRAIN Training for Automation and Industrial Solutions Sivu 17 Sivu 17 Siemens Osakeyhtiö © 2011 Oppilaitosmateriaali Binäärioperaatiot Harjoitus 5: Merkkilamppujen ohjaus "FC_Merkkilamppu" (FC14) Drag &Dr op SITRAIN TIA-S7-1200 / Binäärioperaatiot Tehtävän kuvaus Sivu 18 Siemens Osakeyhtiö © 2011 Kun “ML_Auto" (Q4.1) käyttötapa valitaan, merkkilamput “H1”, “H2” ja “H4” palavat seuraavan määrittelyn mukaisesti. Paikkojen “INI1” ja “INI2” merkkilampuilla osoitetaan kuljettimen tilaa seuraavasti: • Yhtäjaksoinen valo, kun on lupa asettaa jommalle kummalle paikalle uusi kappale kuljetusta varten. ( kuljetin ei liiku ja molemmt paikat ovat vapaana). • Kun jommalle kummalle paikalle on asetettu kappale kuljetusta varten, vilkkuu aktiivisen paikan merkkilamppu 1 Hz taajuudella siihen asti, kunnes kuljetin käynnistyy. Kun kuljetus käynnistyy, vilkkuvat kaikki merkkilamput 2 Hz taajuudella niin kauan kun kuljetin liikkuu. Suoritus 1. Kopioidaan kirjastosta projektiin valmiiksi ohjelmoitu "FC_Merkkilamppu" (FC14). 2. Lisätään OB1:teen FC14 kutsu. 3. Ladataan kaikki yksiköt CPU:lle ja testataan ohjelman toiminta. 4. Tallennetaan projekti. SITRAIN Training for Automation and Industrial Solutions Sivu 18 Oppilaitosmateriaali Binäärioperaatiot Lisäinformaatiota SITRAIN TIA-S7-1200 / Binäärioperaatiot SITRAIN Training for Automation and Industrial Solutions Sivu 19 Sivu 19 Siemens Osakeyhtiö © 2011 Oppilaitosmateriaali Binäärioperaatiot Bittilogiikka: SET_BF, RESET_BF 7 6 54 MB10 MB11 MB10 MB11 3 21 0 0000 0000 0000 0000 1100 0000 0000 0111 Useamman bitin nollaus tietystä osoitteesta alkaen MB10 MB11 SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 20 0000 0000 0000 0000 Siemens Osakeyhtiö © 2011 Bittilogiikka SET_BF / RESET_BF Käskyllä "Reset bit logic“ voidaan nollata useita bittejä tietystä alkuosoitteesta alkaen. Resetoitavien bittien lukumäärä määritellään parametrin N kautta. Käskyssä määritellään myös resetoitavista biteistä alin bittiosoite. Bitit nollataan nousevassa bitt-i ja tavuosoitejärjestyksessä. Käsky suoritetaan ainoastaan jos RLO =`1`' tulossa EN. Kun RLO =`0`', käskyä ei suoriteta. Flip-flop Prioriteetti RESET_BF Flip-flop toiminnolla on yksi asetus- ja yksiresetointi tulo. Muisti asetetaan tai resetoidaan riippuen kumman tulon lukitustulosta (RLO = "1“) käytetään. Jos lukitustulos RLO = "1" on molemmissa tuloissa samanaikaisesti, määrittää prioriteetti kumpi suoritetaan ensin. LAD ja FBD, ohjelmointimuodoissa käytetään "Set" ja "Reset" prioriteetin osoittamiseen erilaisia symboleja. STL ohjelmoinnissa viimeisimpänä ohjelmoitu käsky omaa korkeimman prioriteetin. “RESET_BF" käytetään kun halutaan resetoida useita bittejä alkaen määritellystä osoitteesta. Resetoitavien bittien määrä määritellään parametrilla N. Ensimmäisen resetoitavan bitin osoite määrittyy määritellyn operandin (<Operand>) perusteella. Jos parametrin N arvo on suurempi kuin valikoidun tavun bittien lukumäärä, jälkimmäisen tavun bitit resetoidaan. Bitit pysyvät resetoituna kunnes ne on selvästi asetettu, esimerkiksi toisen operaation toimesta. Operaatio suoritetaan vain, jos EN vapautustulon signaalitila on "1". Jos tila on “0” operaatiota ei suoriteta.. SITRAIN Training for Automation and Industrial Solutions Sivu 20 Oppilaitosmateriaali Binäärioperaatiot JMP, JMPN, RET Hyppy, kun RLO =0 Hyppy, kun RLO =1 SITRAIN TIA-S7-1200 / Binäärioperaatiot Sivu 21 Siemens Osakeyhtiö © 2011 Hyppykäskyt JMP ja JMPN Hyppykäskyilla JMP ja JMPN, lineaarinen ohjelmansuoritus voidaan keskeyttää lohkon sisällä ja jatkaa suoritusta toisesta virtapiiristä. Hyppykäskyn kanssa käytetään kohdevirtapiirissä kohdeotsikkoa, Label. Kohdeotsikon täytyy sijaita samassa ohjelmassa ja sen nimen pitää olla yksilöllinen. Samaan kohdeosoitteeseen voidaan hypätä useasta eri paikasta. Yksikön sisällä voidaan hypätä virtapiireissä eteen- tai taaksepäin. JMP: Kun RLO ='1', ohjelman suoritus hyppää kohdevirtapiiriin; kun RLO ='0', hyppyä ei suoriteta, vaan jatketaan linearrista ohjelman suoritusta. JMPN: Kun RLO ='0', ohjelman suoritus hyppää kohdevirtapiiriin; for RLO ='1', hyppyä ei suoriteta, vaan jatketaan linearrista ohjelman suoritusta. Ohjelmalohkon lopetuskomento RET Käskyllä RET, ohjelmalohkon suoritus lopetetaan. Ohjelman suoritus jatkuu ohjelmalohkosta, jota kutsutaan keskeytetyn ohjelmalohkon jälkeen. JMP "JMP “ (ehdollinen hyppy jos RLO=1) käskyä käytetään ohjelman lineaarisen suorituksen keskeyttämiseen ja sen jatkamiseen toisesta virtapiiristä. Hyppykäskyn kohdevirtapiirin tulee olla varustettuna hyppyosoitteella (label), johon hyppykäsky hypyn osoittaa. Hyppyosoitteen ja hyppykäskyn tulee olla samassa ohjelmayksikössä. Jos loogisten operaatioiden tulos (RLO) on "1", hyppy määriteltyyn hyppyosoitteeseen suoritetaan. Hyppysuunta voi olla eteenpäin tai taaksepäin virtapiireissä. Jos loogisten operaatioiden tulos (RLO = 0), jatkuu ohjelman suoritus seuraavasta virtapiiristä ilman hyppyä. LABEL Hyppyosoitetta “label“käytetään määritellemään hypyn suunta ja paikka. Ohjelman suoritus jatkuu hyppyehdon täytyttyä hyppyosoitteen määrittämästä kohdasta. Hyppyosoitteen nimi voi sisältää kirjaimia, numeroita tai alaviivoja. Hyppyosoitteen ja hyppykäskyn tulee sijaita samassa yksikössä. Määritelty hyppyosoite voi esiintyä vain kerran samassa yksikössä. JMPN "JMPN" (ehdollinen hyppy jos RLO=0) käskyä käytetään ohjelman lineaarisen suorituksen keskeyttämiseen ja sen jatkamiseen toisesta virtapiiristä. Jos loogisten operaatioiden tulos (RLO) on “0", hyppy määriteltyyn hyppyosoitteeseen suoritetaan. Hyppysuunta voi olla eteenpäin tai taaksepäin virtapiireissä. Hyppyosoitteen ja hyppykäskyn tulee sijaita samassa virtapiirissä. Määritelty hyppyosoite voi esiintyä vain kerran samassa virtapiirissä. Jos loogisten operaatioiden tulos (RLO = 1), jatkuu ohjelman suoritus seuraavasta virtapiiristä ilman hyppyä SITRAIN Training for Automation and Industrial Solutions Sivu 21 Oppilaitosmateriaali Binäärioperaatiot