Schedule

8/16 Introduction, take role, rules
8/18 Microcontrollers, embedded systems, development tools
8/20 More development tools, project 1
8/23 Binary digital input and output
8/25 Transition detection, debouncing
8/27 More software debouncing techniques, project 2
8/30 Timer device, concepts and configuration
9/1 Interrupt service routines (in general), timer ISR
9/3 Applications of timer ISR as a timing basis
9/8 Stepper motors, stepper motor driver, basic stepping concepts
9/10 Stepper motor motion control, trapezoid profile, physics formulae
9/13 Stepper motor control implementation, frequency division, project 3
9/15 Acceleration logic, distance control logic, code organization
9/17 Practice exam 1
9/20 More code organization for stepper motor control, project 4
9/22 Exam 1
9/24 Differential steering, ccncept, angular and linear components
9/27 Implementation of differential steering, combination of speed control profiles, project 5
9/29 Phototransistors as sensors, advanced techniques
10/1 External interrupts, edge sensing
10/4 Analog to digital convertor (ADC), configuration
10/6 ADC ISRs, techniques to scan multiple channels, software layer separation
10/8 Triangulation sensors (GP2D12), noise problems, glitch filtering
10/11 More filtering, averaging noise, circular buffers, project 5
10/13 DC motors, concept of pulse-width modulation (PWM), configuration of hardware-based PWM
10/15 More on PWM, R/C servo control, problems with PWM
10/18 Rotation encoding, quadrature encoding, software techniques
10/20 Quadrature encoder interface techniques, filtering, project 6
10/22 Practice exam 2
10/25 Partial Integral Differential (PID) control loop, concepts
10/27 Exam 2
10/29 PID implementation issues, bit-width resolution, fixed-point computation
11/1 PID constant tuning, introduction to Micromouse competitions, project 7
11/3 Basic robot design issues, configuration, component selection
11/5 More on Micromouse design issues
11/8 Maze exploration and mapping algorithms, depth-first search
11/10 More mapping algorithms, floodfill, project 8
11/15 Map representation, set representation and implementation
11/17 Floodfill algorithm implementation
11/19 Introduction to micromouse simulator, interface description, project 9
11/22 Introduction to real-time kernel (RTK), basic threading
11/24 Multithreading concepts, round robin, priority queue, scheduling
11/29 Utilizing an RTK, thread coordination, semaphores
12/1 More RTK concepts, relationship of ISR and RTK, coordination of ISR and RTK
12/3 Application of RTK to robotics, such as Micromouse
12/6 Practice final exam
12/8 Student presentations
12/13 Final exam 1015-1215
Copyright © 2004-08-15 by Tak Auyeung