X to the Power of Y (EXPT)
This table lists the controllers and applications that support this instruction.
Architecture | Standard applications | Safety applications |
---|---|---|
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370, and GuardLogix 5570 controllers | Yes | No |
CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, Compact GuardLogix 5380, and GuardLogix 5580 controllers | Yes | Yes |
The X to the Power of Y (EXPT) instruction takes Source A (X) to the power of Source B (Y) and stores the result in the Destination.
TIP:
In Logix Designer version 36, the mnemonic for this instruction changed from XPY to EXPT.
Available Languages
Ladder Diagram
Function Block Diagram
Function Block Diagram supports these elements:
FBD Block
FBD Function
TIP:
FBD Function is applicable to CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, Compact GuardLogix 5380, and GuardLogix 5580 controllers only.
Structured Text
This instruction is not available in structured text.
TIP:
Use ** as an operator in an expression to compute the same result. Refer to
Structured Text Syntax
for more information on the syntax of expressions and assignments within structured text.Operands
IMPORTANT:
Unexpected operation may occur if:
- Output tag operands are overwritten.
- Members of a structure operand are overwritten.
- Except when specified, structure operands are shared by multiple instructions.
There are data conversion rules for mixing numeric data types within an instruction. See Data conversions.
Ladder Diagram
Operand | Data Type CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370, and GuardLogix 5570 controllers | Data Type CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, Compact GuardLogix 5380, and GuardLogix 5580 controllers | Format | Description |
---|---|---|---|---|
Source A | SINT INT DINT REAL | SINT INT DINT LINT USINT UINT UDINT ULINT REAL LREAL | immediate tag | value to exponentiate |
Source B | SINT INT DINT REAL | SINT INT DINT LINT USINT UINT UDINT ULINT REAL LREAL | immediate tag | exponent |
Dest | SINT INT DINT REAL | SINT INT DINT LINT USINT UINT UDINT ULINT REAL LREAL | tag | Tag to store the result of the instruction. |
Function Block Diagram
FBD Block
Operand | Data Type | Format | Description |
---|---|---|---|
EXPT | FBD_MATH | tag | EXPT structure |
FBD_MATH Structure
Input Members | Data Type | Description |
---|---|---|
EnableIn | BOOL | Enable input. If false, the instruction does not execute and outputs are not updated.
Default is true. |
SourceA | REAL | Value added to SourceB.
|
SourceB | REAL | Value added to SourceA.
|
Output Members | Data Type | Description |
---|---|---|
EnableOut | BOOL | Indicates if the instruction executed without fault when it was enabled. |
Dest | REAL | Result of the instruction. |
FBD Function
Input Operands (Left Pin) | Data Type CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, Compact GuardLogix 5380, and GuardLogix 5580 controllers | Description |
---|---|---|
Source A (top) | SINT USINT INT UINT DINT UDINT LINT ULINT REAL LREAL | Value to exponentiate |
Source B (bottom) | SINT USINT INT UINT DINT UDINT LINT ULINT REAL LREAL | exponent |
Output Operand (Right Pin) | CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, Compact GuardLogix 5380, and GuardLogix 5580 controllers Data Type | Description |
---|---|---|
Dest | DINT UDINT LINT ULINT REAL LREAL | Result of the function. |
Description
The XPY instruction takes Source A (X) to the power of Source B (Y) and stores the result in the Destination. If Source A (X) is negative, Source B (Y) must be a non-fractional value or a minor fault will occur.
Affects Math Status Flags
Controllers | Affects Math Status Flags |
---|---|
CompactLogix 5380, CompactLogix 5480, ControlLogix 5580, Compact GuardLogix 5380, and GuardLogix 5580 controllers | Conditional |
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370, and GuardLogix 5570 controllers | Yes |
Major/Minor Faults
None specific to this instruction. See Index Through Arrays for array-indexing faults.
Execution
Ladder Diagram
Condition/State | Action Taken |
---|---|
Prescan | N/A. |
Rung-condition-in is false. | Set Rung-condition-out to Rung-condition-in. |
Rung-condition-in is true. | Set Rung-condition-out to Rung-condition-in. Dest = value of Source X to the power of Source Y. |
Postscan | N/A. |
Function Block Diagram
FBD Block
Condition/State | Action Taken |
---|---|
Prescan | N/A |
EnableIn is false | Set EnableOut to EnableIn. |
EnableIn is true | Dest = value of Source X to the power of Source Y. If overflow occurs Clear EnableOut to false. else Set EnableOut to true. |
Instruction first scan | N/A |
Instruction first run | N/A |
Postscan | N/A |
Examples
Ladder Diagram
Function Block
FBD Function
Structured Text
result := value_1 ** value_2;
Provide Feedback