Skip to main content
Automated and Continuous Hardware-in-the-Loop Testing search search close

Overview

Hardware-in-the-loop (HIL) testing enables development and testing organizations to deliver high-quality embedded controllers safely, quickly, and cost-effectively.

Learn what it takes to set up a HIL test system and discover unique advantages of adopting Speedgoat and MathWorks’ unified solution. Learn about high-performance multicore, multi-chassis, and FPGA-enabled systems. We’ll provide insight into how you can use MATLAB and Simulink to create real-time digital twins and thoroughly test controllers. We’ll show how to optimize your HIL investments and further adopt HIL beyond integration and testing.

Highlights

  • Deep dive into software and hardware HIL solutions by MathWorks and Speedgoat
  • Build scalable, hi-fidelity HIL systems with re-configurable I/O and Simulink programmable FPGAs 
  • Perform interactive and automated HIL experiments with Simulink and MATLAB
  • Run regression and automated tests using Simulink Test or using the ASAM XIL interface 
  • Implement continuous integration HIL testing pipelines
  • Use HIL to expedite innovation in the early stages of development

Video Transcript
 

Hello everyone, and thanks for joining this webinar!

I am Daniel Fonte and I work as an Application Engineer at Speedgoat.

In today’s webinar, I will talk about hardware-in-the-loop testing, and in particular about automated and continuous testing.

When we work with engineers in this field, we tend to get three main questions about Hardware-in-the-Loop, or just HIL, for short.  

And I am going to use those to structure today’s session:  For starters,   the first questions inevitably are: What is HIL? Why is it required? How does it work? Why should I adopt it?  I’ll address these in part 1.  

The natural question that follows is:  How do you support HIL testing?  So, in part 2, I’ll introduce you to the Speedgoat and MathWorks HIL solution and talk about key HW and SW capabilities.

The last question is typically brought by experienced HIL teams who are looking into maximizing their investment.

So, in the third and last part of the webinar, we will discover ways of boosting and optimizing HIL use.

So, first things first,

Let’s make sure we’re all on the same page with respect to what HIL means and what are its benefits

HIL testing is a key part of a testing workflow to validate control systems.  

The term hardware-in-the-loop makes us think there’s plenty of hardware involved, but in reality, it’s not.   It’s more that test engineer in a desk running functional tests to make sure the controller behaves correctly.

So, in essence, HIL it’s about taking a real system, such as this aircraft engine, or robotic arm, and create a virtual copy of it - often called a digital twin.  

So, hardware gets represented by a model of its own running on a real-time capable simulator.  

At this point, you may already guess why real-time behavior is key. You just want your virtual aircraft to behave as the real one, when you are testing safety critical flight controls.  

The controller hardware that you are aiming to test is actually connected to a HIL simulator, represented by those two racks on the screen.  But let’s start with some of the reasons why you would want to do this.

Let’s say your team is responsible for testing the electric drive controller for a new electric car powertrain and the first traction inverter controller boards have just been made available for testing.

For many teams, the next logic step is connecting these control units to the physical plant, like a real power inverter and electric motor.  

But this may neither be the smartest nor the safest thing to do.  

When energized, these are dangerous systems, and you might not want to mess around with early-stage controllers.  

So, it makes sense to minimize the risk of damaging equipment by testing your controller with a virtual HIL setup, first.  

Getting time with a dyno setup or power lab might also not be an easy thing to do.   So, every time you offload that time to a HIL setup, you are benefiting in terms of time and costs.

Finally, it’s rare that everything lines up the way it was planned in the initial setup.  HIL testing lets you be less dependent on hardware lead times and test faster.

For all these reasons, many engineering teams have been applying HIL testing to vet embedded controllers before testing with the real system.

But what exactly do you need to implement a HIL system?

There are typically three main components:  First, your system under test. This includes the production controller that requires thorough testing, and additional real components like domain controllers, sensors, and actuators.

Second: an HIL test bench, including a real-time simulator where your run a digital twin of the plant, together with emulated plant components and I/O modules supporting data acquisition, signal conditioning and communication with the system under test.

Third, a workstation, running application software that supports setup and operation of the HIL test bench.

Establishing such a HIL setup won’t be a trivial thing to do, though.

 First, not every organization has the know-how to build their own HIL systems.  

