Motor Control Boards Description

Revision as of 11:07, 8 March 2022 by Registered User

1. Introduction

This document specifies the formats used to describe the boards and the other hardware items that are involved in the configuration of a Motor Control application. These descriptions are used by ST Motor Control Workbench to let users configure their Motor Control application and to produce a software project that implement it in accordance with the hardware elements that make it.

From the Motor Control Workbench perspective, the hardware of a Motor Control application is built by combining the following elements:

  • An STM32 MCU that executes the software of the Motor Control Application
  • A Control Stage that hosts the STM32 device. The control stage embeds all the electronics needed to operate the MCU and may also optionally offer other features that cab be of interest in a Motor Control Application: buttons, potentiometers or even current sensing circuitry. .
  • One of more Power stages that host all the power electronics needed to drive Motors: Mosfets, drivers, current sensing, B-EMF sensing...
  • Motors and their optional speed and position sensors

It is the duty of ST Motor Control Workbench to properly connect these elements together and to configure the MCU according to their characteristics.

These elements are arranged into boards that users plug together to make a motor control application. Control Boards embed an MCU and a Control Stage. Power Boards embed a Power Stage. Control and Power boards provide connectors so that they can be connected to one another.

In ST board portfolio, several, incompatible connectors exist. To be able to connect Control and Power boards despite incompatible connectors, Bridge boards are provided.

Finally, Inverter Boards feature an MCU, a Control and one or more Power stages on a single board.

This document specifies the formats for describing Control Boards, Power Boards, Inverter Boards and Bridges. It may later be extended to cover Motors as well.

2. General concepts

A typical motor control application is built by plugging a motor into a power board which is in turn plugged into control board on which an STM32 MCU is soldered. Alternatively, a motor can be plugged into an inverter board on which an STM32 MCU is soldered. Sometimes, if the connectors available on the Control and the Power board differ and are not compatible, an adaptor board (a bridge) is used to connect them together. These three motor control application topologies are depicted in the figure below.

2.1. Features

All these boards offer features that can be used by the STM32 MCU.

Some of these features are quite general and can be useful in many different applications, like potentiometers for instance. Others are very specific to a narrow set of applications like Hall sensors based current sensing circuitries that specifically target motor control.

Some are very simple and require very little MCU resources like push buttons for instance that can be handled by almost any single GPIO of an STM32 device. Others can be a lot more complex and require the use of more advanced MCU functions. A good example of this is the Motor Phases Voltage Generation feature that require an Advanced Timer, three of its channels and six MCU pins (to drive both the high and the low sides of the bridge).

But all these features have one key thing in common: they consist in a hardware implementation tied to pins of the MCU via one or more signals. To be properly used, these signals need to be connected to pins of the STM32 MCU that lead to peripherals that can handle them.

So, the main purpose of boards descriptions is to list the features provided by the boards and describe their characteristics, the signals they offer as interface and detail the parameters that define them and how they can find their ways to pins of the MCU that can handle them.

Features implemented on Power Boards (that do not host an STM32) define signals that lead to the terminals of the connector present on these boards. Then, these signals can be linked to pins of the MCU thanks to the connector present on Control Boards and the description of the routing between the terminals of this connector and the pins of the MCU.

2.2. Hardware Variants

Features implemented on a board are present on it for a purpose. And, in the descriptions, features are named (identified) after that purpose.

2.3. Signals

Signals are the physical interface that features provide, (usually) with the MCU. The signals defined by a feature on a board

2.4. Connectors

2.5. Connection

2.6. Syntax

The syntactic format used in the description is JSON. Each of the hardware element specified here -- Board, MCU or Motor -- is defined in a single JSON object. The nature of the description (Control board, Power board, ...) is stated in a type attribute of this object. For the Motor Control Workbench, each hardware element is described in its own file.