Skip to content
Stand with Ukraine flag

Motor Phase Current Imbalance Alarm

  • Alarm Rule
  • 21 installs
  • v1.0.0
  • Jun 15, 2026
  • MIT license
  • v4.3+

Monitor motor three-phase current with an early warning when phase imbalance grows and a critical alarm when the spread stays excessive — distribution panels, generator outputs, solar inverter strings.

Type
  • Alarm
Category
  • Threshold
  • Equipment Health
Use Cases
  • Industrial Automation
  • Predictive Maintenance
  • Smart Energy

Who it’s for

Reliability engineers and electrical operators asking “is one motor phase pulling harder than the others?”, “is imbalance creeping up on this distribution panel before an over-current trip?”, “is a solar inverter string wasting capacity, or is the feeder upstream out of balance?” — when phase imbalance should trigger an early warning before it stays excessive long enough to escalate.

What it does

Reads three phase currents, computes the imbalance ratio (max − min) ÷ average, and raises a Major alarm when imbalance stays elevated for several minutes, escalating to Critical when imbalance grows more severe. The alarm auto-clears once imbalance drops back to a healthy range, or the load is off.

Three Phase Current Imbalance Alarm diagram

How to set up

The rule has default values for every threshold, so it works as soon as it is installed. Install on a device or asset profile so the alarm covers every entity of that type at once and automatically picks up any new entity added later. Single-device or single-asset installs are also supported.

How to customize

  • To monitor different three-phase inputs — change the Time series key on the phaseL1, phaseL2, and phaseL3 arguments together (e.g. currentL1 / currentL2 / currentL3voltageL1 / voltageL2 / voltageL3 for three-phase voltage imbalance). The TBEL script uses the argument names, so it keeps working as long as you change all three keys.
  • To use different ratio attribute names — change the Attribute key on the ratio arguments to match what your devices or assets already use (e.g. currentImbalanceWarningRatioimbalanceLimit).
  • To change the warning, danger, and clear ratios used when no per-entity attribute is set — change the Default value on the warningRatio, criticalRatio, and clearRatio arguments.
  • To change how long imbalance must persist before firing or clearing — change the Default value on the warningHoldMinutes, criticalHoldMinutes, or clearHoldMinutes arguments.
  • To tune ratios and hold durations at runtime without editing the rule — set the value on the entity as a regular server-side attribute. It can be edited directly from a dashboard using Update Multiple Attributes input widget:
    • Per device or asset — set the attribute (e.g. currentImbalanceWarningRatio, currentImbalanceWarningHoldMinutes) on the machine itself. The per-entity value overrides the Default value.
    • Per customer (in deployments that use customers) — change Entity type on the relevant argument to Current owner, then set the attribute on the customer. Every machine that customer owns picks up that value.
    • Tenant-wide — change Entity type to Current tenant, then set the attribute on the tenant. The value applies across every machine.
  • To make the alarm manual-clear-only — remove the Clear condition. The alarm then stays active until an operator clears it.
  • To restrict firing to specific hours or days — in the Trigger condition’s Schedule, choose Active at a specific time range (or Custom schedule for different intervals per day) — useful for suppressing during planned start-up sequences or maintenance windows. For per-entity schedules — machines with different shift patterns — switch to Dynamic mode and source the schedule JSON from an attribute on the entity.
  • To control where the alarm shows up — toggle the propagation flags under Advanced settings.

Share Your Alarm Rule with the Community

Built a reliable alarm rule? Export it as a JSON from ThingsBoard and publish it to the IoT Hub. Share it with thousands of ThingsBoard developers and help the community react to incidents faster.