• Non ci sono risultati.

3.2 I componenti

3.2.1 Il microcontrollore

Più volte, nel corso di questa tesi, si è accennato a come sia stata affida- ta ad un dispositivo a controllo di programma, ed in particolar modo ad un microcontrollore, la gestione della singola unità di sistema. Il costo, la to- tale assenza di operazioni numericamente elaborate (divisioni, moltiplicazioni

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

etc...), e l’esiguo carico computazionale sono stati i parametri decisivi che han- no fatto propendere a favore di questa scelta, piuttosto che verso l’uso di un DSP. Oltretutto in commercio sono presenti microcontrollori che integrano già al loro interno alcune interfaccie per il collegamento diretto con le periferiche di sistema (interfaccia SPI, UART, I2C etc...), e questo ne favorisce l’impiego anche su sistemi complessi e distribuiti.

Entrando nel merito della scelta del microcontrollore, le specifiche di pro- getto e l’architettura madre del sistema sono state determinanti per la ricerca del componente desiderato. I requisiti minimi richiesti al componente sono elencati di seguito:

• Controller per la gestione del traffico di informazioni sulla rete CAN.

• Interfaccia USB per la comunicazione diretta con il PC.

• Interfaccia UART per il controllo e lo scambio di informazioni con la radio.

• Modesta capacità di calcolo.

La scelta è ricaduta sul microcontrollore AT90CAN64 della ATMEL, impie- gato anche all’interno della GCU e della dashboard unit. Le caratteristiche principali del dispositivo sono elencate di seguito:

• Throughput fino a 16 MIPS @ 16 MHz.

• 64 KB di memoria flash dedicati al firmware, con la possibilità di riservare una sezione per il caricamento del bootloader.

• 4 KB di memoria SRAM, e 4 KB di memoria EEPROM.

• Interfaccia SPI e I2C.

• 2 USART (Universal Synchronous and Asynchronous Serial Receiver and Transmitter) con baud rate fino a 1 Mbps.

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

• Controller CAN 2.0A - 2.0B, con la possibilità di gestire in parallelo fino a 15 messaggi indipendenti.

• 2 contatori a 8 bit e 2 a 16 bit.

• Convertitore ADC (SAR) a 8 canali e risoluzione 10 bit.

• Programmazione ISP.

• Package TQFP64.

Esistono altre due versioni del dispositivo: l’AT90CAN32 e l’AT90CAN128. Ciò che cambia è sostanzialmente la dimensione della memoria flash, 32 e 128 KB rispettivamente.

Il microcontrollore scelto non ha una interfaccia specifica per il collega- mento USB, ma possiede, tuttavia, due periferiche USART. Proprio una di queste è utilizzata, insieme all’integrato FT232RL della FTDI, per il collega- mento USB con il PC. L’FT232 è un chip molto diffuso nella progettazione elettronica di sistemi a componenti discreti, ed è largamente impiegato come interfaccia UART-USB. Il dispositivo ha 1 KB di memoria EEPROM, e su questa sono memorizzati i parametri di configurazione della porta USB (ad esempio la corrente massima da negoziare con il bus USB 2.0). L’FTDI mette, inoltre, a disposizione dell’utente dei driver compatibili con i più diffusi sistemi operativi (Windows, Linux, Mac OS), che trasformano la USB in una semplice porta virtuale (Virtual Com Port). Questo consente l’utilizzo di software come HyperTerminal o simili per comunicare con il PC. La seconda USART, invece, è utilizzata per la comunicazione dati con il modulo radio. Il baud rate delle USART è regolabile, e può arrivare fino a 1 Mbps. In particolare, la USART- USB comunica a 500 kbps, mentre la USART-radio lavora a 200 kbps. Questi valori sono stati scelti per rispondere ad esigenze di sistema che appariranno chiare nel proseguo.

