Symbio

Notice to visitors from outside Italy: using google chrome browser as the site will be translated automatically. Thanks
How to add the tachometer, the thermometer and the voltmeter to the scooter dashboard.
symbio
Symbio è il dispositivo open-source basato su Arduino che aggiunge funzionalità al cruscotto dello scooter senza compromettere l’estetica del quadro strumenti. Le funzioni aggiuntive sono: ora e data, temperatura esterna, voltmetro, contagiri e conta km parziale. Per mantenere inalterata l'estetica del cruscotto, l'espansione è applicabile su tutti gli scooter che montano questo orologio (la forma dei tasti e il colore potrebbe variare leggermente):
symbio
misure orologio: 5,5 x 2,5 x 1,2 cm

Codice OEM orologio originale: Aprilia AP8212406 - Piaggio 580886 - Malaguti 17814800 / 17808300


I modelli di scooter su cui Symbio si adatta sono:

- Aprilia Scarabeo (Rotax) 125/150/200;
- Aprilia Scarabeo (Piaggio)250GT;
- Aprilia Amico 50 (dal 90 al 98);
- Aprilia Gulliver 50(dal 95 al 98);
- Aprilia Atlantic125/200/250 (dal 2003 al 2006);
- Aprilia Atlantic 125-250 (dal 2006 al 2008);
- Aprilia Atlantic 400-500 Sprint (dal 2005 al 2008);
- Aprilia Leonardo 125/150/250;
- Malaguti Centro 50/125/160;
- Malaguti Blog 125:
- Malaguti Madison 125/150;
- Malaguti F10;
- Malaguti F12;
- Malaguti F15;
- Piaggio Ape 50;
- Piaggio Liberty;
- Piaggio X7 125;
- Piaggio Carnaby 125 (2007-2010);
- Piaggio Fly;
- Vespa LX 50/125/150 (dal 2007 al 2011);
- Vespa GT 200 (1998-2005);
- Vespa GTS 125 (2009-2015);
- Vespa GTS 300 (2010-2013);

Mentre per tutti gli altri èpossibile procedere ugualmente, ma apportando le necessarie modifiche o trovando altre soluzioni.
Sommario:

Illustrazione funzioni e costruzione del circuito

Non mi dilungherò molto su cos'è e cosa può fare Arduino, in rete si trova tutto, piuttosto basti sapere che si tratta di un micro controllore, il quale se opportunamente programmato e cablato, può fare davvero tantissime cose.

Allo scopo ho usato Arduino UNO ed ho progettato una shield, nome specifico per identificare le schede espansioni di Arduino, necessaria per concentrare tutti i componenti e connettere le periferiche interessate. La shield non solo semplifica il lavoro, ma rende il progetto molto più compatto, robusto e ordinato.

Funzionamento: il progetto grazie ad un apposito programma, scritto da me e chiamato in gergo sketch, andrà a gestire ciclicamente le funzioni aggiuntive. La ciclata sarà effettuata agendo su un pulsante posizionato ad esempio sul manubrio, e i dati saranno visualizzati su un piccolo oled da montare al posto dell'attuale modulo orologio. Le funzioni aggiunte sono: ora e data, temperatura esterna, voltmetro, contagiri e conta km parziale.

Schema a blocchi funzionamento programma a 4 funzioni:
schema a blocchi symbio
Schema a blocchi funzionamento programma a 5 funzioni:
schema a blocchi symbio
Vediamo nel dettaglio le funzioni di Symbio:

Data, ora e giorno corrente: grazie ad un modulo RTC (real time clock) DS3231, che andremo a collegare ad Arduino tramite la shield, avremo sempre a disposizione data, ora e giorno corrente. Grazie alla batteria tampone ricaricabile, il modulo funzionerà anche con lo scooter spento e batteria staccata. L'autonomia della sua batteria è garantita per moltissimi mesi.

Feature: funzione automatica cambio ora solare/legale e viceversa.

