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.)
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 truction truction
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???