L’AT90CAN64 integra al suo interno anche un controller CAN compatibile con le specifiche 2.0A (CAN Standard) e 2.0B (CAN Extended). Il controller è in grado di gestire contemporaneamente fino a 15 messaggi CAN con ID

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

diverso tramite opportune strutture chiamate MObs (Message Objects). Nel computo totale dei messaggi si considerano sia i messaggi in ricezione che quelli in trasmissione. Si può gestire anche un set di messaggi con il medesimo identificatore, e questo per rispondere all’esigenza di dover trattare messaggi CAN frammentati. In modo analogo al caso precedente, il set non può eccedere la dimensione massima di 15 messaggi; questo è, infatti, un limite hardware. Nell’attuale sistema di telemetria sono in uso 11 MObs, di cui dieci in ricezione e una in trasmissione (per la bidirezionalità del sistema). Il controller, tuttavia, non è in grado gestire la comunicazione sul bus CAN da un punto di vista elettrico. Le linee del bus (CAN-H e CAN-L) richiedono, infatti, tensioni di pilotaggio differenziali; il livello logico ‘0’ (dominante) è tradotto con una tensione differenziale pari o superiore a 2 V, e il livello logico ‘1’ (recessivo) è tradotto con una tensione differenziale nulla. Le tensioni a modo comune possono variare, invece, da -2 V per il CAN-L a +7 V per il CAN-H. Per questo motivo, esternamente al microcontrollore, è stato utilizzato l’integrato MCP2551 della MICROCHIP, un transceiver CAN con funzioni di driver. Uno switch esterno montato su PCB permette, poi, di inserire o meno la resistenza da 120 W per la terminazione del bus.

L’AT90CAN64 possiede anche un convertitore ADC a 8 canali e risoluzione massima 10 bit. Quest’ultimo, però, non è ad oggi utilizzato dal sistema di telemetria. Nel progetto PCB, tuttavia, è stata prevista la possibilità di utilizzare 2 canali del convertitore per eventuali acquisizioni a bordo della vettura. A discrezione dell’utente è anche possibile implemetare un filtro RC del primo ordine sulla pista che collega l’ADC al connettore dell’unità di bordo. La buona disponibilità di porte I/O (7 per l’esattezza, dalla A alla G) è un altro elemento di spicco del microcontrollore. Grazie a questa peculiarità, infatti, è stato possibile riservare alcuni pin del microcontrollore (5 V CMOS) a funzioni GPIO ausiliarie.

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

3.2.2

La radio

Tra tutti i componenti che caratterizzano la telemetria, il modulo radio è senza dubbio quello più importante. Dalle sue caratteristiche e dalle sue prestazioni, infatti, dipendono molte delle funzionalità del sistema complessivo. Si comprende bene, quindi, come la scelta del modulo radio sia stata cruciale in fase di progettazione. Anche in questo caso, la selezione del componente è stata guidata dai target di progetto rispondenti alle specifiche di sistema. In elenco, i requisiti minimi richiesti:

• Banda di frequenze possibilmente non licenzata.

• Raggio di copertura ≥ 1 km.

• Antenna esterna, per facilitare il montaggio del sistema ed evitare pro- blemi di schermatura (carene in fibra di carbonio).

• Interfaccia seriale con baudrate ≥ 57.6 kbps.

• Assorbimento in corrente ≤ 400 mA, e tensione operativa ≤ 5 V (USB 2.0).

• Dimensioni contenute e predisposizione all’installazione su PCB.

Le soluzioni commerciali che rispondono alle specifiche richieste sono nume- rose. Per restringere il campo di ricerca si è dovuto stabilire sin da subito quale dovesse essere la banda di frequenza da utilizzare. Cercando di rispon- dere all’esigenza di avere un prodotto che non richiedesse una licenza d’uso, ma che fosse allo stesso tempo regolamentata da una normativa ben precisa, la scelta è ricaduta sulla banda ISM (Industrial, Scientific and Medical) 2.4 GHz. Si tratta di una banda di frequenze assegnata dal piano di ripartizione delle frequenze di ciascuna nazione, e nasce per scopi industriali, scientifici e medici. In Italia la normativa in vigore (Art. 105 comma 1 - D.L.vo. 259 2003) stabilisce l’uso collettivo della banda ISM 2.4 GHz, purchè gli apparati siano conformi alle normativa europea (ETSI - EN 300 328). La limitazione

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

