I am glad to take part in this element14 Experimenting with Current sense Amplifier challenge as a part of 10 sponsored challenges from element14.
I have received the kits for the challange on 14th April 2022 and since than I have got a good introductory impression of the kit and specially the current sense Amplifier in General.
The kit contains the following parts.
- Raspberry Pi model 3
- MAX40080 based Current 6 Click from Microelectronica.
- Pi-3-click-shield with two microbus header for connecting click boards from Microelectronica.
Introduction
The MAX40080 is an a cool device! for measuring the current, voltage and quantities such as Power and Energy eventually.
When reading about the element14 design challange for MAX40080 current sense Amplifier, I went through the device datasheet and different configuration one can do to MAX40080 to measure the required quantities.
The MAX40080 is a high-precision, fast-response, bi-di-
rectional current-sense amplifier with digital output and a
very wide input common-mode range from -0.1V (ground
sensing) to 36V.[datasheet MAX40080]
MAX40080 is having many parameters which user can tune for their application needs. Realising this fact in this challenge I will create a project which uses this tuned parameters in different manner. I will create a I2C interface library which can read sensor
values and configure different registers for setup of the sensor.
Some of the features the sensor provides are listed in the following bullets. These features can be configured in software to create an best application for optimum use of the product and it's device, it's use case and availability. This will be my main focus during this challenge and project creation for the same.
- Programmable Sample Rate up to 1Msps
- Wide Input Common-Mode range from -0.1V (ground sensing) to 36V
- Programmable Input Sense Range (±10mV and ±50mV)
- Smbus based I2c interface features
- Wake-up current threshold
- Auto-shutdown when I 2 C is inactive
- Low 4 measurements/s rate
- Programmable over-current/voltage thresholds and under-voltage threshold
- Alert output with programmable response time
- 64-cell deep FIFO
For now, I just have used the rasperryPi Smbus python package to interface the sensor. The following code snipet reads the default value of the Configuration Register at Address 0x00 hex.
The respose will be two bytes long stored in variable val.
import time
import smbus
i2c_channel = 1
i2c_address = 0x21
bus = smbus.SMBus(i2c_address)
val = bus.read_i2c_block_data(i2c_address, 0x00, 2)
print (val)