Mäta resistans via ADC
Mäta resistans via ADC
Hej,
Jag försöker få till en krets för att mäta resistans, eller iaf avgöra vad resistansen är inom ~100 ohm inom ett område av 1-10k.
För att åstadkomma detta tänker jag mig en krets baserat på en Wheatbridge och en Instrumentation OpAmp. Eftersom INAMPs är så dyra (jag behöver 8 mätpunkter) så har jag baserat min lösning på svaret i denna tråd på StackExchange.
Mitt schema ser ut som följer (LTspice schema finns också bifogat) Min tanke är att R6 ska var en digital potentiometer på 10k och R7 det okända motståndet med tillåtna värden 1-10k. Genom att ändra på R6 och samtidigt läsa av utgången från U3 i en ADC borde jag kunna avgöra när R6 är ungefär = R7, dvs när Va ~ Vb, eller i andra ord; när utgången är närmast Vcc/2.
Fråga 1: Är detta ett vettig sätt att lösa mitt problem?
Fråga 2: Hur får jag U3 att räkna sin nollpunkt (Vref) till Vcc/2?
Kan någon vänlig själ hjälpa mig på traven?
Jag försöker få till en krets för att mäta resistans, eller iaf avgöra vad resistansen är inom ~100 ohm inom ett område av 1-10k.
För att åstadkomma detta tänker jag mig en krets baserat på en Wheatbridge och en Instrumentation OpAmp. Eftersom INAMPs är så dyra (jag behöver 8 mätpunkter) så har jag baserat min lösning på svaret i denna tråd på StackExchange.
Mitt schema ser ut som följer (LTspice schema finns också bifogat) Min tanke är att R6 ska var en digital potentiometer på 10k och R7 det okända motståndet med tillåtna värden 1-10k. Genom att ändra på R6 och samtidigt läsa av utgången från U3 i en ADC borde jag kunna avgöra när R6 är ungefär = R7, dvs när Va ~ Vb, eller i andra ord; när utgången är närmast Vcc/2.
Fråga 1: Är detta ett vettig sätt att lösa mitt problem?
Fråga 2: Hur får jag U3 att räkna sin nollpunkt (Vref) till Vcc/2?
Kan någon vänlig själ hjälpa mig på traven?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Mäta resistans via ADC
du skriver inte vlken AD du skall använda.
Dör att slippa mycket problem, rekommenderar jag dig till att använda en AD med differentiella ingångar samt med en PGA.
ADS1248 från TI använder jag själv, synnerligen bra AD, med 4 differentiella ingångar samt en PGA och 24 bitars upplösning, pratar SPI.
Dör att slippa mycket problem, rekommenderar jag dig till att använda en AD med differentiella ingångar samt med en PGA.
ADS1248 från TI använder jag själv, synnerligen bra AD, med 4 differentiella ingångar samt en PGA och 24 bitars upplösning, pratar SPI.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Mäta resistans via ADC
Jag tänkte använda ADS1115 som ADC eftersom den har I2C, men SPI är också tillgängligt.
Jag får läsa in mig på ADS1248.
Jag får läsa in mig på ADS1248.
- prototypen
- Inlägg: 11107
- Blev medlem: 6 augusti 2006, 13:25:04
- Ort: umeå
Re: Mäta resistans via ADC
Är det någon som kan förklara varför det blir 176 mV ut från U3?
Borde vara 0,00.
Är det för att allt matas med enkelspänning?
Den här kopplingen är ju i grunden en AD omvandlare.
Kan göras som en följande eller successivt approximerande ADC
Kan göras enklare genom att smacka in signalerna från Weastonbryggan direkt i en komparator och hoppa över OP förstärkarna.
Protte
Borde vara 0,00.
Är det för att allt matas med enkelspänning?
Den här kopplingen är ju i grunden en AD omvandlare.
Kan göras som en följande eller successivt approximerande ADC
Kan göras enklare genom att smacka in signalerna från Weastonbryggan direkt i en komparator och hoppa över OP förstärkarna.
Protte
Re: Mäta resistans via ADC
Det har jag också undrat, inget svar på det dock.prototypen skrev:Är det någon som kan förklara varför det blir 176 mV ut från U3?
Borde vara 0,00.
Är det för att allt matas med enkelspänning?
Vill du beskriva det lite utförligare för en nybörjare?prototypen skrev: Den här kopplingen är ju i grunden en AD omvandlare.
Kan göras som en följande eller successivt approximerande ADC
Kan göras enklare genom att smacka in signalerna från Weastonbryggan direkt i en komparator och hoppa över OP förstärkarna.