Nota: se dovesse essere necessario reimpostare l'ora in seguito allo scaricamento della batteria tampone, sarà necessario connettere Arduino al PC e sincronizzarlo utilizzando un semplice programmino. In fondo alla pagina trovate le istruzioni e il software da scaricare.

Temperatura: utilizzando il sensore della Dallas DS18B20, andremo a misurare la temperatura.

Feature: dai 3 °C in giù, sul display compare un * ad indicare il pericolo ghiaccio.

Nota: la precisione della lettura, dipende dalla posizione di montaggio della sonda. Quest'ultima deve essere posizionata il più lontano possibile da fonti di calore quali motore o radiatore e non esposta direttamente ai raggi solari.

Voltmetro: grazie ad un circuito dedicato, diremo ad Arduino di misurare la tensione della batteria.

Feature: sotto i 12.2 V sul display compare una spia ad indicare che la batteria dello scooter è quasi scarica. Inoltre nel circuito ho previsto un trimmer per la prima taratura.

Contagiri: sfruttando una funzione nativa del core di Arduino e grazie ad un circuito di condizionamento del segnale prelevato dal pick-up, andremo a misurare il periodo degli impulsi emessi e poi grazie a delle formule otterremo il numero di giri/min.

Feature: ho previsto che il contagiri abbia una risoluzione di 100 giri/min. Cioè sul display visualizzeremo letture del tipo: 1000; 1100; 2100; 3400 ecc ecc cioè a step di 100 giri/min.

Inoltre, a motore spento o ingresso contagiri non cablato, il sistema passerà in automatico alla funzione successiva.

Conta km parziale:
utilizzando un'altra funzione nativa del core di Arduino, un magnete al neodimio e un semplice contatto reed, andremo a contare i conta km parziali. Al bisogno sarà possibile resettare il conteggio semplicemente premendo per più di 2 sec. il solito pulsante predisposto sul cruscotto.

La fase successiva, è stata quella della realizzazione di una PCB con le stesse dimensioni di Arduino UNO: 68.6 x 53.3 mm. L'idea, è stata quella di realizzare una vera e propria shield da montare sopra le due file di strip femmina di cui è dotato Arduino. Allo scopo, ho progettato e disegnato la mia PCB double layer, che ho fatto realizzare da una ditta specializzata:
scheda symbio
ho saldato i componenti necessari:
scheda symbio
l'ho appoggiata su Arduino:
scheda symbio
e poi ho fatto entrare i pin maschi della mia pcb negli strip femmina di Arduino:
scheda symbio
Fatto ciò è necessario, per evitare che le vibrazioni possano creare malfunzionamenti, bloccare le due schede usando dei bulloncini da far passare attraverso i fori predisposti.

Come vedete, tutte le periferiche/sensori sono connessi a Symbio in modalità pulg&play utilizzando dei morsetti appositi. Dunque, per i restanti cablaggi, consultare il foglio istruzione scaricabile dal box in fondo.

Installazione del circuito

Il montaggio, consiste essenzialmente nel portare al circuito:

- L'alimentazione proveniente da un positivo +12V sotto chiave, ad esempio prelevabile dal + del clacson:
montaggio symbio
- Il negativo della batteria;

- Una coppia di cavetti per il pulsante aggiuntivo. Per farlo bisogna smontare il blocchetto comandi sinistro, effettuare un foro dell'opportuno diametro e montare il pulsante:
montaggio symbio montaggio symbio
Nota: personalmente ho scelto di installare il pulsante sul blocchetto sinistro, ovviamente ognuno è libero di cablarlo dove meglio crede.

