Abstract:Embedded systems have been an important part of daily human life for a long time. However, in academic education the subject is somewhat new and to some extent undefined. Most courses focus on hardware aspects of embedded systems, and at the same time there is a lack of embedded programming courses. In this paper, we describe our experiences of organizing, designing and evaluating an embedded programming course. We describe course assignments in detail and present pass-rate of each assignment. We also present … Show more
“…Salminen et al (2011) partitioned the final project of a course on embedded operating systems into several progressive and small sub-projects, such as programming thermometer experiments and small Lego robots. Vanhatupa, Salminen, and J€ arvinen (2010) assigned to students homework that built on exercises carried out in class, such as thermometer programming, Lego robot programming, and acceleration sensor programming. Stollenwerk, Jongdee, and Kowalewski (2009) ;Haetzer, Schley, Khaligh, and Radetzki (2011) asked students to complete a final project, such as a small embedded operating system along with its performance measurement, based on previous experiments or practice.…”
“…Salminen et al (2011) partitioned the final project of a course on embedded operating systems into several progressive and small sub-projects, such as programming thermometer experiments and small Lego robots. Vanhatupa, Salminen, and J€ arvinen (2010) assigned to students homework that built on exercises carried out in class, such as thermometer programming, Lego robot programming, and acceleration sensor programming. Stollenwerk, Jongdee, and Kowalewski (2009) ;Haetzer, Schley, Khaligh, and Radetzki (2011) asked students to complete a final project, such as a small embedded operating system along with its performance measurement, based on previous experiments or practice.…”
“…The course implementation was described in the previous paper [6]. It is also described in the following as some details have been changed.…”
Section: Course Implementationmentioning
confidence: 99%
“…The guidelines are based on organizing an embedded programming course which was implemented for the second time in spring 2011. The organization and evaluation of the first implementation was discussed in a previous article [6].…”
Embedded programs are controlling a number of devices we use daily. The software of an embedded device is usually tightly coupled with the device hardware, and therefore developing embedded programs is fundamentally different from programming general-purpose computers. In academic education both hardware and software aspects of embedded systems need to be covered. In this paper we provide some general guidelines that can serve as a starting point when designing embedded programming courses. These guidelines are based on our experiences and evaluation of two implementations of an embedded programming course that consists of hands-on assignments and lectures. Furthermore, we discuss about how to improve the course in the future.
“…Many undergraduate programs include artificial intelligence (AI) or embedded systems in their CS curricula [9,10,11,12]. However, the authors could not find a course that would combine both topics.…”
Laboratory work is essential for students in the Science, Technology, Engineering, and Mathematics (STEM) fields. The laboratory work provides the students with practical experience of the theory and has the potential to increase enthusiasm by motivating the students to learn via experimentation. This is an important process for students as the active learning achieves positive educational results and prepares the students for real-world problems in the STEM fields.This paper emphasizes the development of the Artificial Intelligence (AI) laboratory work for a new course in Embedded Artificial Intelligence (EAI). The course and the laboratory work are designed as an upper-level undergraduate elective to develop an AI system to run on an embedded device. It is open to all majors in the STEM fields who meet the prerequisite of a basic programming course and a linear algebra course. After an introduction to embedded programming and sensor interface, students will be introduced to machine learning and AI. During the corresponding lab sessions, the students are given a dataset to apply the theory in a sequential fashion. The laboratories start by employing traditional statistical classification algorithms, such as logistic regression, transitioning towards a deep neural network, such as a convolutional neural network (CNN). The accuracy of each model will be noted for each laboratory, starting with a lower accuracy but smaller model size for the statistical models and culminating with a relatively high accuracy with the CNN.This paper outlines the design of the laboratories for the AI section of the EAI course, as well the feedback received during their development. The research to create and assess the AI exercises was conducted by a senior computer engineering student without any prior experience in AI. Two different forms of learning were taken into consideration: top-down approach where the student begins with a fully functional model and works backwards to understand each step of the processes and a bottom-up approach where the student begins from scratch and implements each component, working towards a fully functionally model. A comparative study of both approaches is presented from the point of view of the student. The assessment also asked the student to rate the assignment topics, to list how many hours were spent per each lab, and to propose suggestions for improvement.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.