Differentieel meten met ADS1115 en microcontroller ground probleem?

Hey allemaal,

Ik ben bezig om een batterij monitorings systeem te bouwen.
Hiervoor gebruik ik meerdere ADS1115 ADC's om differentieel te kunnen meten.
De ground van de batterij is niet gekoppeld aan de ground van de ADS1115, dit leek mij niet nodig omdat ik differentieel meet. Het huidige systeem bestaat uit twee metingen:
- Batterij voltage
- Batterij laad stroom meten met shunt weerstand

Als ik 1 van beide metingen afzonderlijk doe is er niks aan de hand. Op het moment dat ik beide metingen aansluit gaat mijn batterij voltage metingen heel raar doen. Voltage springt van 12.8V naar 8V en dan weer omhoog en terug.

Bijgevoegd het schema getekend in LT-Spice:

Arco

Special Member

Beide grounds moeten altijd aan elkaar, anders is er geen referentie... (boel zweeft t.o.v. elkaar)
Trouwens een rare manier om de spanning te meten over zo'n relatief laagohmige weerstand (lage spanning)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
benleentje

Golden Member

@Arco is dat zo? Als ik met mijn multimeter meet kan ik direct over de shunt meten zonder dat mijn multimeter een referentie met ground heeft.

De ADS1115 kan dat ook er hoeft geen referentie met ground te zijn omdat je differentieel meet.

Op het moment dat ik beide metingen aansluit gaat mijn batterij voltage metingen heel raar doen. Voltage springt van 12.8V naar 8V en dan weer omhoog en terug.

Oh je gebruikt er meerdere dat gaat dan niet tegelijk blijkbaar gaat het dan in de multiplexer van de ADS1115 fout en word er een onbedoelde verbinding gemaakt.

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

Hoe worden de ADS1115'en gevoed ? Hebben ze dezelfde voeding ?

