SequentialController

Controller that activates individual Controllers in sequential order.

The transition between the individual Controllers is governed by transition_intervals parameter, which is an array of intervals between Controllers. The number of components in transition_intervals should be equal to number of child controllers - 1. Important: you should add a name your child controllers to ensure the optimization parameters have unique names.

# Example of a 2-step feed-forward jumping controller using a SequentialController
SequentialController {
    # We have two controllers, so one interval
    transition_intervals = [ ~0.15<0.1,0.5> ] 

    # First controller prepares for jumping
    FeedForwardController {
        name = Prepare
        symmetric = 1
        Polynomial { degree = 0 coefficient0 = 0.2~0.01<0,1> }
    }

    # Second controller does the actual jump
    FeedForwardController {
        name = Jump
        symmetric = 1
        Polynomial { degree = 0 coefficient0 = 0.5~0.1<0,1> }
    }
}

Inherits from CompositeController.

Public Attributes

Parameter Type Description
transition_intervals std::vector< TimeInSeconds > intervals to use between each set of consecutive controllers
start_time TimeInSeconds Time [s] at which Controller becomes active; default = 0.
stop_time TimeInSeconds Time [s] at which Controller becomes inactive; default = until simulation ends.
name String Name of the controller, uses as a prefix for the control parameters; empty by default.
signature_prefix String Prefix signature with custom string. Special tags: DATE_TIME, DATE_TIME_EXACT, SCONE_VERSION.
signature_postfix String Append custom string to signature. Special tags: DATE_TIME, DATE_TIME_EXACT, SCONE_VERSION.

Converted from doxygen using dokugen

  • (external edit)