Noise Test

 
 


























































































































 

Noise test : brain duino and IBVA

10 bit AD : Arduino AD by masahiro

24 bit AD : AD7173 by masahiro

24 bit AD : ads1299 : by eeghacker and Dream Team



followings are my thinking.

it is same as beginning when I decided to use AD7173 ( 2013), not use ads1299 (2012).

actually beginning was ads1298R (2010).

ads1298R is included input connection test. but it was more noisy AD.

then start ship ads1299. this one re-design as low noise.

but not included “Integrated Respiration Impedance Measurement “

it was confuse for this update.

still nice things for ads1299 is Simultaneous-Sampling .


which AD is nice ? depend on how to use AD anyway.

500 Hz sampling , 250 Hz band, 2 ch is my minimum use.

so try to see how works with AD7173 and ads1299.



Two type of noise.

noise by AD calculation.

noise by Amp.


noise by AD calculation : AD7173.

it is not works as 24 bit AD when set high speed sampling rate.


1007 sps, ( 500 Hz sampling 2 ch ) : noise : 2.2 μV rms, 15 μV p-p,

Effective Resolution 22.2 Bits, 19.3 bit p-p resolution ( noise free )

5208 sps ( 500 Hz sampling 10 ch ) : noise : 4.5 μV rms, 30 μV p-p,

Effective Resolution 21.1 Bits, 18.3 bit p-p resolution ( noise free )


1 digit = 0.000596 μV p-p ( when bipolar input mode with X 1000 amp : brain-duino )

—>> ( 5 V / 8388608 = 0.5960 μV )

24 - 19 = 5 bit => 1/32 —>> 0.019072 μV

( 500 Hz sampling , 250 Hz band, 2 ch )

24 - 18 = 6 bit => 1/64 —>> 0.038144 μV

( 500 Hz sampling , 250 Hz band, 10 ch )

this is digital calculation noise.

=======================

AD7173 is 2 bit (X 4) more noise free bit than ads1299 when 262 Hz band.


when X 1 amp more noise. following use X 24 amp for lowest noise.


noise by AD calculation : ads1299

1 digit = 0.02483 μV p-p —>>( 5 V / 8388608 = 0.5960 μV , when X 24 amp mode )

24 - 17 = 7 bit = 1/128 —>> 3.17824 μV ( 262 Hz band )

24 - 18 = 6 bit = 1/64 —>> 1.58912 μV ( 65 Hz band )

masahiro

24bitADtest29June2015

this is test 24 bit AD version brain-duino :


head amp output is connect to filter amp input by 1m cable.

filter amp output is conenct to 24 bit AD board input.

24 bit AD board and Arduino pro mini connected via SPI.

Bluetooth interface connected to Arduino IO PIN 0 and 1.


5 V power from USB battery to filter amp, Arduino and Bluetooth interface.

put same signal + 10 K ohm impedance with brain-duino ( 512 Hz sampling ), IBVA ( 120 Hz sampling ) and brain-duino 24 bit AD version ( 500 Hz sampling )

set X 10 FFT display gain.

this brain-duino 24 bit AD version use long cable connection between head amp and filter & AD. little harmonic noise happened.

put same signal with 10 K ohm, 100 K ohm and 1 M ohm impedance.

set X 3 FFT display gain.

use no shield signal input, so when 1 M ohm source impedance, AC noise effect happened.

when put around 5 μV p-p wave signal with 10 k ohm impedance.

set X 10 FFT display gain.

brain-duino 10 bit

24 bit AD version brain-duino

sampling is 500 Hz

set gain X 10 FFT display

show 0 .. 30 Hz

CH 1 use Option A

CH 2 not use Option A

24 bit AD version brain-duino

sampling is 500 hz

0.1 .. 200 Hz noise


CH 1 use Option A

CH 2 not use Option A

24 bit AD version brain-duino

can see less than 0.19 μV data.

sampling is 500 Hz

0.1 .. 40 Hz noise


CH 1 use Option A

opa2111

1.6 μVp-p ( 0.1Hz .. 10Hz )


CH 2 not use Option A : this way more low noise when input is short.

AD8422ARMZ

0.15 μVp-p ( 0.1Hz .. 10Hz )

10 bit AD and 0.1 .. 40 Hz noise.

CH1 and CH2 use Option A

sampling is 512 Hz.

show spectrum 0 .. 256 Hz.

raw voltage scale is 0.19 μV p-p at red horizontal line to black horizontal line.

around 0.4 μV p-p when use 0.1Hz .. 200 Hz filter.

0.4 μV p-p is 2 digit of 10 bit AD. so we don’t know actually amp noise or AD noise.

