Views
50A Current Sensor(SKU:SEN0098)
From Robot Wiki
Contents |
Introduction
This is a breakout board for the fully integrated Hall Effect based linear ACS758 current sensor. The sensor gives precise current measurement for both AC and DC signals.The thickness of the copper conductor allows survival of the device at high overcurrent conditions. The ACS758 outputs an analog voltage output signal that varies linearly with sensed current. This current sensor enables you to monitor currents in your project every second for energy saving or circuit protecting purposes.
Features
- Arduino interface compatible
- 120 kHz typical bandwidth
- 3 μs output rise time in response to step input current
- Output voltage proportional to AC or DC currents
- Factory-trimmed for accuracy
- Extremely stable output offset voltage
- Nearly zero magnetic hysteresis
- Total output error improvement through gain and offset trim over temperature
- Monolithic Hall IC for high reliability
- Ultra-low power loss: 100 μΩ internal conductor resistance
Specifications
-Operating Voltage(analog): 5V
-Peak Measuring Voltage:3000V(AC),500V(DC)
-Current Measuring Rang:-50~50A
-Sensitivity:40 mV/A
-Operating Temperature: -40~150°C
-Dimension:34x34mm
Connection Diagram
This is a sample connection diagram, intended to give you an idea of how it is used.
Sample code
/*
50A Current Sensor(AC/DC)(SKU:SEN0098) Sample Code
This code shows you how to get raw datas from the sensor through Arduino and convert the raw datas to the value of the current according to the datasheet;
Smoothing algorithm (http://www.arduino.cc/en/Tutorial/Smoothing) is used to make the outputting current value more reliable;
Created 27 December 2011
By Barry Machine
www.dfrobot.com
Version:0.2
*/
const int numReadings = 30;
float readings[numReadings]; // the readings from the analog input
int index = 0; // the index of the current reading
float total = 0; // the running total
float average = 0; // the average
float currentValue = 0;
void setup()
{
Serial.begin(57600);
for (int thisReading = 0; thisReading < numReadings; thisReading++)
readings[thisReading] = 0;
}
void loop()
{
total= total - readings[index];
readings[index] = analogRead(0); //Raw data reading
readings[index] = (readings[index]-510)*5/1024/0.04-0.04;//Data processing:510-raw data from analogRead when the input is 0; 5-5v; the first 0.04-0.04V/A(sensitivity); the second 0.04-offset val;
total= total + readings[index];
index = index + 1;
if (index >= numReadings)
index = 0;
average = total/numReadings; //Smoothing algorithm (http://www.arduino.cc/en/Tutorial/Smoothing)
currentValue= average;
Serial.println(currentValue);
delay(30);
}
Documents
Go Shopping 50A Current Sensor(SKU:SEN0098)