For those who do, we have seen those trivialities like implementing protocols and interfaces may introduce bottlenecks.  

Sometimes, connecting to third-party software and hardware may result into huge integration efforts.  

Most likely, control design team already follows model-based engineering workflows and may be already using MATLAB and Simulink.  

So, you will need a flexible and integrated solution that can support you with these.

Speedgoat test systems together with MATLAB and Simulink, from MathWorks, form the most powerful and unified test platform.

Let’s look into key benefits of this solution in part 2 of our webinar.

First and foremost, you’ll work in one unified environment.  

Software and hardware are designed for one another, shielding you from interoperability issues. You operate your HIL setup from the same environment where you design controls and automate your tests. The environment is: MATLAB and Simulink.

Under the hood, the two main components,

Simulink Real-Time and Speedgoat hardware, work hand in hand.

Let’s demonstrate this with a simple example.

Let’s suppose you have been working on a novel cruise control function using this virtual vehicle model in Simulink.  

The first embedded controller HW is available for testing, and you would like to continue using this model for HIL testing of this function.  

With Simulink Real-time and Speedgoat you can do that by staying in your MATLAB and Simulink and without having to learn additional tools.  

You parametrize your model for real-time execution, select the appropriate Speedgoat simulator and deploy your application to run on hardware, directly from Simulink.  

Implementing connectivity with your controller hardware only takes a few clicks.   You simply add the required I/O and protocol blocks.    

Switching back and forth between desktop and real-time simulation is also very simple.  

For instance, here we used system variants to quickly switch between different testing scenarios.    

Simulink isn’t only your deployment environment; it is also your hub for real-time testing using the same logging and instrumentations capabilities you were already using for desktop simulation.

Many of our customers like AGCO Fendt, who has been using our solutions to perform automated HIL testing of tractor controllers, consider this unified experience as one of the most important enablers for their success.

And this is the result of a long-standing collaboration between Speedgoat and MathWork.

Our teams have completely synchronized development and testing pipelines, so you won’t experience any version lag or incompatibility.  And we aim at offering you the best possible customer experience with fully coordinated customer services.

Finally, we provide you with a variety of services that help protecting your investment, including:   Engineering services that help you with the integration of complex and custom HIL systems   Training and consulting services that make sure your team can achieve results faster

As well as hardware repair and software maintenance to help you minimize and make sure your setup is always up to date and running the latest features.

Let’s look a bit closer into the solution and check some hardware enablers.

Starting with the HIL simulator, which is a core component.

Benefit from a wide range of real-time target computers that can operate as HIL simulators.

The mainstay for HIL testing is the Performance machine. It’s the most scalable and performant system.   It is suited for desktop use, but also suited for rack-mounting.

The Mobile, Baseline and Unit machines are smaller and ruggedized, making a better fit in HIL applications that require more portability and less I/O channels.  

Speedgoat target computers come with:  

Multicore processors, supporting concurrent execution, and co-simulation with FPGAs.  

They run a QNX-based real-time operation system, that supports certification with high integrity safety standard.  

There’s also extensive onboard connectivity, including a varied set of Ethernet-based protocols, serial, and video interfaces.    

The PCI Express architecture serves as the backbone for I/O connectivity, with lowest latencies and support for direct memory access and FPGA-based I/O.    

You can also update and scale your system at any time with I/O expansion units or by implementing distributed simulation architectures as we will be seeing, later on.

Independent of the standard configurations, our aim is to satisfy your needs. So, ‘Yes’ customizing is totally an option!

Let’s continue with the topic of I/O connectivity and communication protocols.

We believe connectivity should not be a hurdle for you.

Your focus should be on testing and not being constrained by I/O and protocols.

A key enabler for this is the stress-free I/O configuration.    

I/O and hardware of any kind is represented by Simulink blocks.  

Placing them in your model and configuring them is very simple.    

And compatibility with Simulink library blocks is always guaranteed.

Documentation and examples are accessible with a few clicks and directly integrated in your MATLAB documentation.

There are three types of Speedgoat I/O modules:

fixed functionality I/O, Configurable I/O, and Simulink programmable FPGAs.

I/O modules support most industrial communication protocols for buses and networks.

I will give you a few seconds to spot the communication protocols that matter to you.

