Skip to content

UPB-FILS-AM-FR/am-projet-GalanRaduM24

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

M-bot

Author Galan Radu-Mihai

Description

  • My Project consists in a robot that can grab objects and also use multiple sensors. The robot can be controlled using an IR remote
  • Makeblock robot kit (Uses 2 motors a distance sensor and a humidity sensor + rgb leds and a piezo buzzer. All the components are controlled using an IR remote)
  • Makeblock clamp claw (Uses 1 motor for operating a claw)
  • Adafruit DRV8871 DC Motor Driver Breakout (Used for connecting the claw's motor to the board)
  • Adafruit TCS34725 RGB Color Sensor (Used for detecting the color of the ground)
  • LCD (normal 2 row i2c LCD for showing information)
  • Feature: it can play ImperialMarch :)

Connexions:

  • -> RJ25_Port3 - Ultrasonic
  • -> RJ25_Port1 - Humidity
  • -> Motor_Interface_M1 - Right_DcMotor
  • -> Motor_Interface_M2 - Left_DcMotor
  • -> SCL, SDA, GND, VCC - LCD (0x27 address)
  • -> SCL, SDA, GND, VCC - RGB sensor (0x29 address)
  • -> A0 - MotorBreakout_GND
  • -> A1 - MotorBreakout_VM
  • -> 8 - Buzzer
  • -> 7 - RGB

Motivation

  • Implementing a robot with different features for testing personal skills

Architecture

Block diagram

Block Diagram

Schematic

Board Info: Board Schematic Board ImageBoard Image

Robot Schematic:

Board Schematic

Demo:

Demo

Demo.mp4

Components

Device Usage Price
Makeblock M-Bot Robot 39.09 USD
Makeblock ClampClaw Clamp Claw 49.34 USD
Adafruit TCS34725 RGB Sensor 7.95 USD
Adafruit DRV8871 DC Motor Driver Breakout 7.50 USD
LCD 1602 Display 16.34 ron

Libraries

Library Description Usage
Makeblock Drive Refrence Use to drive all devices provided by Makeblock company.This library allows an Arduino board to control all devices provided by Makeblock company. Used for commanding the 2 motors and the Ultrasonic and Humidity sensors
Wire Refrence This library allows you to communicate with I2C devices, a feature that is present on all Arduino boards. I2C is a very common protocol, primarly used for reading/sending data to/from external I2C components. Used for handeling the connection with the 2 I2C devices
SoftwareSerial Refrence The SoftwareSerial library allows serial communication on other digital pins of an Arduino board, using software to replicate the functionality (hence the name "SoftwareSerial"). Used for enabeling the serial ports
LiquidCrystal Refrene This library allows an Arduino/Genuino board to control LiquidCrystal displays (LCDs) based on the Hitachi HD44780 (or a compatible) chipset, which is found on most text-based LCDs. The library works with in either 4 or 8 bit mode (i.e. using 4 or 8 data lines in addition to the rs, enable, and, optionally, the rw control lines). Used for controlling the LCD
TimerFreeTone Refrene Play tones without timers and therefore no conflicts Used for contolling the buzzer without creating a conflict between tone() and the IR library

Log

Week 6 - 12 May

I bought the parts i didn t have(Lcd, cabels) and fixed some hardware

Week 7 - 19 May

Started testing some code. SPOILER - It did not work in the begining

Week 20 - 26 May

Fixed the last issues and arranged the components(sticked them toghether with double tape)

Reference links

Claw - PRESENTATION

LCD - TUTORIAL

MotorBreakout-DRV8871 - PRESENTATION /// MotorBreakout-DRV8871 - TUTORIAL

RGB Sensor-TCS34725 - PRESENTATION /// RGB Sensor-TCS34725 - TUTORIAL

MbotKit - OFFICIAL SITE /// MbotKit - PRESENTATION

Makeblock_mCore_Board - INFO /// Makeblock_MeUltrasonic - INFO /// Makeblock_IRremote - INFO

About

am-projet-GalanRaduM24 created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages