Questo sito utilizza cookie di terze parti per inviarti pubblicità in linea con le tue preferenze. Se vuoi saperne di più clicca QUI 
Chiudendo questo banner, scorrendo questa pagina, cliccando su un link o proseguendo la navigazione in altra maniera, acconsenti all'uso dei cookie. OK

Progetto di un controllore Canbus per applicazioni in ambito automotive: sintesi Vhdl ed implementazione su Fpga

L’obiettivo di questa tesi è quello di realizzare, su un dispositivo di tipo Field Programmable Gate Array (FPGA), un controllore per reti basate su protocollo CANbus (Controller Area Network); tale controllore è destinato ad essere incorporato in un sistema digitale già esistente composto da un microcontrollore, una FPGA ed un transceiver.
Questo progetto nasce nel contesto di un programma di collaborazione fra il Dipartimento di Ingegneria dell’Informazione ed una società attiva nel settore della diagnostica automotive: la BrainBee S.p.A. di Parma.


Il prodotto a cui questo lavoro di tesi fa riferimento è uno “scan-tool”, cioè uno strumento di diagnosi auto capace di dialogare con le centraline elettroniche presenti nell’autovettura. L’esigenza a cui si vuole rispondere è quella della massima flessibilità, in modo che lo stesso strumento possa essere utilizzato con i più diversi tipi di centraline automobilistiche presenti sul mercato. Le caratteristiche delle logiche programmabili si prestano bene a questo scopo: all’interno dello scan-tool vi è un microcontrollore ed una FPGA Xilinx SpartanXL 10XL. A quest’ultima sono delegati i compiti di interfaccia riconfigurabile tra il bus della centralina ECU (Electronic Control Unit) che provvede i dati da analizzare e il microcontrollore del sistema di diagnosi.

Un tale sistema è nato con l’intento di sfruttare al massimo la versatilità e i vantaggi delle FPGA, sia in termini di programmazione che in termini di risparmio di risorse hardware. In pratica l’FPGA consente al microprocessore di dialogare con bus di tipo diverso semplicemente riprogrammandola, senza richiedere elettronica aggiuntiva.

Il presente lavoro, in particolare, si riferisce al protocollo CANbus, introdotto e standardizzato dalla Bosch per applicazioni industriali e di recente utilizzato da diverse case automobilistiche per le vetture di ultima generazione. La specifica funzione del controllore che si è sviluppato è quella di ricevere i dati in transito sul bus e trasmetterli al microcontrollore a bordo dello scan-tool.

L’implementazione esaustiva di tutte le funzionalità previste dallo CANbus avrebbero richiesto tempi di progettazione, realizzazione e collaudo eccessivi (e sicuramente non compatibili con la durata di un lavoro di tesi). Tuttavia, le specifiche funzionali dell’applicazione permettono di identificare un sottoinsieme significativamente ridotto di funzioni indispensabili: per esempio, essendo ragionevole ipotizzare il collegamento di una sola vettura alla volta allo scan-tool, non è necessario implementare la parte del protocollo relativa alla gestione di accessi multipli e collisioni, ma è possibile limitarsi alle sole funzioni necessarie a realizzare un collegamento punto-punto fra scan-tool e la centralina dell’auto. L’identificazione del sottoinsieme minimo di funzionalità richieste ha consentito un consistente risparmio sia sui tempi di progettazione, sia sulla complessità del sistema realizzato e quindi sulle risorse hardware necessarie, consentendo di utilizzare componenti programmabili di capacità relativamente ridotta e quindi di costo contenuto.

La prima parte di studio ha riguardato le caratteristiche del bus CAN, concentrando l’attenzione sullo stato dell’arte nel campo delle applicazioni automobilistiche. Si è passati poi alla comprensione, in dettaglio, del protocollo CANBUS. Una volta compreso il metodo di comunicazione si sono formulate le ipotesi limitative sul protocollo relative alla particolare applicazione di nostro interesse, arrivando alla definizione delle specifiche funzionali del sottosistema da realizzare.
Per la sintesi del controllore si è utilizzato il linguaggio di descrizione hardware VHDL, avvalendosi del tool di sviluppo per FPGA Xilinx Foundation 3.1i. Grazie a questo tool di sviluppo si sono potute realizzare tutte le fasi della progettazione: la descrizione tramite VHDL delle parti del progetto, la sintesi e relativa simulazione funzionale per terminare con la sua implementazione e simulazione temporale.
L’intero progetto è stato suddiviso principalmente in quattro parti: ricevitore, trasmettitore, sincronizzatore e interfaccia. Ognuna di esse interagisce con le altre tramite segnali interni al controllore stesso.
Nella descrizione tramite linguaggio VHDL delle varie parti del controllore si è ricorso ad una descrizione funzionale basata su macchine a stati finiti: tale descrizione ad alto livello di astrazione rende l’intero progetto più flessibile a possibili sviluppi futuri, permettendo l’integrazione di nuove funzionalità in un futuro progetto e semplificando le azioni di aggiornamento e manutenzione.

Mostra/Nascondi contenuto.
Introduzione

Tesi di Laurea

Facoltà: Ingegneria

Autore: Francesco Cozzi Contatta »

Composta da 119 pagine.

 

Questa tesi ha raggiunto 10339 click dal 20/03/2004.

 

Consultata integralmente 10 volte.

Disponibile in PDF, la consultazione è esclusivamente in formato digitale.