Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

linear calibration in mems-accelerator.

Status
Not open for further replies.

lines

Newbie level 6
Joined
Jul 12, 2011
Messages
12
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,283
Activity points
1,379
Hi, all.
I'm coming with an problem in accelerator design.
In our process, the sensor has some non-linear problems to be solved in asic design.
As our target is to get an linear output whose non-linearity is about 100ppm. but the non-linearity in sensor is about 10000ppm. and the relationship between accelerate input (a_in) and capacitance output (dC) is like an 3rd curve.
so we come with 2 solutions:
1. get the coefficients of the 3rd curve, and write in OTP to calibration this non-linear.but the simulation results shows that the curve should be divided to 10 portions. and need 40 points. this seems too much for test engineer.
2. Use high-order curve. but the order seems > 11 times. this cost lots of power in digital design.
and now, we want to adopt the first methods, and i post this, wandering if there any better idea?
 

In my view, y high order polynomial is typically a "dumb" linearízation method in lack of a specifc physically plausible sensor characteristic. Respectively I would try to find a way to describe the actual characteristic with fewer parameters.

But I know that it's not always possible.

The 40 points table is mainly a problem of calibration effort. If you get good reproducibility by interpolating a limited number of calibration points with any kind of function, a possible solution can be to calculate the look-up table entries at calibration time. This brings also the advantage that the device firmware isn't restricted to a particular interpolation function, you can change it at any time as long as you have a sufficient fine table.
 
  • Like
Reactions: lines

    lines

    Points: 2
    Helpful Answer Positive Rating
In my view, y high order polynomial is typically a "dumb" linearízation method in lack of a specifc physically plausible sensor characteristic. Respectively I would try to find a way to describe the actual characteristic with fewer parameters.

But I know that it's not always possible.

The 40 points table is mainly a problem of calibration effort. If you get good reproducibility by interpolating a limited number of calibration points with any kind of function, a possible solution can be to calculate the look-up table entries at calibration time. This brings also the advantage that the device firmware isn't restricted to a particular interpolation function, you can change it at any time as long as you have a sufficient fine table.

Thanks for your answer, i think i get some ideas from your view, and i need time to verify it. thanks. I'll come back.

- - - Updated - - -

In my view, y high order polynomial is typically a "dumb" linearízation method in lack of a specifc physically plausible sensor characteristic. Respectively I would try to find a way to describe the actual characteristic with fewer parameters.

But I know that it's not always possible.

The 40 points table is mainly a problem of calibration effort. If you get good reproducibility by interpolating a limited number of calibration points with any kind of function, a possible solution can be to calculate the look-up table entries at calibration time. This brings also the advantage that the device firmware isn't restricted to a particular interpolation function, you can change it at any time as long as you have a sufficient fine table.
Data below is my simulation results, fn(x) = a3*x^3 + a2*x^2 + a1*x +a0;
it's hard by interpolating.
Thanks for your answer, i'll try other ways.
1 2 3 4 5 6 7 8
a3 0.1417 0.1228 -0.1124 -0.5594 -0.7448 -0.3993 0.0035 0.1455
a2 2.0830 1.9908 1.1020 0.1455 -0.0178 -0.4225 -1.4879 -2.1046
a1 16.4331 16.2905 15.1621 14.4649 14.4192 14.5854 15.5391 16.4364
a0 0.7706 0.7028 0.2212 0.0483 0.0443 0.0210 -0.2680 -0.7058
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top