Motor Phase Current Imbalance Alarm
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.
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.
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, andphaseL3arguments together (e.g.currentL1/currentL2/currentL3→voltageL1/voltageL2/voltageL3for 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.
currentImbalanceWarningRatio→imbalanceLimit). - To change the warning, danger, and clear ratios used when no
per-entity attribute is set — change the Default value on the
warningRatio,criticalRatio, andclearRatioarguments. - To change how long imbalance must persist before firing or
clearing — change the Default value on the
warningHoldMinutes,criticalHoldMinutes, orclearHoldMinutesarguments. - 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.
- Per device or asset — set the attribute (e.g.
- 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.