Sei sulla pagina 1di 13

Programmazione dei PLC in linguaggio Ladder

Prima Parte

ITI Alessandro Volta - Sassuolo Anno Scolastico 2009/20 0

Linguaggio LADDER (linguaggio a contatti) Introduzione e concetti fondamentali

Il LADDER (detto anche linguaggio a contatti o linguaggio degli elettricisti ) un linguaggio di tipo grafico ed storicamente il primo che stato adottato per programmare il PLC, in quanto consentiva una traduzione quasi immediata tra schemi funzionali di potenza e o comando e programma per lo stesso! "elle attuali versioni, molto evolute rispetto a quelle iniziali, gli elementi principali del linguaggio sono# Elementi di tipo elettrico:

$inari (o linee) di potenza (po%er rail)! Contatti elettrici "& o "C! $o'ine di uscita (chiamate anche rel o coil)! (el interni e speciali) Contatori! *emporizzatori! +unzioni matematiche, logiche, di trattamento dati ecc) (le tipologie dipendono largamente dal modello di PLC utilizzato))

Elementi di tipo blocco funzione:


Struttura base di un programma LADDER

Il programma si articola in linee orizzontali dette rung, che si sviluppano tra i due binari di potenza sinistro e destro! ,gni rung inizia obbligatoriamente dal binario di potenza sinistro, mentre il collegamento col binario di potenza di destra spesso facoltativo (generalmente i soft%are di programmazione effettuano di default questa connessione laddove richiesta)! Ciascun rung pu- contenere contatti, bobine di uscita, blocchi funzione, rel di uscita interni o speciali ecc)) !S!"PI# # % "

(1) . $inario di potenza sinistro! ( ) ! (ung (in questo esempio presente il collegamento con il 'inario di potenza sinistro, mentre sottintesa la connessione con il destro)! (") . Contatti "& in parallelo (,()! (#) $ Contatto "C in serie (&"/)! (%) 0 (el di uscita interno! (&) 0 $locco temporizzatore)

&

'ontatti

ontatto !A " !ormalmente Aperto

I contatti sono in genere associati a dispositivi di ingresso fisicamente connessi al #L (pulsanti, interruttori, finecorsa, sensori di prossimit1 ecc), ma possono anche essere riferiti ad altri elementi come bobine di uscita, rel interni, locazioni di memoria, blocchi funzione $contatori, temporizzatori ecc%&! &d ogni contatto viene associata una variabile binaria interna alla memoria del PLC che rappresenta lo stato elettrico del contatto stesso (," ,++)! I contatti possono essere di due tipi, rappresentati dai sim'oli grafici illustrati nelle figure# ontatto !A# la corrente circola quando il contatto viene azionato (a riposo essa non circola)! ontatto ! # la corrente circola con il contatto in posizione di riposo (a contatto azionato essa non circola)!

ontatto ! " !ormalmente hiuso

(obine di uscita

'obina !A

'obina !

Le bobine $o rel& di uscita sono il modo pi2 comune con il quale si termina un rung di linguaggio ladder# come si vede infatti dalle figure esse hanno uno dei terminali collegato al 'inario di potenza destro (a volte tale collegamento sottinteso oppure viene effettuato in automatico dai soft%are di programmazione)! La bobina !A $normalmente aperta& si attiva quando nel rung corrispondente circola corrente, mentre la bobina ! $normalmente chiusa& si attiva in caso contrario! 3eneralmente le 'o'ine vengono riferite a#

uscite fisiche del #L # in questo caso determinano lo stato del dispositivo di uscita corrispondente, attraverso il quale viene comandato il relativo attuatore! Rel o aree di memoria interne al #L # in questo caso hanno la funzione di memorizzare il risultato dell4ela'orazione di un determinato rung di programma da utilizzare successivamente)

)so di contatti e bobine

I contatti e le bobine di uscita sono sicuramente le istruzioni ladder pi2 utilizzate nella programmazione dei PLC, in quanto fanno riferimento, rispettivamente, a dispositivi di input (pulsanti, finecorsa, sensori di prossimit1, fotocellule ecc)) o di output (lampade di segnalazione, elettrovalvole, teleruttori ecc,) praticamente sempre presenti in qualunque tipo di impianto! Le regole che normalmente si utilizzano per la scrittura di rung con contatti e 'o'ine sono le seguenti#

In ogni rung (che, ricordiamo, inizia sempre dal binario di potenza sinistro) pu( essere inserito un numero teoricamente illimitato di contatti, che possono essere connessi tra loro in modo da ottenere le funzioni logiche A!D e )R#

/ue o pi2 contatti connessi in serie realizzano la funzione logica A!D! /ue o pi2 contatti connessi in parallelo realizzano la funzione logica )R)

,gni rung termina generalmente con una sola bobina di uscita connessa al 'inario di potenza destro! le bobine non possono essere collegate tra loro in serie, ma si possono inserire pi* bobine di uscita in parallelo in modo che il rung le possa comandare contemporaneamente)

Esempio
(Dal manuale di programmazione del *L' +mron '*1L)
Stato bobina
,-," (.A) ,++ ," ,++ ," ,++ ," ,++ ," ,++ ," ,++ ," ,++ ," ,++ ," 1,,-,, (.A) ,++ ,++ ,++ ,++ ,++ ,++ ,++ ,++ ,++ ,++ ,++ ," ," ," ," ,"

Stato contatti
,-,, (.A) ,++ ,++ ,++

,-,1 (.A) ,++ ,++ ,++ ,++ ," ," ," ," ,++ ,++ ,++ ,++ ," ," ," ,"

,-, (.A) ,++ ,++ ," ," ,++ ,++ ," ," ,++ ,++ ," ," ,++ ,++ ," ,"

