Author Topic: Reducing noise in a small signal  (Read 876 times)

0 Members and 1 Guest are viewing this topic.

Offline RawCodeTopic starter

  • Regular Contributor
  • *
  • Posts: 67
Reducing noise in a small signal
« on: July 04, 2020, 09:59:53 pm »
Hello guys.
I'm designing a modified version of a Picoammeter designed by a guy in this forum for an academic project (https://www.eevblog.com/forum/projects/picoammeter-design/)
The simplified version of the circuit is this:
1016904-0
The full schematic is this:
1016886-1
The logic in this circuit is the following: when there's a 1MOhm resistor in the feedback path, this circuit will output a voltage according to the current, in particular from 5mV to 5V when is flowing a current from 5nA to 5uA respectively. In particular i made these modifications to this circuit to allow a larger flow of current and to achieve different current ranges.
The 5mV-5V signal is sent to an ADC in order to be converted and the converted data is sent to a personal computer to do some other stuff. The ADC is a LTC2402, a 24bit converter over 5V (in pratice it's a 28bit converter, because there are some 4 additional bits). Its resolution is about 0,0000000186264515617V (considering the all 28bit) so it should be more than capable to resolve that small signal(5mV).

The idea is to switch range to the next one when the converter's input hits 5V, say from 1MOhm feedback resistor to 1kOhm feedback resistor. In practice the current-to-voltage gain is reduced by 1000. So the 5V in the 1MOhm range become 5mV in the 1kOhm range.

The problem is that that 5mV signal is covered in noise(i think)
Here an example:
1016890-2
(this plot is generated by a program made by me which converts the ADC data to a plot, it's part of my thesis work)
As you can see, i'm measuring a 1MOhm resistor as DUT, and before reaching the limit of the range, i was getting a nice flat line in the 1Mohm range (1MOhm in the feedback path). When the circuit shitches to the next range, 1kOhm range(1kOhm in the feedback path), as you can see there is strange noise superimposed to the actual signal. The red line is the excpected plot, the blue stuff is what i get form the ADC. Don't mind at that jump in the current axis when the range switches: the two ranges are not perfectly allined yet, so when the circuit switches from a range to another there is that jump.

Considering that i'm using a LMC662 as current-to-voltage converter(so it should be a good CMOS OPA), and all the other opamps are tl072(which in theory should be low noise OPA), why i get that noisy plot? How can i improve the signal integrity?
Don't mind a the push-pull stage, i fried one of the mosfets by accident and i bypassed this stage entirely, making this circuit exactly equal to the original version except for the switchable ranges. The problem persistis even without push-pull stage.

The voltage sweep you can see in the picture is generated by a 12bit microcontroller's DAC. It generates 4096 steps totally, 3 steps per second. To make a full sweep from 0V to 10V, 15/20 minutes are necessary.
I noticed though that if i speed-up the process by a 10 factor, making a full sweep in 2 minutes, the noise is less present as you can see in the following picture.
Why it happens?
1016896-3
 

Offline Gyro

  • Super Contributor
  • ***
  • Posts: 10174
  • Country: gb
Re: Reducing noise in a small signal
« Reply #1 on: July 05, 2020, 10:27:04 am »
Please don't double post - you already have a thread on this circuit / project with plenty of folks helping you. Starting another one just causes people to repeat information that others have already posted and generally annoys people - keep it together (so you keep the context of what has gone before).

https://www.eevblog.com/forum/projects/poor-linearity-of-a-opamp-push-pull-buffered/
« Last Edit: July 05, 2020, 10:33:01 am by Gyro »
Best Regards, Chris
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf