Model Based Development for Embedded Systems Training Course
Model-Based Development (MBD) is a software development approach that facilitates faster and more cost-efficient creation of dynamic systems, including control systems, signal processing, and communication systems. It emphasizes graphic modeling over traditional text-based programming.
During this instructor-led live training, participants will learn how to apply MBD methodologies to lower development costs and speed up the time-to-market for their embedded software products.
Upon completion of this training, participants will be able to:
- Choose and effectively use the appropriate tools for implementing MBD.
- Leverage MBD to enable rapid development in the early phases of an embedded software project.
- Accelerate the release of embedded software to the market.
Course Format
- A mix of lectures, discussions, exercises, and extensive hands-on practice.
Course Outline
Introduction to Model-Based Development
Overview of the "system model"
Mathematical modeling approaches
Establishing requirements
Defining the system
Model design
Preparing your MBD toolkit
Model verification and validation
- Simulation tools and practices: Simulink and StateFlow
Engineering safety-critical embedded software
Tools and approaches for application testing
Detecting and mitigating failures
Reusing test suites
Refining algorithms through multi-domain simulation
Serial code generation
- Tools and practices: TargetLink
SCM tools for managing MBD
Utilizing a common design environment across teams
Deploying across multiple processors and hardware types
Conclusion
Requirements
- Programming experience
- General understanding of embedded system development
Target Audience
- Embedded systems engineers
- Developers and programmers
Open Training Courses require 5+ participants.
Model Based Development for Embedded Systems Training Course - Booking
Model Based Development for Embedded Systems Training Course - Enquiry
Model Based Development for Embedded Systems - Consultancy Enquiry
Testimonials (1)
Being able to ask for advanced subjects even if there were not planned initially.
Gabriel Chouinard - Spark Microsystems
Course - FreeRTOS: Programming for Real Time Operating Systems
Upcoming Courses
Related Courses
Advanced Arduino Programming
14 HoursIn this instructor-led, live training in Slovakia, participants will learn how to program the Arduino using advanced techniques as they step through the creation of a simple sensor alert system.
By the end of this training, participants will be able to:
- Understand how Arduino works.
- Dig deep into the main components and functionalities of Arduino.
- Program the Arduino without using the Arduino IDE.
Advanced Embedded Systems Development
35 HoursThis instructor-led, live training in Slovakia (online or onsite) is designed for engineers who wish to learn how to utilize embedded C to program various microcontrollers based on different processor architectures (8051, ARM CORTEX M-3, and ARM9).
Arduino Programming for Beginners
21 HoursIn this instructor-led live training in Slovakia, participants will learn how to program Arduino for real-world usage, such as to control lights, motors and motion detection sensors. This course assumes the use of real hardware components in a live lab environment (not software-simulated hardware).
By the end of this training, participants will be able to:
- Program Arduino to control lights, motors, and other devices.
- Understand Arduino's architecture, including inputs and connectors for add-on devices.
- Add third-party components such as LCDs, accelerometers, gyroscopes, and GPS trackers to extend Arduino's functionality.
- Understand the various options in programming languages, from C to drag-and-drop languages.
- Test, debug, and deploy the Arduino to solve real world problems.
Buildroot: a Firmware Generator for Embedded Systems
7 HoursBuildroot is an open-source initiative comprising scripts that generate a cross-compilation toolchain, a customizable root filesystem image, and a Linux kernel tailored for embedded devices. In this hands-on course, participants will acquire the skills to utilize Buildroot effectively:
- Selecting software packages to include in the root filesystem.
- Adding new packages and modifying existing ones.
- Introducing support for new embedded hardware boards.
Participants will create bootable filesystem images during the course. Remote sessions are conducted using the QEMU emulator, while in-person classes may utilize either QEMU or actual embedded boards selected by the instructor.
For projects with similar objectives, consider the Yocto project and OpenWRT. Refer to these presentations to help determine which build system best suits your specific needs.
Circuits and Electronics Fundamentals
14 HoursThis instructor-led, live training in Slovakia (online or onsite) is designed for engineers and computer scientists who aim to apply circuit and electronics fundamentals to design devices and systems that leverage electrical component properties to enhance hardware functionalities.
Upon completion of this training, participants will be able to:
- Set up and configure the essential tools and software for circuit and circuit board development.
- Grasp the core principles governing circuits and electronics engineering.
- Employ primary electronic components to build efficient computer hardware technologies.
- Optimize electronic devices through the implementation of circuit analysis methods.
- Apply electronics and circuit fundamentals to the development of enterprise applications.
Digital Signal Processing (DSP) Fundamentals
21 HoursThis instructor-led live training in Slovakia (online or onsite) targets engineers and scientists who wish to learn and apply DSP implementations to efficiently handle diverse signal types and achieve better control over multi-channel electronic systems.
By the end of this training, participants will be able to:
- Set up and configure the required software platform and tools for Digital Signal Processing.
- Understand the foundational concepts and principles of DSP and its applications.
- Recognize DSP components and apply them in electronic systems.
- Generate algorithms and operational functions using DSP outcomes.
- Utilize basic features of DSP software platforms and design signal filters.
- Synthesize DSP simulations and implement various filters for DSP.
Electronic Control Unit (ECU) - Practical Vector
28 HoursThis instructor-led, live training in Slovakia (online or onsite) is aimed at intermediate-level automotive engineers and technicians who wish to gain hands-on experience in testing, simulating, and diagnosing ECUs using Vector tools like CANoe and CANape.
By the end of this training, participants will be able to:
- Understand the role and function of ECUs in automotive systems.
- Set up and configure Vector tools such as CANoe and CANape.
- Simulate and test ECU communication on CAN and LIN networks.
- Analyze data and perform diagnostics on ECUs.
- Create test cases and automate testing workflows.
- Calibrate and optimize ECUs using practical approaches.
Electronic Control Unit (ECU) - Theoretical Vector
21 HoursThis instructor-led, live training in Slovakia (online or onsite) targets intermediate-level automotive engineers and embedded systems developers who want to grasp the theoretical foundations of ECUs, with a focus on Vector-based tools and methodologies employed in automotive design and development.
Upon completion of this training, participants will be able to:
- Comprehend the architecture and functionality of ECUs in contemporary vehicles.
- Analyze the communication protocols utilized in ECU development.
- Explore Vector-based tools and their theoretical applications.
- Apply model-based development principles to ECU design.
Efficient microcontroller programming in C
7 HoursThis course explores modern C language dialects (C99, C11, C2x) as applied to embedded systems, providing guidelines for developing efficient and robust code. Practical examples and exercises are implemented using STM32 family microcontrollers.
FreeRTOS: Programming for Real Time Operating Systems
14 HoursIn this instructor-led live training in Slovakia, participants will learn how to code using FreeRTOS as they step through the development of a simple RTOS project using a microcontroller.
By the end of this training, participants will be able to:
- Understand the basic concepts of real-time operating systems.
- Learn the environment of FreeRTOS.
- Learn how to code with FreeRTOS.
- Interface a FreeRTOS application to hardware peripherals.
Introduction to FreeRTOS
7 HoursThis course provides an introduction to RTOS-based software design for embedded systems and IoT. Participants will learn RTOS concepts, synchronization mechanisms, and software design scenarios using RTOS. The exercises are performed using STM32 Nucleo 144 or similar development boards.
Deploying AI on Microcontrollers with TinyML
21 HoursThis instructor-led, live training in Slovakia (online or onsite) is designed for intermediate-level embedded systems engineers and AI developers who want to deploy machine learning models on microcontrollers utilizing TensorFlow Lite and Edge Impulse.
Upon completing this training, participants will be able to:
- Grasp the core principles of TinyML and its advantages for edge AI applications.
- Configure a development environment tailored for TinyML projects.
- Train, optimize, and deploy AI models on low-power microcontrollers.
- Leverage TensorFlow Lite and Edge Impulse to build real-world TinyML solutions.
- Optimize AI models to meet power efficiency and memory constraints.
Serial interfaces in microcontrollers
7 HoursThis course explores widely used serial interfaces in embedded systems, offering practical insights into their implementation. The theoretical content is complemented by hands-on exercises utilizing STM32 microcontrollers.
Advanced USB Device Development and Firmware Integration with STM32CubeIDE
7 HoursDesign and develop USB device firmware on STM32 microcontrollers using STM32CubeIDE. This embedded Systems training explores USB interface fundamentals, device classes, USB descriptors, control interfaces, middleware architecture, and interrupt-driven code structure through hands-on exercises building HID, CDC, and Mass storage devices. Embedded developers gain the practical expertise to integrate USB peripherals into ARM-based firmware projects from prototype to production-ready results.
Yocto Project
28 HoursIn this instructor-led, live training in Slovakia, participants will learn how to create a build system for embedded Linux based on Yocto Project.
By the end of this training, participants will be able to:
- Understand the fundamental concepts behind a Yocto Project build system, including recipes, metadata, and layers.
- Build a Linux image and run it under emulation.
- Save time and energy building embedded Linux systems.