AuboCaps  0.6.0
arcs::aubo_scope::Payload Class Reference

#include <payload.h>

Public Types

enum  ParametersWarning { NO_WARNING, MASS_0KG, RATED_MASS_EXCEEDED, MASS_AND_CENTER_OF_GRAVITY_EXCEEDED }
 

Public Member Functions

 Payload (Payload &f)
 
 Payload (Payload &&f)
 
 ~Payload ()
 
double getMass () const
 
std::vector< double > getCenterOfGravity () const
 Gets the payload's center of gravity (CoG), also referred to as center of mass. More...
 
std::vector< double > getInertiaMatrix () const
 
std::string getDisplayName () const
 
bool isResolvable ()
 
bool isUsable ()
 
ParametersWarning getParametersWarning ()
 
size_t hashCode ()
 

Private Member Functions

 Payload ()
 

Private Attributes

void * d_ { nullptr }
 

Friends

class DataSwitch
 

Detailed Description

Definition at line 11 of file payload.h.

Member Enumeration Documentation

This enum represents the different types of warnings that the parameters of a payload can have.

A payload can be usable, but may have a value for a payload parameter or may have a combination of (some of the) payload parameters, that could affect performance of the robot, if the payload is used (i.e., if the parameters are applied).

Enumerator
NO_WARNING 

None of the parameters of the payload or the combination of payload parameters has any warnings.

MASS_0KG 

The payload has a mass of 0 kg which is most likely not intended/valid.

Note that the value for the payload mass should be the total mass of the payload attached to the tool output flange of the robot.

RATED_MASS_EXCEEDED 

The mass of the payload exceeds the rated maximum supported payload mass of the robot.

Using the payload could affect performance of the robot.

MASS_AND_CENTER_OF_GRAVITY_EXCEEDED 

The combination of the mass and the center of gravity of could affect the performance of the robot, if the payload is used.

Definition at line 29 of file payload.h.

Constructor & Destructor Documentation

arcs::aubo_scope::Payload::Payload ( Payload f)
arcs::aubo_scope::Payload::Payload ( Payload &&  f)
arcs::aubo_scope::Payload::~Payload ( )
arcs::aubo_scope::Payload::Payload ( )
private

Member Function Documentation

std::vector<double> arcs::aubo_scope::Payload::getCenterOfGravity ( ) const

Gets the payload's center of gravity (CoG), also referred to as center of mass.

It is defined as the offset between the center of the tool output flange and the center of gravity of the attached payload.

Returns
The center of gravity (CoG) of the payload relative to the center of the tool output flange
std::string arcs::aubo_scope::Payload::getDisplayName ( ) const

Gets the name of the payload displayed in the AuboScope UI.

Note: The payload can change name at any time, and thus the name must not be used to uniquely identify a specific payload. The payload name can change in the following situations:

  • The payload is renamed by the end user
  • The name gets translated (depending on the selected language in AuboScope)
  • The name is changed between versions of the AuboCap that added the payload
Returns
The name of the payload displayed in AuboScope
std::vector<double> arcs::aubo_scope::Payload::getInertiaMatrix ( ) const

Gets the inertia matrix of the payload. The inertia matrix is defined in a coordinate system with center at the payload's center of gravity (CoG) and the axes aligned with the tool output flange coordinate system (axes).

Note: The inertia matrix specified by the end user can be invalid. The isUsable method can be used determine, if the payload can be used (i.e., has a valid inertia matrix).

Returns
The inertia matrix of the payload
double arcs::aubo_scope::Payload::getMass ( ) const
Returns
The total mass of the payload (attached to the tool output flange of the robot)
ParametersWarning arcs::aubo_scope::Payload::getParametersWarning ( )

Use this method to check if the parameters of this payload have any warnings.

A payload can be usable, but may have a value for a payload parameter or may have a combination of (some of the) payload parameters, that could affect performance of the robot, if the payload is used (i.e., if the parameters are applied).

An unresolvable payload (see isResolvable()) will have no warning for its parameters (i.e. ParametersWarning#NO_WARNING is returned).

Returns
The warning (if any) for the parameters of this payload.
size_t arcs::aubo_scope::Payload::hashCode ( )
bool arcs::aubo_scope::Payload::isResolvable ( )

A payload cannot be guaranteed to be present in AuboScope. This method can be used to determine, if the payload is present.

The payload will not be present, if the end user loads a different installation which does not contain the payload, or if the payload is removed by the end user or the AuboCap that added the payload.

Note: Storing an undefined payload in a program node contribution's (a ProgramNodeContribution instance) data model (DataModel interface) will automatically make the program node (and the program) undefined.

Returns
true if this payload is present in AuboScope, otherwise false.
bool arcs::aubo_scope::Payload::isUsable ( )

Use this method to determine if the payload can be used. An unresolvable payload (see the isResolvable method) will always be unusable.

A payload can have an invalid inertia matrix, where all the individual values of the matrix are within the valid range, but the combination of values is invalid.

Note: Storing an unusable payload in a program node contribution's (a ProgramNodeContribution instance) data model (DataModel interface) will automatically make the program node (and the program) undefined.

Returns
true, if the payload is usable, otherwise false. false will always be returned when the payload is unresolvable (see the isResolvable method).

Friends And Related Function Documentation

friend class DataSwitch
friend

Definition at line 178 of file payload.h.

Member Data Documentation

void* arcs::aubo_scope::Payload::d_ { nullptr }
private

Definition at line 180 of file payload.h.


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