CETA Robotics Workshop 2 - Embedded System Programming Concepts
Building upon CETA Robotics Workshop 1, this workshop provides a first course on embedded system firmware is design and development.
You will take your completed breadboard circuit, mount it onto a simple chassis, and have your robot complete a basic CETA line follower challenge.
More importantly, you will understand how to capture a behavioral model of the challenge using a UML Statechart diagram, and how to implement this as a state machine using the C-programming language on a PIC32 microcontroller.
- Understand the basics of software design for embedded systems
- Understand the basics of modeling application behavior using UML Statecharts
- Manually convert the statechart to a state-machine based firmware using the C-programming language
- Deploy a line-following program that successfully navigates the basic CETA line follower challenge.
Ideally, you will have attended CETA Robotics Workshop 1 - Basic Input/Output & Control and successfully built the basic electronic control chassis as shown:
If you are simply interested in learning about state-machine based firmware design using the C-language, you can still participate in this workshop, however, you will be responsible for deploying the provided firmware on your platform (i.e. Arduino, Basic Stamp, other).
PART 1. INTRODUCTION
- Embedded Systems: Overview & Firmware Design Challenges
- CETA Line Follower Challenge
- LAB 1 - Chassis Fabrication
- Software Design
- Models vs. Languages
- State Machine Model
- UML Statechart Drawing Tools
- Modeling the CETA Line Follower Challenge
- LAB 2 - Model the CETA Line Follower Challenge
- C-Language Refresher
- Recommended Coding Style And Project Guidelines
- Deploying State Machines in C
- The Line Follower State Machine
- LAB 3 - Line Follower State Machine
- Class Summary
Required Equipment & Components
The lab exercises are tested on a Windows 7 Professional (64-bit) platform, however, should also work on Linux and MAC OS/X platforms. Your PC should also have 2 available (free) USB ports. The following equipment and software should be installed/available before attending the workshop:
- Component kit (Assembled & Tested): CETA Component Kit 1 - Basic (#18-00006A)
- Component kit: CETA Component Kit 2 - Chassis (#18-00007A)
- Workshop Student Files (a download URL will be provided via email)
- Pliers & wire cutter/stripper (wire gauges used: 22AWG, 26AWG)
- Mini/Precision Screw-Driver Set
- Basic multi-meter (dc voltage/current + frequency counter function)
- (Recommended) Solder Station (suggest Hakko FX-888D)
- (Recommended) LED Magnifier Desk Lamp
- MPLAB® X IDE v3.00 or higher
- MPLAB® XC32 v1.34 or higher (Academic/Free License)
- Adobe Acrobat Reader
- Astah UML Statechart Editor - Community Version
- FTDI Cable Drivers