Embedded systems robotics and this mva training series
1. Chris Howd | Developer Content Planner, MS
Paul Pardi | AppPlat Content Manager, MS
2. Meet Chris Howd
• Developer Content Planner, Microsoft
– Developer, Technologist, Learning Content Planner
– Responsible for customer facing client developer training: Windows
apps, Windows Phone apps, Xbox apps, Windows Desktop apps
• Over 30 years of industry experience
– US Department of Defense, Self Employed (R&D), Microsoft
– Mechanical Engineer designing and programming robotic and
automated systems before joining Microsoft in 2000.
– Developer, developer content planner, and robotics hobbyist.
3. Meet Paul Pardi | @paulpardi
• Content Development Lead, Microsoft
– Leads team of content developers focused on software development
technologies
– Over 20 years experience as software developer and trainer
• Software and content development professional
– Managed Windows Store merchandising team for Windows 8
– Managed team and wrote content for Internet Explorer
– Technical trainer, teacher, and book author
– Published Windows 8 app called Movie Notes
4. Course Topics
Programming Robotic Systems using Visual Studio
01 | Embedded Systems, Robotics, and this
MVA Training Series
05 | Integrating Advanced Sensors and
Shields
02 | Getting Started with Arduino 06 | Mapping Areas and Detecting Objects
03 | Creating Your First Arduino Robot
07 | Integrating Wireless Control and
Communication
04 | Controlling a Robotic Arm 08 | Looking Ahead
5. Setting Expectations
• Target Audience
– This Course: Developers and hobbyists who are interested
programming robots that use Arduino microcontroller boards.
– This Series: Developers and hobbyists interested programming
embedded systems.
• Suggested Prerequisites/Supporting Material
– Basic programming skills in C++, C#, or JavaScript
– Need to skill-up? Try these MVA Titles:
• C# Fundamentals for Absolute Beginners
• Programming in C# Jump Start
• Twenty C# Questions Explained
6. • Microsoft Virtual Academy
– Free online learning tailored for IT Pros and Developers
– Over 2M registered users
– Up-to-date, relevant training on a variety of Microsoft products
– Check it out: http://aka.ms/mva
Join the MVA Community!
7. 01 | Embedded Systems, Robotics, and
this MVA Training Series
Chris Howd | Developer Content Planner, MS
Paul Pardi | AppPlat Content Manager, MS
8. • Embedded, IoT, and Robotics?
• Microcontrollers and Other Hardware
• Examples of Microcontroller Boards
• Software Options
• Typical Code Sample
• The Robots Used in this Training
• Demo – Meet the Bots
Module Overview
9. Embedded, IoT, and Robotics?
• Microsoft’s history with embedded systems
• This MVA Course (introduction to programming robotic systems)
• Next steps for this training series?
– Internet of Things
– .NET Micro Framework Projects
– Windows Tablet Projects
– More robotics?
10. Microcontrollers and Other Hardware
• What are your hardware choices?
– Controller and microcontroller options
– Motors, sensors, and other hardware options
• Where can you buy hardware for your projects?
• How should you get started?
13. Typical Code Sample
void loop()
{
if (robotInitialized == false) initializeRobot();
if (performDiagnosticsChecks == true)
{
if (armDiagnostics == true) testArmMovement();
if (wheelSpeedDiagnostics == true) testGearmotors();
if (sensorDiagnostics == true) testSensorPositioningAndReadings();
}
else if (intruderStopped == false)
{
// continue main program loop…
}
}
14. The Robots Used in this Training
• We will be exploring the development of 3 robots
– We will include brief hardware discussions
– We will spend most of our time focused on the code
• Robot #1: Simple Autonomous “MSBump-Bot”
• Robot #2: Semi-Aware “MSGuard-Bot”
• Robot #3: Wirelessly Controlled “MSSpider-Bot”
16. Review
• This MVA course is the first in a planned series on embedded
systems
• Future courses in this series will focus on .NET Micro Framework
projects and projects involving Windows tablets.
• We plan to develop Internet of Things training that covers both
.NET Micro Framework and full .NET/WinRT apps.
• You can “vote” for more training on robotics