I have ADE7880 and i need to take voltage (rms value), current (rms value), power and power factor from ADE into the ARDUINO MEGA 2560.
I want to talk a little what i try to do. First i have asynchronous motor and i try to analyze this motor about its efficiency. So i need voltage ,current, power ,and power factor of this motor's input circuit and then take into these values on MEGA 2560, after this, i will do some calculations with these values then i will show efficiency of motor momentarily on my pc with using c#.
So are there any codes for arduino to take these values from ADE7880?
I don't have any specific code for the MEGA 2560 and the ADE7880 but I can certainly help with the interface.
The ADE7880 has a SPI port or I2C port which is used to communicate with the part. I would recommend the SPI port because it can run at 2.5MHz. First you will want to set up SPI communication between your MCU and the ADE7880, there should be examples out there for your particular MCU. Test the communication by reading a register that has an initial value to make sure it reads back correctly then test the SPI write. If there are issues, verify the timing with Page 9 of the ADE7880 Data Sheet.
Once communication is established, all features and functionality can be accessed with the SPI read and write operations. This way, the RMS, Power and all other metrology registers can be read back from the ADE7880 in order to get all the information you need.
First thanks for your answer and i am sorry for my english
I am new in arduino and i investigate some codes on i2c . I have one question. Am i have to write specific value on specific address for read V(rms) or other parameter? Or i should just read address of parameter?Maybe this question is terrible but i am still learning :/
Page 76 - 77 of the data sheet is a great resource for the I2C communication. For reading values of the ADE7880, you have the send the slave address then send the register address for the register you want to read. Then the ADE7880 will respond with the slave address and the value of the register in four 8-bit bytes. This is shown in Figure 104.
Then for writing to a register to change settings or calibrate the ADE7880, you have to perform register writes. This is done by sending the slave address, then the 16-bit register address then the 32-bit register value you want to write. This is shown in Figure 103.
This way you can read and write any register inside the ADE7880 in order to set it up and get information out.
Can you provide the code for ADE 7880 interface with 2560 uc.
i have use code i2c scanner but it is not working