Encoder – esempi e esercizi testati dall’ing. Gottardo

Acquisizione encoder assoluto modello TRelettronic GmbH PROFINET 01/10/2022

Progetto sviluppato con TIA PORTAL V18 il giorno 11 marzo 2023.

Questo esempio mostra la configurazione di un Encoder che dispone di porta di comunicazione PROFINET direttamente sul device, quindi non mostra i fili canonici che portano le onde quadre delle fasi, ma un solo cavo munito di connettore RJ45.

scarica il manuale dell’encoder TRelectronic manuale encoder tr electronic profinet

Scarica pdf per encoder assoluto marca generica Profinet_Manual_STEP7TIA

Vai alla pagina dedicata Encoder assoluto Profinet

Encoder TRelettronic conettori

l’etichetta del dispositivo indica le caratteristiche di base, ad esempio il tipo di interfaccia, in questo caso PROFINET -IO e il numero di impulsi Steps=8192 in modalità 2x e Revolution=4096 in modalità 1x.  Nel primo caso legge entrambi i fronti dell’onda quadra interna mentre nel secondo il solo fronte di salita.

Etichetta encoder TRelettronic

L’assegnazione dell’IP al dispositivo avviene semplicemente imponendolo nella vista di rete di TIA PORTAL quello desiderato. Al caricamento dell’Hardware verrà impostato il valore facendo attenzione a non causare conflitti con altri dispositivi pre esistenti nella medesima rete dell’automazione.  L’encoder corretto, in un pianto reale dovrebbe trovarsi nel documento  P&ID o nello schema elettrico.

rete encoder

L’encoder è di tipo assoluto, ovvero rispetto a uno zero, impostabile anche da software, produce un offset che può essere positivo o negativo.

Il valore viene restituito su una variabile DINT definita in un DB globale.

La lettura è possibile solo dopo la corretta installazione dei file GSD distribuiti dal costruttore del device.

scarica i file GSD per TIA V17 GSDML-V2.35-TR-0153-PNRotative2-20210223

L’istallazione dei file descrittivi permetteranno anche la visualizzazione dell’immagine, fornita come bitmap, dell’oggetto in vista di rete.

Pacchetto completo con altre versioni dei GSD e scaricabile da questo link:

gsd encoder TR electronic

Il programma troverà correttamente il device nella rete PROFINET solo se il suo nime è univoco, quindi è necessario, al fine di spegnere la luce rossa lampeggiante indicate errore di comunicazione, eseguire l’assegnazione del nome al nodo come nell’immagine:

assegna nome a encoder

assign device name

Questo si esegue dalla vista di rete facendo tasto destro e proprietà del device quando posto online.

Il programma dimostrativo eseguito con TIA PORTAL V17 è scaricabile da questo link, a cui si potrà eseguire “Change device” della CPU per adattarlo al modello di cui si dispone.

Scarica programma di esempio -> Encoder profinet

Scarica programma testato 28/01/2023 => Encoder PN Encoder PN 28/01/2023

La configurazione del device, richiede l’aggiunta dei moduli di comunicazione come mostrato nell’immagine:

impostazione hw

Attenzione: Per visualizzare gli Standard Telegram da 81 a 87, cliccare prima su “Module” seguito da “PNO Encoder Profile”, la lista dei Telegram compare quindi al posto dei “TR module” visualizzati sull’immagine sovrastante.

vista dispositivo

La configurazione per la lettura della velocità della parte mobile installeremo il submodule “TR-Module Velocity” mostrati nell’immagine.

La semplice lettura della posizione potrà effettuarsi semplicemente leggendo l’indirizzo ID68 con un comando MOVE.

lettura posizione

 

Per leggere alcuni registri in più si potrà fare come mostrato sotto

vista progetto


Acquisizione encoder modello E620 2000 10 24 R8 PP2 con S7-1200.

Questo programma è stato sviluppato al corso di programmazione avanzata dei PLC Siemens tenuto a Padova. Fa parte di un contesto più grande che è stato tolto per focalizzare l’attenzione sull’attivazione dell’HSC.

