Arduino-Controlled Soil Monitoring and Motor Management System
View and Edit Project In Cirkit Designer
Circuit Documentation
Summary
This circuit integrates various components including an Arduino UNO, soil sensors, a 9-DOF IMU, RS-485 communication module, DC motor drivers, and DC mini metal gear motors, all powered by a Li-ion 5000mAh battery. The Arduino UNO serves as the central microcontroller, interfacing with sensors and controlling the motor drivers, which in turn manage the motors. Communication is facilitated through the RS-485 module. The circuit is designed for monitoring soil conditions and controlling motors, possibly for an automated gardening system.
Component List
Arduino UNO
- Microcontroller board based on the ATmega328P
- Provides digital and analog I/O pins
- Features USB connection for programming and serial communication
NPK Soil Sensor
- Measures the nitrogen, phosphorus, and potassium content in the soil
- Requires a 12V DC power supply
SparkFun Soil Moisture Sensor
- Detects the volumetric content of water in the soil
- Outputs an analog signal corresponding to the moisture level
L298N DC Motor Driver (x2)
- Dual H-bridge motor driver
- Capable of driving two DC motors or one stepper motor
- Supports a supply voltage of up to 12V
DC Mini Metal Gear Motor (x3)
- Compact DC motor with a gearbox for increased torque
- Suitable for robotics and small automation projects
RS-485 Module
- Serial communication module based on the RS-485 standard
- Allows for long-distance communication between devices
Li-ion 5000mAh Battery
- Rechargeable lithium-ion battery
- Provides a nominal voltage of 11.1V
Adafruit 9-DOF IMU L3GD20H + LSM303
- Inertial measurement unit with a 3-axis gyroscope and a 3-axis accelerometer
- Communicates over I2C
Wiring Details
Arduino UNO
5Vconnected to various components for powerGNDconnected to the common ground netVinconnected to the 11.1V from the Li-ion batteryA0connected to the SparkFun Soil Moisture Sensor'sSIGpinA4(SDA) connected to the Adafruit 9-DOF IMU'sSDApinA5(SCL) connected to the Adafruit 9-DOF IMU'sSCLpin- Digital pins
D2toD13connected to the RS-485 module and both L298N motor drivers for control signals
NPK Soil Sensor
12V DCconnected to the 11.1V from the Li-ion batteryGNDconnected to the common ground netAandBconnected to the RS-485 module'sAandBpins for communication
SparkFun Soil Moisture Sensor
VCCconnected to the 5V netGNDconnected to the common ground netSIGconnected to the Arduino UNO'sA0pin
L298N DC Motor Driver (x2)
12Vconnected to the 11.1V from the Li-ion battery5Vconnected to the 5V netGNDconnected to the common ground netENA,ENB,IN1,IN2,IN3,IN4connected to various Arduino UNO digital pins for motor controlOUT1,OUT2,OUT3,OUT4connected to the DC Mini Metal Gear Motors
DC Mini Metal Gear Motor (x3)
IN1andIN2connected to the correspondingOUTpins on the L298N motor drivers
RS-485 Module
VCCconnected to the 5V netGNDconnected to the common ground netAandBconnected to the NPK Soil Sensor for communicationRO,RE,DE,DIconnected to various Arduino UNO digital pins for control and data exchange
Li-ion 5000mAh Battery
11.1Vconnected to theVinof the Arduino UNO and12Vof the motor driversGNDconnected to the common ground net
Adafruit 9-DOF IMU L3GD20H + LSM303
VINconnected to the 5V netGNDconnected to the common ground netSCLandSDAconnected to the corresponding I2C pins on the Arduino UNO
Documented Code
Arduino UNO Sketch (sketch.ino)
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
Additional Documentation (documentation.txt)
No additional code documentation provided.