0% found this document useful (0 votes)
43 views

Autonomous Robot Project: Lauren Mitchell Ashley Francis

1) The project aimed to remotely control a robot using a camera interface and wireless communication, and teach the robot to follow a specified path. 2) The robot had motors, wheels, sensors and could be programmed with a Java brick. The camera could track the robot's green material. Bluetooth enabled wireless communication. 3) By analyzing pixel colors, the robot's position was determined. Java code controlled movement based on rotations. Bluetooth used a protocol to send commands. The robot learned to follow a user-drawn path within 6cm of targets.

Uploaded by

shukur76
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views

Autonomous Robot Project: Lauren Mitchell Ashley Francis

1) The project aimed to remotely control a robot using a camera interface and wireless communication, and teach the robot to follow a specified path. 2) The robot had motors, wheels, sensors and could be programmed with a Java brick. The camera could track the robot's green material. Bluetooth enabled wireless communication. 3) By analyzing pixel colors, the robot's position was determined. Java code controlled movement based on rotations. Bluetooth used a protocol to send commands. The robot learned to follow a user-drawn path within 6cm of targets.

Uploaded by

shukur76
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 25

Autonomous Robot

Project
Lauren Mitchell
Ashley Francis
The Challenge
 The goal for our summer project was to be
able to remotely control a robot using a
camera interface and wireless
communication.
 The final challenge of this project was to
teach the robot to follow a path specified
through the camera interface.
Robot Capabilities
 Two motors
 Two 4.96 cm wheels
 One pivot wheel
 Two rotation sensors
 Green tracking material
 Java Programmable Lego
Brick (RCX)
 Bluetooth
Web Camera Capabilities
 120 x 160 resolution
 Mounted 2.5 m (8.25 ft)
above ground
 Viewing area of
2.1 x 1.9 m (6.9 x 6.3 ft)
 Average of 10 fps
 Programmatic access
through C++ API
Bluetooth Capabilities
 Serial communication
with 8 data bits, 1 stop
bit, max data transfer rate
115.2 kbps , and even,
odd, or no parity
 Maximum operating
range of up to 30 meters
(98 feet)
 9 pin RS232 connector
 Required voltage of 5V
-13.6V
Past Progress Summary:
1. Tracking the robot

2. Robot movement
and code

3. Communication
Images from the camera
1

2 3 4
HSV values were used to track
robot on image
 HSV values were
calculated from RGB
values of a pixel
 Each pixel of image is
scanned looking for
specific HSV ranges
 Crosshair placed
where ranges found
Color analysis for pixels
 Green CD case used
for color tracking on
robot
 Range of HSV values
for green pixels were
determined :
Navigating the robot
 Java RotationNavigator class was used to
control robot movement through rotation sensors
and motors
 Provides ability to rotate 360 degrees and travel
specified distances
Calculating angle and distance
x = 1.325*(xdest-xsrc)
y = 1.604*(ysrc-ydest)
(xdest,ydest)

n ce
a
i st angle = [tan -1(y/x))*(180/л)]
d

(xsrc,ysrc)

if(y != 0)
distance = abs(y/sin(angle))
else
distance = abs(x/cos(angle))
Communication between robot and
PC: using Bluetooth
 BL-830 (female) connects to
RS232 of PC
 BL-819 (male) connects to
signal converter on robot
 2400 bps data transfer rate
 Odd parity
 One 9-Volt battery
 Serial communication (sends
1 unsigned byte at a time)
Midsummer Results:
 Stationary robot found
every 0.3 seconds
 Moving robot found
every 7.34 cm
 On average, robot
misses target by 9.2
cm (3.6 in)
The final stretch

 Improving accuracy of robot movement


 Closingloop with camera
 Robot orientation

 Developing a better tracking solution


 Teaching the robot a path to follow
SMOLES model
Inside the components
Inside the components
Inside the components
Robot orientation and correction

(xdest,ydest)

(robx,roby)

(xsrc,ysrc)
Teaching the robot to follow a path
dest y3
 User clicks are stored Pointer dest x3
in a vector dest y2
Pointer dest x2
 Pointer is used to dest y1
access coordinates of Pointer dest x1
click
 Pointer is incremented dest x3,
by 2 when robot dest x1,
dest y1
dest y3

reaches a node in the


path

dest x2,
dest y2
Show camera
image on screen

no user
clicks? false Correct false
Dest
Flag? Flag?
yes
Store coordinates of robot true true
destination in a vector Control information is sent Update angle information
over Bluetooth using three is sent over Bluetooth
byte protocol using four byte protocol
Destination pt equals vector pointer
(pointer incremented by 2)

Search for Robot Converter circuit


transform signal for the
RCX to receive protocol
no Robot
Found? Robot receives
information and responds
yes accordingly
Camera finds
coordinates of
Waits for new information
robot on screen

Necessary angle and


distance calculated
Thread 1: Java code to receive Thread 2:
Read Thread
and execute protocol Main Thread

Read sent byte


angle &
no distance
If = -1 check If = 5 received?
byte
yes
If = 1 Stop Robot in path
Rotate Robot
Read next byte If = -1 check
Move forward
byte
Store as angle robot If = 8
needs to rotate true
false check
Read next byte correction
Read next byte Flag
Stop Robot
Store as current position
angle to update to
Store as distance Update to current When distance
robot needs to travel position and correct is
Read next byte angle along path reached

Store as angle robot Reset angle, distance,


needs to rotate and correction flags
Summer Results
 Robot reaches target
point within two turns
 Robot has reached the
target when it is between
0 – 6 cm from point
 Robot consistently
follows path repeatedly Results Achieved
If we had more time…
 Find a better tracking
solution
 Implement two-way
communication
 Add obstacles to
course
Autonomous Robot
Project
Lauren Mitchell
Ashley Francis

You might also like