Current sensor do not show a real measurement

Hi All,

I bought the electricity meter brick (sensor) with a TA12-200 current transformer in order to extract current from the AC line. I thought that this sensor will show me the real current, however it is not working as expected. As you can see in the image below, while the multimeter is reading 2.48 Amps, the serial port is showing 1023 for pin reading and 17663 mA for current measurement. I need to see real current measurement and not the lowest current or the peak, I need to see how the current is increased by demand on the load.

I am currently using a drill as a RL.

Do you know how can I get a real measurement of current?

Data Sheet of the sensor

ftp://imall.iteadstudio.com/Electronic_Brick/IM120710018/DS_IM120710018.pdf

#define ELECTRICITY_SENSOR A0 // Analog input pin that sensor is attached to
float amplitude_current; //amplitude current
float effective_value; //effective current
void setup()
{
Serial.begin(9600);
pins_init();
}
void loop()
{
int sensor_max;
sensor_max = getMaxValue();
Serial.print("sensor_max = ");
Serial.println(sensor_max);
//the VCC on the Grove interface of the sensor is 5v
amplitude_current=(float)sensor_max/1024*5/200*1000000;
effective_value=amplitude_current/1.414;
//minimum_current=1/1024*5/200*1000000/1.414=24.4(mA)
//Only for sinusoidal alternating current
Serial.println("The amplitude of the current is(in mA)");
Serial.println(amplitude_current,1);//Only one number after the decimal point
Serial.println("The effective value of the current is(in mA)");
Serial.println(effective_value,1);
}
void pins_init()
{
pinMode(ELECTRICITY_SENSOR, INPUT);
}
/*Function: Sample for 1000ms and get the maximum value from the SIG pin*/
int getMaxValue()
{
int sensorValue; //value read from the sensor
int sensorMax = 0;
uint32_t start_time = millis();
while((millis()-start_time) < 1000)//sample for 1000ms
{
sensorValue = analogRead(ELECTRICITY_SENSOR);
if (sensorValue > sensorMax)
{
/*record the maximum sensor value*/
sensorMax = sensorValue;
}
}
return sensorMax;
}

I appreciate all your help.

I suggest you try measuring the current drawn by a filament light bulb.

Your link to the datasheet does not work. Here is the product web page:
http://www.itead.cc/prototyping/electronic-brick/electronic-brick-electricity-meter-analog.html.

I note the web page says that the current can be up to 5A. I understand that to be a peak value, not RMS. Looking at the electrical characteristics in the datasheet, with 5A flowing, the output from the current transformer should be about 5mA. With the 200Ω burden resistor, the voltage would be 1.0V or -1.0V depending on polarity of the current. If it's -1V, that will exceed the absolute maximum rating for the input of your Arduino. See this currently-active thread:
Adjust circuit for analog current sensor - Sensors - Arduino Forum.