The goal of lab assignments is to expose non-technical students to technical problems in robotics and help technical students (from engineering disciplines) learn how to program robots and make them functional to facilitate HRI.
Students are expected to complete four lab assignments along with the following submission documents:
- Written Report: includes a discussion of the technical components, input, outputs, and how methods are implemented, including diagrams to help describe the robot control architecture, perception system, and navigation system (if applicable). Reports should also include a discussion of the study design, analysis techniques used, and results of experiments.
- Robot Software: code used to control the robot.
- Video Demonstration: video of the robot in action.
The lab assignments include (see lab DUE dates under ‘Schedule’):
- Lab 1: Introduction to ROS
- Virtual Machine Setup
- ROS topics, nodes, parameters, types, services, rqt, and launch files
- Lab 2: Introduction to Turtlebot
- Lab 3: People Perception
- Lab 4: Social Navigation
- Lab 5: Design and Evaluate a Delivery Robot
There are several online resources that can help students become more familiar with Robot Operating System (ROS) and Python Programming including:
- Programming Robots with ROS: A Practical Introduction to the Robot Operating System. Quigley, Gerkey, & Smart, O’Reilley, 2015.
- An Extended Framework for Characterizing Social Robots (Baraka*, Alves-Oliveira*, & Ribeiro, 2019)
- A Primer for Conducting Experiments in HRI (Hoffmann & Zhao, 2021)
- Discovering Statistics using R (Field, Miles, & Field, 2012)
- Statistical testing table
- Multiple Object Tracking
- More Readings