I design that way for IBVA / brain-duino amplifier.

this mean use 10 bit AD can get nice signal.

difference between use 24 bit AD and 10 bit AD is dynamic range.


brain-duino 10 bit AD : ( total gain : X25000 )

max input is +-100 μV

max DC offset cancel is +-0.11 V


brain-duino 24 bit AD : ( total gain : X1000 )

max input is +-2.5 mV

max DC offset cancel is +-0.11 V


TI 24 bit AD : ( when set gain : X24 )

max input is +-100 mV

max DC offset cancel is +-0.1 V


0.19 μV p-p is 1 digit of 10 bit AD. can not see less than 0.19 μV p-p .

set X 10 FFT display gain

noise by Amp.

TI amp:

• 1.0 μVPP (70-Hz BW) ( gain = 24 )

Input Bias Current: 300 pA

1 G ohm

no information for input current noise.

no information for noise that depend on input impedance

no information the about how effect noise by Bluetooth communication.


http://www.rfcafe.com/references/electrical/opamp-nf.htm

A 1000Ω resistor generates 4nV / √Hz @ 25°C


brain-duino amp :

0.4 μV p-p —>> 0.06 μV rms ( 0.1 Hz to 40 Hz band ) —>> 0.01μV / sqrt Hz

1 μV p-p —>> 0.16 μV rms ( 0.1 Hz to 200 Hz band ) —>> 0.01μV / sqrt Hz


from opa2111 and AD8422 specification, 8nV / sqrt Hz

similar as test resolute .


this test is when short input.

but we are not use like that way.

always input has some resistance .

usually 5 K ohm to 1 M ohm.

Ti chip is no information that regarding to : how noise change happened that depend on input impedance.

opa2111 works same noise as resistance when 5 K ohm to 30 M ohm input impedance.


input noise is

voltage noise ( this case around 10nV / sqrt Hz )

and

current noise ( this case around current noise 1fA / sort Hz ).

current noise happened depend on input impedance.

less input bias current and less input current noise makes low noise.

opa2111 design that way.


here is 3 type of noise

Amplifier voltage noise : 10 nV. ( not depend on source impedance )

Amplifier current noise :

in case current noise is 1 pA / sqrt Hz, then R=0 -> 0, R=3K ohm -> 3 nV, R=300K ohm -> 300 nV, R=3M ohm -> 3μV

in case current noise is 1 fA / sqrt Hz, then R=0 -> 0, R=3K ohm -> 0.003 nV, R=300K ohm -> 0.3 nV, R=3M ohm -> 3nV

Johnson noise of R : R=0 -> 0, R=3K ohm -> 7 nV, R=300K ohm -> 70 nV, R=3M ohm -> 700 nV

3 noise total is actual noise.


current brain-duino use many high ohm resistor. next update will try change this for reduce total noise.

then increase more power current.

this relation is always happened. low noise need high power, less power design makes more noise.


opa2111:

5 mA power

8 nV / sqrt Hz (input voltage noise)

1 fA / sqrt Hz (input current noise)

1.6 μVp-p ( 0.1Hz .. 10Hz )

3 pA (input bias current)

10 T Ohm (input impedance) ( Differential : 10^13, Common-Mode : 10^14)


AD8422ARMZ

330 μA (power)

8 nV / sqrt Hz (input v noise)

90 fA / sqrt Hz (input current noise)

0.15 μVp-p ( 0.1Hz .. 10Hz )

1..0.2 nA (input bias current)

200 G Ohm (input impedance)




=======

followings are test resolute for brain-duino.

when short input : put this to brain-duino input.


use IBVA V5.1.3.7 application for test.

how to read IBVA display :

this digital calculation noise 1.58912 μV is similar as amp noise when 65 Hz band.

mean AD reading data is not sure amp noise or digital calculation noise for followings test.

http://eeghacker.blogspot.com/2013/12/self-noise-of-openbci.html

http://eeghacker.blogspot.com/2013/12/self-noise-of-openbci-with-more-

data.html

this test is when 60 Hz band. when use with 262 Hz band all resolute will be two time more noise.

also maybe OpenBci can not works with 262 Hz band, not sure.

this test is not use Bluetooth connection.

all test is input short.

i’m interested in to see how noise change happen with different input source impedance.

also with bluetooth connection.

• Gain X 24

• when 250 eps ( 65 Hz ) : 0.98 μV p-p, 0,14 μV rms, noise free bit 18.54, ENOB, 19.85

  1. when 1000 eps ( 262 Hz ) : 1.97 μV p-p, 0,28 μV rms, noise free bit 17.54, ENOB, 18.85