AMO-Tools-Suite  v.0.9.0
Set of tools for calculating energy efficiency in industrial equipment
All Classes Namespaces Files Functions Variables Enumerations Friends Macros Pages
Public Member Functions | List of all members
MotorEfficiency Class Reference

Contains the declaration of MotorEfficiency class including the getters and setters as well as the calculators for motor efficiency. More...

#include <MotorEfficiency.h>

Public Member Functions

 MotorEfficiency (Motor::LineFrequency lineFrequency, double motorRpm, Motor::EfficiencyClass efficiencyClass, double motorRatedPower)
 
double calculate (double loadFactor, double specifiedEfficiency=-1)
 Contains the definition of functions of MotorEfficiency class. calculate(): Calculates the motor efficiency given a load factor and other parameters. More...
 
std::array< double, 5 > calculate25intervals ()
 
Motor::LineFrequency getLineFrequency () const
 
void setLineFrequency (Motor::LineFrequency lineFrequency)
 
double getMotorRpm () const
 
void setMotorRpm (double motorRpm)
 
Motor::EfficiencyClass getEfficiencyClass () const
 
void setEfficiencyClass (Motor::EfficiencyClass efficiencyClass)
 
double getHp () const
 
void setHp (double hp)
 
double getMotorKwh () const
 
void setMotorKwh (double motorKwh)
 
double getMotorAmps () const
 
void setMotorAmps (double motorAmps)
 
double getActualEfficiency () const
 
void setActualEfficiency (double actualEfficiency)
 
double getKWloss0 () const
 
 MotorEfficiency (Motor::LineFrequency lineFrequency, double motorRpm, Motor::EfficiencyClass efficiencyClass, double motorRatedPower)
 
double calculate (double loadFactor, double specifiedEfficiency=-1)
 
std::array< double, 5 > calculate25intervals ()
 
Motor::LineFrequency getLineFrequency () const
 
void setLineFrequency (Motor::LineFrequency lineFrequency)
 
double getMotorRpm () const
 
void setMotorRpm (double motorRpm)
 
Motor::EfficiencyClass getEfficiencyClass () const
 
void setEfficiencyClass (Motor::EfficiencyClass efficiencyClass)
 
double getHp () const
 
void setHp (double hp)
 
double getMotorKwh () const
 
void setMotorKwh (double motorKwh)
 
double getMotorAmps () const
 
void setMotorAmps (double motorAmps)
 
double getActualEfficiency () const
 
void setActualEfficiency (double actualEfficiency)
 
double getKWloss0 () const
 
 MotorEfficiency (Motor::LineFrequency lineFrequency, double motorRpm, Motor::EfficiencyClass efficiencyClass, double motorRatedPower)
 
double calculate (double loadFactor, double specifiedEfficiency=-1)
 
std::array< double, 5 > calculate25intervals ()
 
Motor::LineFrequency getLineFrequency () const
 
void setLineFrequency (Motor::LineFrequency lineFrequency)
 
double getMotorRpm () const
 
void setMotorRpm (double motorRpm)
 
Motor::EfficiencyClass getEfficiencyClass () const
 
void setEfficiencyClass (Motor::EfficiencyClass efficiencyClass)
 
double getHp () const
 
void setHp (double hp)
 
double getMotorKwh () const
 
void setMotorKwh (double motorKwh)
 
double getMotorAmps () const
 
void setMotorAmps (double motorAmps)
 
double getActualEfficiency () const
 
void setActualEfficiency (double actualEfficiency)
 
double getKWloss0 () const
 

Detailed Description

Contains the declaration of MotorEfficiency class including the getters and setters as well as the calculators for motor efficiency.

Author
Subhankar Mishra (mishras)
Gina Accawi (accawigk)
Author
Subhankar Mishra (mishras)
Gina Accawi (accawigk)
Author
Subhankar Mishra (mishras)
Gina Accawi (accawigk)

Definition at line 19 of file MotorEfficiency.h.

Constructor & Destructor Documentation

◆ MotorEfficiency() [1/3]

MotorEfficiency::MotorEfficiency ( Motor::LineFrequency  lineFrequency,
double  motorRpm,
Motor::EfficiencyClass  efficiencyClass,
double  motorRatedPower 
)
inline

Constructor

