You are on page 1of 23
3-2 {Qué es la programacién? Para realizar el tuneionarmiento de su automatism, usted debe detnir un “programa” (conjunta do insirucciones), que establezca las operaciones sucesivas que su TSX 17 ~ ‘debe ejecuiar, Este programa, escrito on un lenguaje especiice al aulémata progra- ‘abla, esta constiuide principalmente por lunciones “Wogicas” que van a trata las inlor- ‘maciries presentes enlas entradas (proveniontes de os captadares), paraelaborarlas informaciones en las salidas (mando de los preaccionadores). El lenguaje gritico PL7-2, utlkzado para programar el TSX 17-20, esta constituido por ‘esquemas de contacios y esquemas GRAFCET - Esquema dé contacto’ : Es una sucesién de “rodes de contacios” que transpot- taninformaciones logicas :desde ls entradas hasta las salidas. Elresutado dupende de las luncionos programadas, “ Las enlradasisalidas del TSX 17 se danominan “Todo O Nada" ya que solament pueden tomar dos estados (0 niveles topos) Estado active : Entrada a nivel lgico “I” (contaclo asociado quo pasa eléctricamente), Salida a nivel logico "I~ (aceién mandada elécticamente ; bombilla encend:da), . Estado repose Entrada a nivel ligico "0" (contacto asociado quo no pasa eléotricamente), Sola a nivel ligieo "0" (aceién no mandada elécticamente - bombil apagada). En logica programada + la: prueba del nivel légico de un ‘sinbolzada por |} Laprueba es simbolo 08 "1" trad agociaca a un contacto de eaptador est 1dadera cuando el estado ligico de la entrada asooiada a este “Ve Lapiueba es verdadera cuando o estado logico dela entrada asociada a este simbolo ¢6 "0" -laaccidn sobre una salida (0 cambio de nivel pico), asociad actor se simbeliza por = ("el resultado de la prueba se transtire ala sada asociada a este simbolo, ~/> olesuitad inverse de a prueba setransiiove ala sala asociadaa este simbolo, bobina de uncon- - Esquema GRAFCET : Provieno do un mélods de andiisis grilico que consiste en ‘dasolosar todo et automatismo secuencial en una sucosién de elapas. El paso de una tlapa a otra esté condicionado por una transicién En un primer tiampo, usted se Iniciar en la programacién de los esquemas de contac: tos, Elestudio de los osquemas GRAFCET se abordara al tinal del capitulo 3. : = retar un esquema de contacto? Ustad ha visto en las paginas 10 y 35 que su TSX 17 recibe sefales elécincas de los captadores. Estas sofas se denominan variables de entradas (ejemplo : sonal OV 024), + omito sefales oléctricas hacia los pre-accionadores y ls pilotos, Estas sefales se ‘denominan variables de salidas (ejemplo : sonal OV 6 24V), ‘estas variables de entradas/salidas se asocian bs!" de entradas/saidas, que tienen los nveles tigicos “0° 6 "1 Ejemplo do ascciacién = nivel igico “O° para la seftal OV * nivel iio "I" para la sefal24V, Las tablas a continacion fasumen a catrespondencta entre = la continuidad eléctrica do un contacto y el nivel igi de la entrada asociada. Tepresonstn | Hv gi “Ginboie rie ae progamacion nivel ligico de fa salida y la continuidad eléctica de la bobina asociada. Spin” |-CO4 Ligaen [OY revue a er eres ail | roessuaeanaaie| ee areal (1) it conraccn do ngs Bary dp, es eanad minima de hlamacin mangas por lsistera gc. E1 puede tomar uname as hues gos "0°31", Por exensin, un i de enadao de salkacontanelainvernacén sore olive gc dea eta © ‘Se si aoa % 3-2-2 kdonttique las ontradasisalidas de su TSX 17-20, Su TSX 17 posee una caja de bornes de entrada y una caja de bornes de sada en el maduin de base (igura de abajo). Se puede conectar a uno o varios médulos de exten- Son de entradas/salidas (1). Las eniradasisaldas, idenilicadas por los niimeros en los médulos de base y do {extensién, se irigen en al programa por medio do las instueciones : IJ; 0] = "F, pata la selaecién de una entrada (INPUT), +0", para la solecei6n dle una salida (OUTPUT), + ‘T! nGimero dol médulo (1). Médulo de base : 0, primera extensién : 1, segunda cexlensin : 2,Jercera extension 3, Fniimoro dela entrada o dela salida, Ejempio 10,15 signilica entrada N* 15 del médulo 0 (médulo de 2ase), £00.06 sigatica sada NG det modulo 0 be Goines dr nee " Comin a tas ‘saldis 447 Sa8da200.08 some Eada Caja de bores de entradas 7 z 3-3 Las funciones légicas combinatorias Las lunciones iégieas son combinaciones de variables légicas, en particular de variables de entradasisalidas : a eada combinacién de bits de entradas solamente corresponde Un solo estado légico on ul o los bits de salidas. —f PParatoda luncidn togica, el aulémata programable prueba prime- fonvadas—] Funclon | _ gaygag ‘mente ls niveles igicos de los bits de eniradas asociados ala >] iépice {uneidn a ejecutar, a continuacién da el resultado por medio de un hivel ligico *0"6“1" en el bit de salida asociado a esta funcién, Las funciones légicas elementales son - Funcién “Y’ (0 tuncién “AND") eae estado do las entradas 1 2. Elrosultado do osta combinacén as al nllpenea. Pare —ebeer eee + Funcién “ asociacién de contactos en paralelo (0 funcién “OR") pr ‘ober eosadsdoiasonradas 10 2 eee Oat pe rosa estas conbinacines es gul 2°1ila ona 16a ana tpl asd annallopca 0 anbas alee + Funcién “NO” : lectura del estado inverso de un contacto (0 funcién "NO" Ten ‘probar ol wslado Invorso da la nirada E+ Eres dosstacombinacon os usia"t"sllaanadat estan er Realice una aplicacion Realice y a continuacién pruebe el programa de la aplicacién siguiente :Lagaletaocion de un local se pone en marcha (accién mandada a pantir de la Salida O 0,01), tan pronto ta ventana se ciarta (informacién suministrada por la entrada | 0,01) “Y" la temperatura lo requiera (informacién suministrada por la entrada | 0,02). 0.01 10.02 9. felt ol ostariode a anicada 1*Y" Transtoi ol asuilado do esta co inasbnala sada I 38 3-4 Conozea el lenguaje PL7-2 EIPL7-2 es el nombre dado al lenguaje grifico, utilzado para programar su TSX 17-20. Es este lenguaje el que desarroliara a todo lo largo de esta iniciacién. ‘Como usted lo ha visto en la pagina 35, el lenguaje gratico PL7-2 esta constituido por ‘esquemas de contacios y esquemas GRAFCET que usted fede introducir direc- tamente en su terminal por medio do los simbolos gralicos definidos. - Simbolos griticos del lenguaje PL7-2 El osquema de contactos esta constituido esencialmente por simbolos - de prueba : lectura del estado de un bit en general (ejemplo : lectura del estado de bit de entrada), + de accidn : ransterir el resultado de una accién légica a un bit (ejemplo: mando de una salida asociada a un érgano de mando), + de bloques funciones : funciones de aulomatismos integradios (ejemplos : tempor: zadores, contadores.!:)," - de_bloques de operaciones : {unciones de calculo integradas (ejemplos : compara- iones, operaciones aritméticas, operaciones légicas...) Elesquema GRAFCET esta conslituido esencialmente porsimbolos graticos de etapas, de transiciones, de conexiones horizontales y verticales, elc. La programacién de las Condiciones de transicién y de las acciones asociadas alas etapas se realiza por medio de los esquemas de contactos Alfinal del capitulo 3 se estudiarsin el GRAFCET y los simbolos asociados. Los cuadros a continuacién y de la pagina de al lado agrupan los simbolos graticos ulilizados en los esquemas de contactes. —_| Sonexion novizonta ; pormite prograinar los elemonias de sere. | | conexicn vertical : parmite programar os. Simbolos ratcos de “prueba | 4 “Contacto directo”; pmieba dol esiado de! bit diréecionad, 4 | -Contacto inverso” : prueba dol estado inverso de! bit cigs. CD) “Transterencia directa”: wansterencia de un resultado 6gico al bit direccionado. Imbolos = i peeeonse “Transferencia inversa” :translerencia de la inversién de un resultado acclon C7 > ge ala drectonado. a4 “Enganche de Ja bobina” : (SET) puesta a nivel Kigico “1° del bit di |recconade soln gin ost" paso a0 sob se puede elec Ir poeta obina de dsanganche “Desenoaneto dela bin: (ESET puesta av Ki “0 do | sreceonad petasutado toga gs"Y”Eipaso "+ 26a puede eee: arse pr tobi do enganet ae “Sato de programa’ (JUMP) elinando do sta bobina” puesta en" tratcos de’ | 1) | ett asoeat),movoa aonupn veda dot eleocton de a - curso wacoat del pograma eared deena por una 3 pare el ogra compendia ete ta “obin jaro" fed dostnada ora oinuola LABEL) ro Se ecu £7) | vovinas saraqunaadas” ‘en caso de cone de tension, fs rveles ES5> | Hovcos eo a ae dessonaday so salvaquardan dante a pmo SRB. [feet atc, “Funddn_Tempontne”: pounte manda, pr retard, as accones TH | covectcas jr] “Funcion Menoesiabie" ere slaborar un inpulso de una dracén cada ic "Funcidn Contador” : permile electuar contajes o descontajes de aconte- Biogues Cinintosompaion finetones || "Funcidn Programador Ciclico" » au tuncionamiento es similar al pro- ‘gramador de levas : cambia de paso en funtion de acontecimientos xlomas @ intomos al TSX 17-20. -Funcidn Rogisvo" ‘Es un conjunto de palabras"de 16 bits que permiten ‘almaconar as inlormaciones + on fia de espera: primero on erirar, primero en salir (FIFO), en pila ulimo en entrar, primero en sali (LIF). HOPER. "Funclon Gon unicaciét: permite losintercambios de bioques de textos, operaciones aliméticas” 4, x /, REM. 1+} "Operaciones ligicas”: ¥, ©, O exchisivo. “operaciones de conversiones" “BOD <-~-» Lino. Binatio <-> ASCIL “Corcimiento”: circular a derech © a izquierda “Transtero ja”: de eadenas Ue bits 0 de cuadios de "palabras" 45 ett reaaiana ei AROER ELLADDER (En espatiol Escala’), os la denominacién original Noneamericana, de fos, esquemas de conlacios (ver ligura de abajo. 2-5-1 Desglose de una cadiena de contactos Unesquemade contactos esta consti- twido por varias lineas horizontales que contienen simbolos grilicos de pruebas ("contactes"), de accion (oobinas’), etc. Esquema de cntactos Redo’ de (Ezquema LADDER) contoetos Elosquemade contacios se desqlosa, en el momento de su programacio, an “redes de contacts”. Cada red de ‘conlaciosconiione 4 lineasyy lleva una stiquota (0 LABEL). pp ELTSX 17 ejacutaelconjunto de estas redes, unatras otra, sogun elorden de su esertura, a 2 Programe una red de contactos Laved de contacios esta constituida por dos zonas zona de prueba, enlaque se debon introducir los “cantactos”ylos bloques funciones, ‘zonadeaccién, enlaque se dobenintroducirlas "bobinas" los bloques operaciones. Cada uno de los elementos ("contacios’ bobinas", etc) abe estar diigido con la in: ttuccién de programacién correspondiente. Ejemplo : un bit de entrada esta dire ccionado por Tx; un bit de salida esta diigido por :Ox.y (ver pagina 37). La prueba consiste en leer, en un orden preciso, los estados de los bts ascEiados alos “contactos"(nivelesl6gicos“0" 61). La accién consiste oh defitrlos estados de los bits asociados a las “bobinas” (niveles logicos “0° 6 1"), segin los resultados do las {unciones logicas procesadas, Lafigurade la pagina de allaco,justra una “tedde cantactos"talcomo dabe introducirse ‘en el terminal. Cada red esta direccionada por una etiqueta (o Label), que lleva un ndmoro (do 12999). 6 Mogae su 18% 17-20 bg LABEL 100 Ejempio de red de eomactos ee ee Ge ee eee AIR tind ttf tle lf] Ly type 5, Zona do Zona de prueba ‘acelon Realice unasaplicacion Realice y pruebe el programa de aplicacién de abajo :Esquema electromecanico de una “marcha/parada” con auto-alimentacién. eras At KM1 Ma, ‘eat Establezca el esquema de contactos correspondiente, asignande a las variables “At, "Ma" y “KM1" las siguientes direcciones : - Pulsador "Marcha" (0 "Ma’) : entrada 10,04, . Pulsador “Parada” (0 “At’) : entrada 10,03, - Mando (0 "KM1") : salida 00,02, Usted puede utilizar por ejemplo las hiojas : "Formularios Programacién Esquema de contactos", ref: TSX D 41741 para establecer en la misma su esquema de contactos. LABEL 3 “*Marcha/Parada con aulo-alimantacion’ 10.03.04 ‘on02 i (ee bi | tte 9 eid Hj] ll--e-e Se ete eb | pete vservacion: Es inexacto hacer una analogia directa enite lun contacto electromecanico de cient (noxnalmente abierl) y et simbolo gralico de lectura de estado directo, un contacto electromecanico de apertura normalmente cerrado) y el simbolo grilico de lectura de estado inverso [Eempio: cl puisador Paro “AV” se ilusira por medio de un conlacto de prueba de estado directo "10,03". rueve y visualice ol tuncionamiento de su wpliacion Después do haber abandonado el ‘modo progtamacién, seleccione e! ‘modo puesia a punto para visualizar el Ie rcionamiento de C1, on base a las Inettucciones de fa pagina 57, Pruebe su aplicacién accionando los interuptores t, 2, 3y 4, y siga ia evo- lueién del valor apriento del cbntador. 8-6 {Qué es una variable interna? LLasinjormaciones procasadas por su TSX 17-20'sedoliien y salvaguardan en variables ‘danominiadas :“Bits” 0 Palabras" (Conjunto de bis). Algunas de-estas variables se de- hhominan "internas" ya que los bls asociados no son asoquibles directamente : ninguna ‘eniradavsalida se encuentra asociada a un bit interno. ‘ Ls bits de entradas/salidas (ver pagina 36), no permiten memorizar ls informaciones logieas. En lecto, evolucionan constantemente de acuerdo con el programa. Para ello, existe {Los “Bits interna", anotados Bi (i#0,...»-»,285), qua permiten memorizar los res tados de ecuaciones ldgicas (0 de las informaciones binarias :"0" 01"), comespon dientes a estos eslados dados. é ‘Sv estado puede probarse varias veces en un programa y permanece salvaguardado hasta modiicacion « las "Palabras iniornas” :conjuntos de 16 bits que permiten almacenar informaciones tedilicadas en binaro, 3-5-3 Programe un Temperizador La tuneién “Temporizador permite mandar, con felardo, acciones — ewage especiticas. EI valor de ese relardo se ‘tiene por combinacisn del valor de preseleccién (TP : constanie com- prencida entre 0 y 8999) y la base de tiempo (TB: reloj situado en el TSX 17-20, cuyabase de tiempo puede ser: = ‘un minuto, un segundo, una décima de ‘segundo : “100 ms” o una centésima de segundo :"10ms") EITSX 17-20 contone 22 temporizadores numerados de 0 @ 31. La utlzacién de un temporzador se elecida de la siguiene forma ~ Seleccione el emporizador 7. ae + Programe el temporizador (ver cuacro de al lado), | Contigure et emponzadar = selaccién de la base de tiempo : TB y det valor de preseleccion : Ti Ejemplo de tuncionamienlo de un temporizador : si TiP=15 y TiB=1 seg. la temporizacion es entonces de 15 segundos. ‘Cuando las entradas E y C estan @n"0"l6gico, el valor corriente T.V es igual al valor de ‘reseleccién TP; las dos salidas D y R estan en °0"légico, Cuando las entradas Ey Cestanen"1" wi gio, el valor corrinte T,V decr * tonces de 15 2 0, una unidad en gt] an enoce | 15 ‘cada impulso de reloj Durante todo este tiempo, la salida D ‘permanece en °0"légico y la saliae R ‘Tan pronto el valor coriente TV al w ccanza e10, a salida D pasa al estado 'y la sala R pasa al estado "0". | Lo eee | Aen | [som \.a tabla a continuacisn agrupa las insirucsiones grilieas que permiten programar un {emporizader. [Representacion Graves [____Ballaelones [Eni &: (Enable) “amameno’ de 1. €1vatordepeaeiecon Ti Peale ‘argago an ato coienie Th cuando la eta € 8 ‘encuerag.3 0" Curae. anseurse deo Yormponzacin.a ‘tnada € debe esr 31" Ey Ti 7D _ |enaaa.c: Conwehrsasi 0 vaiéastin ienscurso de TE empor {adore larzalan ron la orvada G {con enraa ) ead ciTip 3°" Lapueslag 0 Go esa anada congela a vowucen ae i ‘1 urante el ranscurso do la tomporzacin, la enrada C ‘obe ponerse a" ‘Salida 0S, (Oohe)Tempozacdn\vanscurica” EIbTLO asoiado nest | = ‘sada ectaa-0rhasa tanto elvalorcorienteTV>0. Pasa” {an pron la lamponzacen ha Wanscuric. Salida (Running) "emporacin on ceo" EIB TLR asocido 9 0s: {asada esta a"1"nabia aro la eroorzacién ele enous. £lcronograma de abajo ilustra el principio de luncionaminto de un tomporizador. [5 curarie ot wnconamena aa emporzador.\a entrada Ce pone “Amameno':e | [| fret esiaco “al vate comeria Rivsoerconamdsiemanece cana | ay a ee: epee SroneTe ert crece yall Ho Rwete 8 PP lk: oma testo“ erential LS ee Otservacén : E esiado ds is T.0y Ti. asocias espaciamerte as sais Oy de un lear Toveden se pcbads per pragams (ea msma forms go bs is oe ends {eascyy. Realice una aplicacién Reale y pruebe el programa de aplicacion siguiente uilizacién del temporizador T1 ‘para un retardo en el enganche de 15 segundos (temporizador "Trabajo", loose smdas.ec J LI y == AH el ‘ons aside 0 re 5 — 3-5-4 Programe un Menoestable La funcion “Monoestable” permite claborarun impulse de duracién dada. Este impulse coresponde @ una pucstaanivelligico"!"delasalidade! — eminies bloque funcidn monoesiable, durante = tun tiempo dade. Esta duracion se btiene por fa combinacién del valor de preseleccién (Mi.P comprendido ‘entre Oy 9889) y de la base de tiempo (MiB = 10ms, 100ms, 1se9, 0 1 min). = 1 EI TSX 17-20 contiane 8 monoestables numerados de 0 a 7. La ulizacién de un monoestable se eleciua de la siguiente forma «Seleccione el manoestable Mi, 0. + Programe el monoestable {ver cuadro pagina de al lado). * Conligure el monoestable = soleccién de base de tiempo : MIB y del valor de pre- seleccién : Mi. : Ejemplo de tuncionamiento de un monoestable : si Mi,P=5 y MiB=10ms, la duracién del impulse os entonces igual a S0ms. Cuando fa entrada $ esta en “0” égico, el valor corriente Mi,V es igual a0; la salida estéren "0" logico. Cuando a entiada $ esidien“1"légico. Mi fl valor cottiente MiV decrece o1 tonces de § a0. una unidad en cada impulso de reloj (cada centésimo de 1 segunico), ori Duranie todo este tiempo, la salida Rh EnveeeS permanece en “1” gico, er Soil ‘Tan pronio @l valu’ corriente Mi.V a 2 canza0,lasalidaRipasaalnivellégico — enadaS — Le ‘said Programe su 78x17-20 ig Latabia a continuacién agrupa las instrucciones gréticas que permiten programar un ~~ Beiiniciones Entrada $:(Sian)cemensa" de Mi Tan pron a sy i I (Frente ascundens en eniaca St"). an Mi.¥" a conlinuacidn Mi. deeroce hacia 0, Salida A: (Running "monoestable un curso”. EI bi MLA. Dulso esta en 1~hasia tanto el monoestable Pasa a0" lan pronio el valor corriente Mi,V=0. Sia ah cere eee oes? | wel ico Vaweaes! loner! ome creer nny nha ani cron pwr oS Realice una aplicacién Realice y pruebe el programa de la aplicacién siguiente :el accionador del 07 = enras s_ FL intertuptor 7 (posicién trabajo y a ee continuacién posicién reposo), per- eee se : mite generar un impulso de 10 seg. en onosesaidah lasalida 6 (utlioe ¢l monoesicble M1), - ee Establezea su esquema de contactos en "Formularios Programacién Esquema de con- actos" por ejemplo. (0) tani tenon ol pata sta gio asad go": AL. Eltata ceacanert on pase dl sao igo easing iio 1; TL. " = 3:5:5 Programe un Contador La funcién “Contador” permite efec- twareontajes y descontajes de acon- tecimientos o de impulsos. Estas dos ‘operaciones pueden ser simulténeas ono. : La operacién de contaje consiste en ingrementar el vaior gorriente deicon- tador, cada vez que se presenta un impulso © un acontecimiento. La operacién de descontaje consisie en decrementar el valor corriente del contador, cada vez que se presentaun impulso 0 un acontecimiento. En el lenguaje de los técnicos de automatizacién, incrementar quiere decir afadir 1 al contenido del contador; decrementar quiere decir sustraer 1 del contenido del contador. El contaje es ciclico (detinido entre 0 y 9999) : - al final del cielo contaje, Ci,V pasa de 9999 a 0 por increment - al final del cielo de descontaje, Ci,V pasa de 0 a 9999 por decrement. EI TSX 17-20 contiene 31 contadores numerados de 0 a 30. El bloque contador posee 4 entradas y 9 salidas, Ejemplo de tuncionamiento de un contador : si la preseleccién Ci,P-=50. En mado contador, cada trente ascen- ee dente en la entrada U de contador 2990 | Sanda (UP), incrementa el valor corriente Civ. Cuando el valor corriente al- ‘canza.el valor de preseleccion : Ci Gi,Pa80, la salida D (DONE) pasa a “1, La Salida "F" : Full esia a"? Unicamente cuando Ci,V pasa de 9999 ao En modo descontador, cada frente as- cendente en la entrada D del descon- | Sokda F tador (DOWN), decrementa el valor ; Corriente Ci,V. Si el valor corriente de- or ‘crece hasta alcanzar Ci,P, la salida D i (DONE) pasa a“1*. La salida “E" : Empty esta a “1” Gni- ° Saida € camente cuando Ci,V pasa de 0 a gee : Progrann su 18X70 eh es i cuadro de abajo agrupa las insirucciones gréficas que permiten programar un contador, [Entrada A: (Resel)"puesia a cero" de C. El valor covriente CLV se pone a| cero tan pronio esta enirada se encuenira al nivel ico “1~ ‘Mientras A esi "1, el contador no puede ni conta ni des Entrada P: (Preset) “preseleccisn” de Ci. Ei valor de preseleccion C1? se| ‘en193 en al valor covrionte CLV tan pronto esta entrada se ‘encuentra al nivel logico “1°. Hasta tanto P esié a“, el ‘Conlador no puede nicontarnidescontar. + Entrada U:_ (UP) “contador. El valor cortiente CLV se incrementa en una S, ; {unidad tan pronto aparece un frente ascendenie en esta J enirada, Ei coniae pusde electuarse de 0 a 9999, de iorma rtrada. El descontaje puede electuarse de 9999 2 0,de forma cishea. - (cMPTy)“cesbordamienio descontae"econiadorvacio. Sibi ‘sociado : CUE esta a“1"tan pronto CLV pasa de 0 a 9999, : * (DONE) *praselaccién alcanzada” 0 coniador leno. EI bil ‘sociade : CLD esid 2 "1" tan pronto Ci,VaCiP. (FULL) “desboidamienio contaje’. Elbit asociad ‘Ci.F esta a "Yan pronlo Gi.¥ pasa de 9999. ‘Opservaciones : aa uiitzar simullaneamente e! contador y desconiado, es necesario programar las Cos eniracas cor- respondents. Silas dos entradas se eneuentranalnwetiagico "at msmo vempo, el valor covnerte Ci. ‘bermanecs inatterado, Los bis C10: Ci.F y Ci.€ de un contador Ci pueden brdbarse por programa. Realice una aplicacion Realice y pruebe el programa de |a aplicacion siguiente ‘ilertuptor 1, coneciado ala enirada A del eoniador, pone a cero CLV, el interruptor 2, conectado a la entrada P del contador, carga Ci,P (10) en Civ. el interruptor 3, conectado a la enirada U, inerementa el contador, interruptor 4, conectade a la entrada D, decrementa el contador, -la salida 00,01, conectadaa la salidaD del contador, se enciende cuandoCi,V=Ci,P=10. fs a

You might also like