Strain gage op-amp

Hallo,

Achtergrond project:
Ik ben een meetsysteem aan het maken voor kracht(fitness) toestellen. Waarbij ik de kracht en beweging meet via adc, microcontroller. Hierbij heb ik een programma gemaakt die de metingen opslaat in een database en waarmee je de metingen kan analyseren (grafieken).

Ik wil graag een s-type loadcell versterken en meten met een ADC. Het is een model 6918 s-type loadcell 500kg.
Deze loadcell heeft een full scale output van +/- 3mV/V(cc 2.9960).
Het heeft een excitation voltage van 10Vdc. Als er dus 10V op word gezet krijgen we dus een output van +/- 30mV correct (spanningverschil tussen Vout- en Vout+)?
Nu heb ik een ads8341 ADC, dit is een 16-bits 4-channel adc met 0-5V input range.
Wat ik nu wil is dus die +/- 30mV versterken over 4v naar een range van 0-5V bijvoorbeeld van 0.5-4.5V (waarbij 2.5V dus 0mV spanningverschil representeerd). Nu is mijn vraag hoe kan ik dit het beste doen????

Nu heb ik zelf al een idee maar ik vraag me af wat jullie er van vinden...

Ik neem een INA122 zoals in de volgende link:
http://www.nakka-rocketry.net/strainlc.html

Als ik dezelfde schema gebruik en v- aan de ground zet en v+ aan 10vdc (waar ook de strain gage mee gevoed word). Als ik vref nu op 2.5 volt zet. Dan zal de INA122 het signaal(+/-30mv) toch versterken rondom die 2.5V??

Graag zou ik wat advies willen ontvangen!!

Alvast bedankt,

elexender

dus eigenlijk wil je het +/-30mV signaal omzetten naar +/- 2v
en vervolgens een offset erbij van 2.5v.

dat is met opamps prima te doen bij mijn weten

30mv naar 2v is 66 2/3e keer versterken

dat kan makkelijk met een inverterende versterker. En dan een inverterende sommator die er 2.5v bij optelt.

volgens mij zijn die strain gauges vrij gevoelig voor ingangs impedanties. Dan kun je misschien beter beginnen met een spanningsvolger.

Dat kan al is het niet nodig om 10volt te gebruiken.
De INA122 kan ook prima overweg met een enkele voeding van 5 volt.

Wat je aangeeft de ref aan de 2,5 volt en de juiste Rg kiezen.

Misschien wel handig om het plaatje uit je link er bij te hebben:
http://www.nakka-rocketry.net/loadcell/amp_circ2a.gif

