Sunday, December 13, 2009

Information Sharing: CS5463 Power Meter IC Calibration

I would like to share the calibration of the CS5463 Power Meter IC. My internet friends (co-engineers) asked me how I was able to use the calibration of the CS5463 in one of my projects (a low-cost power meter). I did this project long time ago, so if I will be having some minor mistakes here (due to passing time) please forgive me and just leave a comment. I am trying very hard to recall all the information (in my mind) needed for the calibration and to be able to share with those who needs the information.

The procedure in the datasheet is straightforward. However, many are confused in the graph shown in the datasheet:

Note: I only used DC signal for the whole calibration process. (No AC signal was used in calibration process)

Here are the steps/example for the calibration(only for Gain Calibration, I didn't include the Offset calibration as it is very easy to understand from the datasheet):
1. Inject a known DC voltage signal. For example, I will be injecting a well-calibrated voltage of 163.22mV. (you can use any voltage here depending on your preference, but this is the voltage I used on my computations.)
2. Perform the AC gain calibration.
3. After the AC gain calibration (and if done right), 163.22mV corresponds to 0.600 (instantaneous register value).

That's it. On actual operation (after being calibrated), if I got a value of 0.510, I just need to do a simple ratio and proportion to get the corresponding voltage.

163.22mV/0.600 = x/0.510
x=138.737mV; The voltage currently present at the channel being measured

With this method, I was able to compare the readings I got with a calibrated Chroma Power Meter versus my project. (there are small difference on the current reading due to the wrong type of current transducer that I used in the initial phase of this project)

With the data I got, I conclude that the method is accurate and precise. :)

17 comments:

  1. Hello 7String!

    I am concluding a project with that energy meter myself :)
    This information comes in very handy indeed. Allow me just to ask you something. How do you execute step 2 (Perform the AC gain calibration)?

    Thanks for your help :)

    Daniel

    ReplyDelete
  2. Hi Daniel,

    The AC calibration is performed by issuing a calibration command. The list of things that can be calibrated are on page 25 of the CS5463 datasheet. :)

    ReplyDelete
  3. hey, I am making an energy meter which uses cs5463 and atmega32.I have just started the project and would like you to forward me your circuit diagram at asrani.yash@gmail.com
    thank you.

    ReplyDelete
  4. hi yash,

    just follow the diagram near the end of the CS5463 datasheet. The value needs to be adjusted according to your design.

    -- sevenstring

    ReplyDelete
  5. Hi 7String,

    Im working in a project using the cs5463, I try to read Temperature, but i just get dummie output FF FF FF

    Do you know what might be my problem?

    thanks,
    Andres

    ReplyDelete
    Replies
    1. Did you solved the problem? What was the problem?

      Delete
  6. Hello Andres,

    As a starting guide,
    1. Make sure that you configured the SPI modes of your Microcontroller properly.
    2. Try reading first the Status register of the CS5463 (address 15)

    then work from there.

    -- 7

    ReplyDelete
  7. Hi,

    Which power supply did you use for the 163.22mV DC signal?

    Thanks!

    ReplyDelete
    Replies
    1. I generated the 163.22mV from a linear power supply - then LM317 - then potentiometer - then capacitors at the output. From there, I adjust the potentiometer until I hit near 160mV (I used a newly calibrated multimeter from our calibration department). Just make sure that whatever voltage you used on your calibration should be used on your computations.

      Delete
  8. Hi
    I want to configure CS5463 to enable interrupt for both CRDY and DRDY. But if I try to read status register to find out which bit is set, I get continuous zero's.
    I am able to read status register as 800001 before starting conversion. I also get regular interrupts when conversion is enabled. But I cannot determine whether it is instantaneous or end of computation cycle.
    Great if anyone can provide pointer on this.
    Thanks & Rgds
    Rahul

    ReplyDelete
  9. Hi SevenString,

    Will you be interested in a short job but very rewarding for doing some work with this cs5463 related to calibration, reading and so?

    ReplyDelete
  10. Hi,
    thank you very much for good information.
    Could you please share your project.
    I have some problem with read register.

    Thanks a lot.

    ReplyDelete
  11. Hi,

    I'm doing a power meter, using the CS5463 and PIC16F877A programming in C. My problem is this, when I turn my circuit the IC begins to measure so far so OK, after a while it starts to make wrong steps until the value in latch 347. I think the problem is related to the timing, you could give me some help?

    Thank you.

    ReplyDelete
  12. Hey sevenstring I need your help on this project.

    ReplyDelete
  13. Hello 7string,
    i am going to do a project on which requires bi directional energy meter. so i want to use cs5463. Shall i use this ic directly without calibration. if i do so what happens. are there any default calibration in this ic

    ReplyDelete
    Replies
    1. I would not recommend using the CS5463 without calibration. The function is already there and at least try to learn how to use it. Also, you must at least compensate the reading in the sensing elements. Try to learn and use the calibration, it will make your measurements more accurate.

      Delete
  14. Hello 7String, I am with my final project and I am reneging on the CS5463, I found your forum, and I wanted to ask you how to calibrate it. The VIN input comes from a 16 VAC step-down transformer and the IIN receives it from a toroidal current sensor, when you talk about injecting 163.22 mV of DC, where do you inject it ....? What do you modify in the calibration record. Your help would be very valuable to me.
    Ariel

    ReplyDelete