Class Command::Settings

Nested Relationships

This class is a nested type of Class Command.

Nested Types

Class Documentation

class Settings

Module settings that are typically changed at a slower rate.

Public Functions

inline Settings(HebiCommandPtr internal_ptr, HebiCommandRef &internal)
inline Actuator &actuator()

Actuator-specific settings, such as controller gains.

inline const Actuator &actuator() const

Actuator-specific settings, such as controller gains.

inline Imu &imu()

IMU-specific settings.

inline const Imu &imu() const

IMU-specific settings.

inline StringField &name()

Sets the name for this module. Name must be null-terminated character string for the name; must be <= 20 characters.

inline const StringField &name() const

Sets the name for this module. Name must be null-terminated character string for the name; must be <= 20 characters.

inline StringField &family()

Sets the family for this module. Name must be null-terminated character string for the family; must be <= 20 characters.

inline const StringField &family() const

Sets the family for this module. Name must be null-terminated character string for the family; must be <= 20 characters.

inline StringField &userSettingsBytes(size_t number)

Sets the given byte array user setting; valid for entry number 1-8. Throws out of range if given an invalid index

inline const StringField &userSettingsBytes(size_t number) const

Sets the given byte array user setting; valid for entry number 1-8. Throws out of range if given an invalid index

inline FloatField &userSettingsFloat(size_t number)

Sets the given float user setting; valid for entry number 1-8. Throws out of range if given an invalid index

inline const FloatField &userSettingsFloat(size_t number) const

Sets the given float user setting; valid for entry number 1-8. Throws out of range if given an invalid index

inline IpAddressField &ipAddress()

Sets the static IP address for this module; must be set in conjunction with the subnet mask. Can be set to 0.0.0.0 to reset to DHCP.

inline const IpAddressField &ipAddress() const

Sets the static IP address for this module; must be set in conjunction with the subnet mask. Can be set to 0.0.0.0 to reset to DHCP.

inline IpAddressField &subnetMask()

Sets the subnet mask for this module; must be used with IP Address if setting a static IP address.

inline const IpAddressField &subnetMask() const

Sets the subnet mask for this module; must be used with IP Address if setting a static IP address.

inline FlagField &saveCurrentSettings()

Indicates if the module should save the current values of all of its settings.

inline const FlagField &saveCurrentSettings() const

Indicates if the module should save the current values of all of its settings.

class Actuator

Actuator-specific settings, such as controller gains.

Public Functions

inline Actuator(HebiCommandRef &internal)
inline CommandGains &positionGains()

Controller gains for the position PID loop.

inline const CommandGains &positionGains() const

Controller gains for the position PID loop.

inline CommandGains &velocityGains()

Controller gains for the velocity PID loop.

inline const CommandGains &velocityGains() const

Controller gains for the velocity PID loop.

inline CommandGains &effortGains()

Controller gains for the effort PID loop.

inline const CommandGains &effortGains() const

Controller gains for the effort PID loop.

inline FloatField &springConstant()

The spring constant of the module.

inline const FloatField &springConstant() const

The spring constant of the module.

inline FloatField &referencePosition()

The internal encoder reference offset (setting this matches the current position to the given reference command)

inline const FloatField &referencePosition() const

The internal encoder reference offset (setting this matches the current position to the given reference command)

inline FloatField &referenceEffort()

The internal effort reference offset (setting this matches the current effort to the given reference command)

inline const FloatField &referenceEffort() const

The internal effort reference offset (setting this matches the current effort to the given reference command)

inline FloatField &velocityLimitMin()

The firmware safety limit for the minimum allowed velocity.

inline const FloatField &velocityLimitMin() const

The firmware safety limit for the minimum allowed velocity.

inline FloatField &velocityLimitMax()

The firmware safety limit for the maximum allowed velocity.

inline const FloatField &velocityLimitMax() const

The firmware safety limit for the maximum allowed velocity.

inline FloatField &effortLimitMin()

The firmware safety limit for the minimum allowed effort.

inline const FloatField &effortLimitMin() const

The firmware safety limit for the minimum allowed effort.

inline FloatField &effortLimitMax()

The firmware safety limit for the maximum allowed effort.

inline const FloatField &effortLimitMax() const

The firmware safety limit for the maximum allowed effort.

inline HighResAngleField &positionLimitMin()

The firmware safety limit for the minimum allowed position.

inline const HighResAngleField &positionLimitMin() const

The firmware safety limit for the minimum allowed position.

inline HighResAngleField &positionLimitMax()

The firmware safety limit for the maximum allowed position.

inline const HighResAngleField &positionLimitMax() const

The firmware safety limit for the maximum allowed position.

inline EnumField<ControlStrategy> &controlStrategy()

How the position, velocity, and effort PID loops are connected in order to control motor PWM.

inline const EnumField<ControlStrategy> &controlStrategy() const

How the position, velocity, and effort PID loops are connected in order to control motor PWM.

inline EnumField<MstopStrategy> &mstopStrategy()

The motion stop strategy for the actuator.

inline const EnumField<MstopStrategy> &mstopStrategy() const

The motion stop strategy for the actuator.

inline EnumField<PositionLimitStrategy> &minPositionLimitStrategy()

The position limit strategy (at the minimum position) for the actuator.

inline const EnumField<PositionLimitStrategy> &minPositionLimitStrategy() const

The position limit strategy (at the minimum position) for the actuator.

inline EnumField<PositionLimitStrategy> &maxPositionLimitStrategy()

The position limit strategy (at the maximum position) for the actuator.

inline const EnumField<PositionLimitStrategy> &maxPositionLimitStrategy() const

The position limit strategy (at the maximum position) for the actuator.

class Imu

IMU-specific settings.

Public Functions

inline Imu(HebiCommandRef &internal)
inline BoolField &accelIncludesGravity()

Whether to include acceleration due to gravity in acceleration feedback.

inline const BoolField &accelIncludesGravity() const

Whether to include acceleration due to gravity in acceleration feedback.