Buongiorno a tutti,
scusate se il post sarà un pò lungo, ma cercherò di essere il più chiaro e descrittivo possibile.
Dunque, sto lavorando, su banco prova, ad un sistema di misurazione di fluidi. Tale sistema è geo-referenziato, ovvero insieme alla lettura dei consumi registra su SD anche la posizione GPS.
Il sistema è così composto:
-
due flussimetri ad uscita analogica in tensione che misurano il flusso del fluido (semplice acqua)
-
un sistema GPS professionale che da la possibilità di avere un'uscita fisica dove viene "sputata" la stringa NMEA con le coordinate che mi servono.
Il software controlla sempre il buffer della seriale (collegata ad una seriale fisica di Arduino Mega), verifica che la stringa sia la RMC (quella che ha i dati che mi servono) legge i consumi e crea il file.
Sino a qui tutto funziona.
Il problema che riscontro è il seguente:
Fintanto che alimento il sistema GPS da batteria e alimento Arduino tramite USB del PC (utilizzo il monitor seriale per motivi di debug) tutto funziona correttamente.
Se alimento invece anche Arduino dalla stessa batteria ( a valle ho un convertitore CC/CC che mi porta il voltaggio da 12 a 9 volt in quanto in passato in altre applicazioni ho notato che 12 volt a volte mi causava problemi alle schede Arduino) Arduino mi crea il file con l'intestazione (trattasi di file stile CSV che poi importo in excel) e poi non registra assolutamente nulla. Mi ritrovo con un file vuoto. Segnalo che lo sketch se non vede che riceve coordinate mi scrive lo stesso i dati, solo che nella cella delle coordinate mi scrive "Errore GPS".
Se scollego la seriale del GPS da Arduino, lo stesso, anche se alimentato da batteria auto funziona correttamente, registrandomi i consumi di fluido e, ovviamente, segnalando che le coordinate non sono presenti.
Se invece, ricollego il sistema GPS, alimentato da batteria auto, e poi alimento Arduino tramite alimentatore esterno che prende energia da una normalissima presa a muro, il tutto funziona correttamente.
Ora alla luce di tutto questo mi sento di escludere un malfunzionamento dello sketch, in quanto ritengo sia una problematica legata più all'aspetto hardware.
Avete idea di quale possa essere la problematica, e di un'eventuale soluzione, considerando che tutto il sistema dovrebbe essere alimentato tramite la batteria auto?
Vi ringrazio per la preziosa collaborazione. Sono a disposizione per qualsiasi chiarimento.
Grazie mille a tutti coloro che interverranno.
PS: la scheda Arduino è una MEGA.