- Posizionare e cablare la sonda temperatura. Sistemare la sonda temperatura nel punto più idoneo, che sia lontano da fonti di calore quali ad esempio radiatore e motore e che non sia esposto direttamente alla luce solare. Questo è il pinout della sonda DS18B20:
pinout DS18B20
- Per la funzione conta km parziale bisogna installare un magnetino alla base di uno dei raggi del freno a disco e il relativo contatto reed sulla forcella sinistra. Per fissare il magnetino basterà usare del mastice e poggiare semplicemente il magnetino sul disco:
magnete neodimio contakm
Posizionare sulla forcella il contatto reed, ponendolo all'interno di una capsula di fortuna. Io ad esempio, ho riciclato il sensore contakm della bici, ho eliminato il suo contatto reed e gli ho installato uno più sensibile:
contatto reed contakm
contakm symbio
Nel cerchio rosso è evidenziato il contatto reed dotato di due fili che vanno portati a Symbio, e in quello verde il magnetino. Per fare il modo che il magnetino ad ogni passaggio, riesca a far chiudere il contatto del contatto reed, bisogna fare attenzione a due cose:

1. per una questione di velocità angolare, il magnete va installato il più vicino al centro della ruota e non all'estremità. Fate come mostrato nella foto in alto;

2. acquistando il magnete al neodimio (quelli di colore metallico e non neri), la distanza tra esso è il reed deve essere di circa 22-24 mm. Dopo aver montato tutto, se i km sul display non dovessero avanzare, muovere il contatto reed come mostrato in foto:
contakm symbio
- Un cavetto per il segnale del contagiri. Per far ciò, è necessario prelevare il segnale a bassa tensione e portarlo a Symbio. In base al tipo di scooter, il segnale può trovarsi in punti diversi dell’impianto elettrico. Generalmente le parti che costituiscono il sistema di accensione sono:

SEGNALE BASSA TENSIONE => BOBINA => CAVO ALTA TENSIONE => CANDELA.

A monte di questi componenti, c’è il filo oggetto della nostra ricerca. Infatti, affinché la bobina possa generare alta
tensione, gli si deve necessariamente fornire un segnale a bassa tensione.

Vi è un particolare caso in cui, si è obbligati a prelevare il segnale direttamente dal pick-up e non sul filo che giunge alla bobina alta tensione. Tale circostanza, ricorre, quando il mezzo è munito della centralina C.D.I. Ed è proprio il nostro caso. Infatti dando un rapido sguardo allo schema, possiamo verificare quanto affermato. Tra i particolari 2 e 3 c'è il nostro cavo:
contakm symbio
Per cui smontate la plastica del sotto sella e dal lato destro (lato marmitta), in prossimità del carter volano, intercettate il cavo giallo-blu (G/B) che arriva dal pick-up:
cavo contagiri pick-up scarabeo rotax 125 150 200
cavo contagiri pick-up scarabeo rotax 125 150 200
spellatelo da un lato, effettuate una saldatura e derivatevi con un cavo di opportuna lunghezza:
cavo contagiri pick-up scarabeo rotax 125 150 200
cavo contagiri pick-up scarabeo rotax 125 150 200
Per la Vespa 300GTS sotto al vano sottocasco, nel fascione dei cavi che vanno al gruppo farfallato, intercettate il filo rosa/nero e derivatevi con un cavo di opportuna lunghezza da collegare a Symbio. Allego una foto:
cavo contagiri vespa 300 gts
Vi lascio l'indirizzo del forum di modervespa dove si è parlato dell'argomento: cavo segnale contagiri.

Come vedete, l'utente per derivarsi dal filo del contagiri della propria Vespa, ha usato un rubacorrente. Nel qualcaso non si volesse optare per la saldatura, il rubacorrente resta una valida alternativa.