Parameters
lineFrequencyMotor::LineFrequency, classification of line frequency in Hz
motorRpmdouble, RPM of motor
efficiencyClassMotor::EfficiencyClass, efficiency class of motor
motorRatedPowerdouble, rated power of motor in hp

Definition at line 28 of file MotorEfficiency.h.

◆ MotorEfficiency() [2/3]

MotorEfficiency::MotorEfficiency ( Motor::LineFrequency  lineFrequency,
double  motorRpm,
Motor::EfficiencyClass  efficiencyClass,
double  motorRatedPower 
)
inline

Constructor

Parameters
lineFrequencyMotor::LineFrequency, classification of line frequency in Hz
motorRpmdouble, RPM of motor
efficiencyClassMotor::EfficiencyClass, efficiency class of motor
motorRatedPowerdouble, rated power of motor in hp

Definition at line 28 of file MotorEfficiency.h.

◆ MotorEfficiency() [3/3]

MotorEfficiency::MotorEfficiency ( Motor::LineFrequency  lineFrequency,
double  motorRpm,
Motor::EfficiencyClass  efficiencyClass,
double  motorRatedPower 
)
inline

Constructor

Parameters
lineFrequencyMotor::LineFrequency, classification of line frequency in Hz
motorRpmdouble, RPM of motor
efficiencyClassMotor::EfficiencyClass, efficiency class of motor
motorRatedPowerdouble, rated power of motor in hp

Definition at line 28 of file MotorEfficiency.h.

Member Function Documentation

◆ calculate() [1/3]

double MotorEfficiency::calculate ( double  loadFactor,
double  specifiedEfficiency = -1 
)

Contains the definition of functions of MotorEfficiency class. calculate(): Calculates the motor efficiency given a load factor and other parameters.

Calculates the motor efficiency

Parameters
loadFactordouble, load factor - unitless ratio
specifiedEfficiency,efficiencyof SPECIFIED efficiency class motor (optional)
Returns
double, motor efficiency as %
Author
Subhankar Mishra (mishras)
Gina Accawi (accawigk)