I/O solutions also support emulation of various plant components such as battery cells using the battery cell emulation units.    

You can stack several of these modules to build a HIL simulator of a full battery pack, and complement it with failure simulation and temperature cell units.

So, you can simulate battery packs down to the cell level and employ that for example to test your battery management system.

If you need to implement complex, multi-bus gateways and restbus simulations with virtual ECUs, you can use the Automotive Bus Simulation I/O module, which covers all relevant automotive buses, and it’s fully compliant with AUTOSAR requirements.

Perhaps, you would like to inject sensor data - either simulated or logged physical signals - into lidar, radar and camera-based sensors, or validate perception functions.  

Not a problem. You can combine Simulink and Speedgoat HIL systems to generate raw sensor data or object lists directly from synthetic scenarios.

And then stream this data over sensor and controller specific interfaces, for instance using vision and Ethernet-based I/O modules.

We can also support you with the virtual commissioning of large-scale plants like industrial installations, wind farms or power grids.  

For instance, the Industrial Ethernet multi-node simulators as the ones shown here in the picture, let you virtualize up 32 nodes, like PROFINET slave devices.

As your HIL configuration grows in complexity, there are additional things you’ll need to consider.  For instance, how to synchronize data coming from different sources or, how to expand your HIL system so it gives you the right amount of computing power.

Signal and time-based synchronization solutions support you with just that.

For instance, if absolute time is not a requirement and you are mainly concerned about latency, you can share clock and trigger signals across nodes to:

synchronize I/O channels, or multiple I/O modules and achieve simultaneous data acquisition,  synchronize your Simulink application with I/O or,

distribute computational load across several simulator nodes.

For instance, in this example of an automotive HIL setup the various simulators are interconnected through shared memory I/O modules.

Shared memory lets you synchronize execution across nodes and exchange data with very low latencies.

You may need to synchronize HIL simulators over long distances, or time stamp all your data with an absolute time reference.  

For these situations, time-based solutions make a much better fit.  For instance, you can use

Precision Time Protocol (PTP) to synchronize clocks of several nodes within the same network.  

Or, use precision timing I/O modules to align system clocks, in the same or multiple sites, using GNSS timing sources.  You can also synchronize systems using specific protocols, like EtherCAT or PROFINET.

Flanders Make used this very solution to orchestrate control of five electric motors in their multi-load drive train test bench.  

The test bench is used by OEMs to test heavy duty drivetrain components in realistic conditions, without having to integrate them in a vehicle or machine.

High-speed I/O may be a requirement. Let’s just use the electric drive as an example.    

The HIL system has to decode PWM signals and generate phase currents at frequencies that can easily reach hundreds of kHz.  

To correctly capture and emulate those, your simulation needs to run around two orders of magnitude faster. This requires you to operate in the MHz range, which is beyond what CPUs can handle.

We’ll need a different approach if we want to hit these high frequencies.

If you require fast I/O or need a certain level of flexibility, you will like configurable I/O modules and Simulink Programmable FPGAs.

You can run a variety of high-speed protocols and I/O like PWM, I 2C, and encoder interfaces on Configurable I/O modules.

Configuration files allow you to set the I/O capabilities of the I/O module.

Configuration in Simulink is seamless. Simulink driver blocks represent the I/O functionality, so it’s basically the same as using a regular I/O module.  You can check I/O functionalities and pin mappings directly from the driver block, and you can reconfigure I/O capabilities at any time. Thereby you can adapt to new needs and optimize your investment. You can use the same hardware for different projects.

But sometimes you will need to accelerate more than just the I/O and protocol.

Perhaps, part of your plant simulation is also required to run at very high rates.

This is possible using our Simulink Programmable FPGAs.

Programmable FPGAs allow you to outsource both, parts of your plant and signal I/O to the FPGA using the HDL Coder workflow from within Simulink.  

Speedgoat provides you with ready-to-program  I/O and protocol driver blocks, and you can get started with hardware proven examples.

So, it doesn’t necessarily become more complicated.

Ultimately, you have more flexibility for your advanced use-cases.

Several FPGA IO modules allow using both workflows.

So, it’s possible to start simple with the configurable workflow and evolve to the programmable one as you go.

Many of our customers are utilizing this technology to run high-fidelity power electronics at high sample rates.  