Per chi non possedesse lo Scarabeo, oggetto del presente approfondimento, o la Vespa 300 GTS, dico subito che non c’è un sistema immediato per stabilire o meno la presenza della centralina CDI, se non facendo ricorso allo schema elettrico del proprio mezzo. Una volta identificato il filo, prima di spellarlo per effettuare la saldatura, è bene capire se si tratti di quello giusto. A tal proposito potete usare il metodo dello "spillo":
spillo ruba corrente
"Rubando" così il segnale, sarete certi di aver identificato il filo giusto senza il rischio di tagliare quello sbagliato. In ogni caso, se avete difficoltà a prelevare il segnale, sappiate che esiste un altro metodo. Avvolgete un cavetto rigido attorno al cavo candela creando 5-6 spire. Adesso portate le due estremità all'ingresso dedicato di Symbio. Purtroppo per via della natura dell'accoppiamento (elettromagnetico), questo sistema è meno preciso, infatti introduce degli spike che a random falsano la lettura. Ciò capita più spesso ai bassi regimi, mentre ai medio-alti la lettura è più stabile. Ma è meglio di niente...
avvolgimento cavo pippetta candela
avvolgimento cavo pippetta candela
- Montaggio dell'oled dentro la carcassa che contiene l'orologio originale. Per accedere all'orologio, non mi dilungo, consultare la guida: smontaggio cruscotto per sostituzione batteria orologio e lampadine
orologio scarabeo rotax 125 150 200
orologio scarabeo rotax 125 150 200
Questo è il pin-out dell' oled I2C:
pinout oled i2c
Ho risolto l'arcano su come fissare l'oled alla carcassa, semplicemente interponendo tra l'oled e il coperchio, un pezzetto di spugna per imballaggi:
montaggio oled i2c
montaggio oled i2c
montaggio oled i2c
Infine ri-posizionare l'oled al posto dell'orologio di serie.
cruscotto scarabeo rotax 125 150 200
Osservazioni sulla soluzione adottata: installazione facilitata, togli e metti. Possibilità di tornare indietro senza problemi.

Alla fine il risultato sarà più o meno questo:
montaggio symbio scarabeo rotax 125 150 200
montaggio symbio scarabeo rotax 125 150 200

Aggiornamenti

Hardware

- Symbio 1.0

- Nuova shield Symbio 1.3.La nuova scheda presenta vari fix per una gestione più razionale dei componenti e migliorie varie. La scheda inoltre è dotata di connettori singoli dedicati ad ogni sensore/periferica per una rapida installazione e sostituzione. In questo modo non sarà necessario saldare nessun cavetto sulla scheda.

Software

symbio1.0: funzioni << data e ora + giri + temperatura + batteria >>. Hw arduino uno + lcd 8x2 + rtc ds1307.

symbio1.1: funzioni << data e ora + giri + temperatura + batteria >>. Hw arduino uno + oled 128x32 + rtc ds1307.

symbio1.2: funzioni << data, ora e giorno corrente + giri + temperatura + batteria >>. Hw arduino uno + oled 128x32 + rtc ds3231.

symbio1.2.1: come sopra ma migliorato codice lettura stato pulsante.

symbio1.2.2: come sopra ma aggiunta funzione automatica cambio ora solare/legale.

symbio1.2.3: eliminata funzione automatica cambio ora solare/legale ed implementata funzione sincronizzazione RTC tramite programma dedicato.

symbio1.2.4: aggiornato sketch con nuova libreria oled.

symbio1.3.1: aggiunta nuova funzione automatica cambio ora solare/legale.

symbio1.3.2: aggiunta funzione di conta km parziale.

Componenti utilizzati

- PCB con componenti elettronici vari; (Symbio fornibile da me)

- n° 1 basetta Arduino Uno R3; (fornibile da me)

- n° 1 modulo RTC DS3231 + n° 1 batteria al Litio ricaricabile tipo LIR2032; (fornibile da me)

- Per la sonda DS18B20, c'è poco da dire, vi consiglio di prendere la versione stagna già cablata: sonda waterproof DS18B20;

