Open mvrk33 opened 9 months ago
VOLTAGE SENSOR: Voltage Sensor Module 25V voltage sensor measures the voltage. range=0 to 25V. Voltage Detection Range (V): 0.02445 to 25 The Voltage Sensor Module 25V allows you to use the analog input of a microcontroller to monitor voltages much higher than it capable of sensing. This module is based on the principle of resistive voltage divider design. For example with a 0-5V analog input range, you are able to measure a voltage up to 25V. This voltage sensor module also includes convenient screw terminals for easy and secure connection of a wire.
Three-channel, high-side current and bus voltage monitor with an I2C- and SMBUS-compatible interface. Monitors both shunt voltage drops and bus supply voltages, in addition to having programmable conversion times and averaging modes for these signals. The INA3221 offers both critical and warning alerts to detect multiple programmable out-of-range conditions for each channel. The INA3221 senses current on buses that can vary from 0 V to 26 V. The device is powered from a single 2.7-V to 5.5-V supply, and draws 350 µA (typ) of supply current. The INA3221 is specified over the operating temperature range of –40°C to +125°C. The I2C- and SMBUS-compatible interface features four programmable addresses.
https://github.com/mvrk33/AgroBot/assets/131512821/66dc21b7-8e91-4c3c-9190-9dcd042c3f9a
When interfacing an INA219 sensor with an RPi4, the displayed output values are incorrect, showing random readings such as 0V or 2V. Additionally, even without supplying power to the circuit, it displays random voltage values. This behavior suggests a short circuit between Vin+ and Vin- when power is applied. Note: Common ground issue (Refer the below Circuit diagram) Before we connected the ground pin of INA219 sensor with Ardunio and Source ground pin to load ground pin differently. But when we gave common ground as per the circuit diagram it was interfaced correctly. Hence, we got Correct output.
sudo apt-get install -pip
sudo pip install adafruit-circuitpython-ina219
To install Rpi.GPIO run the following command
sudo pip install RPi.GPIO
To install i2c tools
sudo apt install i2c-tools
To detect i2c run the following command
i2cdetect -y 1
To open a file run the following command
sudo nano code.py
Insert the following code
from ina219 import INA219
from ina219 import DeviceRangeError
from time import sleep
SHUNT_OHMS = 0.1
MAX_EXPECTED_AMPS = 0.2
def read():
ina = INA219(SHUNT_OHMS, MAX_EXPECTED_AMPS ,address=0x40)
ina.configure(ina.RANGE_16V)
print("Bus Voltage: %.3f V" % ina.voltage())
try:
print("Bus Current: %.3f mA" % ina.current())
print("Power: %.3f mW" % ina.power())
print("Shunt voltage: %.3f mV" % ina.shunt_voltage())
except DeviceRangeError as e:
# Current out of device range with specified shunt resistor
print(e)
while 1:
read()
sleep(2)
https://github.com/mvrk33/AgroBot/assets/131512821/cb147bc1-85ed-4e47-b592-db030405a8bc