The Microsoft® Robotics Developer Studio (MSRDS) and LEGO® robots together offer a flexible platform for creating robotic systems. Designed for novices with basic programming skills, Robot Development Using Microsoft® Robotics Developer Studio provides clear instructions on developing and operating robots. It includes an extensive array of examples, with corresponding step-by-step tutorials and explanations.
The first several chapters of the book introduce the development environment of MSRDS, including concurrency and coordination runtime (CCR), decentralized software services (DSS), visual simulation environment (VSE), and the Microsoft Visual Programming Language (MVPL). The text then covers the inputs and outputs to the robot and control logic and describes how MSRDS can be used to control a LEGO robot’s hearing and vision. It also presents a real-life example involving a sumo robot contest. The final chapter provides information on related academic courses, websites, and books.
The top-down approach used in this text helps readers think of a robot as a system rather than an assemblage of parts. Readers gain an understanding of methods for integration, design trade-offs, and teamwork—all essential skills for building robots. The MSRDS codes for all examples are available at http://msrds.caece.net/
Table of Contents
Challenges and Solutions in Robotics
Research Challenges: Moving from Industrial-Type to Service-Type Robots
Challenges in the Software Platform for Service Robots
Educational Challenges in the Development of Service Robots
Top-Down Learning Strategy
Using LEGO Mindstorms Education NXT Base Set Robots and MSRDS
Microsoft Robotics Development Platform
Origins of Development
Concurrency and Coordination Runtime (CCR)
Decentralized Software Services (DSS)
Visual Simulation Environment (VSE)
Microsoft Visual Programming Language (MVPL)
MSRDS Program List
Microsoft Visual Programming Language
MVPL Programming Environment
Basic Activities and Services Component
Basic Process Control in a Program
Concurrent Program Control
Creating a Custom Service Component
Visual Simulation Environment
Using MVPL to Control the Simulated LEGO Robot
Creating a Simulated Custom Robot in VSE
Robot I/O Unit
Sensor and Motor
Robot Motion Behavior
Autonomous Motion Robot Programming
Controlling the Robot through Sounds
Robot Visual Recognition Example
A Real Application—Sumo Robot Contest
Related Learning Resources
Related Course Websites
Other Website Resources
Shih-Chung (Jessy) Kang is an associate professor in the Department of Civil Engineering at National Taiwan University (NTU). Dr. Kang began using MSRDS on a research project in 2006 before its official launch by Microsoft and now often teaches about robotics using it. He earned his Ph.D. from Stanford University.
Wei-Tze (Aries) Chang is a postdoctoral researcher at NTU. Dr. Chang is also an adjunct assistant professor in the Department of Civil Engineering at Tamkang University. He earned his Ph.D. from NTU.
Kai-Yuan Gu is a digital design engineer for the Mighty Power Solutions Corp., where he designs automated products for energy-saving devices and lighting. He earned a master’s degree from NTU.
Hung-Lin Chi is a doctoral student in the Department of Civil Engineering at NTU. He is currently researching the integration of robot-sensing techniques into remote-controlled systems for cranes.
Readers will appreciate the authors’ step-by-step approach to programming and constructing a basic robot that can interact with the world. This combination of a top-down approach and a step-by-step guide instructs the reader to take a holistic, system-based perspective rather than a traditional functional-component-based one when exploring the construction of an autonomous robot.
—Eric W. Yocam, Computing Reviews, March 2012