Course: Hands-on Robotics with Programming ( 機器人程式實作 )
Instructor: Shih-Chung Kang 康仕仲( sckang@caece.net )
Teaching Assistant: Yi-Chu Chen 陳奕竹 ( yie@caece.net )
                             Wei-Han Hung
洪偉瀚 ( magic@caece.net )
Classroom: Civil Engineering Research Building - Room 405
Time: Monday 6,7,8 ( 14:20 ~ 17:10 )
Semester: 2009-02
Course Number: 521 M6800
Course Credit: 3
Website: http://robot2010.caece.net/ (http://sites.google.com/a/caece.net/robot-programming-2010/)
Course Information: NTU Course Information

Course Description

This course is designed for graduate students or senior undergraduate students to be familiar with the development of the software components for robotics applications. Students will learn the programming skill in a small group by closely following the assigned material, including example codes, book chapters and/or other online resources. Multiple programming assignments will be assigned to help students gain the hands-on experience of robotics programming. 

Announcement (Important)



 Date - #Week Topic CourseworkReading
02/22 - #01Course introduction
 1.Introduction of the Course
03/01 - #02
MSRDS Basics (1/4): CCR
 MSRDS User Guide (Part1, Part2)
CCR Overview
1.Example01~06 CCR Ports and PortSets (code, pdf)
2.Example07~13 CCR Coordination Primitives
(code, pdf)
03/08 - #03MSRDS Basics (2/4): CCR
 3. Example14~16 CCR Task Scheduling (code, pdf)
4. Example17~20 CCR Iterators (code, pdf)
5. Example21~23 CCR Failure Handling (code, pdf)
6. Example24 CCR Interop with Non-CCR Code (code, pdf)
03/15 - #04MSRDS Basics (3/4): DSS & Integration of basic MSRDS service
 1. Hands-on 2010 #4 (pdf)
2. 2.Introduction to VPL (code, pdf)
3. 3.Simulation of LEGO Robot (code, pdf)
4. 4.DSS Example (code)
03/22 - #05MSRDS Basics (4/4): DSS & Integration of basic MSRDS service

1.Course #05(code), Project 1(code, bin files, control[temp], pdf)
2.How to set up the developing environment of MSRDS
3.Create a Service
4.Updating State
5.Persisting State
6.Supporting Subscriptions
 03/29 - #06Simulation (1/4): Introduction of mobile robot. Building mobile robot model and virtual environment
1.Visual Simulation Environment Introduction (pdf, ApartmentScence_code_pdf)
2.SketchUp Download (innoBot demo.skp)
3.SketchUp Video Tutorials
4.Mobile robot manual
5.Motor Runner B manual
6.Keypad A manual
7.Sonar A manual
8.Line Tracker TCRT5000 manual
9.4x20 LCD Display manual
 04/05 - #07Tomb Sweeping Day (holiday)
 04/12 - #08Project 1 demonstration
Simulation (2/4): Building mobile robot model and virtual environment. Virtual actuator and sensor
Project 1
1.Hands-on 2010 #08 Visual entity (pdf)
 04/19 - #09Simulation (3/4): Virtual actuator ahttp://sites.google.com/a/caece.net/robot-programming-2010/filecabinet/TCRT5000_20090713.pdf?attredirects=0&d=1nd sensor  1.Hands-on 2010 #09 Development Guide for
MSRS Simulation (pdf)
2.Microsoft.Xna.Framework 2.0 (dll)
3.Project 2 (pdf, rar) "http://schemas.tempuri.org/2010/04/project2.html",
SimulationEnvironment (rar)
 04/26 - #10Simulation (4/4): Integration of services for mobile robot simulation 1.Hands-on 2010 #10 EntityService (pdf)
2.MyEntityService (rar, vpl)
 05/03 - #11Project 2 demonstration
Hardware (1/4): Building mobile robot.

Project  2
1.innoBasic language (pdf, rar)
2.InnoBot manual (pdf)
3.inb Example (zip)
 05/10 - #12Hardware (2/4): Motion control
 1.innoBot Hardware Setup (pdf)
2.innoBot inb Code (pdf, zip)
3.TCRT5000 (pdf), Servo Runner 8 (pdf)
4.innoSDK.dll (dll), TestAPI_V4 (rar), innoBot.inb (inb), innoLibExample (rar)
5.innoBotService (manual, code, pdf, bin)
 05/17 - #13Hardware (3/4): Behavior control
 1.innoBot Wireless Setup (pdf)
2.RF24G (pdf), RF Commander (pdf)
3.innoBot MSRDS innoBasic code (pdf, rar)
4. Project 3 (pdf)
 05/24 - #14Hardware (4/4): Integration of services for mobile robot

1.innoSDK.dll (dll), TestAPI_V4 (rar), innoBot.inb (inb), innoLibExample (rar)
2.innoBotService (manual, code, pdf, bin)
 05/31 - #15Project 3 demonstration
Multi-robot (1/2): Design of single line and circular railway system. Design of Y-loop and block signaling railway system. Design railway passing system
Project  3
1.innoBot Service V&R (rar, pdf)
2.innoBot Small inb (zip)
2.AREMA Chapter 3: Basic Track
3.AREMA Chapter 7: Communication and Signal
4.Automatic Train Control (ATC)
5.Automatic Train Operation (ATO)
6.Automatic Train Protection (ATP) 7.Automatic Warning Systems (AWS)
8.Design of passing railway system
 06/07 - #16

Multi-robot (2/2): Integration of multi-robot

 1.co_inb (zip)
2.innoBotVR MSRDS service (rar)
3.Project 4 (pdf)
4.Traffic flow planning and emergency planning
 06/14 - #17

  06/21 - #18Project 4 demonstrationDue:
Project 4



  • Class participation 10%
  • Project Assignments  60%
  • Final Project 30%

Reference Book

  • Microsoft Robotics Studio 程式開發, Sara Morgan著,康仕仲譯。2008
  • Microsoft Robotics Developer Studio實戰手冊 - 智慧型機器人程式模擬與開發,康仕仲,古凱元,紀宏霖著。悅知文化,台灣。2008

Reference Website