Installation guide for imperix ACG SDK

This note gives step-by-step instructions to install the Software Development Kit (SDK) for the Automated Code Generation (ACG) from Simulink or PLECS.

Product description

The ACG SDK enables engineers to program imperix controllers directly from Matlab Simulink or PLECS. This Software Development Kit (SDK) provides a blockset and an automated toolchain to achieve both simulation and device programming with just a few clicks. The kit also includes Cockpit, the built-in software for real-time access, monitoring, and tuning of the controllers’ variables.

Required software

ACG SDK used withSimulinkPLECS
Imperix toolsImperix ACG SDKImperix ACG SDK
Main simulation softwareMatlab SimulinkNone required
Plant simulation plug-inPLECS Blockset for Simulink,
or
Simscape Electrical
None required

Licensing policy

SoftwareLicensing policy
Imperix ACG SDKFree software. Paid license for loading the generated code on a programmable controller (B-Box RCP, B-Box Micro, or B-Board PRO).
Matlab SimulinkPaid license issued by MathWorks
PLECS standalonePaid license issued by Plexim (trial version available)
PLECS blockset for SimulinkPLECS blockset: Paid license issued by Plexim (trial version available)
PLECS Viewer: No license (editing of model disabled)
Simscape ElectricalPaid license issued by MathWorks

Installing the software

In order to generate run-time code for the real-time controllers, and/or simulate the corresponding behavior, the necessary software must be installed on a computer (in general, in this order):

  1. The main simulation software (Matlab Simulink or PLECS)
  2. In case Simulink is used, for simulation: a plant simulation software (Simscape Electrical or PLECS blockset for Simulink). With PLECS, no extra simulation software is needed.
  3. Imperix ACG SDK

Supported versions

ProductSupported versions
Operating system≥ Windows 8 (not tested on Windows 7 – macOS not supported)
Matlab≥ R2016a
PLECS≥ 4.4.2

Imperix ACG SDK

The ACG SDK can be downloaded directly from imperix’s website, under Support > Downloads.

Download the latest version and follow the install instructions. It is highly recommended to keep the default destination folder C:\imperix\BB3_ACG_SDK and to avoid spaces or special characters in the pathname.

At the end of the installation procedure, the installer shows detected MATLAB installations as shown in the image below. Clicking Next opens the selected MATLAB instances and launches the script <install dir>\simulink\target\imperix_ACG_SDK_setup.m. which sets the imperix ACG SDK target path.

Detection of MATLAB installation by the imperix ACG SDK installer

Main simulation software

A compatible version of Matlab Simulink can be downloaded directly from MathWorks’ website. The compatible versions are R2016a and newer.

To activate a Matlab installation, a paid license issued by MathWorks is needed. This license is neither provided nor sold by imperix.

When prompted (figure below), select the following products during the installation :

  • Matlab Simulink
  • Embedded Coder
  • Matlab Coder
  • Simulink Coder

They are the only mandatory packages to start working.

MATLAB product selection pane
MATLAB product selection pane
Mex compiler add-on

When installed, launch Matlab and make sure that a MEX compiler for C++ language is installed.

The list of available compilers can be displayed with the Matlab command mex -setup.

With recent Matlab versions, if no compiler is configured, MinGW-w64 can be installed directly from Matlab’s Add-Ons menu.

  • On the MATLAB Home tab, in the Environment section, click Add-Ons > Get Add-Ons.
  • Search for MinGW or select from Features.

Alternatively, download and execute the installer proposed in the Matlab article “MATLAB Support for MinGW-w64 C/C++ Compiler”.

[Option 2] PLECS Standalone

A compatible version of PLECS Standalone Packages can be downloaded directly from Plexim’s website. The compatible versions are 4.4.2 and newer, in 64-bit.

Download link: https://www.plexim.com/download/standalone

To use PLECS with Imperix ACG SDK, a paid license is required. Both PLECS and PLECS Coder licenses are needed. These licenses are neither provided nor sold by imperix.

Installing “Imperix Controllers” support package on PLECS Standalone

In order to use Imperix library on PLECS standalone, “Imperix Controllers” support package needs to be installed.

  • Launch PLECS and click on File > PLECS Preferences.
  • In the Coder tab, change the Target support packages path and select the path to the “Imperix Controllers” support package installed with the Imperix ACG SDK.
  • If the Imperix ACG SDK default destination was not changed, the target support package path is C:\imperix\BB3_ACG_SDK\plecs.
  • Once the correct path is entered, the “Imperix Controllers” should appear under Installed targets.
PLECS target configuration
PLECS target configuration

Note: When using multiple Target Support packages (TSPs), PLECS requires that they are placed in the same folder. Therefore, the Imperix_Controllers support package folder in C:\imperix\BB3_ACG_SDK\plecs should be moved to any location on the computer, common with other TSPs.

Plant simulation software

Although a simulation software is not needed to program imperix controllers, it is highly recommended to facilitate the control development and pre-testing. Imperix recommends using MathWorks’ Simscape Electrical toolbox or Plexim’s PLECS Blockset for Simulink.

PLECS Blockset

PLECS Blockset allows creating, editing, and simulating a PLECS electrical circuit inside Simulink. It requires a paid license from Plexim. The license is neither provided nor sold by imperix.

Simulation model of motor drive using PLECS Blockset
Simulation model of motor drive using PLECS Blockset

Simscape Electrical

Simscape Electrical is a Simulink toolbox that allows modeling and simulating electrical power systems. It requires a paid license from MathWorks. The license is neither provided nor sold by imperix.

Simulation model of motor drive using Simscape Power System
Simulation model of motor drive using Simscape Power System

Further reading

Getting-started instructions regarding the ACG SDK can be found in the following notes