Electronic – arduino – Map a Voltage range into another range

adcanalogarduinobatteriesoperational-amplifier

I'm making a battery voltage meter with a Wemos D1 Mini. The Analog input has a Vref of 3.2v. The battery that i will measure is a Lithio one of 72v, minimal 68V to max 84V, the Analog Input of the Wemos give to me (3.2v / 1024) of precision and i need more precision because with a resistor divisor i have a range from 0-90v but i will not use 0-60v, so my question is if with a OpAmp (i have a LM324) and some resistors i can map 60v-90v to 0v-30v and then use resistor divisor to down to 0-3.2v and get more precision with the ADC. The resolution that i want get is aprox 3mV-5mV

Update

I was used the document "Designing Gain and Offset in Thirty Seconds" with this values:
Excel with values

And used proteus to simulate the circuit of positive m and negative b

enter image description here

Like you see Vref' not is same (even closed) to calc and Vout is outside 3.1v range of calc… what I'm doing wrong here?

Best Answer

The voltage conversion could be implemented like this:

enter image description here

To obtain:

enter image description here

Vref can be generated using precision adjustable reference (e. g. tl431) and R2 can be a trimpot. If you have specific requirements regarding the opamp power rails, reaching 0V could require some changes.