This is the case of Leonardo DRS, who has been successfully running large-scale, FPGA-based power electronic HIL testing to validate shipboard controller systems.

Implementing a HIL system can be very complex and time-consuming for you, but it doesn’t have to.

We provide you with all the specific expertise so that you can focus on your core task, the testing and validation of control systems.

With the help of our project management and productions teams we can provide you with fully customized rack systems including: rack-mounted HIL simulators, and easy access to all signals via break-out and I/O panels.  

We’ll integrate power supplies, actuators, inverters, and any kind of power electronics, as well as project-specific PCBs for signal routing and conditioning.

Maybe you are planning to test electrical equipment via a high-voltage interface, like a power amplifier.  Speedgoat can support you in building Power HIL systems, including selection of suitable power amplifiers according to your voltage, power, and bandwidth needs.

We will also provide you with a turnkey solution together with our partners.

Every rack system undergoes complete testing according to your specifications and if required, using full-scale Factory Acceptance Tests.  

And we’ll collaborate with you closely throughout the project, so that you experience it as a true plug and play solution.

Let’s continue the journey and highlight software enablers for your HIL testing.

We have seen how simple it is to deploy HIL applications and connect to hardware.

I would now like to show how you can run real-time experiments from MATLAB and Simulink.

In Simulink, logging real-time data is very simple.  

You simply click in the signal and tag it for logging.  

This lets you visualize data in Simulation Data Inspector, as your application runs, or record it for offline data analysis.  

You can also use Scope blocks, for data visualization, run signals statistics or set trigger events to analyze signal transitions.  

Most Simulink visualization tools support real-time executions, like for example the constellation diagram or the bird’s eye scope.    

Creating and managing stimuli for your tests is also easy, for instance using the Signal Editor block.  You can create and switch between different stimuli scenarios, import and edit signal data via a dedicated user interface.  

Online tuning of parameters is a key requirement for HIL testing. And Simulink Real-Time allows you to do this in manifold ways, for instance, using Simulink Dashboard components,  from Simulink model editor,  or directly using block mask.    

You can also update several parameters simultaneously with batch mode, which allows you to freeze and unfreeze parameter uploading to the HIL simulator.

Simulink experience is great, but it may not be justified both from a cost and benefit perspective.  

Testing teams are not usually involved in the design of the digital twin.  

And you may actually prefer to run tests through user interfaces or test scripts.  

The solution was developed with these needs in mind, and the powerful Simulink instrumentation capabilities we have seen so far, are also available from your MATLAB.

Let’s see.

You can automate many steps such as setting up the HIL or you script test tasks to run them in batch operation.  

Because Simulink and MATLAB are so closely connected., you can quickly script actions to build, deploy and control execution of the real time application from MATLAB.  

The powerful MATLAB language offers many features that make coding and interfacing with your application easy.  

Live scripts, for example, allow you to have both formatted text and executable code blocks. This bundles code functionality and its documentation.

This can boost efficiency, especially when collaborating with others.  

You can also open access to your real-time application for non-Simulink users with custom apps created in MATLAB App Designer.  

Here we see an example of an app we created to instrument a manipulator robot.  

And another example that was created to support HIL testing of a large power electronics setup.  

With the help of MATLAB Compiler, you can pack these apps as standalone desktop apps that you share royalty-free with your test engineers.

Alternatively, you can package your apps as interactive web apps and run them directly from the browser without installing any additional software.

Schindler Elevator Corporation has been applying these deployment capabilities to enable virtual testing of their embedded software.  

And they have been suing web apps to support end users with:  configuring elevator systems,  defining test scenarios,  as well as generating reports automatically.

In MathWorks and Speedgoat’s unified solution, you benefit from an incomparable integration, not only with MATLAB and Simulink, but to a manifold of additional MathWorks products that can help with the creation and deployment of hi-fidelity digital twins.

For instance, Aerospace-focused products like Aerospace Blockset and UAV toolbox, provide you with ready to simulate reference examples of aircrafts, spacecraft platforms as well as UAVs.  

Blocksets include vehicle dynamics, flight environment models, pilot behavior, among many others.

