# Class Meeting 07: End User Programming Interfaces

## Learning Goals

• You will learn about End User Programming Interfaces and why they are important
• We will recap the different interfaces ClicBot uses
• You will program short human robot interactions and customize them to your liking

## Lecture Overview

Here is a link to the presentation slides for today.

## Today's Timeline

• 10:00-10:10: Discussion on End User Programming Interfaces
• 10:10-10:40: Exercise 1
• 10:40-11:10: Exercise 2
• 11:10-11:30: Split Group Discussions (Groups 1 and 3 with Sarah. Groups 2 and 4 with Alex)

## Programming Exercise #1: They See Me Rollin

Let's start off by building this robot, consisting of 6 joints, 2 long arms, 4 wheels, 1 gripper, and a brain. All teams need to do this.

In this exercise, tables 1, 3, 4, and 5 will fill out their robot behavior preferences and hand it to teams 2, 6, 7, and 8 respectively. Tables 2, 6, 7, and 8 will program the robot according to your partner team's preferences. How you want to implement their preferences is up to you. Tables 1, 3, 4, and 5 will then program the robot for themselves based on your own preferences. Please refer to the instruction sheets for more information.

Note: The distance in which your robot travels should be about half the length of the table. It should drive from one end of the table to the middle or so and greet the other team. In order to keep the total travel distance consistent, you'll need to shorten the delay in block 3 when the speed in block 2 is faster and vice versa.

Note 2: There's an error in the sample code provided. You need to add some logic after block 3 (Delay for __ ms) to make the robot stop. As it is right now the robot will keep rolling until it falls off the table. A simple way to do this is simply to add a block setting the wheel rotation speed to 0.

Reflection: Once you're done, fill out your reflection worksheet based on your experience interacting with the robots.

## Programming Exercise #2: DJ cl1cb0t

Let's start off by building this robot, consisting of 6 joints, 1 long arm, 1 gripper, and a brain. All teams need to do this.

In this exercise, tables 2, 6, 7, and 8 will fill out their robot behavior preferences and hand it to tables 1, 3, 4, and 5 respectively. Tables 1, 3, 4, and 5 will program the robot according to your partner team's preferences. How you want to implement their preferences is up to you. Tables 2, 6, 7, and 8 will then program the robot for themselves based on your own preferences. Please refer to the instruction sheets for more information.

Reflection: Once you're done, fill out your reflection worksheet based on your experience interacting with the robots.

## Requirements to Meet Expectations for Today's Class

• Your team completed both exercises
• You completed all worksheets
• You shared at least 1 thought or comment during the split group discussions