DOI: https://doi.org/10.15368/theses.2021.145
Available at: https://digitalcommons.calpoly.edu/theses/2368
Date of Award
8-2021
Degree Name
MS in Electrical Engineering
Department/Program
Electrical Engineering
College
College of Engineering
Advisor
Andrew Danowitz
Advisor Department
Electrical Engineering
Advisor College
College of Engineering
Abstract
This thesis introduces "SNR," a Python library for programming robotic systems in the context of introductory robotics courses. Greater demand for roboticists has pressured educational institutions to expand robotics curricula. Students are now more likely to take robotics courses earlier and with less prior programming experience. Students may be attempting to simultaneously learn a systems programming language, a library API, and robotics concepts. SNR is written purely in Python to present familiar semantics, eliminating one of these learning curves. Industry standard robotics libraries such as ROS often require additional build tools and configuration languages. Students in introductory courses frequently lack skills needed for these tools. SNR does not use any additional build tools, so students are faced with fewer compounding learning curves. SNR presents students with concepts important to robotic systems programming such as modular and event driven architectures to bridge the gap between introductory programming courses and industry standard libraries.