Beda 5 – robot for the RoboRAVE 2016
competition
Video
Function
The robot follows a black line, detects a crossroad, pushes
the dosing tower button for collecting balls, turns around and rides towards
the target box. It stops in front of the target box, centers itself, opens its collector
lid and empties the balls to the box. If the robot has a spare time until the 3-minute
limit, it makes another round, otherwise it returns back to the start.
The
robot uses DC motors salvaged from
HP Photosmart 1215, mechanical parts incl. gears and wheels printed
at
a 3D printer, control system based on own PCB with PIC16F1789, bidirectional
motor driver L298N, LCD display 16x2, RGB LED with WS2811 driver, 6 reflective
sensors QRD1114 for black line following and wheel encoding, two front buttons,
IR distance sensor Sharp GP2, servo-motor TG9z for ball collector opening,
powered
by a battery pack with 4 Li-ion accumulators 2.2 Ah charged using a chip MCP73831.
Mechanical parts
-
front wheel: ping – pong ball in a holder, 3D printed at
PRUSA i3, material PLA, a model taken from http://www.thingiverse.com/thing:636967
-
back wheels: Ø156 mm 3D printed at PRUSA i3, material
PLA, a modified parametric model from http://www.thingiverse.com/thing:21486
-
tires of the back wheels: a circular profile EPDM 8 mm
-
chassis: polycarbonate sheet 120 × 250 mm from a HP DeskJet
printer
-
2×gearbox 25:1, 3D printed at PRUSA i3, material PLA, a
modified parametric model from http://www.thingiverse.com/thing:3575
-
holder of reflective sensors: 3D printed at PRUSA i3, material
PLA, own design (see the SketchUp model below)
-
buttons and IR distance sensor Sharp GP2 holder: 3D printed
at PRUSA i3, material PLA, own design (see the SketchUp model below)
-
the control board case with a lid: 3D printed at PRUSA i3, material
PLA, own design (see the SketchUp model below)
-
the battery pack box: 3D printed at PRUSA i3, material PLA, own
design (see the SketchUp model below)
-
the ball collector: 3D printed at PRUSA i3, material PLA, own
design (see the SketchUp model below)
-
a holder for the ball colector: 3D printed at PRUSA i3,
material PLA, own design (see the SketchUp model below)
Electrical parts
-
MCU: PIC16F1789
-
MCU inputs:
·
front button
PCB5-EC-4-5 (2 pcs connected in parallel) for pushing button of the dosing tower
·
5×reflective sensor
QRD1114 for the black line
following
·
1×reflective sensor QRD1114 as the wheel encoder
·
IR distance sensor Sharp GP2Y0A41SK0F (4 – 30 cm) for box
detection (finally, the front buttons were used instead as the sensor was
overshined by the direct sun).
·
reserve 4 DI/DO
-
MCU outputs:
·
alphanumeric LCD display 16x2
·
bidirectional motor driver L298N (2×2 A)
·
RGB LED with a driver WS2811 for signalization
·
servomotor 9g
TG9z for the ball collector opening
·
speaker: 8
Ω/0,5 W (not used in this program)
-
Motors: 2 DC
motors C6003 salvaged from HP Photosmart 1215 printer
-
Battery pack: 4×Li-ion acumulators 3.6 V/2.2 Ah, separately
charged via MCP73831 chips
-
PCB: universal line PCB e=0.1“
Scheme - control board
Table of components - Control board
Code
|
Type
|
Parameters
|
Function
|
C1
|
capacitor
|
ceramic 100
nF SMD 0805
|
MCU power
filter
|
C2
|
capacitor
|
electrolytic 100
µF/50 V
|
7805 input
filter
|
C3
|
capacitor
|
ceramic 100
nF SMD 0805
|
7805 input
filter
|
C4
|
capacitor
|
ceramic
10 µF /X7R/25
V SMD 0805
|
7805 output
filter
|
C5
|
capacitor
|
ceramic 100
nF
|
7805 output
filter
|
C6
|
capacitor
|
ceramic 100
nF
|
L298N power
filter
|
C7
|
capacitor
|
ceramic 100
nF
|
L298N power
filter
|
C8
|
capacitor
|
ceramic 220
nF
|
sound RC
filter
|
C9
|
capacitor
|
ceramic 100
nF SMD 0805
|
MCU power
filter
|
C10
|
capacitor
|
electrolytic
100 µF /50 V
|
servo motor
power filter
|
C11
|
capacitor
|
ceramic 100
nF SMD 0805
|
IR sensor
power filter
|
C12
|
capacitor
|
ceramic 10 µF
SMD 0805
|
IR sensor
power filter
|
D1
|
diode
|
1N5822
|
polarity
protection
|
D2 -D9
|
diode
|
UF4007
|
L298N output
protection
|
DS1
|
LCD display
|
alphanumeric 16x2
|
setting and
displaying program parameters
|
FU1
|
polymer fuse
|
2.5 A
|
overcurrent
and polarity protection
|
IC1
|
stabilizer
|
7805
|
5V power
source
|
IC2
|
MCU
|
PIC16F1789
|
microcontroller
|
IC3
|
motor driver
|
L298N
|
bidirectional
motor driver 2x2 A
|
|
programming
pins
|
ICSP
|
programming
pins to MCU
|
K1
|
terminal
|
ARK500/2
|
main power
connector
|
K2
|
terminal
|
ARK500/2
|
motor
connector
|
K3
|
terminal
|
ARK500/2
|
motor
connector
|
K4
|
terminal
|
ARK550/3
|
IR distance
sensor connector
|
K5
|
terminal
|
ARK550/3
|
encoder
connector
|
K6
|
terminal
|
ARK550/3
|
servo motor
connector
|
K7
|
terminal
|
ARK500/2
|
speaker
connector
|
K8
|
connector
|
IDC10
|
buttons and
reflective sensors connector
|
K9
|
connector
|
IDC10
|
reserve for external
inputs/outputs
|
MOTOR-MOTOR2
|
motors
|
DC motors
C6003 salvaged from a printer HP Photosmart 1215
|
robot wheel
drive
|
PAD1 – PAD10
|
soldering
pins
|
|
auxiliary
connectors for external inputs and outputs
|
Q1
|
transistor
|
IRLB8743
|
switching
speaker for sound generation
|
R1
|
resistor
|
1 kΩ
|
LCD display
contrast setting
|
R2
|
resistor
|
68 Ω
|
LCD display
background light
|
R3
|
resistor
|
1 kΩ
|
L298N input
protection
|
R4
|
resistor
|
1 kΩ
|
L298N driver
protection
|
R5
|
resistor
|
1 kΩ
|
L298N driver
protection
|
R6
|
trimmer
|
5 kΩ
|
LCD display
contrast setting
|
R7
|
resistor
|
1 kΩ
|
L298N input
protection
|
R8
|
resistor
|
1 kΩ
|
L298N input
protection
|
R9
|
resistor
|
1 kΩ
|
L298N input
protection
|
R10
|
resistor
|
3.9 kΩ
|
voltage
divider for battery control
|
R11
|
resistor
|
10 kΩ
|
voltage
divider for battery control
|
R12
|
resistor
|
1 kΩ
|
sound RC
filter
|
R13
|
resistor
|
1 kΩ
|
MCU analog
input protection
|
RGB
|
RGB LED
|
HC-F5V-F20-WS2811,
RGB with driver WS2811
|
indication of battery and program status
|
SERVO MOTOR
|
servo motor
|
9 g TG9z
|
ball
collector opening
|
Speaker
|
speaker
|
8 Ω/0,5
W
|
acoustic
signalization
|
SW1
|
button
|
PCB button
|
auxiliary
button (reserve)
|
SW2
|
mushroom
button
|
PCB5-EC-4-5
(2 buttons connected in parallel)
|
pushing button
of the dosing tower
|
X1
|
4x header
|
|
connecting for
I2C communication
|
Scheme - reflective sensors
PCB with reflective sensors
Table of components - reflective sensors
Code
|
Type
|
Parameters
|
Function
|
C13 – C17
|
capacitor
|
ceramic 10 nF
SMD 0805
|
filtration of
phototransistor output
|
R14 – R18
|
resistor
|
10 kΩ
|
phototransistor
output resistors
|
R19
|
resistor
|
47 Ω
|
current
limitations for LED diodes of reflective sensors
|
RX1 – RX5
|
reflective
sensors
|
QRD1114
|
track
detection
|
Scheme - encoder
Table of components - Encoder
Code
|
Type
|
Parameters
|
Function
|
C18
|
capacitor
|
ceramic 10 nF
SMD 0805
|
filtration of
phototransistor output
|
R20
|
resistor
|
10 kΩ
|
phototransistor
output resistor
|
R21
|
resistor
|
330 Ω
|
current
limitation for LED diode of the reflective sensor
|
ENCODER
|
reflective sensor
|
QRD1114
|
wheel motion
encoding
|
Scheme - Battery pack
Table of components - Battery pack
Code
|
Type
|
Parameters
|
Function
|
C21
|
capacitor
|
4x ceramic 10
µF/25V SMD 1210
|
charging chip
output filtration
|
C22
|
capacitor
|
4x ceramic 10
µF/25V SMD 1210
|
charging chip
filtration
|
D16
|
LED diode
|
green indication
LED
3 mm/ 2 mA
|
indication of
charging status
|
D17
|
LED diode
|
red
indication LED
3 mm/ 2 mA
|
indication of
charging status
|
IC4
|
integrated circuit
|
4x MCP73831
|
charging of a
single-cell Li-ion battery
|
K10
|
terminal
|
4x ARK500/2
|
Li-ion
accumulator connectors
|
K11
|
terminal
|
ARK500/2
|
power source
connector
|
R22
|
resistor
|
2 kΩ
|
LED current
limiting
|
R23
|
resistor
|
2 kΩ
|
LED current
limiting
|
R24
|
resistor
|
2 kΩ
|
charging
current selection
|
Battery pack photos
3D models in SketchUp
Photos of the robot
Robot
at the dosing tower: Robot
at the target
box:
Front buttons with IR distance sensor
Photo of the collector of balls from balls
Robot chassis - front part
Robot chassis - back part from below
Motors
Immediately
after the winning competition we dismantled the robot and made its update –
Beda 6 for the Robotic Day in Prague for the Ketchup House contest (… and guess
what, it has won again … the new input is coming soon …).
Files&Codes