più significativa della normativa, riguarda la massima potenza equivalente ir- radiata (EIRP). Con riferimento ad un’antenna isotropica, la massima potenza trasmissiva è di 100 mW (20 dBm). In questo senso, la normativa statunitense 47 CFR 15.247 dell’organo competente in materia (FCC), è meno restrittiva; infatti, la massima potenza irradiata è di 200 mW.

Sul mercato esistono molti dispositivi che lavorano nella banda ISM 2.4 GHz, tuttavia, la scelta del modulo radio è stata circoscritta a tre modelli, simili per prestazioni e prezzo. Le caratteristiche principali sono messe a con- fronto nella tabella riportata di seguito.

Come da specifica le radio operano nella banda ISM 2.4 GHz, e tutte sono conformi allo standard 802.11 definito dall’IEEE nel 1997. Nella sua versione iniziale lo standard specifica sia le funzioni dello strato MAC (Medium Access

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

Control), che quelle del livello fisico, e fissa la velocità massima di trasmissione a 2 Mbit/s. Per quanto riguarda lo strato fisico, sono definite quattro possibili soluzioni tecniche:

• FHSS: Frequency Hopping Spread Spectrum.

• DSSS: Direct Sequence Spread Spectrum.

• DFIR: Diffused Infrared.

• OFDM: Orthogonal Frequency Division Multiplexing.

Tra queste, quella di interesse è la FHSS, in quanto caratterizza da vicino i modelli radio selezionati. Senza entrare nei dettagli, è sufficiente dire che la tecnica FHSS suddivide la banda ISM in canali aventi ampiezza di 1 MHz cia- scuno, per un totale di 96 canali; da 0 (2.400 GHz) a 95 (2.495 GHz). Tuttavia, il numero dei canali effettivamente disponibili, cosi come il numero dei salti che compongono una sequenza di hopping, dipende dall’autorità competente in ambito nazionale.

Tutti i dispositivi soddisfano i requisiti minimi dell’applicazione, e hanno un costo relativamente contenuto. Pertanto, la scelta è stata fatta principalmente sulla base delle prestazioni offerte. La decisione finale è ricaduta sul modulo LT2510 della Laird Technology. A favore di questa scelta ha pesato molto la possibilità di regolare alcuni parametri della radio, e la naturale predisposizione per il montaggio su scheda. Un altro aspetto importante, che non figura tra le caratteristiche sopra elencate, riguarda la miglior gestione delle interferenze. Infatti, in presenza di più reti che operano sulla stessa banda, e che utilizzano la medesima tecnica trasmissiva (FHSS), il modulo LT2510 può contare su un algoritmo di frequency hopping (salti di frequenza) migliore rispetto a quanto proposto dalle altre due soluzioni. Secondo quanto riportato nel datasheet del dispositivo, per ogni sequenza di hopping, il numero di slot frequenziali affetti da interferenza sono:

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

Considerando che ciascuna sequenza di hopping è costituita da ben 79 slot frequenziali, si comprende bene come l’algoritmo implementato sia piuttosto efficiente. Lo stesso algoritmo non è implementato, ad esempio, nel modu- lo AC4424, sebbene quest’ultimo sia prodotto dalla medesima azienda. La diversità è dovuta al fatto che l’LT2510 rappresenta un’evoluzione dell’AC4424. Naturalmente nel sistema di telemetria sono state utilizzate due radio, una per l’unità di bordo e una per l’unità PC. Come mostrato in Figura 3.1, al- l’interno della singola unità, ciascuna radio è in comunicazione con il proprio microcontrollore. La trasmissione dati è di tipo seriale ed utilizza l’integrato MAX3001 per compiere il salto di tensione opportuno tra i livelli logici dei due dispositivi. La USART del microcontrollore lavora, infatti, con tensioni 0-5 V, mentre la radio funziona con tensioni 0-3.3 V. L’integrato della MAXIM è un traslatore di livello bidirezionale ad otto canali, ed è adatto per sistemi in cui coesistono diverse tensioni di alimentazione. Le prestazioni del dispositivo sono garantite fino ad un rate massimo di 4 Mbps, ben oltre le esigenze del caso.

