Hall Current 5 Click-Board
Hall Current 5 Click-Board
Overview
Das Hall Current 5 Click Board™ ist ein sehr genaues Click Board™ zur Messung des elektrischen Stroms auf Basis des ACS733 IC. Dieser IC ist ein galvanisch isolierter Stromsensor, der das Hall-Effekt-Prinzip nutzt. Sein markantestes Merkmal ist sein sehr niedriger Serienwiderstand von nur 1 mΩ, was dieses Gerät zu einem nahezu perfekten Amperemeter macht. Der maximale Strom, der mit dem Hall Current 5 Click Board™ gemessen werden kann, reicht von -20 A bis +20 A, mit optimierter Präzision. Durch den Einsatz der neuesten Fertigungstechnologien kann das ACS733 bei sehr hohen Frequenzen verwendet werden, was es zu einer perfekten Lösung für eine Vielzahl von Anwendungen macht.
The ACS733 has a precisely trimmed analog output, which changes linearly with the applied current. Its excellent galvanic isolation simplifies the application, allowing the Click board™ to be connected directly to the measured circuit. It can be used to measure both DC and AC current. The ACS733 also features an overcurrent fault detection, reporting this event on a dedicated pin. The Hall Current 5 Click Board™ can be used in motor control applications, load detection and management applications, switch-mode power supplies, overcurrent fault protection applications, and similar applications that require accurate and reliable current sensing.
DO NOT TOUCH THE BOARD WHILE THE EXTERNAL POWER SUPPLY IS ON!
Note: The Hall Current 5 Click Board™ is to be used by trained personnel only, while applying high voltages. A special care should be taken when working with hazardous voltage levels.
How Does The Work?
The Hall Current 5 Click Board™ utilizes the ACS733(KLATR-AU), a Hall effect linear current sensor IC with overcurrent fault detection, from Allegro Microsystems. This sensor utilizes the Hall effect phenomenon to measure the current passing through the internally fused input pins of the IC. This allows the series resistance to stay very low. Current through the input rails of the IC generates a magnetic field, causing the Hall effect on the current through the integrated sensor. These two current circuits are completely isolated, with the basic isolation working voltage of about 600VRMS, allowing the Click board™ to be used in high-side current sensing applications.
The ACS733 senses current differentially, allowing higher precision and good rejection ratio of common-mode interferences. The output voltage changes linearly with the current in the primary circuit, with the ratio of 66mV/A, and it is available at the AN pin of the mikroBUS™. Each IC is factory-calibrated, yielding a total output error as low as 1% while operated in the temperature range from 25°C to 125°C, measuring 20A through the primary conductor.
The FAULT pin indicates an overcurrent condition. If primary current exceeds the specified range, this pin will be pulled to a LOW logic level. When the current through the primary conductor drops below the overcurrent threshold, the FAULT pin will be released. It is an open-drain output, which is pulled to a HIGH logic level by a resistor. The overcurrent threshold level itself is programmable, and it is set by a voltage divider to approximately 12.8A on Hall Current 5 click.
The FAULT pin has a very fast response of only 0.5 µs, allowing it to be used a part of the overcurrent protection circuit. Naturally, it can be used as the interrupt pin, triggering an interrupt request on a host MCU. For this reason, it is routed to the INT pin of the mikroBUS™.
The secondary side of the ACS733 is powered from the 3.3V mikroBUS™ rail. As explained already, current flowing through the primary conductors is galvanically isolated from the rest of the IC, protecting low-voltage parts of the Click board™, as well as the host MCU. The Click board™ should be connected in series with the load through which the current is measured by using two connectors, labelled as IP+ and IP-. Both terminals of a single terminal block are connected to the same conductor: one terminal block is used for the positive current input, while the other terminal block is for the negative current input. Having two connection terminals per input allows for better contact, thus less resistance and higher current capacity. Very low internal resistance of only 1 mΩ of the ACS733 itself will not disturb the current through the circuit, so the Hall Current 5 Click Board™ will not introduce its own error into the measurement. The voltage at the AN pin of the mikroBUS™ can be sampled by an internal A/D converter of the host MCU, bearing in mind that 66mV on this pin represents current of 1A through the primary conductor.
SPECIFICATIONS
Type | Current sensor |
Applications | The Hall Current 5 Click Board™ can be used in motor control applications, load detection and management applications, switch-mode power supplies, overcurrent fault protection applications, etc. |
On-board modules | ACS733, a Hall effect linear current sensor with overcurrent fault detection, from Allegro Microsystems. |
Key Features | Very low series resistance, which makes this sensor an ideal ammeter, wide current range, factory calibrated accuracy, low count of external components, high isolation voltage. |
Interface | Analog |
Compatibility | mikroBUS |
Click board size | M (42.9 x 25.4 mm) |
Input Voltage | 3.3V |
PINOUT DIAGRAM
This table shows how the pinout on Hall Current 5 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
Analog OUT | AN | 1 | AN | PWM | 16 | NC | |
NC | 2 | RST | INT | 15 | INT | Fault detection | |
NC | 3 | CS | RX | 14 | NC | ||
NC | 4 | SCK | TX | 13 | NC | ||
NC | 5 | MISO | SCL | 12 | NC | ||
NC | 6 | MOSI | SDA | 11 | NC | ||
Power Supply | 3.3V | 7 | 3.3V | 5V | 10 | NC | |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
HALL CURRENT 5 CLICK MAXIMUM RATINGS
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Primary conductor resistance | - | 1 | - | mΩ |
Minimum load Impedance | - | 4 | - | Ω |
Measurement range with optimized accuracy | 0 | - | 40 | A |
Fail detection current threshold | - | - | -12.8 | A |
Sensitivity | - | 66 | - | mV/A |
Working voltage for basic isolation | - | - | 616 | V(RMS) |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | PWR indication LED |
Software Support
We provide a library for the Hall Current 5 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
This library provides basic functionality for reading the current value and controlling the click board.
Key functions:
float hallcurrent5_getCurrent(uint16_t adcValue)
- Reads current in mA.float hallcurrent5_getADCVoltage(uint16_t adcValue)
- Reads voltage on the AN-pin.void hallcurrent5_setADCResolution(float adcRes)
- Set ADC resolution (10bit or 12bit).
Example Description
The application is composed of the three sections :
- System Initialization - Sets AN pin and INT pin as INPUT.
- Application Initialization - Initialization driver init and ADC Init.
- Application Task - Reads current value in mA and this data logs to USBUART every 500ms.
void applicationTask() { int16_t ADC_value; uint32_t sumADC = 0; uint8_t cnt; float current; char demoText[ 50 ]; sumADC = 0; for(cnt = 0; cnt < 20; cnt++) { sumADC += hallcurrent5_adcRead(); } ADC_value = (sumADC / 20); current = hallcurrent5_getCurrent(ADC_value/1.8); if (current < 0) current = 0; WordToStr(ADC_value, demoText); mikrobus_logWrite(" ADC value: ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_LINE); FloatToStr(current, demoText); mikrobus_logWrite(" Current : ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_LINE); mikrobus_logWrite(" ", _LOG_LINE); Delay_ms( 500 ); }
Note: Before the start of the program you have to set the starting voltage on AN pin. First, measure the voltage in mV on AN pin, when electronic load isn't connected to the Click board, and pass that value as an input parameter of the voltage initialization function.
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
ADC
UART
Additional Notes and Information
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
The Hall Current 5 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant click board demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Software Support
We provide a library for the Hall Current 5 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
This library provides basic functionality for reading the current value and controlling the click board.
Key Functions
float hallcurrent5_getCurrent(uint16_t adcValue)
- Reads current in mA.float hallcurrent5_getADCVoltage(uint16_t adcValue)
- Reads voltage on the AN-pin.void hallcurrent5_setADCResolution(float adcRes)
- Set ADC resolution (10bit or 12bit).
Example Description
The application is composed of the three sections :
- System Initialization - Sets AN pin and INT pin as INPUT.
- Application Initialization - Initialization driver init and ADC Init.
- Application Task - Reads current value in mA and this data logs to USBUART every 500ms.
void applicationTask() { int16_t ADC_value; uint32_t sumADC = 0; uint8_t cnt; float current; char demoText[ 50 ]; sumADC = 0; for(cnt = 0; cnt < 20; cnt++) { sumADC += hallcurrent5_adcRead(); } ADC_value = (sumADC / 20); current = hallcurrent5_getCurrent(ADC_value/1.8); if (current < 0) current = 0; WordToStr(ADC_value, demoText); mikrobus_logWrite(" ADC value: ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_LINE); FloatToStr(current, demoText); mikrobus_logWrite(" Current : ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_LINE); mikrobus_logWrite(" ", _LOG_LINE); Delay_ms( 500 ); }
Note: Before the start of the program you have to set the starting voltage on AN pin. First, measure the voltage in mV on AN pin, when electronic load isn't connected to the Click board, and pass that value as an input parameter of the voltage initialization function.
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
ADC
UART
Additional Notes and Information
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
The Hall Current 5 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant click board demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Software Support
We provide a library for the Hall Current 5 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
This library provides basic functionality for reading the current value and controlling the click board.
Key Functions
float hallcurrent5_getCurrent(uint16_t adcValue)
- Reads current in mA.float hallcurrent5_getADCVoltage(uint16_t adcValue)
- Reads voltage on the AN-pin.void hallcurrent5_setADCResolution(float adcRes)
- Set ADC resolution (10bit or 12bit).
Example Description
The application is composed of the three sections :
- System Initialization - Sets AN pin and INT pin as INPUT.
- Application Initialization - Initialization driver init and ADC Init.
- Application Task - Reads current value in mA and this data logs to USBUART every 500ms.
void applicationTask() { int16_t ADC_value; uint32_t sumADC = 0; uint8_t cnt; float current; char demoText[ 50 ]; sumADC = 0; for(cnt = 0; cnt < 20; cnt++) { sumADC += hallcurrent5_adcRead(); } ADC_value = (sumADC / 20); current = hallcurrent5_getCurrent(ADC_value/1.8); if (current < 0) current = 0; WordToStr(ADC_value, demoText); mikrobus_logWrite(" ADC value: ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_LINE); FloatToStr(current, demoText); mikrobus_logWrite(" Current : ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_LINE); mikrobus_logWrite(" ", _LOG_LINE); Delay_ms( 500 ); }
Note: Before the start of the program you have to set the starting voltage on AN pin. First, measure the voltage in mV on AN pin, when electronic load isn't connected to the Click board, and pass that value as an input parameter of the voltage initialization function.
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
ADC
UART
Additional Notes and Information
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
The Hall Current 5 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant click board demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.