Class ClosedLoopRampsConfigs

java.lang.Object
com.ctre.phoenix6.configs.ClosedLoopRampsConfigs
All Implemented Interfaces:
ParentConfiguration, ISerializable, Cloneable

Configs that affect the closed-loop control of this motor controller.

Closed-loop ramp rates for the various control types.

  • Field Details

    • DutyCycleClosedLoopRampPeriod

      If non-zero, this determines how much time to ramp from 0% output to 100% during the closed-loop DutyCycle control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
    • VoltageClosedLoopRampPeriod

      If non-zero, this determines how much time to ramp from 0V output to 12V during the closed-loop Voltage control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
    • TorqueClosedLoopRampPeriod

      If non-zero, this determines how much time to ramp from 0A output to 300A during the closed-loop TorqueCurrent control modes.

      Since TorqueCurrent is directly proportional to acceleration, this ramp limits jerk instead of acceleration.

      If the goal is to limit acceleration or jerk, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 10
      • Default Value: 0
      • Units: seconds
  • Constructor Details

  • Method Details

    • withDutyCycleClosedLoopRampPeriod

      public final ClosedLoopRampsConfigs withDutyCycleClosedLoopRampPeriod(double newDutyCycleClosedLoopRampPeriod)
      Modifies this configuration's DutyCycleClosedLoopRampPeriod parameter and returns itself for method-chaining and easier to use config API.

      If non-zero, this determines how much time to ramp from 0% output to 100% during the closed-loop DutyCycle control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
      Parameters:
      newDutyCycleClosedLoopRampPeriod - Parameter to modify
      Returns:
      Itself
    • withDutyCycleClosedLoopRampPeriod

      public final ClosedLoopRampsConfigs withDutyCycleClosedLoopRampPeriod(Time newDutyCycleClosedLoopRampPeriod)
      Modifies this configuration's DutyCycleClosedLoopRampPeriod parameter and returns itself for method-chaining and easier to use config API.

      If non-zero, this determines how much time to ramp from 0% output to 100% during the closed-loop DutyCycle control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
      Parameters:
      newDutyCycleClosedLoopRampPeriod - Parameter to modify
      Returns:
      Itself
    • getDutyCycleClosedLoopRampPeriodMeasure

      Helper method to get this configuration's DutyCycleClosedLoopRampPeriod parameter converted to a unit type. If not using the Java units library, DutyCycleClosedLoopRampPeriod can be accessed directly instead.

      If non-zero, this determines how much time to ramp from 0% output to 100% during the closed-loop DutyCycle control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
      Returns:
      DutyCycleClosedLoopRampPeriod
    • withVoltageClosedLoopRampPeriod

      public final ClosedLoopRampsConfigs withVoltageClosedLoopRampPeriod(double newVoltageClosedLoopRampPeriod)
      Modifies this configuration's VoltageClosedLoopRampPeriod parameter and returns itself for method-chaining and easier to use config API.

      If non-zero, this determines how much time to ramp from 0V output to 12V during the closed-loop Voltage control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
      Parameters:
      newVoltageClosedLoopRampPeriod - Parameter to modify
      Returns:
      Itself
    • withVoltageClosedLoopRampPeriod

      public final ClosedLoopRampsConfigs withVoltageClosedLoopRampPeriod(Time newVoltageClosedLoopRampPeriod)
      Modifies this configuration's VoltageClosedLoopRampPeriod parameter and returns itself for method-chaining and easier to use config API.

      If non-zero, this determines how much time to ramp from 0V output to 12V during the closed-loop Voltage control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
      Parameters:
      newVoltageClosedLoopRampPeriod - Parameter to modify
      Returns:
      Itself
    • getVoltageClosedLoopRampPeriodMeasure

      Helper method to get this configuration's VoltageClosedLoopRampPeriod parameter converted to a unit type. If not using the Java units library, VoltageClosedLoopRampPeriod can be accessed directly instead.

      If non-zero, this determines how much time to ramp from 0V output to 12V during the closed-loop Voltage control modes.

      If the goal is to limit acceleration, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 1
      • Default Value: 0
      • Units: seconds
      Returns:
      VoltageClosedLoopRampPeriod
    • withTorqueClosedLoopRampPeriod

      public final ClosedLoopRampsConfigs withTorqueClosedLoopRampPeriod(double newTorqueClosedLoopRampPeriod)
      Modifies this configuration's TorqueClosedLoopRampPeriod parameter and returns itself for method-chaining and easier to use config API.

      If non-zero, this determines how much time to ramp from 0A output to 300A during the closed-loop TorqueCurrent control modes.

      Since TorqueCurrent is directly proportional to acceleration, this ramp limits jerk instead of acceleration.

      If the goal is to limit acceleration or jerk, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 10
      • Default Value: 0
      • Units: seconds
      Parameters:
      newTorqueClosedLoopRampPeriod - Parameter to modify
      Returns:
      Itself
    • withTorqueClosedLoopRampPeriod

      public final ClosedLoopRampsConfigs withTorqueClosedLoopRampPeriod(Time newTorqueClosedLoopRampPeriod)
      Modifies this configuration's TorqueClosedLoopRampPeriod parameter and returns itself for method-chaining and easier to use config API.

      If non-zero, this determines how much time to ramp from 0A output to 300A during the closed-loop TorqueCurrent control modes.

      Since TorqueCurrent is directly proportional to acceleration, this ramp limits jerk instead of acceleration.

      If the goal is to limit acceleration or jerk, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 10
      • Default Value: 0
      • Units: seconds
      Parameters:
      newTorqueClosedLoopRampPeriod - Parameter to modify
      Returns:
      Itself
    • getTorqueClosedLoopRampPeriodMeasure

      Helper method to get this configuration's TorqueClosedLoopRampPeriod parameter converted to a unit type. If not using the Java units library, TorqueClosedLoopRampPeriod can be accessed directly instead.

      If non-zero, this determines how much time to ramp from 0A output to 300A during the closed-loop TorqueCurrent control modes.

      Since TorqueCurrent is directly proportional to acceleration, this ramp limits jerk instead of acceleration.

      If the goal is to limit acceleration or jerk, it is more useful to ramp the closed-loop setpoint instead of the output. This can be achieved using Motion Magic® controls.

      The acceleration and current draw of the motor can also be better restricted using current limits instead of a ramp rate.

      • Minimum Value: 0
      • Maximum Value: 10
      • Default Value: 0
      • Units: seconds
      Returns:
      TorqueClosedLoopRampPeriod
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • serialize

      public final String serialize()
      Get the serialized form of this configuration group.
      Specified by:
      serialize in interface ISerializable
      Returns:
      Serialized form of this config group
    • deserialize

      public final StatusCode deserialize(String to_deserialize)
      Take a string and deserialize it to this configuration group.
      Specified by:
      deserialize in interface ParentConfiguration
      Returns:
      Return code of the deserialize method
    • clone

      Overrides:
      clone in class Object