All’interno dell’LT2510 trova alloggiamento una memoria EEPROM, utiliz- zata per memorizzare la configurazione iniziale della radio. Tale configurazione interessa diversi aspetti della comunicazione radio, dalla potenza trasmessa, all’architettura delle rete wireless, e definisce le caratteristiche della comuni- cazione seriale. Per accedere ai parametri di configurazione della radio occorre attivare una modalità comandi. Quest’ultima può essere attivata in hardware, portando a 0 V il pin CM D/Data, oppure via software tramite un’istruzio- ne di tipo AT. In modalità comandi, la lettura e la scrittura dei parametri in EEPROM è effettuata con due semplici istruzioni sempre di tipo AT. Per quanto riguarda la comunicazione seriale, i parametri di configurazione più si- gnificativi riguardano la velocità di comunicazione e il controllo del flusso dati. Come accennato in precedenza, la velocità della porta seriale è stata fissata a 200 kbps, un rate non standard. Questo valore scaturisce dall’incontro di due diverse esigenze: da una parte la necessità di avere un valore quanto più alto possibile per massimizzare il throughput di sistema, dall’altra il vincolo

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

stringente (imposto dalla USART del microcontrollore) di avere un valore che fosse sottomultiplo di 1 Mbps. Per ottenere il valore desiderato, si è intervenuti sui parametri di configurazione Baud_E e Baud_M, secondo l’espressione:

Baud Rate = (256 + Baud_M ) ·



2Baud_E· (26 · 106)

228

riportata nel datasheet del componente. Il baud rate ottenuto scegliendo Baud_M=248 e Baud_E=12 è stato 199.99 kbps. L’errore percentuale de- rivante da questa scelta, e dovuto alla diversa velocità delle due periferiche (radio e microcontrollore), è pari a:

Error% = 1 − Baudrateclosestmatch Baudrate ! · 100 = 1 − 199.99 200  · 100 = 0.005% ben al di sotto dello 0.5%. Quest’ultimo è, infatti, l’errore massimo che la USART del microcontrollore è in grado di accettare.

L’altro aspetto peculiare dell’interfaccia seriale della radio è il controllo del flusso dati. Questo è basato sulla gestione dei segnali di handshake CT S (Clear To Send) e RT S (Request To Send), entrambi attivi bassi. Brevemente il segnale (output) CT S indica che la radio è in grado di ricevere nuovi dati dalla periferica remota, mentre il segnale (input) RT S indica che la periferica remota (microcontrollore) è in grado di trasmettere nuovi dati alla radio. Nel progetto hardware del sistema si è pensato bene di usufruire anche di questa funzionalità aggiuntiva, collegando appunto CT S e RT S a due pin del mi- crocontrollore secondo lo schema mostrato in Figura 3.2. Per concludere la trattazione sulla comunicazione seriale, va detto che il protocollo di comuni- cazione radio-microcontrollore prevedere una trasferimento dati 8n1 (8 bit di dati, nessun bit di parità, 1 bit di stop) di tipo asincrono full-duplex.

Come anticipato in precedenza, l’architettura della rete wireless, e la gestio- ne del canale di comunicazione, sono gli altri aspetti che è possibile definire nella configurazione di partenza della radio. Il modulo LT2510 utilizza una struttura di rete tipo server-client. Per ciascuna rete è necessario avere un dispositivo configurato come server e i rimanenti come client. Nello specifico di questo lavoro di tesi, l’unità PC rappresenta il server della rete, mentre

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

