Jump to content

Motor Current Parameters BLDC

From Wiki
Revision as of 12:32, 4 December 2025 by OLT (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The motor current parameter of BLDC axes can be apated to the requirements of each axis. For stepper axes see Motor Current Parameter.

Accessing the motor current parameters

The motor currents can be changed via the Firmware Parameter Configuration.

Loading the parameters

  1. Connect iRC to the robot
  2. Click "File" → "Get Amp Configuration"
  3. Wait a few seconds till a message box appears. Click the "Open Folder" button.
  4. Find the newest file and open it in a basic text editor.

In the parameter file you will find a long block for each axis. Note that each block starts with "<Joint0", "<Joint1", "<Joint2", etc. where 0 stands for A1, 1 for A2, etc. See the "Parameters" section below on which parameters to change. Do not change any parameters that you don't understand, this can cause damage!

If you do any changes we recommend to save the file by a new name so you can tell which one you changed.

Applying changed parameters

  1. Connect iRC to the robot
  2. Click "File" → "Set Amp Configuration"
  3. Wait a few seconds till a message box appears.

Some parameters need a hard restart (power-off) to be applied, the motor current parameters are applied immediately.

Important: After increasing the current parameters it is important to do a stress test, especially since the motors generally got no temperature sensors. Create a motion program and let the robot move for e.g. 1hr. Check the motor temperatures regularly and make sure they don't exceed their limits.

Parameters

In the parameter file you will find the following current related parameters (all values in mA):

<FWParameter Index="1"  SubIndex="6"     Name="max. current"                  Value="7500" Unit="mA" />
<FWParameter Index="1"  SubIndex="11"    Name="OpenLoopCurrent"               Value="3000" Unit="mA" />
<FWParameter Index="1"  SubIndex="12"    Name="OpenLoopCurrent Standstill"    Value="50"   Unit="mA" />
<FWParameter Index="1"  SubIndex="13"    Name="OpenLoopCurrent Calibration"   Value="3000" Unit="mA" />
Parameter Description
max. current Maximum current in Closed Loop mode
OpenLoopCurrent Current in Open Loop mode
OpenLoopCurrent Standstill Idle current in Open Loop mode
OpenLoopCurrent Calibration Current in Open Loop mode while calibrating

The closed loop current ("max. current") is used in normal operation. In this mode the controller only applies as much current as actually needed, so the displayed current (see the infocenter tab below the 3D view in iRC) should show a lower value. Once the controller needs to apply more than the max current it will trigger an overcurrent error. Before increasing the current in this case you should check for other causes first.

The open loop current is used before the axis switches to closed loop operation. This happens shortly after powering the axis, while it does its initial alignment (you may notice the axis moving a little after enabling power, in case of igus ReBeL robots you may hear the axes clicking). In this mode the full current is applied since the controller can not tell the actually required current. If the current is set too low the axis will block with a driver error (check for other causes first).

Important: Setting the motor currents to high can cause issues and damage! High currents can cause overheating and electromagnetic effects. If your robot does not start up or axes do not communicate ("DEAD" error) unless you press e-stop before starting the currents may be set too high.