VPL Lab Overview
Glossary Item Box
The VPL Hands On Labs is a set of tutorials that take you through common robotics concepts such as controlling actuators (wheel motors), reading sensors, designing simple behaviors, and having a robot interacting with its environment using Microsoft Robotics Developer Studio (RDS).
By going through the tutorials you will learn how to orchestrate services for RDS using the Microsoft Visual Programming Language (VPL).
All of the tutorials can be completed either using Microsoft Visual Simulation Environment (VSE) or actual hardware in the form of an iRobot Create. It is also possible to use other robots with most of the tutorials.
Lab 1 - Controlling a Robot with a Joystick in Simulation and in Hardware
In VPL Lab 1 - Joystick a Robot in Simulation and in Hardware you will write a simple program using Visual Programming Language to control a differential drive (two-wheeled) robot. The robot can be either simulated or real.
Lab 2 - Advanced Motion
In VPL Lab 2 - Advanced Motion you will learn about driving a differential drive robot in arcs, and splicing those arcs together to make more complicated trajectories. This tutorial will teach you more advanced concepts in VPL, such as variables, initial values, timers, and concurrent flow control via merges and joins. In addition, you will learn about arc trajectories for a differential drive robot and the pitfalls of open-loop control.
Lab 3 - DriveDistance and RotateDegrees
In VPL Lab 3 - DriveDistance and RotateDegrees you will learn about some advanced operations of the Differential Drive - DriveDistance and RotateDegrees.
Lab 4 - Drive in a Square
In VPL Lab 4 - Drive in a Square you will a create robot behavior to drive in a square using the operations from the previous tutorial. Other patterns are also possible and you can experiment on your own.
Lab 5 - Exclusivity Test
In VPL Lab 5 - Exclusivity Test you will learn about an important concept in RDS - Exclusivity. The tutorial allows you to examine the interactions amongst Exclusive, Concurrent and Independent message handlers so that you can gain an understanding of how and why certain operations can block other operations.
Lab 6 - Sensing and Simple Behaviors
In VPL Lab 6 - Sensing and Simple Behaviors you will a create robot behavior to head towards a goal while avoiding obstacles. In doing so, you will learn about some of the basics of behavior architectures. You will also learn more about how to work with the Create robot and VPL.
Lab 7 - Task Learning via Human-Robot Interaction
In VPL Lab 7 - Task Learning via Speech Recognition you will write code to allow a human to "joystick" the robot via speech. You will also enable the human to teach the robot a simple task by sequencing multiple commands. This tutorial covers some of the more advanced features of VPL. In particular, you will see how to use Lists. Concurrency related issues are also discussed, such as when control flows are considered exclusive in VPL.
VPL User Guide: Getting Started
VPL Reference: Basic Activities
VPL Tutorials: VPL Tutorials Overview
© 2012 Microsoft Corporation. All Rights Reserved.