Figura 3.2: Collegamento hardware tra la radio e il microcontrollore.

l’unità di bordo è il client. Questa configurazione non è stata scelta in modo casuale, ma è servita a semplificare la procedura con la quale viene cambiato il canale di comunicazione fra le due radio. Sul client, infatti, è attivabile la funzione di auto-channel che permette la sincronizzazione automatica con il canale del server. Tutte le volte che il server cambia canale, il client si sin- cronizza su questo in maniera automatica, evitando che l’operazione venga eseguita tramite comando. La stessa procedura sarebbe stata più complicata se si fossero invertiti i ruoli tra le due unità del sistema. Nell’architettura di rete è poi possibile stabilire se la comunicazione deve essere broadcast oppure indirizzata tramite MAC address. Sempre dai parametri in EEPROM è pos- sibile definire, poi, se la comunicazione deve avvenire in modalità half-duplex oppure full-duplex. Nel sistema di telemetria la comunicazione è full-duplex, e sfrutta il MAC address per l’instradamento dei pacchetti radio.

In memoria sono presenti anche numerosi parametri per il setting del link radio, che per brevità elenchiamo di seguito:

• Selezione della potenza trasmessa: da 11 dBm a 21 dBm (senza antenna).

• Selezione del canale di comunicazione, con la possibilità di attivare l’op- zione di auto-channel.

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

• Selezione del data rate RF: 280 kbps o 500 kbps.

• Lunghezza in byte del pacchetto RF.

• Numero dei tentativi di ritrasmissione di un pacchetto dati.

• Password di sistema per la protezione dei dati.

Nell’attuale configurazione di sistema, il data rate del canale radio è di 280 kbps e il numero delle ri-trasmissioni è fissato a 3. Il canale di partenza è il 5, e la potenza trasmessa è di 21 dBm. A questo valore deve essere sommato poi il contributo in dBi dell’antenna utilizzata, espresso come guadagno rispetto ad un’antenna isotropica secondo la relazione:

dBi = 10 log Potenza ricevuta antenna

Potenza ricevuta antenna isotropica

Le antenne utilizzate dal sistema di telemetria hanno un guadagno di 2.5 dBi, e sono dotate di connettore RPSMA. A tal proposito si è reso necessario l’ac- quisto di due cavi adattatori U.FL-RPSMA per il collegamento con i moduli radio. I parametri in EEPROM, come è stato più volte ribadito, caratterizzano la configurazione di partenza della radio, e in quanto tali vengono letti ad ogni accensione del dispositivo o dopo un reset di sistema. Tuttavia, è possibile cambiare in corso alcuni parametri del link radio sfruttando momentaneamen- te la RAM interna al dispositivo, in cui è replicata anche la configurazione di partenza della radio. Analogamente ai parametri della EEPROM, anche i parametri della RAM sono accessibili solo in modalità comando, e sono attivi sino a che il dispositivo non viene spento o resettato.

3.2.3

La sezione di alimentazione

La rete di alimentazione rappresenta una parte importante del progetto hardware. All’interno del sistema sono presenti sia componenti alimentati a 5 V che a 3.3 V. Le sorgenti di alimentazione sono, invece, diverse a seconda del- l’unità di sistema considerata. L’unità di bordo, infatti, riceve l’alimentazione dalla batteria della macchina, mentre l’unità PC è alimentata per mezzo di

3.2. I COMPONENTI CAPITOLO 3. L’HARDWARE

una porta USB. La tensione di batteria tipicamente varia tra i 12 V e i 14.4 V ed è soggetta a picchi di tensione spesso significativi a causa della disconnes- sione dell’alternatore che normalmente tiene in carica la batteria. Per questo motivo, nell’ambiente automotive è comune l’uso di dispositivi basati su diodi in grado di limitare le sovratensioni del circuito di alimentazione, e in grado di proteggere il sistema dalle inversioni di polarità che potrebbero verificarsi accidentalmente. La tensione erogata da una porta USB 2.0, invece, è di 5 V e tipicamente viene fornita in modo regolato dal PC. Il budget di corrente, tuttavia, è limitato a 500 mA.