- Per l'oled 128x32 px, dovete acquistare il tipo con sistema di connessione i2c o IIC e non SPI. Deve avere 4 pin, deve misurare 38x12 mm e per ultimo ma non meno importante, deve avere il driver IC del tipo SSD1306. Normalmente i venditori che vendono questo articolo sono quasi tutti cinesi ma se cercate bene trovate qualcosa anche in Italia o in Europa: oled i2c 128x32px con driver ssd1306 (38x12mm);

- Per il pulsante la scelta è libera e dipende dai vostri gusti. Vi suggerisco qualcosa ma attenti alle misure: mini pulsante pannello 12V con contatto normalmente aperto NA/NO;

- n° 1 portafusibile volante 5x20 con fusibile da 315 mA; (fornibile da me)

- n°1 magnete al neodiminio di 20 mm con foro centrale;

- n° 1 contatto reed;

- n° 1 morsetto rubacorrente per derivazione cavo contagiri; (opzionale ma fornibile da me)

- Contenitore circuito: le misure minime per cablare il circuito agevolmente sono 103x64x40 mm: Scatola portacircuito in abs 103x64x40 mm;

- cavi, morsetti, capicorda, fascette e minuterie varie per effettuare un cablaggio pulito.

NOTA: Pagamento, trattamento dei dati personali e spedizione degli oggetti acquistati su ebay, sono sotto la responsabilità dei singoli venditori; il sito "Lo Scarabeo Rotax" non si ritiene responsabile in alcun modo degli acquisti effettuati.

Considerazioni finali e distribuzione

Dotando il circuito di un'interfaccia bluetooth si potrebbe usare lo smartphone come schermo. E ancora, attraverso l'utilizzo di più sonde DS18B20, si potrebbe visualizzare la temperatura dell'acqua e addirittura dell'olio. Insomma c'è da divertirsi. In tal senso chiunque voglia supportare la R&D (ricerca e sviluppo) di questo progetto, può sostenere il mio impegno e il mio lavoro con una piccola donazione Paypal.

Se Symbio vi piace e volete montarlo sul vostro scooter, non dovete fare altro che scrivermi usando il modulo contatti e sarà mia premura spiegarvi tutto.

La fornitura sarà comprensiva della scheda Symbio, del modulo RTC con batteria inclusa e di Arduino UNO. Il tutto verrà spedito già montato e programmato corredato da foglio istruzione. Per le restanti componenti sarà vostra cura reperirli seguendo la lista della spesa sopra citata. Costo 60€ + S.S.

Ma se volete la soluzione all-inclusive, chiedete pure. Costo 90€ + S.S.

Per richieste personalizzate, ad esempio vi serve quella funzione e quell'altra no, contattatemi ...
Per info, dubbi e commenti, è disponibile sul forum il link alla discussione: pagina di supporto e sviluppo.

Download

- Foglio istruzione Symbio V1.3 - 4 funzioni: << CLICCA QUI >>
- Foglio istruzione Symbio V1.3 - 5 funzioni: << CLICCA QUI >>
- Driver arduino clone: CH340 driver for Windows 8.1 x64 & x86
- Foglio istruzioni procedure sincronizzazione orologio: << CLICCA QUI >>
- Programma per sincronizzare l'orologio: RTCsetup.exe (credit by Luca Dentella)

by motoniko77

Ringraziamenti: a mia moglie che ha sopportato le "mie assenze", a mio fratello che mi ha aiutato a dare un nome e un logo al progetto, al mio amico Paolo#1 che mi ha ascoltato e consigliato, a Paolo#2 che mi ha supportato per la parte HW e a tutta la community di Arduino.CC per il supporto SW.

E per finire

- Se questa guida ti è stata utile e ti ha fatto risparmiare dei soldini, offrimi una birra e sostieni il mio impegno e il mio lavoro con una piccola donazione Paypal.

- Per info , dubbi e commenti usare il forum dello Scarabeo Rotax.

- Per restare aggiornato regalami un "mi piace" o un "+1" , oppure registrarti alla newsletter.

Tutti gli argomenti