Full Program »
Introduction to Coding and GUI Design in a Freshman Design Course
The first-year engineering sequence at XXXXX XXXXX includes two required courses, Introduction to Engineering Design, and Computer-Aided Engineering. The design course is built around the design model proposed by Gerard Voland and includes 1 hour of lecture and 3 hours of laboratory per week. The first several labs are used to focus on teambuilding skills (McGourty) and on skills in basic electronics and coding, with the remaining labs periods dedicated to a semester long design/build project. From approximately 2005-2017 NI LabVIEW was used as the workbench for coding, along with Measurement Computing USB data acquisition boards.(citation of previous ASEE presentations – redacted for anonymity). Several practical and educational concerns converged and led to consideration of alternative approaches to coding, measurement, and control, as well as training the first-year students with a wide range of coding (in)experience.
Two student lab assistants for the course undertook the process of generating ideas for hardware, software, and student training/education approaches. They initiated the process with a survey of our current first-year students, identifying their background and skills, goals, and their level of satisfaction with the computer-based aspects of the design experience. This led to a pilot purchase of a Raspberry Pi and associated circuit-board add-ons. While the first-year students designed their projects using the LabVIEW/Measurement Computing systems, the lab assistants created a parallel system using the Raspberry Pi. This was demonstrated to a panel of faculty who were involved in the course, along with a plan for classroom instruction for the course. The Python instructional module was also developed and piloted with a non-engineering student (the sister of one of the lab assistants) with great success. The new approach was approved based on this demonstration, as well as other strengths. These included more accessible online documentation for independent learning, affordable and adaptable development system, and the growing use of similar systems for students’ personal projects. The necessary hardware to support multiple lab sections was purchased over the summer.
The instructional modules for the Python/Raspberry Pi system have been refined over the course of four semesters (two academic years), focusing on student learning outcomes. Improvements have included streamlined approaches to teaching elementary circuits, self-guided tutorials for use in and out of the laboratory periods, and code samples/modules for a variety of common tasks.
Student groups have shown improved ownership of the coding process (rather than designating one student as the “computer expert”), better understanding of code development and testing, and more successful interfacing of computers with projects, both for measurement and control.
Voland, Gerard, Engineering by Design, 2nd Edition, Pearson, 2003. McGourty, Jack, and De Meuse, Kenneth, The Team Developer, Wiley, 2000.