Alla luce delle considerazioni fatte, si è dovuto pensare ad una soluzione che permettesse di ricavare una tensione regolata di 5 V dalla tensione di bat- teria. L’idea è stata quella di utilizzare un regolatore switching caratterizzato da un’ampia dinamica d’ingresso. La scelta è, quindi, ricaduta sull’utilizzo del regolatore switching LM2575 della National Semiconductor, a cui è stato affiancato l’integrato RBO-40 della STMicroelectronics, un dispositivo auto- motive progettato per limitare le sovratensioni di batteria e prevenire guasti causati dall’inversione di polarità. Questa soluzione è, tuttavia, necessaria solo nell’unità di bordo. Poichè il progetto hardware delle due unità di sistema è unico, le due linee a 5 V (quella in uscita dalla porta USB, e quella in uscita dal regolatore LM2575) devono convergere in un punto del circuito stampato. Seb- bene questo costituisca un errore concettuale (due uscite in bassa impedenza collegate tra loro), nella realtà costruttiva del sistema il conflitto non sussiste, in quanto le due sorgenti non si troveranno mai ad operare contemporanea- mente nella medesima unità. La tensione 3.3 V è ricavata dalla 5 V mediante il regolatore switching MCP1603 della MICROCHIP. La scelta è ricaduta ancora una volta su un regolatore switching, piuttosto che su un regolatore lineare, perché la corrente necessaria a garantire il funzionamento della radio è signi- ficativa (190 mA in trasmissione), ed il budget della porta USB è limitato (si richiede un’elevata efficienza). In tal senso, risulta significativa una stima del massimo consumo di corrente, almeno per l’unità PC dove l’assorbimento è una specifica di progetto.

3.3. SCHEMA COMPLETO CAPITOLO 3. L’HARDWARE

Componenti a 5 V:

• Microcontrollore 30 mA.

• Convertitore UART to USB 15 mA.

• Traslatore di livello 1 mA.

Componenti a 3.3 V:

• Radio 190 mA.

Totale circa 170 mA (nell’ipotesi che il regolatore si comporti come un trasfor- matore ideale nel salto di tensione tra 5 V e 3.3 V).

Considerando anche l’efficienza reale del regolatore MCP1603 (non inferiore all’80%) il budget di corrente massimo richiesto dall’unità PC non supera mai i 200 mA, ben al di sotto dei 500 mA disponibili.

3.3

Schema Completo

A questo punto della trattazione è possibile definire con maggior dettaglio l’architettura madre di sistema già presentata ad inizio capitolo (Figura 3.1). Lo schema in Figura 3.3 mette insieme tutte le informazioni sin qui acquisite, e come prima tiene conto delle funzionalità del sistema nella sua interezza. La Figura 3.4 è ancora uno schema del sistema di telemetria, ma visto da un’altra angolazione. In questo caso l’attenzione è spostata sulle strutture delle singole unità, che chiaramente comprendono solo un sottoinsieme dei dispositivi presenti nell’architettura madre.

La Figura3.4 mostra, inoltre, come le due sezioni di alimentazione a 5 V siano disgiunte, a riprova del fatto che non esiste alcun conflitto interno fra le reti di alimentazione come lascerebbe pensare, invece, lo schema elettrico del progetto (Appendice A).

3.3. SCHEMA COMPLETO CAPITOLO 3. L’HARDWARE

3.3. SCHEMA COMPLETO CAPITOLO 3. L’HARDWARE

3.4. REALIZZAZIONE PCB CAPITOLO 3. L’HARDWARE

3.4

Realizzazione PCB

Una fase importante della progettazione hardware di sistema è stata la de-

Documenti correlati