Anexa_acl

download Anexa_acl

of 10

Transcript of Anexa_acl

  • 7/26/2019 Anexa_acl

    1/10

    Limbajul de programare al controlerelor ERACL (Advanced Control Language)

    Instruciunile ACL pot fi utilizate n dou moduri: direct(din ecranul ATS pentrueecuie imediat) sau

    indirect(din editare de programe !i eecuie la rularea

    programului)" #n aceast documentaie se vor utiliza urmtoarele notaii: $prog%pentru program& $var% pentru varia'il& $value% pentru valoare& $par% pentruparametru& $ais% pentru aa (cupla cinematic conductoare)& $pos% pentrupoziia ro'otului& $pvect% pentru vector de poziie& $time% pentru timp& $state%pentru starea controlerului& $arg% pentru argumentul unei funcii" Toateinstruciunile necesit validare prin tastarea lui $enter%& mai puin $Ctrl%A& carenseamn ncetarea eecuiei comenzii repetitive introduse anterior" Sintaalim'aului ACL permite unele cuvinte opionale& care sunt introduse n paranteze*+"

    Instruciuni pentru comanda roboilor

    MOVE {: comanda de deplasare a ro'otului n poziia $pos%specificat& fr,cu precizarea timpului de mi!care n sutimi de sec" Comanda demi!care este lansat !i se iniializeaz rutinele de program pentru realizareaefectiv a acesteia& iar programul trece la eecuia urmtoarei instruciuni& fr amai a!tepta confirmarea eecuiei mi!crii"

    MOVE! {: comanda de deplasare care asigur secvenialitateaeecuiei n conformitate cu succesiunea liniilor din program" -ecuia mi!criiro'otului este iniiat de instruciunea ./0-1& iar trecerea la eecuia urmtoareilinii din program se realizeaz numai c2nd se confirm realizarea mi!crii !iatingerea poziiei din instruciune de ctre traductorii de poziie ai aelor ro'otului"

    MOVEL {: comanda de deplasare a punctului caracteristic al

    ro'otului pe o traiectorie liniara din poziia curenta n poziia $pos%" 0aloareavitezei curente determin precizia deplasrii" Atentie3 .i!carea nu poate fi uneorieecutat din cauza limitrilor mecanice" Instruciunea este similar cu ./0- dinpunct de vedere al secvenialitii eecuiei liniilor de program"

    MOVEL!: similar cu instruciunea ./0-L !i ./0-1 !i este utiliza'il numain modul indirect"

    MOVEC 4==="

    CLO$E {: nc8ide complet dispozitivul de pre8ensiune" Atentie3 Similar cu/?-@& valoarea prea mare a varia'ilei $var% poate cauza defectarea motorului saua transmisiei mecanice" Instruciunile /?-@ !i CL/S- determin dezactivarea'uclei de reacie nc8ise a comenzii dispozitivului de pre8ensiune"

    ;

  • 7/26/2019 Anexa_acl

    2/10

    (A) {: valoarea vari'ilei $var% define!te n procente cursa denc8idere,desc8idere fa de cursa maim" 1ac valoarea timpului se omite&mi!carea se realizeaz la vitez maim" Acest instruciune activeaz 'ucla dereglare nc8is& dezactivat de instruciunea /?-@,CL/S-" $var%>de la = p2n la4==" Alte valori pot produce defectarea motorului de acionare3

    $&EE!{A*+ : atri'uie valoare vitezei curente de deplasare a ro'otului nprocente" $value% poate fi de la 4 la 4== !i reprezinta procente din valoareamaim posi'il de mi!care a ro'otului" 0aloarea recomandat a lui $value% estede ;= sau mai puin" A !i B nseamn ca instruciunea S?--1 se refer la grupulde ae comandate ale ro'otului (A) respectiv ae suplimentare (B)" Instruciunilede mi!care care nu includ valori de timp& se realizeaz cu viteze curente introdusede ctre utilizator" 0alorile maime,minime ale vitezei sunt determinate de ctreparametrii par5D,5"

    $,O) $&EE!: instruciune pentru afi!area pe ecran a valorilor curente ale

    vitezei pentru aele ro'otului (A) !i aele suplimentare (B)"E-AC. {O// A*+: instruciune care determin ca la comenzile de mi!care./0-1& controlerul s verifice& prin valorile traductoarelor de poziie& dac s7aatins& cu o anumita toleranta& poziia memorata anterior" 1ac se lucreaz n modul-EACT /FF& mi!carea comandat de ./0-1 va fi nt2rziat (cu o anumitvaloare a timpului) p2n c2nd controlerul consider ca aele au atins poziiacorect" ?arametrii par5G4754 determin valoarea toleranei pentru precizia depoziionare a punctului caracteristic"M&RO/ILE &ARA+OLE A*+0 M&RO/ILE .RA&E1E A*+: atri'uie un profil

    de vitez para'olic sau trapezoidal pentru rutinele de calcul a mi!criloraelor ro'otului A sau suplimentare B" ?rofilul trapezoidal de vitezdetermin acceleraii,deceleraii rapide la nceputul,sf2r!itul mi!crii !i o

    mi!care cu vitez constant pe maoritatea lungimii traiectoriei" ?rofilulpara'olic de vitez determin accelerarea lin a mi!crii p2n se atingeviteza maim& dup care decelerarea se realizeaz cu aceeasi valoare"

    0aloarea maim a vitezei pentru poriunile de accelerare,decelerare estedeterminat prin valoarea parametrului parG"

    I'.2O' {04

  • 7/26/2019 Anexa_acl

    3/10

    .O' { activeaz (comuta pe /@) protecia termic a motoarelor tuturoraelor comandate sau numai pe o aa specificata n"

    .O// {: dezactiveaz (comuta pe /FF) protecia termic a motoarelor tuturoraelor comandate sau numai pe o aa specificata n" Atentie3 n urma eecuieiinstructiunii motoarele nu vor mai avea protecie termic prin programe"

    $E. A'O8. :;: atri'uie o valoare la ie!irea analogic pentru aaspecificat";===$1AC$;===" Atentie3 Se utilizeaz numai valori n domeniul specificat"

    $,O) !AC : unde $n% este numrul de ordine al aei comandate (cuplacinematic conductare)" Afi!eaz pe ecran valoarea tensiunii motorului de c"c" nmilivolti"

    Instruciuni pentru comen=i directe i pentru controlul programelor

    R8' : eecuia programului se suspend p2n landeplinirea condiiei" Instruciunea MAIT utilizeaz puin din puterea procesorului

    at2ta timp c2t programul a!teapt apariia evenimentului".RI@@ER +? I'*O8. {: programul $prog% ncepe

    eecuia atunci c2nd pe portul de intrare,ie!ire I@,/9T $n% se ndepline!tecondiia de stare a lui $state% (adica valoarea = sau 4)" 1ac $state% esteomis& condiia de pornire a programului este realizata la sc8im'area stariiintrarii,iesirii specificate" 1e eemplu: THINN-H 1HIL BO #@ 4; 4(porneste programul 1HIL c2nd intrarea 4; are starea 4"

    &E'!

  • 7/26/2019 Anexa_acl

    4/10

    H9@ ACT 0AL9- devine 4-@1?H/NHA. S-@1?/ST 4 T/ SIN@-@1

    B&O$. .O iB&E'!

  • 7/26/2019 Anexa_acl

    5/10

    sistemul de ae de referin ata!ate 'azei ro'otului E& O& se vor introdce nzecimi de mm& iar valorile pentru ung8iurile de orientare (?) !i (H) n zecimi degrade" 0alorile afi!ate pe ecranul calculatorului n paranteze Q R sunt cele atri'uiteanterior"

    .EAC,R {

  • 7/26/2019 Anexa_acl

    6/10

    :;G U:= z:;DG ?:G; H:7G;& valorile cartezienesunt afisate n zecimi de mm !i de grade"

    Instruciuni pentru deinirea %ariabilelor

    !E/I'E : une var4& var5& & var 45 sunt varia'iledefinite de ctre utilizator" Instruciunea defineste varia'ile locale !i se utilizeaznumai n modul indirect& n editare de program" 0aria'ilele tre'uie s ai'a numelecu primul caracter o litera"

    @LO+AL : defineste varia'ile glo'ale care pot fiutilizate n orice program al utilizatorului"

    !IM : unde $varQnR% este un vector de n varia'ile locale& dimensiuneavectorului de varia'ile locale este n" / varia'ila locala este utiliza'ila numai nlegatura cu programul n care a fost definita"

    !IM@ : defineste un vector de varia'ile glo'ale cu n elemente"0aria'ilele glo'ale pot fi utilizate de ctre toate programele de utilizator"

    !ELVAR : sterge varia'ila $var% din memoria HA. a controlerului" Se potsterge numai acele varia'ile care nu sunt utilizate n programe" n modul direct&instruciunea 1-L0AH sterge numai varia'ilele glo'ale" n modul indirect&1-L0AH sterge varia'ile locale !i sterge varia'ilele glo'ale& dac nu mai eistavaria'ile locale n acel program"

    $E. =& $var4%>4& $var5%%>=& $var4%>="$E. = !i $var4& $var 4%>=" 1ac $var5%>4 !i $var4& $var4%>4"S-T $var4%> $var5% C/S (SI@& TA@) $var : unde var4 !i var 5 sunt varia'ile definite de ctreutilizator sau constante !i $cond% poate fi $&%&>&$>&%>&$%" Instruciunea /HIFcom'ina logic cu o conditie cele doua varia'ile"EL$E: instruciune care urmeaza dup instruciunea IF !i precede instruciunea-@1IF" -LS- marc8eaza nceputul portiunii de program care se va eecuta daccondiia n declaratia IF nu este adevarata"

    E'!I/: instruciune de sfarsit al su'rutinei al carei inceput este dat deinstruciunea IF"

    /OR

  • 7/26/2019 Anexa_acl

    7/10

    constante" Instruciunea F/H determin nceputul unei rutine care se eecutarepetitiv de atatea ori cate numere naturale consecutive eista ntre $value4% !i$value5%"

    E'!/OR: instruciune de sfarsit al su'rutinei al carei inceput este dat deinstruciunea F/H"

    LA+EL : marc8eaza nceputul rutinei de program unde se realizeazsaltul cu instruciunea N/T/"

    @O.O : unde $la'el n% poate fi orice numr de linie" Se realizeaz osaritura n program la linia cu numrul de ordine egal cu $la'el n%" $la'el n%tre'uie s fie un numr al unei linii din programul care contine instruciuneaN/T/"

    @O$8+ : transfera controlul programului principal n programul $prog% !iil eecuta de la prima s linie" La sf2r!itul programului $prog% adica instruciunea

    -@1& se realizeaz saltul n programul principal la linia urmatoare liniei N/S9B"Instruciuni pentru comanda porturilor de intrare*iesire

    L$O': conecteaza intrerupatoarele de capat de cursa la portul de intrare alcontrolerului" n modul LS/@& intrarile de la senzori sunt inactive"L$O//: deconecteaza intrerupatoarele de capat de cursa a aelor comandate alero'otului de la portul de intrare al controlerului" n modul LS/FF intrarile de lasenzori sunt active" ?rogramul /.- comuta automat n modul LS/@ !i apoi nLS/FF"

    $,O) !I': afi!eaz pe ecranul calculatorului starea porturilor de intrare& nurmatorul format 474G: 4 = = "4""=" /"V"

    $,O) !O8.: similar cu S/M 1I@& pentru porturile de iesire"

    E'A+LE F'*O8. : reactiveaza controlul (functionarea sau conectareanormala) pentru o intrare,iesire n" -ste instruciunea cu actiune inversa instructiunii1ISABL-"

    /ORCE F'*O8. : unde #@,/9T n sunt intrarea,iesirea n dincontroler& $state% poate avea valoarea 4(/@) sau = (/FF)" Instruciunea F/HC-forteaza sc8im'area starii intrarii,iesirii specificate prin n" Acesta instruciune esteactiva numai c2nd intrarile,iesirile au fost deconectate prin instruciunea anterioara1ISABL-" F/HC- #@ ; 4 nseamn activarea intrarii ; la starea 4 (/@)"

    $E. O8.:;: instruciune de sc8im'are a starii iesirii $n% nconformitate cu valoarea 'inara a lui $value%"

    Instruciuni pentru scGimbarea parametrilor

    LE. &AR : unde n este numrul de identificare al parametrului !i$value% este o constant" Atri'uie o valoare parametrului $par%" Atentie3Introduceti valori recomandate pentru parametrii !i nu eecutati instruciunea ntimp de programele ruleaza3

    $,O) &AR : afi!eaz pe ecranul calculatorului valoare parametrului desistem $n%"

    Instruciuni pentru instalare*initiali=are

    CO'/I@: activeaza fisierul de configurare pentru definirea informatiilorreferitoare la tipul controlerului" Instruciunea va sterge toate programele deutilizator& poziiile !i vectorii33 Informatiile despre tipul de controler sunt: numr deintrari,iesiri& numr de ae comandate& tipul ro'otului& marimea memoriei pentrulinii de program& vari'ile& poziii& comentarii" C/@FIN W afi!eaz pe ecranulcalculatorului configuratia curenta"I'I. CO'.ROL: initializeaza parametrii de control ai sistemului" Instruciunea

    tre'uie eecutata dup orice modificare a parametrilor de control ai sistemului"

    I'I. E!I.OR: initializeza spatiul de memorie HA. al utilizatorului& varia'ilele!i programele" Tot continutul memoriei HA. va fi sters3 Aceast instruciune esteutilizata mai rar pentru ca instruciunea C/@FIN eecuta automat aceast operatie"

    ;4

  • 7/26/2019 Anexa_acl

    8/10

    I'I. &RO/ILE: initializeza profilele de vitez (para'olica !i trapezoidala) nconcordanta cu valoarea parametrului G" ?arametrul G determin valoareamaim a vitezei la acceleraie,deceleraie" / valoare mai mare cre!te valoareaacceleraiei" I@IT ?H/FIL- tre'uie s se eecute dup orice modificare aparametrului G"

    Instruciuni de generare a rapoartelor

    !I$A+LEH0 !I$A+LE I'*O8. : unde I@,/9T sunt intrrile,ie!irile laportul corespunztor al controlerului !i n este numrul de ordine al acestora"1ISABL- #@,/9T $n% deconecteaza intrarea,iesirea fizica n de la intrarea,iesirealogica (din program)" Totusi instruciunea F/HC- permite sc8im'area starii iesiriin c8iar dac acesta este deconectata" 1ISABL- W afi!eaz pe ecranul calculatoruluistarea intrrilor,iesirilor deconectate"

    !IR: afi!eaz pe ecranul calculatorului toate numele programelor scrise deutilizator& vala'ilitatea acestora din punct de vedere al sintaei& identitatea acestora

    (numrul de identificare corespunde cu numrul de acces al acestora de la panoulde invatare) !i prioritatea lor& dac eista o rulare simultana a mai multor programe"

    LI$. {: afi!eaz toate liniile de program ale utilizatorului sau afi!eazliniile programului $prog%"

    LI$.&afi!eaz pe ecranul calculatorului toate poziiile definite de ctre utilizator"

    LI$.VAR: afi!eaz pe ecranul calculatorului toate varia'ilele de sistem !i aleutilizatorului" 0aria'ilele locale sunt afisate astfel: I(?H/NH)& adica varia'ila I dinprogramul ?H/NH"

    $.A.: afi!eaz pe ecranul calculatorului starea programelor de utilizator active"

    Starea unui program poate fi: 1-LAO (eecuia unei intarzieri)& ?-@1 (a!teaptapariia unui eveniment)& S9S?-@1-1"

    $,O) !I'0 !O8.0 E'CO0 !AC0 &AR0 $&EE!D Consulta instruciunilecorespunzatoare" Instruciunea S/M -@C/ afi!eaz intermitent (la fiecare ="; s)pe ecranul calculatorului valorile curente ale traductoarelor de poziie pentru

    fiecare aa comandata a statiei de lucru a sistemului" Afi!area se va intrerupe dacse tasteaza $CTHL C%"

    /REE: afi!eaz o lista a spatiului disponi'il al memoriei HA.: linii de program&locasuri (n memorie) de varia'ile& poziii pentru grupele A !i B !i pentrucomentarii"

    Instruciuni pentru aisare i interata cu utili=atorul

    'OB8IE.: n timpul rularii programelor toate instruciunile care incep cu X suntafisate pe ecran c2nd sunt eecutate"B8IE.: instruciune opusa lui @/P9I-T"

    EC,O: afi!eaz pe ecranul calculatorului toate caracterele care sunt transmise lacontroler"

    'OEC,O: instruciunea opusa lui -C/ este @/-C/"

    {!O ,EL&: instruciune care asigura eplicatii pe scurt cu privire la instruciuni"n modul direct se tasteaza -L?& iar n modul indirect se tasteaza 1/ -L?"

    &RI'. {0 4: instruciune similara cu precedenta& darafi!area se va realiza pornindu7se de la nceputul unei linii pe ecran noi& dup carecursorul sare la o linie noua" ?HI@TL@ fr $arg% va aduce cursorul la o linie deecran noua"

    REA!

  • 7/26/2019 Anexa_acl

    9/10

    @E. : unde $var% este varia'ila definita de ctre utilizator" C2nd eecuiadin program intalneste instruciunea N-T& programul se opreste !i a!teapt ca s setasteze un caracter de la tastatura" 0aria'ila va capata valoarea caracterului ASCII atastei apasate" Instruciunea N-T ar tre'ui s fie precedata de instruciunea?HI@TL@ astfel incat utilizatorul s stie ca se a!teapt introducerea unei valorivaria'ilei $var%"

    Instruciuni pentru comunicarea R$##

    $E'COM : unde $n% este numrul portului de comunicarea HS5 { : unde n este portul de comunicare HS5

    E-I.: determin parasirea modului de editare !i verifica sintaa !i logica

    programului" 1ac este gasita o eroare& acesta informatie este afisata pe ecranulcalculatorului"

    ;