La piattaforma software è il TIA Portal V17 basic, ovvero i CD contenuti nello starter KIT distribuito da Siemens con la CPU S7-1200 modello 1212C-AC/DC/Relè. L’esatta versione firmware è visualizzabile nella configurazione hardware.

Attenzione: Nelle proprietà della CPU potrebbero essere impostati dei filtri sugli ingressi digitali, utili come anti rimbalzo o anti segnale spurio, che introducono una sorta di “delay” sull’acquisizione del segnale.  Supponiamo che il nostro encoder fornisca 2000 impulsi al giro ma che i filtri impostati abbiano un tempo di reazione troppo lento rispetto alla frequenza che dobbiamo leggere. Il risultato sarà che l’eventuale valore caricato su una variabile, su un DB o visualizzato sul touch pur reagendo al movimento dell’encoder riporteranno un valore anche di molto in inferiore. Più lungo è il filtro e più sballato sarà il valore letto.  Quindi andiamo nella sezione proprietà della CPU, digital I/O, digital inputs, e canale per canale impostare 20u sec (microsecondi).

Per chiarire le funzioni HSC scarica questo pdf -> ufficial HSC siemens.

Encoder_HSC

Il DB di istanza contiene le seguenti variabili:

tag

Il programma funziona solo se sono state effettuate le corrette configurazioni hardware degli HSC. Queste saranno:  L’abilitazione mettendo lo spunto su HSC1 (o gli altri canali) nel menu, sotto a generale (della CPU), HSC1 ..”attiva questo contatore veloce”.  A seguire, sulla voce funzione, impostare come da immagine sottostante:

funzione

Alla voce “Resetta i valori iniziali” come da immagine:

resetta valori

la voce configurazione evento, al momento la lasciamo libera. Alla voce ingressi Hardware impostiamo gli ingressi fissi come da immagine:

Indirizzi preinpostati

Impostare gli indirizzi di I/O come da immagine:

indirizziID

scarica il programma di esempio. encoder

Scarica versione del programma con pannello operatore KTP400 e contatore A/B. Questo programma è stato sviluppato nella lezione del 18/06/2017. Si vuole controllare un asse lineare progettato con una barra filettata che per ogni giro avanza di 1,25mm, ovvero ogni 2000 impulsi dell’encoder utilizzato. Nel touch viene richiesta la quota di posizionamento dell’asse in mm con due decimali dopo la virgola, ad esempio la quota 5,65 mm viene prima moltiplicata per 100 (allo scopo di togliere la virgola) e poi convertita dal formato Real to Double Int. Viene spatata in un merker Double. Viene convertita dalla funzione calcolate in 9040 impulsi.

Immagine_calculate

touch_quote_encoder

Il comparatore della quota inserita è impostato nell’FC1, e si tratta di un esercizio.

Nella realtà la comparazione di quota è effettuata tramite interrupt nell’HSC modificando le sue proprietà nell’hardware. -> Encoder con Touch e quota stop su IP ciclico.

scarica il databook dell’encoder Encoder_databook

Acquisizione encoder e visualizzazione su bargraph.

Questo programma è stato realizzato alla lezione del 3 Marzo 2018 presso il laboratorio della G-Tronic Robotics, docente Marco Gottardo e discenti Marco Dal Zotto e Nardello Thomas.  L’encoder usato è il modello delle esperienze precedenti Encoder_databook.

IL sistema si compone di due PLC 1212C AC/DC/Rly e un HMI KTP400basic posti in rete profinet.

Il programma realizza: Acquisizione dell’encoder nel PLC numero 1, scalatura e normalizzazione tramite un FB scritto in SCL che implementa la funzione y=mx+q , Ricevitore del dato normalizzato nel PLC 2 tramite comando GET di profinet, accensione e spegnimento di 6 pilot lights a seconda del range del dato compreso tra 0.0 e 100.0

scarica il programma per studiarlo e testarlo -> EncoderBarGraph

Versione del programma precedente sviluppato da Nardello Thomas.

HMI

Scarica il programma completo in pdf ►Encoder_Via_Profinet

scarica il programma completo archiviato per TIA V14 ►Encoder_Via_Profinet