[Bericht gewijzigd door Gatze op zaterdag 27 november 2021 18:59:24 (31%)

Congratulations on your purchase. To begin using your quantum computer, set the power switch to both off and on simultaneously

Op 27 november 2021 18:51:30 schreef benleentje:
@Arco is dat zo? Als ik met mijn multimeter meet kan ik direct over de shunt meten zonder dat mijn multimeter een referentie met ground heeft.

De ADS1115 kan dat ook er hoeft geen referentie met ground te zijn omdat je differentieel meet.

Dat is niet waar; je multimeter wordt gevoed uit een batterij, waardoor die geen last heeft van common-mode spanningen. Dat geldt niet voor de ADS1115; beide ingangen moeten binnen de voedingsrails vallen (max. 5.5V); zonder ground referentie, of andere verbinding, kun je geen garanties geven over die common-mode spanning.

Bij de TS hangt de shunt aan de ground, terwijl de weerstand waarover de spanning gemeten wordt op ongeveer 6V zit (meer als de accu vol is). Dit betekend dus dat er ESD diodes in geleiding gaan, en de 5V voeding gaat stijgen.

Ik begrijp niet waarom de TS de spanning wil meten over die combinatie van 3 weerstanden; als je daar gewoon een spanningsdeler van 2 weerstanden van maakt, met de onderste aan de ground (dus op ongeveer hetzelfde potentiaal als de shuntweerstand), is er niets aan de hand.

[Bericht gewijzigd door SparkyGSX op zaterdag 27 november 2021 19:03:39 (13%)

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken

Ha Rudy93,

Ik denk dat @Arco een punt heeft, de differentiaal meting gebeurt d.m.v. een multiplexer !
Dit wil zeggen dat je ingang sequens is A0---A1 en A2---A3.
Omdat de twee kanalen van de ingang onafhankelijk zijn,
zal je voor de negatieve ingang A0 ten opzichte van A1 meten daarbij is A2 en A3 los,
en voor het meten van de positieve ingang A3 ten opzichte van A2 hierbij ligt A0---A1 los.....

De uiteindelijke vraag wat te doen met de common van de microprocessor is een geheel andere.
Ik verwacht dat je gebruik moet maken van een guard om common stoor signalen te voorkomen !

Ik heb geen idee of de post van @benleentje als antwoord op mijn post is maar,
ik gebruik de ADS1115 nu zo'n 500 keer en je derde tekening is dan ook duidelijk lijkt mij 8)7

Groet,
Henk.

Everything should be as simple as possible, but not simpler.
benleentje

Golden Member

Als je naar het schema van de ADS1115 kijkt zie je toch dat beide ingangen direct naar de ADC gaan en dat de spanning direct over de weerstand word gemeten en niet eert A0 en dan A1 apart.

https://www.ti.com/ds_dgm/images/fbd_sbas563d.gif

Dat de spanningen binnen de 5,5V en 0V moet blijven is denk omdat de schakelaars in de mux dat niet aankunnen.

[Bericht gewijzigd door benleentje op zaterdag 27 november 2021 19:17:19 (18%)

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.
Arco

Special Member

Laatste tekening is de ADS1115: die heeft toch heel zeker een multiplexer...
Alle spanningen moeten (zoals bij meeste ic's) binnen de Vcc+0.6v/Gnd-0.6v blijven anders grijpen de latching diodes in.

[Bericht gewijzigd door Arco op zaterdag 27 november 2021 19:19:49 (45%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Ha Arco,

Dat bij dit I.C. 0,3 V maar ik ga er even van uit dat @TS de data sheet goed bestudeerd !
Voor de guard zijn verschillende oplossingen,en bij kleine signalen van groot belang....

Groet,
Henk.

Everything should be as simple as possible, but not simpler.
benleentje

Golden Member

Maar even terug on topic. Voor zover ik het begrijpt zegt TS:
Dat de afzonderlijke metingen gewoon goed werken maar enkel als hij beide metingen tegelijk doet dat het niet werkt.

Alle spanningen moeten (zoals bij meeste ic's) binnen de Vcc+0.6v/Gnd-0.6v blijven anders grijpen de latching diodes in.

Ik denk dat daar ook het probleem zit.

ADS1115-1 ziet 2 spanningen die bijna 0 zijn.
ADS1115-2 ziet 2 spanningen rond de 6V.

Als 1 van de 2 bezig is dus zeg de eerste dan staat de multiplexer van 2 uit. tot zover gaat het goed. Staan ze beide te meten dan is er een verschil spanning tussen ADS1115-1 en ADS1115-2 van 6V en dat is meer dan 5V + Vf van de latching diodes, dus deze diodes gaan in geleiding.

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

@benleentje: Niet helemaal. ik zie niet meer waar ik het niet helemaal mee eens was.

@arco: niet helemaal.

Laten we de boel even bekijken vanuit de GND van de batterij.

Als je "floating" gaat meten, dan zal een beschermingsdiode in de ADC chip activeren waardoor de ground-en-voeding van de ADC kant. Als je vind dat de spanning tussen twee niet-galvanisch-verbonden dingen niet bestaat dan sluiten we de gnd van de adc met een 10M weerstand aan -10V t.o.v. de batterij. Nu sluit je de shunt aan op de ADC. Door de protectiediode naar de voeding gaat nu stroom lopen zodat de meetchip het verschil tussen zeg 5.41 en 5.40 moet meten. Misschien "buiten spec" maar meestal werkt het wel gewoon. De stroom van in mijn voorbeeld van 0.5 µA zal nergens schade op leveren en de chip kanredelijk z'n meting doen.

Als je nu de spanningsmeting aansluit, dan gaat er ook daar een protectiediode in geleiding. Als je 12V probeert te meten zal het heel goed kunnen dat nu zowel een power als een gnd diode in geleiding staan. De stroom wordt nu bepaald door je 1k weerstanden en is veel groter. Nu, met 12V en 1k weerstanden gaat er nog steeds niets kapot, maar de meet-pins zijn nu zodanig ver buiten de toegestane range dat je nauwkeurigheid helemaal naar de klote is.

De te meten spanningen moeten binnen 0-VCC bereik van de meet-chips zitten. In het datasheet staat "VCC+0.3" en "GND-0.3" maar zelfs in het datasheet specificeren ze al dat je daar iets buiten kan en mag komen: Er kan +/- 6.144V gemeten worden en daarvoor heb je 5.5V nodig en dan ga je NOG iets buiten de GND-0.3 ... VCC+0.3 .

Het lijkt er op dat de chip als z'n multiplexer uitstaat, buiten het datasheet om, toestaat dat de spanningen op z'n pins buiten de voedingen komen. Ik snap nog niet helemaal hoe ze dat precies doen, maar jij probeert hem zowiezo op een manier te gebruiken dat ie niet bedoeld is.

@rudy93: overweeg om gewoon R3 nul ohm te monteren. Problem solved.
@rudy93: Als je de shunt gewoon in de acculeiding zet, dan kan je als er geladen wordt de laadstroom meten en als er gebruikt wordt kan je de geleverde stroom meten. Bij nader inzien.... Dat plaatje met het schema, dat ziet er uit als een simulatiepakket. Ben je aan het simuleren? Ah... Dan kan je die R3 nog heel makkelijk weglaten.....

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

@Rew super bedankt!
Je hebt gelijk dit heb ik helemaal over het hoofd gezien. Het wordt zelfs nog erger gemaakt doordat ik TVS diodes heb toegevoegd als extra protectie op alle ingangs kanalen. Mijn tekening is inderdaad een simulatie van wat ik in het echt heb gemaakt, dit is gedaan met LTspcice. Als ik nu de protectie diodes in het schema teken kan je heel mooi zien dat twee protectie diodes in geleiding gaan D7 & D9. Zoals je aangeeft als ik R3 0 Ohm maak is dit niet het geval.
Ik heb nog twee simulaties toegevoegd om mooi het verschil te kunnen zien.

Op 28 november 2021 11:08:44 schreef rew:
@benleentje: Niet helemaal. ik zie niet meer waar ik het niet helemaal mee eens was.

@arco: niet helemaal.

Laten we de boel even bekijken vanuit de GND van de batterij.

Als je "floating" gaat meten, dan zal een beschermingsdiode in de ADC chip activeren waardoor de ground-en-voeding van de ADC kant. Als je vind dat de spanning tussen twee niet-galvanisch-verbonden dingen niet bestaat dan sluiten we de gnd van de adc met een 10M weerstand aan -10V t.o.v. de batterij. Nu sluit je de shunt aan op de ADC. Door de protectiediode naar de voeding gaat nu stroom lopen zodat de meetchip het verschil tussen zeg 5.41 en 5.40 moet meten. Misschien "buiten spec" maar meestal werkt het wel gewoon. De stroom van in mijn voorbeeld van 0.5 µA zal nergens schade op leveren en de chip kanredelijk z'n meting doen.

Als je nu de spanningsmeting aansluit, dan gaat er ook daar een protectiediode in geleiding. Als je 12V probeert te meten zal het heel goed kunnen dat nu zowel een power als een gnd diode in geleiding staan. De stroom wordt nu bepaald door je 1k weerstanden en is veel groter. Nu, met 12V en 1k weerstanden gaat er nog steeds niets kapot, maar de meet-pins zijn nu zodanig ver buiten de toegestane range dat je nauwkeurigheid helemaal naar de klote is.

De te meten spanningen moeten binnen 0-VCC bereik van de meet-chips zitten. In het datasheet staat "VCC+0.3" en "GND-0.3" maar zelfs in het datasheet specificeren ze al dat je daar iets buiten kan en mag komen: Er kan +/- 6.144V gemeten worden en daarvoor heb je 5.5V nodig en dan ga je NOG iets buiten de GND-0.3 ... VCC+0.3 .

Het lijkt er op dat de chip als z'n multiplexer uitstaat, buiten het datasheet om, toestaat dat de spanningen op z'n pins buiten de voedingen komen. Ik snap nog niet helemaal hoe ze dat precies doen, maar jij probeert hem zowiezo op een manier te gebruiken dat ie niet bedoeld is.

@rudy93: overweeg om gewoon R3 nul ohm te monteren. Problem solved.
@rudy93: Als je de shunt gewoon in de acculeiding zet, dan kan je als er geladen wordt de laadstroom meten en als er gebruikt wordt kan je de geleverde stroom meten. Bij nader inzien.... Dat plaatje met het schema, dat ziet er uit als een simulatiepakket. Ben je aan het simuleren? Ah... Dan kan je die R3 nog heel makkelijk weglaten.....