Provo a spiegarvi il mio problema:
ho una MPU6050 collegata al pin 3.3V di arduino e GND di Arduino e lo stesso con la motor shield collegato a 5V e GND. Mi sembra di capire che sia necessario mettere il GND in comune. Ma mi spiegate il perchè?
Io uso il pc USB per Arduino e una batteria lypo per i motori (bisogno di molta corrente) .
Ho messo in allegato un immagine del barbaro schema elettrico, per farvi capire meglio. Non esitate a dirmi se ho fatto un casino!
A forza di domande stupide arriverò a fare domande geniali, intanto, grazie della pazienza.
cyberhs:
Il tuo schema è corretto: i circuiti logici della scheda hanno bisogno sia dell'alimentazione (+5V) che il riferimento di massa (GND) di Arduino
Non confondere il GND di Arduino (circuiti logici) con quello della batteria LiPO (circuito di potenza).
E' esattamente questo il dubbio che avevo in mente! Quindi circuiti logici e di potenza sono due mondi separati e non necessitano GND comune. Grazie!
Sempre a riguardo della shield, per proteggersi dalla corrente di ritorno, leggo sul datasheet di dover mettere una protezione aggiuntiva al mio circuito:
N-channel MOSFET connesso al GND pin
circuit for DC to 10 kHz PWM operation short circuit protection VEDI FOTO ALLEGATA
a P-channel MOSFET connesso al VCC pin
Inoltre, bisogna mettere una resistenza in serie per limitare l'assorbimento di corrente dagli I/Os del microcontrollore. Con tanto di formula per dimensionare la resistenza:
R = (VIOs - VCC)/ (IRmax)
con IRmax "maximum target reverse current through microcontroller I/Os".
A pagina 20 troviamo uno schema di configurazione tipica arduino uno-motor shield-motori in cui si menziona un condensatore C... aiuto
Mi aiutate a decifrare lo schema per capire cosa mi serve per fare funzionare il tutto?
A me sembra che ci sia tutto, a parte i condensatori elettrolitici SMD che però dovrebbero essere già montati verticalmente.
Solo se si desidera ridurre l'altezza degli stessi si consiglia di montarli in orizzontale.
Se osservi lo schema della scheda (non quello del chip), i MOSFET N Q1 e Q2 servono appunto a proteggere dall'inversione di polarità delle batteria (soluzione 2).
Sono anche già presenti i resistori di limitazione correnti per le uscite di Arduino.
Una tensione viene misurata o rilevata da un entrata come differenza di potenziale tra 2 punti.
Se non hai un rieferimento comune (la massa comune) una tensione di uscita 5V rispetto massa non é la stessa tensione al entrata del secondo circuito.
Per quello serve una massa comune oppure dove nesessario dei dispositivi di separazione galvanica (isolazione) come dei trasformatori di segnale (per esempio sul ethernet) oppure dei optoisolatori. Anche un sistema di trasmissione / RIcezione via onde radio isola i 2 circuiti.