In electrical engineering programs, MATLAB scripting is often one of the first coding experiences a student is exposed to. Most introductory robotics courses that combine hardware and software require students to understand C (typically learned during junior year) or require part of the course to teach coding syntax. We have developed an interface to allow students to remotely control a wireless microcontroller (e.g., Arduino MKR 1010) using MATLAB scripts. This interface comprises two halves: 1) a MATLAB class that abstracts UDP commands transmitted over Wi-Fi and 2) a custom C library for receiving, parsing, and responding to commands over UDP, as well as streaming data back to the client. The interface leverages students’ existing knowledge of MATLAB. It bypasses the need for C programming to allow students to get early exposure to hardware-software integration, signal processing, edge computing, end-to-end platform development, and systems engineering. Our interface facilitates data observation, recording, manipulation, and analysis. Students have access to live data streams, real-time plots of sensor values, and the ability to use the command window to run and test individual commands outside of scripts. With this tool, students can design and implement intelligent systems in MATLAB’s high-level environment, allowing them to engage in more meaningful projects and better grasp big-picture concepts without first needing advanced programming instruction. We deployed this system in an introductory class and students successfully completed a final project where students navigated a maze using line-following and collected and classified objects using sensor data and neural networks. We surveyed two semesters of students at the end of the semester about using this tool, and students reported that using this interface enhanced their learning experience despite varied responses about the difficulty of implementation. With the growing importance of data science in electrical engineering, tools like our interface play a crucial role in exposing students to cutting-edge robotics and cyberphysical systems earlier in the degree program. Our interface has been made available on GitHub for any who wishes to implement it.
(This abstract represents a plan for a full paper that will be submitted before February 1, 2024 (pending acceptance of this abstract. This work falls under the topic of “Innovative curriculum Design and Laboratory Development”.)
Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.