The "Big Ideas"

Based on and extended from: Touretzky, D. S. (2013). Robotics for computer scientists: what’s the big idea?

How do Robots Know What To Do?
  • Big idea: Autonomous robot behaviors are mechanisms constructed from carefully designed algorithms and representations.
  • Underlying technology: event-based architectures, distributed operating systems, publish-subscribe messaging
  • Learning goals, students will:
    • understand the importance of concurrency and a distributed architecture in Robot behavior.
    • be able to explain the distributed OS principles of ROS
    • know about some other examples of control schemes, in particular layered control
    • know how to write ROS node; write several interoperating ROS nodes
How do robots perceive what is going on around them?
  • Big idea: Robotics is extensively sensor driven
  • Underlying technologies:
    • Lidar
    • Odometry from servo motors
    • Cameras and depth cameras
    • Touch detectors
    • GPS, Accelerometer
  • Learning Goals:
    • undertand why sensors are crucial
    • understand what kinds of sensors typical robots will have and what their purpose is
    • know about sensor features, specs, characteristics and limitations
    • be able to examine and show information being genrated by sensors, e.g. Lidar
    • be able to display this graphically and use it in a program
    • be able to program a robot to perform a "roomba" pattern in a closed arena.
How do Robots move around?
  • Big idea: There are a variety of ways in which robots can move around
  • Underlying technologies:
    • Motors and Actuators
    • Different kinds of wheels
    • Treads
    • Steering
    • Legs
  • Learning goal, students will:
    • Know the various kinds of wheels, treads, legs etc used in propulsion
    • Know the various kinds of steering that are found in robots
    • Interdependence of steering configuration and locomotion
    • Understand terrain issues when selecting configuration
    • Be able to program a robot to drive in different patterns
    • Understand how sensing and steering work together to control mobilbity
How do robots orient themselves?
  • Big idea: Coordinate systems, local, global and relative
  • Underlying technologies:
    • Mathematics
    • Frames of Reference
    • Quaternions
    • Euler Coordinates
  • Learning goal: Students will:
    • Understand different coordinate systems
    • Know the standard representations for positions and poses
    • Have some experience with the APIs for coordinate sysstems
    • Have some experience working with Quaternions
How Do Robots Know Where They Are?
  • Big idea: Robots estimate their position and orientation in the world using a combination of odometry, visual land- marks, and other types of sensory information.
  • Underlying Technologies
    • Particle filters
    • SLAM
  • Learning Goals: Students will:
    • Understand the uses and limitations of odometry and visual landmarks
    • Understand the basic principles of particle filters, and how particle filters are used for localization.
    • Demonstrate a robot avoiding obstacles using AMCL
    • Demonstrate effective robot navigation behavior by arranging landmarks appropriately in the environment and invoking the Pilot’s localization mechanism as needed to determine their robot’s position.
How Do Robots Control Their Bodies?
  • Big idea: Robots describe their bodies as kinematic trees and use kinematics solvers to translate between joint angles and body coordinates.
  • Underlying technologies:
    • Kinematic description files
    • URDF
    • forward and inverse kinematics calculations
  • Learning goal: Students will:
    • Understand kinematic descriptions expressed as trees of joints and links
    • Understand how kinematics solvers use this representation when translating between world coordinates and joint coordinates.
    • Be able to construct and visualize kinematic descriptions
How Do Robots Know Where To Go
  • Big idea: Robots navigate through the world using a path planner to search for routes around obstacles and an execution monitor to ensure that the robot stays on the path.
  • Underlying Technologies
    • Short and long range plan
    • Tree Search (Dijkstra)
    • Recovery behaviors
  • Learning goal: Students will
    • Understand the interrelationship between short and long range planning
    • Understand the difference between a topological and metric map and why both are needed
    • Be able to demonstrate how to use ROS "Move Base" node
How do robots see the world?
  • Big idea: Robots use sophisticated but imperfect computer vision algorithms to deduce real world object representations from arrays of pixels.
  • Underlying technologies:
    • Different types of cameras
    • OpenCV
    • ROS Support for vision
  • Learning goal: Students will:
    • Be able to configure cameras, and visualize images
    • Understand how images and video is delivered as ROS Topics
    • Be able to use OpenCV for basic image processing
How can robots exhibit complex behavior??
  • Big idea: Robots use task planning to search a space of world states to find a path to a goal state
  • Underlying technologies:
    • Robots use task planning to search a space of world states to find a path to a goal state
    • Task planners; domain description languages; plan execution and monitoring architectures
  • Learning goal: Students will understand:
    • A
    • B
  • Skill goals: Students will be able to:
    • Z
    • foo