UNIVERSITY OF MASSACHUSETTS
Computer Science Department

 

 

CMPSCI 503

Projects

Fall 2019

 

Rod Grupen

 

This course is oriented around a series of incremental projects that result in an integrated robot. We're going to warm up in Project #1 by building a simple analog robot called a "Braitenberg bug" where you'll practice soldering, learn some analog circuitry for sensor-based proportional control, and switch-able sensory-motor logic.

The Team project for Fall 2019 is the design and construction of a self-driving car that can: steer precisely; follow lane markers; continuously (re)plan routes; and play well with other vehicles on the road and at intersections. It is is broken down into four major sub-tasks:

  1. Project #2: the interface required and performance analysis of sensors and motors;
  2. Project #3: a chassis design and implementation of drive control and differential steering;
  3. Project #4: position control of the platform using a combination of odometry and vision and the lane following challenge;
  4. Project #5: the route planner and the single-vehicle navigation challenge; and the long-range, multi-vehicle control challenge.

Before the first part is fabricated or the first line of code is written, it is strongly recommended that your team meet and consider the entire set of subgoals. Even the first task requires that your design plans ahead for the last task...so, to the best of your ability, try to think ahead and anticipate what you'll need for all of the challenge tasks between now and December.

Date Lecture Content Assignment

INDIVIDUAL ASSIGNMENT
week #1
9/3 - 9/6
Introduction course information, project plans, soldering, units and teminology, understanding the photovore Project #1 - Photovore
reading: Braitenberg's bugs

no report
week #2
9/9 - 9/13
analog electronics analog electronics - Kirchoff's laws, resistors, capacitors, RC circuits, differentiators, integrators, inductors, transformers, switches, relays TuteBot week #2 report (weekly) - due 9/13/19
week #3
9/16 - 9/20
semiconductors, transistors semiconductors, diodes, transitors, power transistors week #3 report no report - due 9/19/19
week #4
9/23 - 9/27
  catch-up demo week week #4 report (final) - due 9/26/19

TEAM ASSIGNMENTS
week #5
9/30 - 10/4
TEAMS, RaspberryPi,
Arduino,
Arduino primer
duckietown project materials - Raspberry Pi, Arduino Uno, Ping, photoreflector, motors, camera, our Maxon motor Project #2 - Sensor/Motor Interface
week #5 report (TEAM) - due 10/4/19
week #6
10/7-10/11
sensors
actuators
introduction to sensors, observability/controllability, quadrature encoding, actuators (survey), DC motor interface, PWM week #6 report (final TEAM) - due 10/11/19

week #7
10/14 - 10/18
Columbus Day, Tuesday is virtual Monday chassis design considerations, differential steering, open-loop motor control, introduction to odometry Project #3 - Chassis & Odometry
week #7 report (TEAM) - due 10/18/19
week #8
10/21 - 10/25
control and odometry differential steering, odometry, closed-loop position control week #8 report (TEAM) - due 10/25/19
week #9
10/28 - 11/1
    week #9 report (TEAM: project #3 final report) - due 11/1/19

week #10
11/4 - 11/8
embedded computer vision
op amps
tracking the lane markers, recognizing signage Project #4 - Path Control - Lane following
week #10 report (TEAM) - due 11/8/19
week #11
11/11 - 11/15
Monday Veteran's Day
vision for duckietown
visual servoing, control for lane keeping week #11 report (TEAM: project #4 final report and demo) - due 11/15/19

week #12
11/18 - 11/22
Path Planning intro to path planning Project #5 - Duckietown Challenge
week #12 report (TEAM) - due 11/22/19

11/24 - 12/1
Thanksgiving Break    

week #13
12/2 - 12/6
Real-Time Scheduling RT scheduling week #13 report - due 12/6/19  
week #14
12/9 - 12/11
  Duckietown DEMO video week #14 final report/demo (see email)
due Wednesday, December 11
    demo: 5:00-6:30 PM (pizza incl.)
    report: due Fri. 12/13 11:59 PM