Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Project Documentation

Arduino-Controlled Nema 17 Stepper Motor with Soil Moisture Sensing

Image of Arduino-Controlled Nema 17 Stepper Motor with Soil Moisture Sensing

Circuit Documentation

Summary

The circuit in question is designed to control a Nema 17 stepper motor using an Adafruit TB6612 motor driver, with an Arduino Leonardo as the microcontroller. The circuit also includes an Adafruit STEMMA Soil Sensor for measuring soil moisture, and it is powered by a 9V battery. The Arduino Leonardo facilitates the control logic and interfaces with the soil sensor, while the motor driver operates the stepper motor based on commands from the Arduino.

Component List

Nema 17 Stepper Motor (42-STH48)

  • Description: A stepper motor used for precise motion control.
  • Pins: A2 (black), A1 (green), B2 (red), B1 (blue)

Adafruit TB6612 Motor Driver

  • Description: A motor driver capable of driving up to two DC motors or one stepper motor.
  • Pins: PWRIN, VCC, GND, PWMB, BIN2, BIN1, STBY, AIN1, AIN2, PWMA, MOTORA1, MOTORA2, MOTORB2, MOTORB1, Vmotor

Arduino Leonardo

  • Description: A microcontroller board based on the ATmega32u4.
  • Pins: D0/RX, D1/TX, D2/SDA, D3 PWM/SCL, D4/A6, D5 PWM, D6 PWM/A7, D7, n.c., IOREF, RESET, 3V3, 5V, GND, VIN, A0, A1, A2, A3, A4, A5, D8/A8, D9 PWM/A9, D10 PWM/A10, D11 PWM, D12/A11, D13 PWM, AREF, SDA, SCL

Adafruit STEMMA Soil Sensor

  • Description: A sensor for measuring soil moisture.
  • Pins: GND, VIN, SDA, SCL

Battery 9V

  • Description: A standard 9V battery providing power to the circuit.
  • Pins: VCC, GND

Wiring Details

Nema 17 Stepper Motor

  • A2 (black) connected to Adafruit TB6612 Motor Driver MOTORB1
  • A1 (green) connected to Adafruit TB6612 Motor Driver MOTORB2
  • B2 (red) connected to Adafruit TB6612 Motor Driver MOTORA1
  • B1 (blue) connected to Adafruit TB6612 Motor Driver MOTORA2

Adafruit TB6612 Motor Driver

  • PWRIN connected to Battery 9V VCC
  • VCC connected to Arduino Leonardo 5V
  • GND connected to Battery 9V GND, Arduino Leonardo GND, and Adafruit STEMMA Soil Sensor GND
  • PWMB connected to Arduino Leonardo D5 PWM
  • BIN2 connected to Arduino Leonardo D4/A6
  • BIN1 connected to Arduino Leonardo D3 PWM/SCL
  • AIN1 connected to Arduino Leonardo D2/SDA
  • AIN2 connected to Arduino Leonardo D3 PWM/SCL
  • MOTORA1 connected to Nema 17 Stepper Motor B2 (red)
  • MOTORA2 connected to Nema 17 Stepper Motor B1 (blue)
  • MOTORB1 connected to Nema 17 Stepper Motor A2 (black)
  • MOTORB2 connected to Nema 17 Stepper Motor A1 (green)

Arduino Leonardo

  • 5V connected to Adafruit TB6612 Motor Driver VCC
  • GND connected to Battery 9V GND, Adafruit TB6612 Motor Driver GND, and Adafruit STEMMA Soil Sensor GND
  • D2/SDA connected to Adafruit TB6612 Motor Driver AIN1
  • D3 PWM/SCL connected to Adafruit TB6612 Motor Driver AIN2 and BIN1
  • D4/A6 connected to Adafruit TB6612 Motor Driver BIN2
  • D5 PWM connected to Adafruit TB6612 Motor Driver PWMB
  • SDA connected to Adafruit STEMMA Soil Sensor SDA
  • SCL connected to Adafruit STEMMA Soil Sensor SCL

Adafruit STEMMA Soil Sensor

  • GND connected to Battery 9V GND, Adafruit TB6612 Motor Driver GND, and Arduino Leonardo GND
  • VIN connected to Adafruit TB6612 Motor Driver VCC
  • SDA connected to Arduino Leonardo SDA
  • SCL connected to Arduino Leonardo SCL

Battery 9V

  • VCC connected to Adafruit TB6612 Motor Driver PWRIN
  • GND connected to Adafruit TB6612 Motor Driver GND, Arduino Leonardo GND, and Adafruit STEMMA Soil Sensor GND

Documented Code

Since no code was provided in the input, this section is currently empty. When code is available, it should be documented here with explanations of how the code interacts with the hardware components, including setup, loop functions, and any custom functions used to control the motor and read from the sensor.