Technical Articles

Turning Engineering and Science Students into Active Learners with Gap Analysis and Model-Based Design

By Marc Garcia, Lycée Louis Armand, Nogent Sur Marne


As a secondary school engineering and science teacher, my goal is to equip students with the knowledge and skills they will need for their post-secondary education. While our curriculum at Lycée Louis Armand was developed for French secondary school students, it is broadly applicable to engineering and science students around the world. It is based on three guiding principles. First, recognizing the multidisciplinary nature of engineering today, we assign coursework that requires students to learn, integrate, and apply knowledge of disparate domains, including structural mechanics, analog and digital electronics, thermodynamics, and robotics. Second, we introduce students to software tools that they will use in their post-secondary studies and in their careers. Third, we turn students into active learners by having them complete engaging hands-on projects.

Working in teams of three to five, students use Model-Based Design with MATLAB® and Simulink® to model, simulate, and implement real systems using an Arduino® or Raspberry Pi™ processor and repurposed hardware. Past projects have included a balloon for aerial thermography, an energy-neutral tramway shelter, a holonomic robot, and an irrigation system controlled by an autonomous weather station.

A key benefit of using MATLAB and Simulink is that students remain in the same software environment during all phases of their project, which reduces the time spent learning multiple software tools. In addition, the students realize the importance of mathematics and physics to engineering. With MATLAB and Simulink we can break down the barriers between these disciplines. Further, the 90% of our students who go on to study engineering or computer science at the university level can continue to use these same tools.

Gap Analysis with Model-Based Design

In the past, we focused on getting students simply to understand the choices made by engineers and designers rather than expecting them to make those choices themselves. The students would study an existing system by measuring and observing its physical properties. Because this way of working was too far removed from the way engineers actually build new products, we began looking for design challenges that the students could tackle using real systems.

The workflow is based on the gap analysis teaching technique for science, technology, engineering, and mathematics (STEM) programs. Adopted by French high schools following secondary school reforms of 2011, this technique involves analyzing gaps between the requirements describing a system, a system model, and the actual system (Figure 1).

Figure 1. The gap analysis technique, which investigates differences between requirements, a system model, and a real system.

Figure 1. The gap analysis technique, which investigates differences between requirements, a system model, and a real system.

In the first phase of this workflow, the students work on modeling the system. They start with Simulink and Simscape™ system models created by the teachers. These models incorporate various physical components, including electronic, mechanical, and pneumatic subsystems.

Students perform experiments on the real system to measure physical properties such as motor speeds, voltages, and forces. They then conduct their first gap analysis by comparing the values they measured with the values defined in the initial model. After identifying the root cause of any differences between the model and the measured results, they refine the model iteratively until the difference between the model and the real system is within 5% to 10%.

In the next phase, the students simulate the model and conduct the second gap analysis, comparing the model’s performance against the specifications for the design. Students explore simulation results using Simulink Scope blocks and the Simulink Data Inspector, and use the results to determine what changes or enhancements to the system may be required to meet the specified constraints.

In the final phase, the students develop and refine a working prototype using Simulink, Stateflow®, and Arduino, Rasperry Pi, or similar hardware. They debug and verify their designs by using Simulink external mode to connect their Simulink block diagram to the application running the model on the target hardware. This setup speeds prototype iterations and enables the students to perform the final gap analysis: comparing system performance to the defined specifications.

Project Case Study: Building an Automated Waxing Robot

Last year, three of our students completed a final-year project in which they converted an electric lawn mower robot into a waxing robot to be used on the school patio floor. As with all the final projects, the students used Model-Based Design and the gap analysis workflow to model, simulate, implement, and refine their solution.

For the waxing robot project, we replaced the mower’s control card with an Arduino Mega board for the students to program using Simulink and Stateflow. We also provided a schematic of the existing robot along with its motor and battery characteristics. Finally, we gave the students a list of expected outcomes and constraints, including the following:

  • The robot must use two lead-gel batteries to power five identical DC motors, two for propulsion and three for waxing (Figure 2).
  • It must be capable of waxing a 250 m2 area with a battery life of at least three hours.
  • To remain within patio boundaries and avoid obstacles, the robot’s controller must process information from multiple sensors, including four bump sensors located at its front and rear, a steering compass, and sensors that detect a buried electric wire used to define out-of-bounds areas such as the pond and flower garden.
  • The robot must monitor temperature and battery charge sensors to ensure safe and reliable operation.
  • The robot must both operate autonomously and be directly controllable via a remote interface.
Figure 2. Waxing robot components and circuits.

Figure 2. Waxing robot components and circuits.

Working under the guidance of two teachers, the students developed a functional specification. They then modeled the robot, including its propulsion and waxing motors and transmission, in Simulink and Simscape. After measuring the mower’s mechanical and electrical characteristics, such as voltages, currents, and linear speed, they performed a gap analysis, comparing the model with the measurements obtained from the actual system. Based on this analysis they updated the model to improve its accuracy.

Next, the students developed a model and a state diagram of the control system using Simulink and Stateflow (Figure 3). This control system receives inputs from the robot’s various sensors and the remote control interface and actuates the robot’s motors and steering mechanisms in accordance with the specified constraints. The group ran simulations to debug their controller and ensure that it fulfilled the requirements in the functional specification.

Figure 3. The complete Simulink model and the Stateflow chart of the robot’s controller.

Figure 3. The complete Simulink model and the Stateflow chart of the robot’s controller.

Using the Simulink Support Package for Arduino Hardware, the group automatically downloaded their control algorithm onto the modified robot and performed real-world tests on the school patio (Figure 4). They debugged and fined-tuned the control design to improve performance.

To complete the tests (manual operations), the students used blocks from the Instrument Control Toolbox™ block library, which enable a very short response time and smooth control of the robot through a joystick (Figure 5). Finally, the complete prototype waxing robot performed the expected behavior and objectives described in the specifications (Figure 6).

Figure 4.Examples of Arduino Blocks for real-world tests.

Figure 4.Examples of Arduino Blocks for real-world tests.

Figure 5: Control of the robot through a joystick.

Figure 5: Control of the robot through a joystick.

Benefits of Teaching with Gap Analysis and Model-Based Design

Before we began teaching using the gap analysis technique, our students found certain engineering concepts difficult to grasp. For example, it was difficult for them to understand what is involved in tuning a proportional-integral (PI) control loop because the systems they worked with were already optimized. Now, students have a much deeper appreciation of how PI parameters affect system response because they go through the exercise of optimizing these parameters themselves.

Model-Based Design with MATLAB and Simulink enabled the students to model, prototype, tune, observe, and optimize systems on meaningful projects. Because they were active participants in every phase of their project, they got a real sense of what an engineering job is like. The projects also exposed the students to engineering activities that span multiple disciplines, breaking down the artificial barriers that are too often erected between subjects such as math and physics.

Every year we review the hands-on projects and look for ways to accommodate new technologies, evolving student interests, and shifting educational guidelines. For next year’s class, we plan to challenge our students with the design of new systems, including one that performs remote monitoring and analysis of bridges in earthquake zones, another that uses harmonic filters to analyze sound pollution, and a third, based on home rowing exercise equipment, that provides muscular rehabilitation and progress monitoring for physical therapy patients.

About the Author

Marc Garcia is a teacher of engineering, science, and technology at Lycée Louis Armand (Nogent Sur Marne). He holds a degree in engineering (IUP G2I) from the University of Bordeaux. He has been teaching engineering science to high school students since 1997.

Published 2017 - 93084v00