[Bericht gewijzigd door part op dinsdag 9 november 2010 12:53:49 (27%)

dus eigenlijk wil je het +/-30mV signaal omzetten naar +/- 2v
en vervolgens een offset erbij van 2.5v.

Ja dat klopt!

Het enige probleem is dat ik alleen een 10Vdc voeding hebt. En geen negatieve voltage. Dus kan dan toch niet zomaar naar -30mV versterken naar -2v ten opzichte van ground. Daarom dacht ik als ik nu het signaal versterk ten opzichte van 2.5v (Vref). Dan heb je helemaal geen negative voltage nodig en kom je nooit onder 0.5V of boven 4.5V met een factor van 66 2/3.
Denk jij dat het kan werken zoals de manier die ik beschrijf met INA122?

Want als ik naar jou oplossing kijk dan heb je toch ook een negatieve spanning nodig om bijvoorbeeld -30mv te versteken naar -2V?

Overigs kan je uitleggen waar die sapnningvolger voor nodig is?

Dus dan heb je:
gage->spanningvolger->inveterende versteker->inv sommator->adc ??

groeten,

elexender

zonder negatieve voeding kan mijn idee inderdaad niet.

de spanningsvolger is om de ingangsimpedantie hoger te maken. Maar als ik zo het schema zie komt het signaal uit een ic en niet rechtstreeks vanuit een weerstandsnetwerk.

in het laatste geval zouden de weerstanden van de inverterende versterker de meting kunnen beinvloeden. Een spanningsvolger heeft een veel grotere interne weerstand als die versterker en heeft daardoor minder invloed.

Ik heb alleen geen idee hoe het werkt met de Vref van een ADC

Dat kan al is het niet nodig om 10volt te gebruiken.
De INA122 kan ook prima overweg met een enkele voeding van 5 volt.

Wat je aangeeft de ref aan de 2,5 volt en de juiste Rg kiezen.

Misschien wel handig om het plaatje uit je link er bij te hebben:

Las je deze post na mij antwoord van net..

Ik heb alleen al een 10vdc nodig voor die strain gage dus kan ik dat gelijk gebruiken voor die INA122. Maar zou inderdaad nog een 7805 tussen kunnen doen.

Ik denk dat ik mijn beschreven manier maar gewoon eens ga uitproberen.
Ik laat wel weten hoe het gaat!

bedankt voor je reply!!

Ik heb alleen geen idee hoe het werkt met de Vref van een ADC

Ik heb het over de ref van de INA122. de vref van de ads8341 staat hier helemaal los van. Zolang de analoge input range van adc 0-5v is en de ina122 het signaal versterkt rondom de 2,5v valt het binne de range van de adc.

Ik ga het gewoon uitproberen en laat het weten wat eruit komt!

[Bericht gewijzigd door Henry S. op dinsdag 9 november 2010 20:49:20 (23%)

Als je de strain gage gaat voeden met 10 volt dan ook de INA122 met 10 volt voeden.
Wat dan alleen nog van belang is dat er niet teveel spanning op de ingang van de ADC mag komen. Die zou kunnen oplopen tot 10 volt en dat mag als ik het goed zie niet meer zijn als 5,2 volt.
Daar moet je dus iets voor bedenken of de strain gage en de ina122 met 5 volt voeden.

Edit:
Wat je ook kan doen alles voeden met 10 volt en op de ref van de INA 5 volt gelijk aan de ref en voeding van de ADC. De uitgang van de INA is dan in rust 5 volt en afhankelijk van de kracht loopt dit op of af naar 10 volt of 0 volt.
De uitgang deel je door 2 met een spanning deler zodat je weer op 5 tot 0 volt uitkomt en in rust op 2,5 volt.

Ja dat klopt.
Maar als er 10Vdc op de strain gage zet kan er maximaal maar 30mv uit komen en als je dat versterkt met 66 2/3 kan er tog nooit boven de 4.5 volt uit komen? Het is natuurlijk wel veiliger als er gewoon 5v op staat dan kan er nooit boven de 5v komen.

Nu vraag ik mij af of de strain gage gewoon nog goed werkt op 5Vdc. Als je 5volt pakt is de ouput dan naturlijk 5V x 3mv/v = +/- 15mV.

Alleen in datasheet van de s-typee 6918 staat max excitation = 15Vdc en recommended 10Vdc.

Ow heb trouwens ook met dit ding een keertje gewerkt:
http://www.burster.com/burster/www_root/ar03/templates/xxxxxAr03Produc…

Die deed het gewoon met de 6918 en geeft een excitation van 4V(staat in de pdf). Dus dat moet 5Vdc ook wel kunnen.

Nou als ik dan dus 5v pak moet ik de gain dan wel 2x verhogen dus dan 2 * 66 2/3 = 133 1/3.

Op 9 november 2010 14:59:43 schreef part:
Wat je ook kan doen alles voeden met 10 volt en op de ref van de INA 5 volt gelijk aan de ref en voeding van de ADC. De uitgang van de INA is dan in rust 5 volt en afhankelijk van de kracht loopt dit op of af naar 10 volt of 0 volt.
De uitgang deel je door 2 met een spanning deler zodat je weer op 5 tot 0 volt uitkomt en in rust op 2,5 volt.

Ja dat is ook een goed idee!

[Bericht gewijzigd door Henry S. op dinsdag 9 november 2010 20:50:11 (21%)

Maximaal maar 30mv bij de opgegeven maximale belasting.
Als je kan garanderen dat je daar nooit overheen gaat dan is het geen probleem maar als de kans bestaat dat door een klap of trilling je hier wel overheen gaat is het snel gedaan met de ADC.

(onze post kruisen elkaar een beetje :) )

Ja nee oke dat moet voorkomen worden! Beetje zonden van die adc's. Ze zijn toch weer 15/20 euro per stuk dus denk dat ik gewoon 5Vdc op de 6918 ,INA122 zet!

Bedankt voor de waarschuwing!!!

Goed plan en mocht het niet werken dan kun je altijd nog overstappen naar 10 volt met een spaningdeler daar achter.

en als je inderdaad altijd zo'n lage uitstuur hebt, maar je gewoon wilt beveiligen tegen een uitsturing van 10v (bijvoorbeeld als er een slecht contact optreedt) dan zou je ook nog een zener kunnen plaatsen

Op 9 november 2010 12:59:09 schreef timberleek:
zonder negatieve voeding kan mijn idee inderdaad niet.

Kan prima met een opmap. Je pakt een dual opamp bijvoorbeeld een tlc272. Ik doe het namelijk ook bij mijn ph meter, daar heb ik alleen 5v tot mijn beschikking.

Je kan dan zoiets doen. De tl062 word dan tlc272, en de v- word dan gnd. De twee opamp + ingang moet je dan 2.5v zetten. Zijn nog veel meer voorbeelden te vinden met opamps waar je geen negatieve voeding nodig hebt. Even een 7805 gebruiken als voeding voor de opamp, dan ga je volgens mijn nooit over die 5v heen, maar dat weet ik niet zeken, kan wellicht iemand anders even toelichten.
http://blea.ch/wiki/images/b/bc/PH-sch-only.jpg

Edit/

Oja opamp netjes ontkoppelen met 100nF condensator op de VCC zo dicht mogelijk bij de opamp.

Edit/2
Heb even het circuit online gezet waar ik aan werk(al maanden :P ), en die doet het nu eigenlijk al weken goed, erg stabiel. Heb nog wel een RC filtertje vlak voor de ingang van de ADC zitten.
http://i55.tinypic.com/o5s2fk.png

De loadcell geeft 30 mv veschilspanning bij volle belasting, maar wel met een DC niveau van de helft van de voedingsspanning. Dus het DC niveau van de beide ingangen van de INA ligt dan in de buurt van 5 Volt. Als de INA dan met 5 volt gevoed wordt loopt die vast. Dus INA en loadcell allebei op dezelfde voedingsspanning.

Een INA heeft als voordeel dat je heel gemakkelik de referentie en de versterking kunt instellen. Bij een opamp schakeling krijg je al snel last van offset spanningen en dus meetfouten.

Negatieve voeding is nergens voor nodig. Zoals gezegd, ligt het DC niveau van allebei de loadcell uitgangen rond 5 Volt.

Als de ref ingang van de INA op 2.5 volt ligt dan wordt het uitgang signaal van de INA hierbij opgeteld. Dus bij een ingangspanning van 30 mV en een versterking van 66 wordt de uitgang 2.5 + (0.30 * 66) = 4.5 Volt. En bij een ingansignaal van -30 mV wordt de uitgang 2 Volt lager dan de referentie, dus 0.5 Volt.

Ingangen van de ADC kun je beschermen dmv een weerstand van 1K tussen INA en ADC, en een diode van ingang naar 5V voedingsrails.

Hallo!

Ik had vandaag(einderlijk) tijd om het schema te etsen/solderen ect!!

Heb de schema werkend gekregen!!!

Heb de INA122 en de loadcell gewoon met 5v gevoed (7805).
De rev van de INA staat op 2.47V via spanningdeling met 10k weerstanden.

Bij rust geeft de loadcell netjs 2.47V(uit de INA122 ) aan.

Heb nog geen 500kg(max) load kunnen testen!! Dit omdat ik dat zelf niet met me handen kan produceren. Maar ben op de loadcell gaan staan (80kg) en ben voorzichtig wat gaan springen (is heel lastig met een s-type loadcell). En de voltage kwam niet onder de 2V.
Dit klopt ongeveer wel want 0.5v staat gelijk aan 125kg.

Heb trouwens 1.5k weerstand gebruikt voor de gain. gain = 5+ 200k/1500 = 138 1/3.

Nogmaals bedankt voor de reacties!!

Groeten,

Alexander/elexender