Featuring a reasonably high current range that can be measured, extremely low series resistance, a differential current sensing by two integrated Hall plates, offering robustness and resistance towards external magnetic interferences, high isolation voltage of the IC itself, very low thermal drift, and fast response time with no hysteresis, this Click board™ can be used for a wide range of measuring and monitoring applications in audio applications, telecommunication applications, white goods applications, and basically in every application which requires reasonably high current measurement or monitoring.
How does it work?
Hall current 3 click utilizes the MLX91210, a linear Hall current sensor, from Melexis. This sensor utilizes the Hall effect phenomenon to measure the current passing through the input pins of the IC. This allows the series resistance to stay very low, in magnitudes of μΩ, reducing dissipation and losses in the main current flow. The main current flow through the input rails of the IC generates a magnetic field, which causes the Hall effect on two integrated Hall plates. These two plates are connected differentially, preventing foreign magnetic interferences to influence the measurement. A front-end section conditions and amplifies the signal, canceling out interferences. The conditioned signal is then available at the VOUT pin of the MLX91210, with a linear dependency of the input current. It is further routed to an A/D converter. The VOUT voltage is very stable and has a very low sensitivity drift over temperature (±1.5 % with nominal current).
The VOUT pin of the MLX91210 stays at 50% of VDD (5V), at 0A of current. This allows to measure both polarities: positive current polarity will pull the VOUT above half of the VDD, while negative current polarity will draw the VOUT pin below the VDD voltage. The MLX91210 also features fault reporting if overvoltage, undervoltage, or calibration data CRC error occurs. It will set the VOUT pin to a high impedance mode (Hi-Z). The datasheet offers an explanation about Hi-Z timings for each type of error. The resolution of the MLX91210 IC can be determined from the full IC label: MLX91210KDF-CAS-101-SP, where CAS-101 means that it has the analog voltage resolution of 80mV/A or ±25A for the full scale (FS) measurement.
The output voltage is also routed to the MCP3221, a 12 Bit SAR type ADC with the I2C interface, from Microchip. This ADC is used in several different Click board™ designs, as it yields accurate conversions, it requires a low count of external components, and has a reasonably good signal to noise ratio (SNR). It can achieve up to 22.3ksps, which allows good measurement resolution for the most purposes. After the VOUT measurement voltage has been converted to a digital value, it can be read via the I2C bus of the MCP3221 ADC.
Since the ADC IC works only with 3.3V communication voltage levels, the Click board™ is equipped with the PCA9306, a bi-directional I2C level translator. This IC accepts two voltage levels: one reference voltage for the input signal, and other reference voltage for the output signal. The output reference signal can be selected with the VCC SEL jumper, allowing communication with both 3.3V and 5V MCUs. The I2C bus already contains pull-up resistors included, so no further configuration is needed, it can be used right out of the box.
The input terminal has the cross section of 2.5mm, so it can accept a high input current, more than 10A. It has two input poles: IP+ and IP-. Conductors with the current that needs to be measured can be connected to this terminal.
SPECIAL CARE SHOULD BE TAKEN IF WORKING WITH THE HIGH VOLTAGE!
Note: Since the MLX91210 provides up to 2.5 kV AC and 390 V DC, a special care should be taken if working with the high voltage. The Click board™ contains exposed areas which can be lethal if touched, while operated at high voltages.
Specifications
Type
Current sensor,Measurements
Applications
Audio applications, telecommunication applications, smart current metering, servers/motherboards current monitoring, and similar application which require reliable and accurate current measurement
On-board modules
MLX91210, a linear Hall current sensor by Melexis; MCP3221, a 12-bit A/C converter with I2C interface by Microchip; PCA9306 Dual Bidirectional I2C voltage level translator, from Texas Instruments
Key Features
Very low series resistance, which makes this sensor an ideal ammeter. Wide current input range, great accuracy, low thermal drift, immunity to EMI or other magnetic interferences, low count of external components
Interface
I2C
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
L (57.15 x 25.4 mm)
Input Voltage
3.3V or 5V
Pinout diagram
This table shows how the pinout on Hall current 3 click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Hall current 3 click specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Thermal drift | – | ± 0.06 | ± 0.12 | A |
Sensitivity | 78.8 | 80 | 81.2 | mV/A |
Nominal sensor range | – | ±10 | – | A |
Onboard Jumpers and Settings
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED indicator |
VCC SEL | VCC SEL | Left | Logic voltage level selection: left position 3.3v, right position 5V |
TB1 | IP+, IP- | – | Current input connector |
Software support
We provide a library for the HallCurrent3 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 hallcurrent3_getCurrent()
– Reads current in mAuint16_t hallcurrent3_readData(uint8_t reg)
– Reads current data
Example description
The application is composed of three sections :
- System Initialization – Initialization of the I2C module
- Application Initialization – Driver initialization
- Application Task – (code snippet) – Reads the current from a bipolar current sensor and logs to USBUART every 1 second.
void applicationTask() { Current_data = hallcurrent3_getCurrent(); FloatToStr(Current_data, demoText); mikrobus_logWrite("Current : ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_TEXT); mikrobus_logWrite(" mA", _LOG_LINE); Delay_ms( 1000 ); }
The full application code, and ready to use projects can be found on our Libstock page.
Other MikroElektronika libraries used in the example:
- I2C
- Conversions
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
This 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.
For more information about mikroSDK, visit the official page.