Calculating the 1% interval values based on the load factor 0 - 25

  1. Using the 0% and 25% kW loss values, develop a linear table of loss by 1% load Equation: kWloss (X) = kWloss (0) + X * (kWloss(25) - kWloss(0))/25 where X = 0,1,2,3…..25
  2. Assemble an array of shaft power from 0 to 25 Equation: kW shaft (X) = rated hp *0.746 * (X / 100) Assemble an array of kWe (input electric power Equation: kWe(X) = kWloss(x) + kWshaft(X) Calculate efficiency Equation: Eff(X) = kW shaft (X) / kWe (X)

Setting up kWloss0 and kWloss25 Make sure motorEfficiency is in decimal rather %. E.g.: 0.92 is correct, 92 is wrong.

26 - 125 load factor (0.25 - 1.25 non-inclusive) Fitting tabular, 25% interval, motor efficiency data to assemble an overall curve with 1% interval data from 26 to 150% 25% load interval efficiency values come from "Adjusting 25 percent arrays for specified efficiency" Pick the 25,50,75,100,and 125% motor efficiency values and do a 4th order polynomial fit. Use the fit coefficients to populate, in 1% load intervals, from 26 to 125% load

126 - 150 load factor (1.25 (non-inclusive) - 1.50 (inclusive)) Pick the 75, 100, and 125% motor efficiency values and do a 2nd order polynomial fit Use the fit coefficients to populate, in 1% load intervals, the current range from 126 to 150% load

Definition at line 17 of file MotorEfficiency.cpp.

◆ calculate() [2/3]

double MotorEfficiency::calculate ( double  loadFactor,
double  specifiedEfficiency = -1 
)

Calculates the motor efficiency

Parameters
loadFactordouble, load factor - unitless ratio
specifiedEfficiency,efficiencyof SPECIFIED efficiency class motor (optional)
Returns
double, motor efficiency as %

◆ calculate() [3/3]

double MotorEfficiency::calculate ( double  loadFactor,
double  specifiedEfficiency = -1 
)

Calculates the motor efficiency

Parameters
loadFactordouble, load factor - unitless ratio
specifiedEfficiency,efficiencyof SPECIFIED efficiency class motor (optional)
Returns
double, motor efficiency as %

◆ calculate25intervals() [1/3]

std::array< double, 5 > MotorEfficiency::calculate25intervals ( )

calculate25intervals(): Calculates the motor efficiency given at 25% intervals of load factor.

Returns
std::array<double, 5> containing motor efficiency at 25% intervals of load factor

Calculating Motor Efficiency On the EE and SE tabs are all the coefficient arrays. At the bottom of the sheets are calculated tables of efficiency vs load for each speed class. The 25%,50%,75%, and 100% load efficiencies are calculated using the above double-exponential calculation At 0% load, the motor efficiency is, by definition, 0%

Definition at line 454 of file MotorEfficiency.cpp.

◆ calculate25intervals() [2/3]

std::array<double, 5> MotorEfficiency::calculate25intervals ( )

calculate25intervals(): Calculates the motor efficiency given at 25% intervals of load factor.

Returns
std::array<double, 5> containing motor efficiency at 25% intervals of load factor

◆ calculate25intervals() [3/3]

std::array<double, 5> MotorEfficiency::calculate25intervals ( )

calculate25intervals(): Calculates the motor efficiency given at 25% intervals of load factor.

Returns
std::array<double, 5> containing motor efficiency at 25% intervals of load factor

◆ getActualEfficiency() [1/3]

double MotorEfficiency::getActualEfficiency ( ) const
inline

Gets the actual efficiency of motor

Returns
double, actual efficiency of motor as %

Definition at line 154 of file MotorEfficiency.h.

◆ getActualEfficiency() [2/3]

double MotorEfficiency::getActualEfficiency ( ) const
inline

Gets the actual efficiency of motor

Returns
double, actual efficiency of motor as %

Definition at line 154 of file MotorEfficiency.h.

◆ getActualEfficiency() [3/3]

double MotorEfficiency::getActualEfficiency ( ) const
inline

Gets the actual efficiency of motor

Returns
double, actual efficiency of motor as %

Definition at line 154 of file MotorEfficiency.h.

◆ getEfficiencyClass() [1/3]

Motor::EfficiencyClass MotorEfficiency::getEfficiencyClass ( ) const
inline

Gets the efficiency class of motor

Returns
Motor::EfficiencyClass, efficiency class of motor

Definition at line 90 of file MotorEfficiency.h.

◆ getEfficiencyClass() [2/3]

Motor::EfficiencyClass MotorEfficiency::getEfficiencyClass ( ) const
inline

Gets the efficiency class of motor

Returns
Motor::EfficiencyClass, efficiency class of motor

Definition at line 90 of file MotorEfficiency.h.

◆ getEfficiencyClass() [3/3]

Motor::EfficiencyClass MotorEfficiency::getEfficiencyClass ( ) const
inline

Gets the efficiency class of motor

Returns
Motor::EfficiencyClass, efficiency class of motor

Definition at line 90 of file MotorEfficiency.h.

◆ getHp() [1/3]

double MotorEfficiency::getHp ( ) const
inline

Gets the horsepower of motor

Returns
double, horsepower of motor

Definition at line 106 of file MotorEfficiency.h.

◆ getHp() [2/3]

double MotorEfficiency::getHp ( ) const
inline

Gets the horsepower of motor

Returns
double, horsepower of motor

Definition at line 106 of file MotorEfficiency.h.

◆ getHp() [3/3]

double MotorEfficiency::getHp ( ) const
inline

Gets the horsepower of motor

Returns
double, horsepower of motor

Definition at line 106 of file MotorEfficiency.h.

◆ getKWloss0() [1/3]

double MotorEfficiency::getKWloss0 ( ) const
inline

Gets the loss of power in kW

Returns
double, power loss in kW

Definition at line 170 of file MotorEfficiency.h.

◆ getKWloss0() [2/3]

double MotorEfficiency::getKWloss0 ( ) const
inline

Gets the loss of power in kW

Returns
double, power loss in kW

Definition at line 170 of file MotorEfficiency.h.

◆ getKWloss0() [3/3]

double MotorEfficiency::getKWloss0 ( ) const
inline

Gets the loss of power in kW

Returns
double, power loss in kW

Definition at line 170 of file MotorEfficiency.h.

◆ getLineFrequency() [1/3]

Motor::LineFrequency MotorEfficiency::getLineFrequency ( ) const
inline

Gets the line frequency

Returns
Motor::LineFrequency, classification of line frequency in Hz

Definition at line 58 of file MotorEfficiency.h.

◆ getLineFrequency() [2/3]

Motor::LineFrequency MotorEfficiency::getLineFrequency ( ) const
inline

Gets the line frequency

Returns
Motor::LineFrequency, classification of line frequency in Hz

Definition at line 58 of file MotorEfficiency.h.

◆ getLineFrequency() [3/3]

Motor::LineFrequency MotorEfficiency::getLineFrequency ( ) const
inline

Gets the line frequency

Returns
Motor::LineFrequency, classification of line frequency in Hz

Definition at line 58 of file MotorEfficiency.h.

◆ getMotorAmps() [1/3]

double MotorEfficiency::getMotorAmps ( ) const
inline

Gets the motor amps

Returns
double, motor amps in A

Definition at line 138 of file MotorEfficiency.h.

◆ getMotorAmps() [2/3]

double MotorEfficiency::getMotorAmps ( ) const
inline

Gets the motor amps

Returns
double, motor amps in A

Definition at line 138 of file MotorEfficiency.h.

◆ getMotorAmps() [3/3]

double MotorEfficiency::getMotorAmps ( ) const
inline

Gets the motor amps

Returns
double, motor amps in A

Definition at line 138 of file MotorEfficiency.h.

◆ getMotorKwh() [1/3]

double MotorEfficiency::getMotorKwh ( ) const
inline

Gets the motor power in kWh

Returns
double, motor power in kWh

Definition at line 122 of file MotorEfficiency.h.

◆ getMotorKwh() [2/3]

double MotorEfficiency::getMotorKwh ( ) const
inline

Gets the motor power in kWh

Returns
double, motor power in kWh

Definition at line 122 of file MotorEfficiency.h.

◆ getMotorKwh() [3/3]

double MotorEfficiency::getMotorKwh ( ) const
inline

Gets the motor power in kWh

Returns
double, motor power in kWh

Definition at line 122 of file MotorEfficiency.h.

◆ getMotorRpm() [1/3]

double MotorEfficiency::getMotorRpm ( ) const
inline

Gets the RPM of motor

Returns
double, RPM of motor

Definition at line 74 of file MotorEfficiency.h.

◆ getMotorRpm() [2/3]

double MotorEfficiency::getMotorRpm ( ) const
inline

Gets the RPM of motor

Returns
double, RPM of motor

Definition at line 74 of file MotorEfficiency.h.

◆ getMotorRpm() [3/3]

double MotorEfficiency::getMotorRpm ( ) const
inline

Gets the RPM of motor

Returns
double, RPM of motor

Definition at line 74 of file MotorEfficiency.h.

◆ setActualEfficiency() [1/3]

void MotorEfficiency::setActualEfficiency ( double  actualEfficiency)
inline

Sets the actual efficiency of motor

Parameters
actualEfficiencydouble, actual efficiency of motor as %

Definition at line 162 of file MotorEfficiency.h.

◆ setActualEfficiency() [2/3]

void MotorEfficiency::setActualEfficiency ( double  actualEfficiency)
inline

Sets the actual efficiency of motor

Parameters
actualEfficiencydouble, actual efficiency of motor as %

Definition at line 162 of file MotorEfficiency.h.

◆ setActualEfficiency() [3/3]

void MotorEfficiency::setActualEfficiency ( double  actualEfficiency)
inline

Sets the actual efficiency of motor

Parameters
actualEfficiencydouble, actual efficiency of motor as %

Definition at line 162 of file MotorEfficiency.h.

◆ setEfficiencyClass() [1/3]

void MotorEfficiency::setEfficiencyClass ( Motor::EfficiencyClass  efficiencyClass)
inline

Sets the efficiency class of motor

Parameters
efficiencyClassMotor::EfficiencyClass, efficiency class of motor

Definition at line 98 of file MotorEfficiency.h.

◆ setEfficiencyClass() [2/3]

void MotorEfficiency::setEfficiencyClass ( Motor::EfficiencyClass  efficiencyClass)
inline

Sets the efficiency class of motor

Parameters
efficiencyClassMotor::EfficiencyClass, efficiency class of motor

Definition at line 98 of file MotorEfficiency.h.

◆ setEfficiencyClass() [3/3]

void MotorEfficiency::setEfficiencyClass ( Motor::EfficiencyClass  efficiencyClass)
inline

Sets the efficiency class of motor

Parameters
efficiencyClassMotor::EfficiencyClass, efficiency class of motor

Definition at line 98 of file MotorEfficiency.h.

◆ setHp() [1/3]

void MotorEfficiency::setHp ( double  hp)
inline

Sets the horsepower of motor

Parameters
hpdouble, horsepower of motor

Definition at line 114 of file MotorEfficiency.h.

◆ setHp() [2/3]

void MotorEfficiency::setHp ( double  hp)
inline

Sets the horsepower of motor

Parameters
hpdouble, horsepower of motor

Definition at line 114 of file MotorEfficiency.h.

◆ setHp() [3/3]

void MotorEfficiency::setHp ( double  hp)
inline

Sets the horsepower of motor

Parameters
hpdouble, horsepower of motor

Definition at line 114 of file MotorEfficiency.h.

◆ setLineFrequency() [1/3]

void MotorEfficiency::setLineFrequency ( Motor::LineFrequency  lineFrequency)
inline

Sets the line frequency

Parameters
lineFrequencyMotor::LineFrequency, classification of line frequency in Hz

Definition at line 66 of file MotorEfficiency.h.

◆ setLineFrequency() [2/3]

void MotorEfficiency::setLineFrequency ( Motor::LineFrequency  lineFrequency)
inline

Sets the line frequency

Parameters
lineFrequencyMotor::LineFrequency, classification of line frequency in Hz

Definition at line 66 of file MotorEfficiency.h.

◆ setLineFrequency() [3/3]

void MotorEfficiency::setLineFrequency ( Motor::LineFrequency  lineFrequency)
inline

Sets the line frequency

Parameters
lineFrequencyMotor::LineFrequency, classification of line frequency in Hz

Definition at line 66 of file MotorEfficiency.h.

◆ setMotorAmps() [1/3]

void MotorEfficiency::setMotorAmps ( double  motorAmps)
inline

Sets the motor amps

Parameters
motorAmpsdouble, motor amps in A

Definition at line 146 of file MotorEfficiency.h.

◆ setMotorAmps() [2/3]

void MotorEfficiency::setMotorAmps ( double  motorAmps)
inline

Sets the motor amps

Parameters
motorAmpsdouble, motor amps in A

Definition at line 146 of file MotorEfficiency.h.

◆ setMotorAmps() [3/3]

void MotorEfficiency::setMotorAmps ( double  motorAmps)
inline

Sets the motor amps

Parameters
motorAmpsdouble, motor amps in A

Definition at line 146 of file MotorEfficiency.h.

◆ setMotorKwh() [1/3]

void MotorEfficiency::setMotorKwh ( double  motorKwh)
inline

Sets the motor power in kWh

Parameters
motorKwhdouble, motor power in kWh

Definition at line 130 of file MotorEfficiency.h.

◆ setMotorKwh() [2/3]

void MotorEfficiency::setMotorKwh ( double  motorKwh)
inline

Sets the motor power in kWh

Parameters
motorKwhdouble, motor power in kWh

Definition at line 130 of file MotorEfficiency.h.

◆ setMotorKwh() [3/3]

void MotorEfficiency::setMotorKwh ( double  motorKwh)
inline

Sets the motor power in kWh

Parameters
motorKwhdouble, motor power in kWh

Definition at line 130 of file MotorEfficiency.h.

◆ setMotorRpm() [1/3]

void MotorEfficiency::setMotorRpm ( double  motorRpm)
inline

Sets the RPM of motor

Parameters
motorRpmdouble, RPM of motor

Definition at line 82 of file MotorEfficiency.h.

◆ setMotorRpm() [2/3]

void MotorEfficiency::setMotorRpm ( double  motorRpm)
inline

Sets the RPM of motor

Parameters
motorRpmdouble, RPM of motor

Definition at line 82 of file MotorEfficiency.h.

◆ setMotorRpm() [3/3]

void MotorEfficiency::setMotorRpm ( double  motorRpm)
inline

Sets the RPM of motor

Parameters
motorRpmdouble, RPM of motor

Definition at line 82 of file MotorEfficiency.h.


The documentation for this class was generated from the following files: