Semester 7 Coursework Summary

Systems Lab, Control of Dynamical Systems, Robotics, Intro to Robotics and Perception

Posted by Will Compton on December 8, 2021

Recently by the same author:


Random Coding Stuff

International Conference on Robotics and Automation 2025


Will Compton

Graduate Student | California Institute of Technology

You may find interesting:


Reconnaissance Blind Multichess

Design of an Artifically Intelligent Agent to Play Reconnaissance Blind Multichess


Semester 8 Coursework Summary

Control of Motion Systems, Robotic Intelligence & Path Planning, CreateX Capstone

Table of Contents

Overview

Semester 7 contained many theoretical underpinnings of my main focuses of my degree, being robotics and control. The courses are mainly theory focused with few applications or projects compared to other semesters. Research continued to push forward strongly as well at EPIC Lab.

ME 4056 - Systems Laboratory

Systems Lab is a culmination of all the required theoretical coursework of the undergraduate degree in mechanical engineering. The course consisted of lecture portions which primarily served to review material and prepare for significant multi-week labs. The labs covered the following topics:

  • Blackbody Radiation
  • System Identification and Control
  • Internal Combustion Engines
  • Refrigeration (Cooling) Cycles

Each lab combined several theoretical topics from mechanical engineering classes, as well as digital signal processing, statistical analysis, technical writing and presentations. The analysis of the labs was typically fairly involved, with most data requiring significant and innovative post-processing to be conclusive.

ME 4452 - Control of Dynamical Systems

Control of Dynamical Systems was a purely theory based class on linear control theory. It covered topics including:

  • Modeling (Time and Laplace Domain)
  • Time Response Analysis and Specification
  • Stability Analysis
  • Steady State Error
  • Root-locus Techniques
  • Design via Root Locus
  • Analysis and Design via Frequency Response (Loop Shaping)
  • State Space Design
  • Digital Control Systems

The course is based around theoretical lectures, two midterms and five homeworks. Overall the course is well paced, with assignments well spaced throughout the semester. I think the course could have potentially benefitted from an implementation opportunity such as a final project.

ME 4451 - Robotics

The cornerstone course in the robotics minor, this course covered a wide array of introductory topics relevant to robotics. It also contained bi-weekly lab classes which dealt with implementing topics discussed in lecture on a variety of robots, including serial and planar manipulators as well as a differential drive turtlebot. The course topics included:

  • Kinematics (Forward, Inverse)
  • Static Analysis
  • Dynamic Analysis
  • Homogenous Transforms
  • Feedback Control (Linear, Nonlinear)
  • Path Planning (State Space, RRT)
  • Navigation/Localization
  • Robot Operating System (ROS)

The course covered many of these topics slowly and short of significant mathematical rigor. There were no exams, only labs and homework assignments. Overall the class was academically easy, although the labs and implementation make the taking the course worth it. The labs are coded in MATLAB, and no previous coding experience is required to be successful.

CS 3630 - Introduction to Robotics and Perception

This introductory course in robotics and perception, from a computer science direction, paired well with the mechanical focused robotics course (4451) I took concurrently. The course operated primarily in python, and covered the following topics:

  • Image Processing and Object Recognition
  • Homogenous Transforms
  • Localization (Particle Filter, Kalman Filter)
  • Fundamentals of SLAM
  • Planning (Search Based, Probabilistic, Potential Fields, Tentacle Methods)
  • Control (Linear, Nonlinear)
  • Robot Learning (Machine Learning, Deep Learning)

The course covered many of these topics in cursory, implementation focused way, as opposed to a more rigorous, theoretical approach. The course was based exclusively around labs and quizzes. Labs implemented methods on the Cosmo Robot, which was both a highlight of the class (when things worked), and a significant point of frustration (as the robots could be finicky and unpredictable at times, as they are rather cheaply made).

PHIL 3109 - Engineering Ethics

Engineering Ethics satisfied the ‘ethics’ requirement for my undergraduate degree. Overall I find philosophy very interesting, and even this introductory course contained new an interesting information for me. The primary topics are:

  • Professional Ethics
  • Utilitarianism
  • Deontology
  • Virtue Ethics
  • Care Ethics
  • Social Construction of Science/Technology
  • Actor-Network Theory
  • Several ‘case-studies’ evaluating historical mishaps/ethical lapses

The course was based around a midterm and a final, as well as a myriad of assignments over the semester, often based around discussions in the weekly recitation.

Conclusion

Overall this semester provided an implementation-focused look at many topics which are of primary interest to me, namely robotics and control. While primarily implementation focused (as opposed to any rigorous or theoretical treatments) there were no course-based large scale projects (and thus no course-based blog posts for the semester). Overall, the coursework was not overly difficult, with most challenges coming from the difficulties of working with real-world, error-prone systems (which was a valuable experience).