These tools also support you with running complex 3D simulations and qualifying your embedded software, as shown in our most recent Aerospace webinar, where my colleague Yves demonstrated flight controller HIL setup that can be used to support qualification against key aerospace industry standards.  

As a reminder, previous Speedgoat webinars recordings are available in Speedgoat Knowledge Center.

Automotive focused toolboxes like Powertrain Blockset, Vehicle Dynamics Blockset and Simscape, give you quick access to customizable and HIL-ready examples of conventional and electric powertrains.    

The built-in libraries provide easy-to-use Simulink blocks, including batteries, electric drives, and electric motor controllers.

And configuration tools that help you with assembling full virtual vehicle models.

Virtual vehicle models can easily be integrated with 3D simulation environments and Speedgoat real-time hardware, as outlined in many of our reference examples and webinars

For modeling multi-domain physical systems, you can leverage Simscape.  Simscape offers optimized solvers for real-time simulation and is therefore suited for HIL testing.  

The tool also allows you to automatically create models from CAD assemblies, which greatly simplifies the creation of digital twins.

Here’s another customer example, this time by Volvo, who has combined Simscape products and Simulink Real-Time to create human-in-the-loop simulators that expedite controller design and testing.

Simscape electrical and HDL Coder have been supporting many of our customers working within power electronics and power systems.

These are also teams with whom we maintain a very close collaboration.

For instance, Simscape Electrical currently ships with 50+ examples that are compatible and fully tested with Speedgoat Hardware.

We also see teams increasingly adopting data-driven techniques to design digital twins.  

For example, you can use curve fitting toolbox or Simulink Design Optimization to explore relationships among experimental data and automatically fine tune digital twin parameters.

You can also train surrogate models, for instance using Reinforcement Learning and Predictive Maintenance Toolbox, and deploy them as real-time agents to run on Speedgoat machines.

Automating tests using scripting can be of great help.  

In many situations, you will need tools that support you with the creation and management of test cases, trace tests to requirements and automate execution of test campaigns.  

Simulink Test is a great building block within the MathWorks ecosystem, that can help you this.

Simulink Test lets you create test harnesses.  

These are separate models that isolate the component under test and assess its performance by inserting stimuli and verifying the outputs.  

You can do this using the sequence editor block in Simulink, which lets you define and modify test sequences in a graphical way.  But you can also define your test data programmatically, using MATLAB scripts or Excel, or create test automat

ically from requirements that are defined with models, using Simulink Design Verifier.   With Test Manager from Simulink Test, You can:  easily create temporal assessments with precise semantics in a natural language, you can create tests based on requirements, and manage tests for all stages of development.  

For instance, to create an HIL testing campaign you can simply make a copy of your desktop simulation tests and convert them for real-time execution.  

So, real-time test campaigns can be triggered with few clicks.  

The assertion of results is fast and easy using inbuilt visualization tools and you can automatically generate test reports and share with stakeholders.

Let me mention again Schindler who also has successfully employed Simulink Test to automate HIL testing of their embedded controllers.  

Their HIL system simulates the entire test tower and elevator components, something they call ‘tower in a box’.  

The Tower Box concept is currently used worldwide, in all Schindler's test facilities, and a complete software release test takes now 1 night, instead of 4 weeks.

To finalize on the software enablers, allow me to talk about the open and flexible platform.

For instance, Simulink Real-Time ASAM XIL API allows you to interface your Speedgoat HIL simulator with the XIL test automation tool of your preference.  

This lets you build flexible HIL systems and reuse test campaigns and available in-house know-how.   Here, I will show you the integration with ECU Test form Tracetronic, a test automation tool widespread in the automotive industry.

You can also interface your HIL system from external programming environments.  So, if your team is using a different programming language, you can spend more time in automating your testing and less time recoding in MATLAB.  

For instance, in this video I show a set of Python tasks that automate the process of building, downloading, and running a real-time application on a Speedgoat target, . all without having to start a desktop session of MATLAB.

You can also enhance your digital twin capabilities by integrating physical model components provided by third-party vendors, via Functional Mockup Units or dedicated third-party vendor APIs.  Here just a few examples of tools frequently used by our customers.

Before we wrap up our webinar, I would like to spend some time talking about how you can take the best out of your HIL.  After all, adopting HIL it’s going to be an important decision for your organization and it’s important that you think how to best leverage your investment.

