ETD system

Electronic theses and dissertations repository

 

Tesi etd-06032018-181747


Thesis type
Tesi di laurea magistrale
Author
BELLUCCI, JACOPO
URN
etd-06032018-181747
Title
PROGETTAZIONE DI UN ACCELERATORE HARDWARE SU TECNOLOGIA FPGA PER SISTEMI DI CONTROLLO INDUSTRIALI BASATI SU PLC
Struttura
INGEGNERIA DELL'INFORMAZIONE
Corso di studi
INGEGNERIA ELETTRONICA
Commissione
relatore Prof. Fanucci, Luca
Parole chiave
  • iec61131
  • fpga
  • plc
Data inizio appello
22/06/2018;
Consultabilità
parziale
Data di rilascio
22/06/2021
Riassunto analitico
Il controllore a logica programmabile o programmable logic controller (PLC) è un computer per industria specializzato che esegue un programma ed elabora i <br>segnali provenienti da sensori e diretti agli attuatori presenti in un impianto industriale. È un oggetto hardware componibile la cui struttura viene adattata <br>in base al processo da automatizzare. Durante la progettazione del sistema di controllo, vengono scelte le schede (moduli di I/O) adatte alle grandezze elettriche <br>in gioco.<br>Esse comunicano con il PLC tramite bus industriali (tipicamente EtherCAT o ModBus), perciò i tempi di risposta, che tengono conto di acquisizione ingressi, <br>comunicazione ed elaborazione, sono dell’ordine del millisecondo. <br>Esistono, però, alcuni campi applicativi in cui sono richiesti tempi di risposta nettamente minori (es. Safety).<br>In questa tesi, per conto di ed in collaborazione con ISAC srl, viene affrontato il problema della progettazione di un modulo di I/O con tempi di risposta molto brevi <br>e programmabile in modo indipendente dal PLC stesso per poter risultare più flessibile rispetto ad una scheda classica.La programmazione deve avvenire tramite <br>uso di uno dei linguaggi dello std.IEC 61131.<br>Quello della velocità di risposta è un problema molto sentito nell’Automazione Industriale moderna, infatti sono molte le ricerche a riguardo che <br>sono state fatte e che sono ancora in corso. <br>La miglior soluzione esistente oggi in commercio è la reVERSE Technology di B&amp;R Automation, i cui moduli I/O hanno tempi di risposta pari a 1 us. <br>In questo elabotato verranno analizzate brevemente le soluzioni ancora in fase di studio e la soluzione di B&amp;R per poi procedere con la descrizione <br>della soluzione qui proposta, che consta nello sviluppo di un Acceleratore Hardware mappato sulla FPGA già presente sul modulo I/O, nella quale è presente una FSM <br>che gestisce alcuni blocchi hardware che svolgono alcune delle funzioni tipiche dell&#39;Automazione Industriale. <br>Viene utilizzata una FPGA Lattice ECP3 da 17K-LUTs; tali risorse dovranno essere obbligatoriamente rispettate.<br>Un compilatore viene sviluppato (lato PC) per poter tradurre uno dei linguaggi tipici dell&#39;automazione (std. IEC 61131) nel linguaggio che programma la macchina. <br>Il codice macchina verrà allocato in una EPROM da 32k. Anche il codice ha, dunque, dei limiti sulle risorse sfruttabili. <br>Vengono quindi analizzati nel dettaglio il funzionamento della macchina e l&#39;algoritmo del compilatore. Si procede illustrando il comportamento di tale dispositivo <br>tramite simulazioni di alcuni casi tipici. Si dimostra che alcune funzioni tipiche possono essere scritte in funzione di operazioni semplici come <br>addizione, sottrazione, AND logico e XOR logico.<br>I linguaggi dello std. IEC 61131 che sono stati scelti per questo lavoro sono LADDER DIAGRAM e INSTRUCTION LIST.<br>La traduzione dal primo al secondo è fatta automaticamente dal software di programmazione interno all&#39;azienda, mentre il compilatore sviluppato opera la traduzione del<br>secondo in un codice macchina binario con cui è possibile programmare l&#39;acceleratore.<br>Il codice macchina generato dal compilatore è costituito da stringhe di bit, ognuna delle quali ha una lunghezza pari a 30 bit per ogni operazione semplice a 2 operandi.<br>Le stringhe vengono eseguite dall&#39;hardware una alla volta. <br>Le simulazioni mostrano tempi di risposta pari a 100ns per ogni stringa e questo costituisce un ottimo punto di partenza per futuri sviluppi.
File