1. Introduction
Recently, the internet of things (IoT) and IoT education have become very important in the field of electrical and computer engineering education. Programming languages such as C and Java are tedious and difficult for undergraduatestudents since students check the coding results by monitors. Therefore, students easy to lose interest in programminglanguage especially for the lower grades of undergraduatestudents. However, Arduino is a good programming language to stimulate students’ interest since it can make interesting things like games [1].
Many pedagogical studies have been carried out to inducecuriosity without losing students’ interest in the programminglanguages [2]-[5]. Particularly, research and education applying Arduino to the curriculum of engineering education are being actively carried out by using Arduino, which provides anintegrated development environment (IDE) [6]-[9]. The goal of the proposed embedded IoT course is to understand the IoT by conducting a project to control the Arduino kit by using a smartphone application via Bluetooth function. Therefore, the measured data from the Arduino kit is sent to the smartphone to display the result.
We encourage students to perform projects that mimic IoT devices using a variety of sensors of the Arduino kit. Thisis more efficient than learning each sensor separately, and itis an effective way of teaching concept of embedded systems.
The remainder of this paper is organized as follows. In Chapter 2, learning materials of the proposed course is described. Chapter 3 describes the course schedule of the proposed course. The methodology assessment of the proposed course is presented in Chapter 4 before the conclusion in Chapter 5.
2. Learning Materials
We assume that smartphone as controller of the IoT device and Arduino kit as an embedded IoT device. The Arduino kit can be controlled by the smartphone applications via Blue tooth function.
(그림 1) 블루투스 기능을 이용한 아두이노 키트와 스마트폰 애플리케이션간의 연결
(Figure 1) Connection of the Arduino kit and smartphone application via Blue tooth function
As shown in Figure 1, a smartphone is connected to the Arduino kit by Bluetooth, and the Arduino kit can be operated and monitored by the smartphone application. The following subsections describe the Arduino kit and the function of the smartphone application.
2.1 Smartphone Application with Bluetooth
This subchapter describes the functions of the smartphoneapplication with Bluetooth function.
As shown in Figure 1, a smartphone is connected to the Arduino kit by Bluetooth, and the Arduino kit can be operated and monitored by the smartphone application. The following subsections describe the Arduino kit and the function of the smartphone application.
(그림 2) 블루투스 기능을 사용하는 스마트 폰 애플리케이션
(Figure 2) Smartphone applications using Blue tooth function
2.2 Arduino Kit
This subchapter describes the sensors and components of Arduino kit. One of the most important parts of the proposed course is to choose the Arduino board and its sensors. However, the several reasons for choosing the Arduino kit are as follows;
- The Arduino kit must have the ability to connect to the smartphone via Bluetooth.
- Various sensors must be attached to the Arduino kit to implement an IoT.
- Omit the sensor connections by using wires to focus on coding. This is because students spent a lot of time to connect the sensor by wires to the Arduino board in the last semester’s class.
Therefore, we chose the Arduino kit with sensors and components as shown in Figure 3.
(그림 3) 다양한 센서들이 장착된 아두이노 키트
(Figure 3) Arduino kit with various sensors
The following Table 1 lists the sensors and components attached to the Arduino kit used in the proposed course. The information of general purpose input/output (GPIO), inter-integrated circuit (I2C), analog to digital conversion (ADC), and serial connection are described in Table 1.
(Table 1) Integrated sensors and components of the Arduino kit
3. Course Schedule
In this chapter, proposed course schedule of the proposedembedded IoT course is described. As shown in Figure 4, the proposed course calendar is mainly divided into Arduino and project lectures. Classes are held for 3 hours each week for 16 weeks. A detailed description of the proposed coursecalendar is given in the next subchapters.
(그림 4) 제안한 과목의 강의계획 일정표
(Figure 4) Schedule of the proposed course
3.1 Arduino Lectures
To teach the function of sensors and component of the Arduino kit efficiently, a teaching method that assumes aspecific scenario [10], [11]. We have assigned Blue tooth classes to more than half of the courses based on feedback from students last semester. In addition, it also has the advantage of being able to shorten lecture time by explaining all the sensors and components individually. The detailed descriptions of each class are described below.
1. Introduction to Arduino and Sketch Concepts: Install the Sketch program and show how to implement the simpleexample code. Also, several example codes are provided to stimulate the students' curiosity.
2. Function / Operators: Students who study in this classhave learned C language and Java as prerequisite courses, so the professor does not have to spend too much time todescribe functions.
3. Ultrasonic Sensor / Buzzer / Light-Emitting Diode (LED): Example codes of sensors are described as therear-detection-function of the vehicle. The functions of the sensors are described as follows.
- Ultrasonic sensor: Measure the distance from the object. The ultrasonic sensor returns the measured distance incm from the object.
- Buzzer: The buzzer rings when the vehicle reaches the object within reference distance.
- LED: Turn on the red LED and the yellow LEDalternately in 1 second intervals when the buzzer rings.
4. Push button / Infrared sensor / Temperature sensor / DC motor- Describe the components using an example of the f anequipped with the temperature and infrared detection function.
- Push button: On/off button of the f an. - Infrared sensor: detect the user every 5 minutes and stop the fan when the user is not detected.
- Temperature sensor: it senses the temperature every 5 minutes.
- DC motor: DC motor is assumed as the motor of the fan. The DC motor rotates when the user is detected and the temperature is more than 24°C.
5. Light sensor / Humidity sensor / FND (seven-segment display) / Liquid crystal display (LCD)
- Describe sensors and components assuming an indoordehumidifier.
- Light sensor: It detects the light in LUX value. - Humidity sensor: It measures humidity.
- FND: Outputs the ON/OFF status of the dehumidifier. - LCD: Displays the measured humidity.
6. Bluetooth
- This step explains the sensor operations by using smartphone applications with Bluetooth function. This is an important part of the teaching concept of IoT withembedded system.
The proposed course reflects the feedback of students whowant to study more time with the Bluetooth function. Sincestudents are learning Bluetooth from the 9th week class, students have plenty of time to apply Bluetooth functions to their projects.
3.2 Embedded IoT Project
The phases of the project are divided into two stages. In the first stage, students perform the project using sensors connected to the Arduino kit. Then Bluetooth function can be applied to the students’ project carried out in the first stage of the 9th week. Detailed descriptions of the projectsection are as follows.
1. Project introduction: Describe the direction and purpose of the project. Moreover, several past projects are introduced.
2. Project preliminary Investigation/ Identification of Ideas: students search for existing projects related to Arduino and IoT systems to get project ideas.
3. Project process - Phase 1: This project phaserecommended that add and modify the ideas of theteams in the various examples of the sensors in the Arduino kit to promote the project.
4. Midterm report submission and presentation: Students demonstrate and present a project for seven weeks.
Through presentations and reports, the professor providesfeedback on the progress of the project.
5. Project process - Phase 2: Add the Bluetooth function to the existing project so that the concept of embedded IoT can be applied to the ongoing project.
6. Final report submission and presentation: Students demonstrate and present their project. We encourage
students to feedback on their difficulties of the project to improve the class in the next semester.
4. Methodology Assessment
In this chapter, the effectiveness of the proposed course is analyzed through the students' response. We conducted asurvey from students in the proposed course to reflect feed backin next semester. The high scores indicate high satisfaction.
4.1 Students’ Interests in Arduino
This subchapter provides students’ interest in Arduino, regardless of their programming skills and exam grades.
(그림 5) 아두이노에 대한 학생들의 관심
(Figure 5) Students’ interest in Arduino
As shown in Figure 5, 60% of the students became interested in Arduino. However, 40% of the students did not change their interest in Arduino programming. This 40% of students feedback that they are not interested in other programming courses. According to the results in Figure 5, we confirmed that students are more interested in Arduino than we expected.
4.2 Students’ Self-Satisfaction of Arduino programming Skills
This subchapter provides students’ self-satisfaction of their programming skills at the end of course, regardless of theiractual programming skills.
(그림 6) Arduino 프로그래밍 기술에 대한 학생들의 자기 만족도
(Figure 6) Students' self-satisfaction of their Arduinoprogramming skills
As shown in Figure 6, 68.4% of students responded that Arduino programming skill is improved and satisfied. However, 31.6% of students responded that their Arduino programming skill is not improved and satisfied. This 31.6 % of the students feedback that one semester was too short to fully understand Arduino programming.
4.3 Students’ Mid-term and Final Exam Score
To confirm the improvement of the students’ Arduinoprogramming skill, the score distribution of the students & rsquo;mid-term and final exams are analyzed in this subchapter. Themidterm and final exams consist of five code interpretation problems and five code writing problems.
As shown in Figure 7, the distribution of midterm scores for students shows that most of the students are in the middleand others are in the rest of the area. However, we expected Normal distribution of the midterm exam scores, since 7-week classes are a short time to understand the embedded IoT with Arduino programming according to student feedback.
However, the average score of students' final exam isincreased compared to score of students' midterm exam as shown in Figure 8. According to the students' feedback andexam score distributions, we found the project and proposed course is very helpful in improving the Arduino programming skills.
(그림 7) 학생들의 중간고사 점수 분포도(Figure 7) Distribution of the students' midtermexam score
(그림 8) 학생들의 기말고사 점수 분포도(Figure 8) Distribution of the students' final exams core
4.4 Students’ Overall Satisfaction
This subchapter provides students’ overall satisfaction of proposed course during the midterm and final exam periods.
As shown in Figure 9, 60% of the students were satisfied, 25% were moderate, and 15% were unsatisfied during themidterm exam period. According to feedbacks from students at the bottom of the self-satisfactions, students were notsatisfied with their programming skills.
(그림 9) 중간고사 기간 동안의 학생들의 전반적인 만족도
(Figure 9) Students' overall satisfaction during themidterm exam period
(그림 10) 학생들의 최종 만족도
(Figure 10) Students' final overall satisfaction
According to students’ responses in Figure 10, 75% of students satisfied the proposed course and 25% of the students were neither satisfied nor dissatisfied. According to students & rsquo; feed backs, 11 weeks of Bluetooth classes have attracted students ' attention and improved the satisfaction. However, none of the students were unsatisfied with the proposed course. None of the students were satisfied with the course and 75% of the students’ satisfaction prove that the proposed course is very effective in teaching IoT to students.
5. Conclusion
In this paper, we proposed a course that effectively teachesembedded IoT by connecting the Arduino kit by smartphone with Bluetooth function. To help students understand Arduino's sensors, they used specific scenarios and conducted IoT projects via Bluetooth connectivity. According to studentsurveys, nearly 60% of students have improved their skills ofusing Arduino kit during the midterm.
According to students’ midterm and final exam scores, the students ' programming skills have been improved by carrying out their project. Moreover, 75% of the students were satisfied with the proposed course. Currently, the authors are studying various teaching methods to increase students’ overallsatisfaction since the authors expect 85% of students to be satisfied with the proposed embedded IoT courses.
For future work, we will design the intensive embedded IoT with Arduino programming courses to reflect the feed backs of students who want to improve their Arduino programming skills.
References
- W. Lee, H. Jung, H. Heo and N. Kim, "Design and Implementation of Interactive Game based on Embedded System," Journal of Internet Computing and Services, Vol. 18, No. 4, pp. 43-50, 2017. https://doi.org/10.7472/jksii.2017.18.4.4
- S. H. Kim and J. W. Jeon, "Introduction for Freshmen to Embedded Systems Using LEGO Mindstorms," in IEEE Transactions on Education, Vol. 52, No. 1, pp. 99-108, Feb. 2009. https://doi.org/10.1109/TE.2008.919809
- S. Hussmann and D. Jensen, "Crazy Car Race Contest: Multicourse Design Curricula in Embedded System Design," in IEEE Transactions on Education, Vol. 50, No. 1, pp. 61-67, Feb. 2007. https://doi.org/10.1109/TE.2006.888906
- M. Kim and Y. Bae, "Development of a Smart Education Model for Field Application of Smart Education," Journal of Internet Computing and Services, Vol. 13, No. 5, pp. 77-92, 2012. https://doi.org/10.7472/jksii.2012.13.5.77
- Y. Gim, M. Chung and J. Kim, "A Study on the Actual Condition and Utilization Plan of Smart Devices for Educational Purpose," Journal of Internet Computing and Services, Vol. 14, No. 3, pp. 47-56, 2013. https://doi.org/10.7472/jksii.2013.14.3.47
- M. A. Rubio et. al., "Using arduino to enhance computer programming courses in science and engineering," Proc. of EDULEARN13 Conference, pp. 5127-5133, 2013. https://pdfs.semanticscholar.org/c722/2f0f4b60735ac6 2bafd9fe17312657983526.pdf
- P. Bender, et. al., "Arduino activities for computer science undergraduate curriculum," Journal of Computing Sciences in Colleges, Vol. 28, No. 4, pp. 49-59, 2013. https://dl.acm.org/citation.cfm?id=2458547
- A. Araújo, D. Portugal, M. S. Couceiro and R. P. Rocha, "Integrating Arduino-based educational mobile robots in ROS," 2013 13th International Conference on Autonomous Robot Systems, Lisbon, pp. 1-6, 2013. https://doi.org/10.1109/Robotica.2013.6623520
- R. Grover, S. Krishnan, T. Shoup and M. Khanbaghi, "A competition-based approach for undergraduate mechatronics education using the arduino platform," Fourth Interdisciplinary Engineering Design Education Conference, Santa Clara, CA, pp. 78-83, 2014. https://doi.org/10.1109/IEDEC.2014.6784685
- R. H. Chu, D. D.-C. Lu, and S. Sathiakumar, "Project-based lab teaching for power electronics and drives," IEEE Transaction on Education, Vol. 51, No. 1, pp. 108-113, Feb. 2008. https://doi.org/10.1109/TE.2007.906607
- F. Martínez, L. C. Herrero, and S. de Pablo, "Projectbased learning and rubrics in the teaching of power supplies and photovoltaic electricity," IEEE Transactions on Education, Vol. 54, No. 1, pp. 87-96, Feb. 2011. https://doi.org/10.1109/TE.2010.2044506