Also, if you consider scaling-up HIL adoption you will need to consider additional challenges.

For instance, we see that many groups are scaling up from utilizing a few HIL systems to large HIL farms that are spread over several locations.  With that comes the need of coordinating larger teams and handling many HIL system variants.  

HIL utilization is also different, with software and testing teams accessing HIL resources, remotely.    

Systems are also getting more complex with more strict requirements, for instance in the area of power efficiency and safety.  So, HIL installations are being adapted to reflect stricter traceability and certification needs.    

Finally, software quality and software lead times are defining how many companies succeed in the market.  This translates into teams trying to boost HIL testing productivity, with more automation and systems operating 24/7.  

So, we see that the way HIL systems are commissioned, and controllers are tested is changing.    

A trend that we see in the field, is teams combining the strengths of model-based design with agile software development approaches, like continuous integration, and transferring these techniques to the HIL testing domain.

So, let’s check continuous integration and how it can help with these challenges?

Continuous integration, or CI for short, automates building and testing of software.    

A lot of times a CI workflow starts in your machine, as you are using MATLAB and Simulink to develop controller software, test cases or plant models.    

As soon as you commit or push your changes to source control that will kick off a continuous integration job on a CI server that runs a batch of tests that qualify your contribution to the project, and automatically creates test reports to tell you what failed and all the information you need to fix eventual issues.  

You’ll fix the issue, re-commit the changes and that cycle will continue.   So, this makes controller software development and testing iterations a lot faster and allows you to kill bugs right when they get created.  

So, we see CI can help with many of the challenges mentioned before with clear benefits: 

Repeatability is a huge one. Everybody as a different setup on his one machine. CI allows you centralizing the testing and provides you with consistent and repeatable environment.    Quality, as you're continuously testing latest changes.    

You're also improving the speed at which you develop, by testing early and testing often. And nothing is left behind. If you forgot to test locally, the CI takes care of it.    

Collaboration is another one. The earlier you identify integration issues, the less expensive they are to fix.    

And finally, you're creating a trace-ready system so that, when you do find an issue, you know where it comes from, who introduce it and how long it was present on the design. All gets documented and tracked. Something that is critically important as your organization scales or as your applications become mission-ready or safety-critical.

The good news is that MATLAB and Simulink can help with many of the CI tasks at hand.    For instance, you can use source control within your projects.    

Quickly track, compare, and qualify changes, and quickly visualize and report results of your automated testing.    

You also benefit from off-the-shelf integration with the main CI platforms like Jenkins, Gitlab or Azure Devops, allowing you to quickly implement cloud and on-premise CI severs.  

And the bets of it, all can be orchestrated to work with hardware and complement your HIL testing workflows.

Allow me to illustrate with a simple example.

Let’s start by taking the development and testing repository from GitHub. I am going to clone it and open it right from MATLAB. You see that the work environment is structured as a Simulink project.  And reference models are used to ease collaboration between development and HIL engineering teams.  

The testing team is also contributing to this project with the definition of baseline and requirements-based tests defined in Simulink, as well with the maintenance of the CI pipelines.    

Enabling a CI workflow on the repository is going to be very simple. You go to GitHub actions tab and add a new workflow. Workflows are defined using .yml files and GitHub provides you with many templates to get started.  

In this case the project already contains a CI workflow created by the testing team. You see the workflow is configured to run on every push request. And it contains a CI job that runs on a self-hosted runner. This runner is configured to run on a local Windows CI server that connects to a real-time HIL HW setup. But you can also create Linux-based CI servers.  

Regardless of your choice, the tool guides you through all the configuration steps, so creating self-hosted runners is pretty simple. Back to the definition file now. The CI job is completed with two additional steps: running automated HIL tests, and the generation of a test report. MATLAB integration lets GitHub automatically recognize MATLAB unit tests or Simulink tests.  But you can also call MATLAB scripts, which is what it’s done here to further automate the creation and share of test reports.  

Let’s see this CI workflow in action from the perspective of the controller developer. Previous test runs determined that the control design should be improved with respect to some initialization issues. But let’s spice things a bit and imagine a situation where the developer introduces a fault in the design, for instance by inadvertently changing the Proportional gain of this PI controller. This is expected to change controller performances. As soon as the developer pushes these changes to the repo you see the CI pipeline kicks in.  

