Robot over Construction

Robot Over Construction
Mark D. Dahl
Michael van der Giet
Clint Esperson
Functional Partition


Manual operation controlled by the
touch display
Autonomous operation




Navigate through workspace
Pick up bricks from storage areas
Identify brick and decide were to put it
Put bricks together and build a wall
structure in build area
Functional Partition (Cont.)
Functional Partition (Cont.)

Actuators used



4 Lego motors driven by JCX board
1 geared motor driven by H-bridge IC
Sensors used



3 Lego touch sensors
3 Lego rotation sensors
1 Lego light sensor
Functional Partition (Cont.)
Software Flow Chart
Software Flow Chart (Cont.)
Project Objectives

Originally, we wanted to construct a
robot that would:



Be able to identify lego bricks
Use those bricks to build something
Be given a building plan and use it to
find bricks it needs and build the plan
Problems

Designing a claw or gripper that
could handle lego bricks


Solution: handle the larger duplo bricks
Achieve 3 degrees-of-freedom arm

Solution: make the arm moveable
Problems (Cont.)

Insufficient strength of lego parts for
the robot


Solution: use aluminium frame for
crane of robot
Insufficient sensitivity of lego
sensors


Tried using a mouse as a rotation
sensor, but it ended up not working
Solution: lego sensors with more gear
Problems (Cont.)

Enable robot to find bricks and place
to build


Solution: bounded area
Hardware issues (JSTAMP not
communicating with PCs)

Solution: JTAG ribbon cable seemed to
be the problem, replace them
Final Project Results



A robot which can build a wall with two
different sized duplo bricks
A display screen to control the robot
manually or set it into autonomous mode
Javadocs and javacode can be found at
our website
 Http://www.cs.utah.edu/~mdahl/robotoverconst
ruction
If We Had This to Do Over
Again:

Plan a more realistic project


Our original plan was too ambitious
given the time constraints and parts
available
Attempt to distribute the work more
evenly among team members

Although, originally it seemed to be
divided up evenly
If We Had This to Do Over
Again: (Cont.)

Find a system that could be used for
code maintenance and use it

Transferring code back and forth and
making sure that we got all the changes
from different versions of the same
classes increased the difficulty of the
project
Questions???