La figura mostra un rung nel quale presente una combinazione di + contatti di ingresso che comandano una bobina di uscita ( sottintesa la connessione con il 'inario di potenza destro)! I contatti e la 'o'ina vengono contrassegnati da un indirizzo che li identifica univocamente all,interno del #L #-L # p) es) 5)55 sta ad indicare il punto di ingresso 55 del modulo di input 5! 655)55 sta ad indicare il punto di uscita 55 del modulo di output 655! *enendo presente che i contatti in serie realizzano la funzione logica A!D, quelli in parallelo la funzione )R e che tutti i contatti sono di tipo !A, lo stato della 'o'ina di uscita dato dalla ta'ella di verit1 riportata a fianco)

,++ ,++ ,++ ,++ ,++ ," ," ," ," ," ," ," ,"

'ontatori a decremento

Il 'locco funzione C$T %Counter& permette di inserire nel programma un contatore a decremento con settaggio del valore iniziale! Il contatore presenta due ingressi# ount input# viene connesso al dispositivo che manda gli impulsi al contatore (p) es) la fotocellula che rileva il passaggio di una persona attraverso una porta)! ad ogni impulso presente sull4ingresso il contatore decrementa di 6 il valore corrente! Reset input# viene connesso al comando che permette di resettare il contatore al valore iniziale (p) es) un pulsante)) 7uando si inserisce un contatore in un programma si forniscono# Il numero del contatore al quale si fa riferimento (da 5 a 859: per il CP6L)! Il valore iniziale di settaggio del contatore (da 5 a 9999)) Il funzionamento del contatore descritto dai grafici riportati a fianco# ;n impulso sull4ingresso reset input pone P< = > (#.: valore corrente del contatore)! &d ogni impulso presente su count input P< viene decrementato di 6! 7uando P< = 5 il contatore si attiva, eccitando in questo modo la 'o'ina ad esso collegata! Il contatore pu- essere resettato in qualunque momento portando alto l4ingresso reset input)! >e reset input viene mantenuto alto il conteggio 'loccato)

'ontatori re/ersibili ()p0Do1n)

I contatori reversibili $/p0Do1n& permettono di ottenere sia il conteggio a incremento $/#& che quello a decremento $D)2!&! Come risulta della figura a fianco sono del tutto simili ai precedenti, ad eccezione del fatto che sono dotati di ? terminali di ingresso#

3ncrement input: conteggio in avanti $/#&! Decrement input: conteggio all,indietro $D)2!&4 Reset input: reset del contatore al valore iniziale $5.&!

Il funzionamento del contatore illustrato dai grafici a fianco#

(1) . Il valore corrente del contatore (P<) pufluttuare tra 5 ed il valore di settaggio (><)! ( ) 0 "el conteggio /# il contatore incrementa di 6 ad ogni impulso# raggiunto il valore di settaggio si ha l4attivazione del contatore al successivo impulso che ne determina l4azzeramento! (") 0 "el conteggio D)2! il funzionamento del tutto simile a quanto detto sopra, con la differenza che il contatore decrementa di 6 ad ogni impulso)

"

Esempio di utilizzo di un contatore )p0Do1n


Dal manuale di programmazione del *L' '*1L

2emporizzatori (2imer)

I timer vengono utilizzati per creare un ritardo all,eccitazione con 'recisione di 0( s rispetto all,attivazione di un segnale di comando! Il timer ha un solo ingresso, al quale va connesso il contatto che corrisponde al segnale di attivazione del timer stesso! 7uando si inserisce un timer in un programma occorre specificare# Il numero del timer ! (da 5 a 859:)! Il valore di settaggio >, che determina il ritardo all4eccitazione) Ci sono due tipi di timer, che differiscono tra loro per il valore ma@ del ritardo all4eccitazione# TI" ) 0( s * 9999 + 999(9s3 TI", ) 0( s * -../. + -../(.s! Il ritardo all,eccitazione $in secondi& si ottiene moltiplicando > per 5)6! ad esempio con > = 655 si ottiene un ritardo di 5)6s @ 655 = 65s!

Il funzionamento dei timer illustrato nei grafici riportati a fianco# (1) . 7uando il segnale di input viene portato alto il valore corrente del timer inizia a decrementare partendo da ># 6uando #. raggiunge il valore 7 il timer si attiva e rimane in 6uesto stato fino a che l,ingresso ritorna basso! ( ) . >e l4ingresso viene riportato 'asso prima dell4azzeramento di P< il timer viene resettato al valore iniziale senza che si a''ia alcuna eccitazione)

2emporizzatori /eloci (4ig5 Speed 2imer)

I timer veloci funzionano con le stesse modalit1 dei precedenti ma con valori di precisione pi* bassi# questo significa che essi sono in grado di realizzare ritardi all4eccitazione con maggiore accuratezza rispetto ai precedenti! I timer *IAB e *IABC hanno una precisione di 65ms! I timer *IABB e *IABBC hanno una precisione di 6ms! inoltre, come risulta dalla figura a fianco, per essi " (numero del timer) varia tra 5 e 6:)

(ibliografia ! Sitografia

Aassimo $arezzi #L " ontrollori Logici #rogrammabili #rogrammazione, applicazioni ed esercitazioni Dditrice >an Aarco Aanuali tecnici ,A(,"#

CP; CP6L 8uida introduttiva CP; CP6L #rogramming manual CP; CP6L 8uida di avvio rapido I manuali elencati sopra possono essere scaricati gratuitamente in formato P/+ dal sito di ,A(," I*&LI& al seguente indirizzo#

5ttp600industrial-omron-it0it05ome0default-5tml
dal quale possi'ile reperire ulteriore documentazione tecnica relativa ai PLC CP6L e altri prodotti ,A(,")