📝 Hardware Planning

In order to perform the required tasks for our project, some hardware components are needed. These components were chosen with a budget constraint in mind, and the choice was guided by the functionalities described in the project requirements.

📐 Wiring Diagram

Before assembling the robot, a wiring diagram was created by @Eduardo Yoshio with assistance from @Daniel S. Curi, to plan out how the connections between the components would take place.

Wiring diagram for our hardware. Click here for a high resolution version.

Wiring diagram for our hardware. Click here for a high resolution version.

📋 Hardware Components

L298N H-Bridge Motor Driver

A motor driver used for controlling the speed and direction of two DC motors through pulse width modulation. It drives motors with voltages between 5 and 35V, with a peak current up to 2A.

We're using it to drive the two motors of the car.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/9a5c4e0d-cd81-4ac9-8a7e-b42eb19b2681/H_Bridge__.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1cc6000a-27ef-4602-a03b-22884084c3cb/Arduino_UNO_R3___.png

Arduino UNO R3

A microcontroller board based on the ATmega328, with 20 digital input/output pins.

We're using it to receive the digital data from the IR sensor and the analog data from the RGB sensor, as well as to send the PWM control commands to the H-Bridge.

Raspberry Pi 3 B

A Single-board Quad Core computer with wireless LAN connectivity.

We're using it to receive the sensors' data from the Arduino, receive and process the images from the cameras, communicate with the server through WiFi, and send the robot's movement commands to the Arduino.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/ee31835a-a7b5-4ab9-9e3d-bf12e49f1f1c/Raspberry_Pi_3B___.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/8f31e517-c98d-4f34-8c7b-f8bbf1b38fa9/TCRT_5000_IR_Sensor_.png

5-Channel TCRT 5000 IR Sensor

A board containing 5 downward-facing IR sensors, as well as a front-facing IR sensor, and a contact switch.

We're using its downward-facing sensors to detect a black line on the floor, and sending the data to the Arduino.

APDS-9960 RGB Sensor

A small board featuring gesture detection, proximity detection, ambient light sensing (ALS) and color sensing (RGBC).

We're using its color sensing capabilities to detect the color tags on the floor, and sending the analog data to the Arduino.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/13d2eef1-6a22-4421-b79d-f5533174885b/APDS-9960__.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/437a37eb-f141-40f7-863f-8b7e2328aaa1/raspicam__.png

RaspiCam

A small 5-megapixel camera capable of taking high-resolution pictures and videos. It connects to the Raspberry Pi trough a 15-pin flat cable.

We're using it to take pictures of the shelves.

USB Webcam

A generic USB camera. It claims to record 1080p videos, though we suspect it's using interpolation to compensate for a lower resolution. The captured images are far inferior to the RaspiCam.

We're using it to take pictures of the shelves.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/eebd65bb-8faa-4a2d-a6d0-aabc2a3d614e/Webcam_.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/75e119ab-a0c8-420e-91fc-7a38af83a310/LM2596S__.png

LM2596 Voltage Regulator

A DC-DC step-down switching regulator, capable of driving a 3-A load. It takes inputs from 3.2 to 40V, and outputs from 1.2 to 37V.

We're using it to regulate the voltage from the batteries.

4x 18650 3.7V Battery Cells

6800 milliamp-hour, 3.7V Li-Ion batteries in a 18650 standard form-factor.

We're using four batteries to power the Arduino, the sensors and the motors.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/c3ccdb7c-1562-4a4b-823c-f8e0708de8be/D_NQ_NP_2X_669014-MLB44977453844_022021-F__.png

Added on July 30:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/30cf1a0e-0701-405e-8212-5c02c225573b/Powerbank_.png

Pineng PN-951 Power Bank

A 5000 milliamp-hour, 5V 2.1A portable Lithium Polymer battery with USB output.

We're using it to power the Raspberry Pi and the cameras.

📋 Component Testing

Initially, @Eduardo Yoshio performed some early tests with the batteries, the H-bridge and the motors. They all behaved as expected.

The H-Bridge connected to the motors.

The H-Bridge connected to the motors.