Programmazione Servomotore per valvola modulante controllata da encoder.

L’encoder dell’esempio precedente viene ora impiegato come manopola per posizionare una valvola modulante.  L’angolo eseguito manualmente dall’operatore, viene riprodotto da un motore passo che controlla la serranda della valvola di modulazione del flusso. Il motore stepper, bipolare, compie un giro ogni 100 impulsi ovvero ogni 25 matrici di passo intero. L’interfaccia è un doppio ponte H a transistor il cui schema elettrico è presente nel testo Esercizi di programmazione di PLC. L’encoder ha invece una risoluzione di 2000 impulsi al giro quindi è necessaria una normalizzazione eseguito da una funzione di scala come mostrato nell’esempio.  Esistono due contatori, il primo scandisce la matrice di passo 0->3, mentre il secondo riceve come preset il valore dall’HSC. Questo è settato come nell’esempio precedente. L’oscillatore è stato impostato a una velocità opportuna affinchè l’esercizio sia realizzabile anche se siamo in possesso di un PLC 1212C AC/DC/RELE, ovvero con le uscite elettromeccaniche. Vedrete comunque un movimento dello stepper stupefacentemente fluido e non troppo lento. Invertendo il movimento della manopola di controllo anche lo stepper inverte  il senso di movimento, riducendo la portata del fluido nelle eventuali condotte.

normalizzatore

download programma completo TIA V14 -> Encoder_Valvola_Modulante

Seconda versione TIA V14 -> Servovalvola_2

https://www.youtube.com/watch?v=gHGmcHKJZWo&feature=share

scarica pacchetto programma per TIA V14 e documento stampabile ->Servovalvola_2

Scarica una seconda versione TIA V15 -> Controllo valvola con encoder_1_20200305_1150


Encoder comanda decoder software via profinet (gruppo valvole remoto).

Il sistema si compone di due PLC, il primo acquisisce l’encoder, quindi ne viene abilitato l’HSC, e si cura della trasmissione via Profinet al PLC remoto. Il PLC remoto contiene una rete di decodifica che pilota un gruppo di quattro valvole in funzione della tabella qui riportata.

tabella decodifica

il pannello operatore viene progettato con questa grafica:

HMI

Scarica il programma completo per TIA V14. -> ES23_Sequencer_Controllo_Encoder


Animazione pantografo

Utilizza encoder e animazione orizzontale.

Corsi PLC Gottardo Animazione del pantografo

Vai alla pagina della spiegazione dettagliata e download programma


Encoder PROFIBUS modello TR-ECE-TI-D-0017

Questo modello di encoder è piuttosto datato ma ne è molto utile la comprensione e lo studio, infatti molti modelli recenti funzionano allo stesso modo.

Nell’esempio qui riportato l’encoder è collegato a una CPU S7-300 modello 314 2-DP impostata come master del bus PROFIBUS, mentre l’encoder è impostato da slave.

Scarica il pdf del databook dell’encoder Assoluto Profinet.manuale encoder tr profibus

TR Electronics Encoder ZE-65-M TR ZE 65M Art. Nr171-50066 Encoder

L’encoder ha tre connettori circolari, uno per l’alimentazione a +24V DC, up per il cavo viola PROFINET in ingresso e un per lo stesso cavo in uscita.

TR-Electronic-HE65M-205-00059-Encoder-VersTR-ECE-TI-D-0032-V0001

Per inserire il dispositivo nella vista di rete bisogna istallare i GSD files scaricabili da questo link: GSD TR-ECE

GSD installati

Installiamo i GSD in questa maniera:

Encoder PROFIBUS

Associamo il numero di nodo e le tipologie Master e slave nei device, successivamente si mette il telegramma di comunicazione nello slot, come da immagini.

GSD da installare

Nella vista del dispositivo -> proprietà … inseriamo il telegramma quindi diventano accessibili gli indirizzi.

GSD installati slot

Questo Telegramma mostra la posizione raggiunta dall’encoder su ID50, come mostrato sotto:

Variabile in DB1

il segmento che legge la double int è questa:

leggi posizione

 

 


back to PLC programming page