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

Arduino UNO Controlled Robotics Platform with Ultrasonic Sensing and IR Detection

Image of Arduino UNO Controlled Robotics Platform with Ultrasonic Sensing and IR Detection

Circuit Documentation

Summary

This circuit is designed to interface an Arduino UNO with various sensors and actuators, including an HC-SR04 Ultrasonic Sensor, IR sensors (Sensor FC-51 IR), DC motors, a servo motor, and an Adafruit Motor, Stepper & Servo Shield. The Arduino UNO serves as the central microcontroller unit, managing inputs from the sensors and controlling the actuators based on the programmed logic. The power supply provides the necessary voltage to the Arduino and other components.

Component List

Arduino UNO

  • Microcontroller board based on the ATmega328P
  • It has 14 digital input/output pins, 6 analog inputs, a 16 MHz quartz crystal, a USB connection, a power jack, an ICSP header, and a reset button.

HC-SR04 Ultrasonic Sensor

  • Ultrasonic distance sensor
  • Provides 2cm to 400cm non-contact measurement functionality with a ranging accuracy that can reach up to 3mm.

DC Motor

  • Electric motor that runs on direct current electricity
  • Used for converting electrical energy into mechanical motion.

Power Supply

  • Provides electrical power to the circuit
  • Typically converts mains AC to low-voltage regulated DC power for the internal components of the circuit.

Sensor FC-51 IR

  • Infrared obstacle avoidance sensor
  • Detects the presence of an object within a certain range.

Servo

  • Rotary actuator or linear actuator that allows for precise control of angular or linear position, velocity, and acceleration.

Adafruit Motor, Stepper & Servo Shield

  • An add-on board for Arduino
  • Allows controlling up to 4 DC motors, 2 stepper motors, and 2 servos.

Wiring Details

Arduino UNO

  • 5V pin is connected to the VCC pins of the Servo, HC-SR04 Ultrasonic Sensor, and both Sensor FC-51 IR components.
  • GND pin is connected to the GND pins of the Power Supply, Sensor FC-51 IR components, and HC-SR04 Ultrasonic Sensor.
  • Vin pin is connected to the + pin of the Power Supply.
  • A1 pin is connected to the OUT pin of one Sensor FC-51 IR.
  • A2 pin is connected to the TRIG pin of the HC-SR04 Ultrasonic Sensor.
  • A3 pin is connected to the ECHO pin of the HC-SR04 Ultrasonic Sensor.
  • A5 pin is connected to the OUT pin of the other Sensor FC-51 IR.
  • D10, D11, D12, and D9 pins are connected to the D2, D3, D4, and D1 pins of the Adafruit Motor, Stepper & Servo Shield respectively.

HC-SR04 Ultrasonic Sensor

  • VCC pin is connected to the 5V supply from the Arduino UNO.
  • TRIG pin is connected to the A2 pin on the Arduino UNO.
  • ECHO pin is connected to the A3 pin on the Arduino UNO.
  • GND pin is connected to the GND on the Arduino UNO.

Sensor FC-51 IR

  • VCC pins are connected to the 5V supply from the Arduino UNO.
  • GND pins are connected to the GND on the Arduino UNO.
  • OUT pins are connected to the A1 and A5 pins on the Arduino UNO.

Servo

  • VCC pin is connected to the 5V supply from the Arduino UNO.
  • GND pin is connected to the GND on the Arduino UNO.
  • Pulse pin is connected to the D2 pin on the Adafruit Motor, Stepper & Servo Shield.

Adafruit Motor, Stepper & Servo Shield

  • D1, D2, D3, and D4 pins are connected to the D9, D10, D11, and D12 pins on the Arduino UNO respectively.
  • M1A, M1B, M2A, M2B, M3A, M3B, M4A, and M4B pins are connected to the corresponding pins of four DC Motors.

DC Motors

  • Each motor has two pins connected to the corresponding MxA and MxB pins on the Adafruit Motor, Stepper & Servo Shield.

Power Supply

    • pin is connected to the Vin pin on the Arduino UNO.
    • pin is connected to the GND on the Arduino UNO.

Documented Code

Arduino UNO Code (sketch.ino)

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

The provided code is a template with empty setup() and loop() functions, which are the entry points for Arduino sketches. The setup() function is called once when the sketch starts and is used to initialize the settings. The loop() function runs continuously and contains the main logic of the sketch.