![]() |
Costruzione di un sensore S/PORT per RPM (arduino pro mini) 3 Allegato/i Partiamo dalle specifiche: Dati desiderati: Misura RPM Misura pacco batterie di bordo Misura livello carburante lo schema come si vede in allegato è particolarmente semplice, per il sensore RPM si presume che la centralina o il sensore fisico dia un impulso per giro, qualora ne dia di più è necessario cambiare il numero di pale. A2 invece è il pacco, in base alla tensione dello stesso sarà necessario scegliere dei valori appropriati del partitore resistivo Il sensore carburante di cui parleremo in un altro thread invece deve fornire una tensione compresa fra VCC e GND a seconda del livello. Il circuito stampato è realizzato per essere stampato su singola faccia in modo che possa essere stampato in casa senza troppe complicazioni. Il disegno non è dei più ottimizzati, ma perlomeno non richiede un service PCB. Sono stati lasciati liberi i pin A4 e A5 in modo che possano essere utilizzati eventualmente per integrare anche un altimetro. Il codice da caricare sull'arduino è openxsensor con alcune modifiche che discuteremo ne proseguo di questo thread (sempre ammesso che interessi a qualcuno) NB: Il circuito così come presentato ha un limite nella misura di A2, presuppone infatti che la RX sia alimentata a un voltaggio maggiore di 5.7V Eventualmente è possibile fare una modifica per chi ha necessità di alimentare a 5V Codice: Lista componenti L'immagine del PCB è a 1200 dpi tenetene conto durante l'eventuale stampa |
Grazie per il lavoro che fai. Una domanda lo schema non riesco a vederlo bene, sembra su due pagine ma ci vuole un reader ben definito o va bene adobe acrobat qualsiasi? |
Citazione:
Due richieste se possibile: la prima, potresti fare il circuito per componenti normali e non smd? La seconda, mi interessa anche lo sviluppo del "lato" altimetro del circuito. P.S. Lo zip non si apre, mi da errore di collegamento non valido(?) |
Citazione:
le resistenze smd sono delle 1206 si saldano bene anche a mano Il PCB probabilmente lo stavo ricaricando... la parte vario viene fatta sull'altro lato del promini... (insomma il promini fa la parte del salame. e il vario e l'rpm quella del pane... tuttavia per il vario secondo me non c'è troppa convenienza... La parte vario usa un sensore MS5611 a meno di 14/15 non si trova... |
Citazione:
|
Ottimo!! così posso misurare i giri del mio motore DLE55 Grazie Romolo! |
Non vedo l' ora di leggere il sorgente arduino per capire come si interfaccia a frsky. |
ma nel disegno manca qualcosa?? io vedo solo un fotoaccoppiatore :D :D :D (e anche una scusa per sottoscrivere la discussione) |
http://arduino.cc/en/uploads/Main/Ar..._Front_3v3.jpg I collegamenti A0, A1, D8, D4, RAW, GND, VCC, vanno fatti a questo |
a ecco grazie :D |
Citazione:
|
arduino pro mini 328 5V Mi raccomando che sia la versione 328 altrimenti non ci sta il codice sopra. di venditori ce ne sono tanti su ebay e partono da poco meno di 2 in su... questo ad esempio da anche la schedina di programmazione: FT232RL USB To Serial Adapter Module + Pro Mini Atmega328 5V 16M for Arduino New | eBay dello stesso venditore l'offerta con 5 pezzi per chi un programmatore ce l'ha già: 5PCS Pro Mini atmega328 5V 16M Replace ATmega128 Arduino Compatible Nano | eBay |
1 Allegato/i Dopo aver effettuato alcune prove mi sono reso conto che la lettura di A2 era abbastanza ballerina risentendo forse troppo dei servi, pertanto ho modificato lo schema aggiungento un piccolo filtro passa basso. Per semplicità allego tutte le modifiche in un unico ZIP contenente anche lo schema e il circuito in formato eagle, nonchè le DRU (design rules) per generare dei PCB ad uso casereccio dato che eagle tende a fare le piazzole delle resistenze tradizionali con uno spessore delle tracce troppo piccolo. A breve il codice il cui originale si trova qui: https://code.google.com/p/openxvario...%2Fopenxsensor |
Citazione:
|
Per semplificare le cose ho cercato di ridurre al minimo i valori delle resistenze utilizzate, supponendo che si voli a scoppio (altrimenti perchè fare un contagiri per centraline di iniezione, ho supposto che la batteria di bordo non superi i 15V pertanto il partitore il partitore è costituito da resistenze da 1.5KOhm e da 3KOhm Io in casa ne ho ma la spedizione dal'italia costa molto più che prenderle dalla germania se il vostro negozio sotto casa non ne ha eccovi i link 100 x 150R 10x 10uF 10µF Case B 1411 10V SMD Tantalum Capacitor / Tantal-Kondensator 3528 | eBay 100 x 1K5 100 x 3K Sempre che non ne abbiate in casa, questo è il link la resistenza tradizionale dallo stesso venditore (spedizione combinata 2.99) 10x 4K7 Ohm 4700R Le quantità delle resistenze sono sufficienti per fare almeno 50 sensori |
Seguo :) Per quanto riguarda il programmatore ho letto che è possibile sfruttare quello presente nelle altre schede Arduino. Io ho la uno, staccando l'integrato e collegando alcuni pin tra le schede dovrebbe andare Leonardo Inviato dal mio GT-I9195 utilizzando Tapatalk |
Citazione:
Con lo sketch Arduino-ISP |
Ciao Romolo, potresti cortesemente darmi le dimensioni del circuito? Nel file dru non riesco a trovarle. Altra cosa, per quanto riguarda il sensore di giri è possibile direttamente attaccare alla scheda il cavo che parte dalla centralina dell'accensione oppure no? |
Citazione:
altra cosa, il fotoaccoppiatore SFH618A-5X007 sembra introvabile sulla rete (ce l'ha digikey in formato smd ma bisogna comprarne 5000 pezzi!) è disponibile però quello in formato Dip. |
Citazione:
PC357NTJ000F Optocoupler SMD Transistor O P x 10 Pieces | eBay Pin to pin compatibile ma il layout è leggermente diverso... (più piccolo) mi rimetto al lavoro :( |
Citazione:
Inviato dal mio Desire HD con Tapatalk 2 |
Citazione:
|
1 Allegato/i Continuiamo con le puntate.... Il codice scaricato dal repositori così come viene fornito non funziona per lo meno per la parte RPM, infatti: restituisce alla radio la rotazione in Hertz e necessita di un minimo di configurazione per l'utilizzo con OpenTX (2940) devo dire che le modifiche da me apportate sono veramente minime, più che altro mi hanno consentito di capirne il funzionamento per sviluppi futuri, ad esempio per quanto riguarda il livello del carburante per utilizzare altri tipi di sensori quali flussimetri o anche con il sensore attuale tener conto della posizione del veivolo utilizzando un accelerometro. Il codice da me modificato è contenuto nello zip allegato e la configurazione del sensore avviene mediante il file oxs_config.h Prima di commentare il codice invece, posto uno sketch di arduino utilizzato su un altro arduino per simulare la centralina dei giri: Poiché è presente un fotoaccoppiatore, invertente che nella configurazione utilizzata inverte il segnale, ho pensato di generare un impulso negativo molto stretto, nella considerazione che non mi è dato sapere la lunghezza dell'impulso prodotto dalle varie centraline. Codice: /* Il led collegato in genere sul pin 13 invece lampeggia a frequenza di 10 Hz. |
Il PCB è l'ultimo che hai postato? |
Citazione:
Ho ricevuto oggi i fotoaccoppiatori inglesi... verifico il layout e riposto. |
1 Allegato/i Il layout dovrebbe essere questo, ho incluso anche la libreria modificata con l'optoisolatore postato precedentemente..... Domani preparo il master e ricontrollo, il design dell'optoisolatore l'ho ricavato dal datasheet del produttore. L'optocoupler è veramente piccolo, giusto quello che ci voleva... |
3 Allegato/i Andiamo avanti con le puntate.... qualche foto dei test In questa immagine al buio l'impulso proveninente dal''arduino che simula la centralina l'oscilloscopio (molto vecchio, ma è quello che ho in casa) è settato a 2uS per divisione quindi l'impulso è circa 3.5uS non ho provato ad accorciare ancora, ma di sicuro qualsiasi cosa più lunga funziona (provato anche con l'onda quadra a 10Hz del pin 13) Allegato 307556 Questo è il banale circuito di test... l'arduino viene alimentato tramite il pin RAW, i pin 8 dei due arduini sono collegati fra loro, quello a sinistra genera il segnale quello a destra lo legge e lo converte in RPM. Il pin A0 (configurato erroneamente nel codice come FUEL) è collegato a VCC Allegato 307557 questo è quanto si legge sulla radio... Allegato 307558 A domani per la prossima puntata... E' sufficiente cambiare il file osx_config.h nel modo seguente per mandare i valori associati al pin corretto nel disegno. Sostituite Codice: #define SETUP_DATA_TO_SEND \ Codice: #define SETUP_DATA_TO_SEND \ |
2 Allegato/i Continuiamo le puntate... dopo aver verificato che il layout del'opto fosse effettivamente quello, finalmente ho potuto realizzare il PCB Ho avuto un po' fretta nello sviluppo e alcune thermals non sono venute perfette (del resto sono 8 mils) ma non dovrebbero influenzare il risultato, al massimo rendere un minimo più complessa la saldatura. |
Citazione:
|
Citazione:
|
Tutti gli orari sono GMT +2. Adesso sono le 02:49. |
Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002