Transcript

iMagicSenior Project

Emre AYDINAsil Kaan BOZCUOĞLU

Onur ÖZBEKEgemen VARDAROnur YÜRÜTEN

Project Supervisor: Asst. Prof. Uluç Saranlı

Introduction - MAGIC 2010

• Multi Autonomous Ground-robotic International Challenge

• Jointly sponsored by the US and Australian Departments of Defense

• Robots that will conduct a mission of intelligence, surveillance and reconnaissance

• Mission objectives:– Accurately and completely exploring and mapping the

challenge area– Correctly locating, classifying and recognising all simulated

threats

Introduction – MAGIC 2010 (cont.)

• Program goals:– Accelerating the development of autonomous and

unmanned vehicle technology.– Demonstrating that multi-UVS cooperatives can

operate effectively with limited supervision by humans in realistic environments.

– Bringing fresh insights to the problem of developing robust autonomous multi-vehicle cooperatives and to identify and transition technologies to meet emerging requirements.

Introduction - iMagic

• iMagic is an implementation of the contest in a simulated environment.

• Development of the two opposing teams:– Incursion robots– Objects of interest

• Project goals:– Efficient decision-making and planning algorithms– Task allocation and re-allocation for multiple robots– Full autonomy– Reliance on sensory information exclusively

Network Structure

Communication Between Services

Message Handling

Problems We Have Encountered

• A completely new technology (CCR & DSS)• Complications due to asynchrounous and

distributed computing• Bugs related to the physics engine

Odometry

• Robotics Studio does not have encoder in standard configurations

• We implemented our own encoders with following formula:

rotation = update_elapsed_time * rotation_scale(1/2*pi)*wheel_speed

Odometry (cont’d)

• The formulae:

OT+1 = OT + (DR - DL) / W

DT,T+1 = (DR + DL) / 2

XT+1 = XT + DT,T+1cos(OT+1) YT+1 = YT + DT,T+1sin(OT+1)

Odometry (cont’d)

• Odometry can be erroneous• Our case:

- In mapping, we don’t see much error - That can be because we implement the encoders virtually.

Mapping

• One of the main goal of the Magic 2010

• While the target OOIs are neutralized, mapping process also must be done.

Mapping Algorithm (cont’d)

• Occupancy Map Principle- Every pixel has a value. ( Default: 128)- Robots’ laser range finders measure

distance in 180 degree.- If it returns max range, corresponding pixel values in the range are increased.-Otherwise, the value of the end point of the corresponding ray is decreased.

Incursion Team Robots

• Pioneer 3DXEquipments: - Laser Range Finder - Differential Drive on two wheels

- Web cam

Incursion Team Robots (Cont.)

• They can be in either of the following 3 states:– Wander

– OOI Following

– Motion-to-goal

Incursion Team Robots (Cont.)

• ‘Wander’ State:– Default state

– Move randomly and explore the environment

Incursion Team Robots (Cont.)

• ‘OOI Following’ State:– Follow an OOI until neutralizing it

• Neutralizing an OOI:– Keep the OOI under surveillance for 20 seconds.– Neutralized OOIs are removed from the

environment.

Incursion Team Robots (Cont.)

• ‘Motion-to-goal’ State:– Try to reach a goal point

– For fast and deterministic exploration

Incursion Team Robots (Cont.)

• How is collision avoidance handled?– Slowing down

– Doing boundary following

– Backing off

Incursion Team & Command Center

• Switching to OOI Following State:– Command center calculates the distance between

incursion robots and OOIs.– If it finds an ‘available’ incursion robot close

enough to an OOI, it sends a message to that incursion robot.

Incursion Team & Command Center

• Switching to ‘Motion-to-goal’ State:– Command center determines the unexplored

regions in the map built so far.– Generates a random point in the most unexplored

region; finds an available incursion robot, and assigns that point as a goal to that robot.

OOI Robots’ Motion Goal

Provide a collision-free motion Patrol within a subregion

Robot Information

Lego mindstorm NXT Actuators and Sensors

Differential drive on two wheels Laser range finder Webcam

Lego Mindstorm NXT

Motion Planning Algorithm

“Node construction” phase “Patrol” phase Local planner: Artificial potential fields

Node Construction Produce # of samples = # of existing

nodes

Node Construction (cont.) Randomly pick one of the samples

Node Construction (cont.) Connect the sample with up to k (k=3)

neighbours of the previous node

Node Construction (cont.)

Node Construction (cont.)

Node Construction (cont.)

Node Construction (cont.)

Node Construction (cont.)

Patrol Select target from the node set

Patrol Generate additional “bridge” nodes if

needed.

Analysis

Incremental node construction Avoiding massive pre-computation Motion is not delayed

Implicitly building “borders” Tentative area for patrolling

Collision-free, elegant motion


Top Related