Skip to content

Project Tasks

Andrew Fallon edited this page Mar 11, 2019 · 7 revisions

Initial State (Tane)

  • Goal: Build map at origin to account for LIDAR blindspot
  • Dependencies: spin, pose_ctrl/A*
  • Assumptions: obstacle free placement
  • Drive 0.6 meters forward
  • Spin 180 degrees CW
  • Drive 1.2 meters forward
  • Spin 180 degrees CW
  • Drive 0.6 meters (back to origin)

Frontier Exploration (Andrew/Shawn)

  • Goal: Explore environment collision-free until termination condition is met
  • Dependencies: Occupancy grid, spin, astar, pose_ctrl
  • Assumptions: known total map area
  • Tradeoff between accuracy and speed
  • When/how to spin to increase chance of object detection
  • Idea 1: Choose furthest known point in straight line, go to point, repeat, if furthest point below threshold, turn 90 degrees and repeat
  • Idea 2: Continually pick furthest known point
  • WORKING NOW:
    • Pick the furthest 0 in the occupancy field and set that as cmd_nav goal
    • Need to publish this continuously as that is how the Navigator.py run_navigator() function works
    • Need to find out why some zeros are outside of current map? Wrong logic? Maybe pick a zero with other zeros bordering it...

Command Center Visualization (Allen)

  • Have supervisor modes be visible on the robot
  • Add a turtlebot heading to the cylinder
  • Frontier exploration points
  • Keep a path of where we have been? Can keep only last minute of travel

Return to Object (Riley/Jerin)

  • Goal: Autonomously return to item(s) requested
  • Assumptions: have detected all items requested
  • Return to location where object was detected
  • Spin if necessary
  • Travel to locations in order requested
  • Return to home

Spin

  • Goal: Function to rotate robot X degrees

Other Considerations

  • Reorder supervisor states/logic
  • Adjust ASTAR algorithm to eliminate diagonal movements
  • Different frontier search methods
  • Buffer expand obstacles in occupancy grid (at least for motion planning)

Clone this wiki locally