And the different CI pipeline tasks are rolled out on the server such as, downloading the repository project, and running real-time HIL tests. After a while, the CI job fails, which is what we expected. You see you can directly inspect results and logs in GitHub, but these might not the most ideal way of working and debug this issue. In this case, the CI was configured to notify the developer in Microsoft Teams and by email, in case the CI pipeline fail. In addition, Simulink Test reports have been attached to facilitate debugging. Reports show an overshoot condition which came a bit as a surprise to the developer. After all the changes he did were not suppose to have a direct impact on the controller performance.

But by using Simulink compare, the developer was able to quickly identify the involuntary change on the PI gain.

After correcting and pushing the fix to the repo, the CI pipeline passed with no flags.

In this simple example, I have shown you how the controller developer perspective.    But you can imagine you can adopt similar CI workflows on HIL design and HIL testing development branches.    

And automatically merge qualified project changes to a master development branch.  Where additional CI test pipelines run based on schedules, for instance, overnight and on more complex HIL setups.  So, tests can happen 24/7 on your HILs, without manual intervention or selection of what should be running, how and when.

Another trend we see, is teams further adopting HIL beyond the traditional test and integration stages.    For instance, to further support innovation and designs tasks or even to de-risk integration and maintenance of the product in the market.    

We see this coming from experienced model-based engineering teams who have pragmatic digital transformation vision in mind.  Where system models are created as early as possible, and maintained as a single source of information in all subsequent development stages.

For instance, the Hyperloop team of Technical University of Munich is currently using HIL testing to prove early-stage controller concepts against virtual pods that are simulated on a Speedgoat Baseline system.  

HIL testing enables the team to test the pod without damaging it and without having access to the actual Hyperloop track, which is located at SpaceX’s headquarters ,in California.

We also see teams that are developing power systems using HIL real-time digital twins, as runnable executables of requirements and system architectures.  

Imagine running an early test of your new microgrid concept, and directly demonstrate operational and financial benefits to peer and stakeholders.

By interfacing these HIL setups with real components, these teams are also anticipating eventual integration issues, which would become a problem in later design stages.

HIL testing can also support you as the designs narrow down.  For instance, Microsemi used Speedgoat to prototype early designs of their power control module.  

Instead of testing the setup in the actual aircraft, as in a traditional rapid controller prototyping workflow, Microsemi conducted real-time testing against a virtual electric drive running on a FPGA. The setup ran on a single Speedgoat system.

This example is coming from a team of researchers at the technical university of Munich, who is developing fully autonomous, all-electric racecars.  

To correctly test their vehicle’s autonomous software stack, the team has frontloaded controller prototype testing with a virtual vehicle HIL simulator where they run both, high-fidelity vehicle dynamics and a virtual representation of the racetrack.  

This allows the team to save precious time with track logistics and properly test edge scenarios. Also, when they finally took the car to the racetrack, they could focus on fine-tuning controller performance.

We also see digital twins and HIL simulators being used as predictive tools, after productization, to extend operational life and efficiency of assets.  

Here’s an example coming from Siemens, who used HIL to implement a real-time digital twin of a gas turbine. The digital twin has been deployed on the operational site and it collects field data that helps run live diagnostics and optimizing performance of the gas turbine asset.

So, let’s wrap up our webinar with key takeaways:  

We have seen that HIL de-risks integration and testing by allowing you to test your controllers faster, and in a better and safer way.  

When partnering with us, you are opting for a flexible and state-of-the-art HIL solution that unifies and completes your model-based design workflows.  

Boost and scale up HIL productivity with agile methods like continuous integration. HIL can support you in all stages of development and help you keep the pace of innovation.  

Thanks for staying with us in this webinar!  

 

 

The Author

Daniel Fonte

Daniel Fonte
Head of Application Engineering


Related Content


Let us help you to find the right solution for your project

 

Request a Configuration Proposal

Get a proposal for a real-time target
machine configured to your needs.

Request a proposal

Request a Free Workflow Demo

Curious how to accelerate control design
innovation with a modular controller hardware setup?

Request a free demo

Have Questions?

Talk to our experts about your project
and application requirements.

Contact us
Follow Speedgoat LinkedIn