Rolling Plot Module

This article describes how to use the Rolling plot module of imperix Cockpit to interact with the user code running on imperix power converter controllers. This page provides a detailed explanation of all of the module’s features.

For new users, it is recommended to read the following articles beforehand to get started with the imperix software development kit (SDK) and imperix Cockpit monitoring software:

Rolling Plot basics

The rolling plot module allows for more long-term monitoring of the selected variables. A typical use case is monitoring the long-term evolution of the converter state in order to keep an eye on critical variables.

The sampling frequency of the Rolling plot can range from 10Hz up to the CPU control task frequency. The maximal amount of the recorded data depends on this value and the number of acquired variables. Once the allocated memory buffer fills up, the oldest acquired points will be deleted.

Rolling Plot interface

Rolling plot module

The plot preview shows an overview of all of the monitored signals. The vertical axis of the preview is automatically scaled so all of the signals fit the plot. The plot preview can be collapsed to optimize space when using Cockpit on a small monitor.

This is the area where the monitored signals are displayed. User variables can be dragged and dropped from the project pane into a plot to monitor them. If multiple plots are created, their x-axis will always remain synchronized, including when zooming. The user can remove a variable from a plot from the Rolling Plot tab of the bottom bar or through the variable plot context menu accessed by right-clicking on the plotted signal.

When hovering over the y-axis of each plot, two input fields will show, displaying the current limits of the y-axis range. Inputting a new value into the fields will adjust the upper and lower limit of the range accordingly.

When hovering over the y-axis of each plot, a lock icon will show. Through it the user can lock the y-axis range, preventing unwanted zooming or auto-scaling.

Pauses/resumes the rolling of the plot window. Data acquisition will continue in the background regardless of whether the plot window is rolling or not.

Stops the data acquisition of the rolling plot. Clicking on the resume button from the stopped state will restart the acquisition.

Autoscales both the horizontal and vertical axis, ensuring the acquired signals fit in the plots.

Autoscales the horizontal axis of every plot while keeping the vertical axis unchanged. Additionally, if the monitoring is paused, it will be automatically resumed.

Autoscales the vertical axis of every plot while keeping the horizontal axis unchanged.

When switched on, this feature continuously auto-scales every plot, ensuring that the monitored variables never go out of scope.

Clears all of the data acquired by the rolling plot. If the Rolling plot is acquiring, the acquisition will continue.

Displays the current rolling plot state. The possible states are:

  • Offline: the target is disconnected from the host computer or the user code is not running on the target.
  • Stopped: the acquisition is stopped. The data that what was acquired before the acquisition was stopped remains on display .
  • Paused: the rolling plot window is not rolling with the acquisition.
  • Live: the rolling plot window is rolling with newly acquired data. 

Creates an empty plot area at the bottom of the rolling plot module.

Starting from Cockpit version 2026.1, the height of plot areas in all modules can be resized by dragging the border between them. This button resets all plots in the Rolling Plot to an equal height.

The sampling frequency of the Rolling plot can be set through this menu. Since the lower sampling rates are achieved by downsampling, the sampling rate may be rounded to the closest value which the control task frequency is divisible by.

The maximal length of the recorded data in time is displayed in the ‘Retention time’ field. The state of the memory buffer can be tracked through the ‘Buffer usage’ field.

Interacting with Rolling Plot graphs and plots

The Rolling Plot module consists of one or more plot areas that display graphs based on variables defined by the user code. This section lists out the tips and tricks for manipulating plot variables and plot areas in the Rolling Plot.

Managing plot variables

To add a variable to a plot, select it in the USER VARIABLE section in the project pane, drag and drop it over the plot. To add multiple variables to a plot, keep the Ctrl key pressed and click on the desired variables to select them. Alternatively, click on the first variable to select it, keep the Shift key pressed, and click on the last variable to select. Variables selected like this can then be dragged and dropped into a plot all at once.

Added variables will show up as rows in a table in the bottom bar tab corresponding to the module. Here, variables can be removed, their style and visibility and plotting order can be managed and they can be moved from plot to plot.

All of these actions can also be accessed from context menus by right-clicking on a plotted variable or on the empty space in the plots.

Rolling Plot Variable context menu and plot area context menu

Managing plot areas

New plot areas can be added by clicking on the + button in the bottom right of the module. The total module height can be freely distributed between the plots. To resize plot heights click on the border between the plot areas and drag.

  • To zoom in and out along the horizontal axis, place the mouse cursor over the area of interest. Then, use the mouse wheel to zoom in or out around the location of the mouse cursor.
  • To zoom in and out along the vertical axis, place the mouse cursor over the area of interest. Then press the Ctrl key and use the mouse wheel to zoom in or out around the location of the mouse cursor.
  • To zoom on a specific area, click and drag to draw a blue rectangle over the zoom area.
  • To achieve a horizontal auto-scale, right-click and drag horizontally. A light grey horizontal strip will appear. Release the mouse button to perform the horizontal auto-scale.
  • To achieve a vertical auto-scale, right-click and drag vertically. A light grey vertical strip will appear. Release the mouse button to perform the vertical auto-scale.
  • To enter panning mode press and hold the mouse middle button or Ctrl + Left mouse button and move the mouse.
  • To prevent a plot from changing the displayed range of values, hover over the y-axis and click the lock icon that shows up. The same can be done frome the y-axis pane menu in the right bar.