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

NameSize
Beda5_program.c27.455 kB
Beda5_program_SmartRGB.h2.616 kB
Beda5_SketchUp_model.zip1.577 MB
Beda5_el_schemes.pdf77.389 kB