Re: Mäta resistans via ADC
ADS1248 kopplar du in ditt motstånd mellan två diff-ingångar, mata sedan ditt okända motstånd via ett annat lämpligt känt motstånd från Vref, till exempel.
Mät sedan spänningen över ditt okända motstånd. Det finns naturligtvis många olika sätt att göra detta på, TI har en hel del App-notes du kan kika på.
Skall du använda den inbyggda Vrefen, så är det lämpligt att buffra denna med en R2R OP, en för varje kanal du skall mäta.
Mät sedan spänningen över ditt okända motstånd. Det finns naturligtvis många olika sätt att göra detta på, TI har en hel del App-notes du kan kika på.
Skall du använda den inbyggda Vrefen, så är det lämpligt att buffra denna med en R2R OP, en för varje kanal du skall mäta.
Re: Mäta resistans via ADC
Att mäta resistansen är ju ganska enkelt.
Den angivna kopplingen har det utgångssignal den har för att det inte finns någon verklig rail-to-rail op-amp och för att matningen är utan minus. Utgångssteget kan helt enkelt inte gå nära nog VSS.
Nu anges det inget om huruvida motståndet ska mätas med en µC men OM man skulle göra det kan man (oftast) ställa A/D-referensen till att vara VDD. Då har man ena halvan av Wheatstonebryggan klar.
Andra halvan består sedan av ett fast motstånd samt motståndet som ska mätas. Resten är bara en fråga om att läsa A/D-omvandlaren och räkna lite på värdet.
Den angivna kopplingen har det utgångssignal den har för att det inte finns någon verklig rail-to-rail op-amp och för att matningen är utan minus. Utgångssteget kan helt enkelt inte gå nära nog VSS.
Nu anges det inget om huruvida motståndet ska mätas med en µC men OM man skulle göra det kan man (oftast) ställa A/D-referensen till att vara VDD. Då har man ena halvan av Wheatstonebryggan klar.
Andra halvan består sedan av ett fast motstånd samt motståndet som ska mätas. Resten är bara en fråga om att läsa A/D-omvandlaren och räkna lite på värdet.
Re: Mäta resistans via ADC
Min första lösning på detta problem var en enkel spänningsdelare, enl. denna bild. Jag blev rekommenderad att istället använda en Wheatbridge, men misstar jag mig inte är det just en enkel spänningsdelare ni förespråkar? Det skulle göra det hela mycket enklare och ändå uppfylla mina krav.
Finns det några problem med en krets som denna? För en nybörjare som mig ser den fullt fungerande ut...
Finns det några problem med en krets som denna? För en nybörjare som mig ser den fullt fungerande ut...

Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Mäta resistans via ADC
En Wheatstone brygga är till för att kunde mäta precist.
Men vid att använda VDD som Vref har en A/D-omvandlare halva Wheatstone-bryggan inom sig, alltså behövs bara den andra halvan i form av en spänningsdelare.
Men nu plötsligt har du blandat in ett digitalt potentiometer - varför?
Jag börjar anta att du har berättat hälften av sanningen och det är INTE vettigt om du vill ha förnuftiga svar!!!
Men vid att använda VDD som Vref har en A/D-omvandlare halva Wheatstone-bryggan inom sig, alltså behövs bara den andra halvan i form av en spänningsdelare.
Men nu plötsligt har du blandat in ett digitalt potentiometer - varför?
Jag börjar anta att du har berättat hälften av sanningen och det är INTE vettigt om du vill ha förnuftiga svar!!!
Re: Mäta resistans via ADC
Den digitala potentiometern är med i första inlägget, med tillhörande tankar om hur den ska användas i Wheatstone bryggan. Tanken i mitt förra inlägg är lite detsamma, men jag förstår varför du är frågande till den.
Jag vill göra följande:
1. Vid kalibrering av enheten läsa av spänningsfallet över DUT och spara detta i icke-volatilt minne.
2. Löpande bevaka spänningsfallet över DUT. Om det ändrar sig med mer än X enheter gentemot det sparade värdet utföra en åtgärd.
Med hjälp av potten kan jag justera Vout så att det ligger nära Vcc/2, vilket möjliggör beräkningar på ändringar åt båda hållen. Detta fungerar givetvis bara med vissa begränsningar på värdet för DUT.
Jag vill göra följande:
1. Vid kalibrering av enheten läsa av spänningsfallet över DUT och spara detta i icke-volatilt minne.
2. Löpande bevaka spänningsfallet över DUT. Om det ändrar sig med mer än X enheter gentemot det sparade värdet utföra en åtgärd.
Med hjälp av potten kan jag justera Vout så att det ligger nära Vcc/2, vilket möjliggör beräkningar på ändringar åt båda hållen. Detta fungerar givetvis bara med vissa begränsningar på värdet för DUT.
Re: Mäta resistans via ADC
Jag förstår att DUT är en enhet vars resistans varierar med en yttre påverkan, t.ex. en vågcell.
Så jag får det till att du vill ha en övervakning av över och undre gräns (eller bara en mätning av status) - och då har du gjort det mycket komplicerat.
Jag har ett antal idéer om hur man kan lösa det hela enkelt och smidigt men utan att känna till vad som ska göras kan det vara likgiltigt.
Sedan är frågan om systemet skal vara linjärt med motståndet i DUT eller inte, det är ju ganska säkert att du inte ska göra ett Ohm-meter.
Så jag får det till att du vill ha en övervakning av över och undre gräns (eller bara en mätning av status) - och då har du gjort det mycket komplicerat.
Jag har ett antal idéer om hur man kan lösa det hela enkelt och smidigt men utan att känna till vad som ska göras kan det vara likgiltigt.
Sedan är frågan om systemet skal vara linjärt med motståndet i DUT eller inte, det är ju ganska säkert att du inte ska göra ett Ohm-meter.
Re: Mäta resistans via ADC
I just mitt eget fall ska jag mäta ett antal slingor på X ohm som antingen bryts eller kortsluts vid åverkan, t.ex. en larm-lina. Resistansen i de olika linorna är okänt, men vi kan förutsätta att de alltid ligger 1k ~ 10k, exkl.
Ett linjärt system är att föredra.
Om vi begränsar oss till detta användningsfall, kan du då ge förslag på bättre lösningar?
Ett linjärt system är att föredra.
Om vi begränsar oss till detta användningsfall, kan du då ge förslag på bättre lösningar?
- prototypen
- Inlägg: 11107
- Blev medlem: 6 augusti 2006, 13:25:04
- Ort: umeå
Re: Mäta resistans via ADC
Typ såhär.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.