Skip to content
LIBRARY
Interfaces.SingleVariableController.md

Interfaces.SingleVariableController ​

Interface for single-variable continuous controllers with setpoint input, measurement input, and control output.

Defines the basic interface for feedback controllers with one setpoint input, one measurement input, and one control output. This partial component serves as a template for implementing specific control algorithms like PID controllers or state-feedback controllers.

u_s
│
v
┌─────┐
│     │
│     │ ──► y
│     │
└─────┘
^
│
u_m

Partial component that can be extended to create various controller implementations that operate on the error between setpoint and measurement.

Usage ​

BlockComponents.Interfaces.SingleVariableController()

Connectors ​

  • u_s - This connector represents a real signal as an input to a component (RealInput)

  • u_m - This connector represents a real signal as an input to a component (RealInput)

  • y - This connector represents a real signal as an output from a component (RealOutput)

Source ​

dyad
"""
Interface for single-variable continuous controllers with setpoint input, measurement input, and control output.

Defines the basic interface for feedback controllers with one setpoint input, one measurement input, and one
control output. This partial component serves as a template for implementing specific control algorithms
like PID controllers or state-feedback controllers.

```
u_s
│
v
┌─────┐
│     │
│     │ ──► y
│     │
└─────┘
^
│
u_m
```

Partial component that can be extended to create various controller implementations that operate on the error between setpoint and measurement.
"""
partial component SingleVariableController
  "Connector of setpoint input signal"
  u_s = RealInput() {
    "Dyad": {
      "placement": {
        "icon": {"iconName": "default", "x1": -100, "y1": 220, "x2": 0, "y2": 320, "rot": 0},
        "diagram": {"iconName": "default", "x1": -100, "y1": 220, "x2": 0, "y2": 320, "rot": 0}
      }
    }
  }
  "Connector of measurement input signal"
  u_m = RealInput() {
    "Dyad": {
      "placement": {
        "icon": {"iconName": "default", "x1": -100, "y1": 680, "x2": 0, "y2": 780, "rot": 0},
        "diagram": {"iconName": "default", "x1": -100, "y1": 680, "x2": 0, "y2": 780, "rot": 0}
      }
    }
  }
  "Connector of actuator output signal"
  y = RealOutput() {
    "Dyad": {
      "placement": {
        "icon": {"iconName": "output", "x1": 1000, "y1": 450, "x2": 1100, "y2": 550, "rot": 0},
        "diagram": {"iconName": "output", "x1": 1000, "y1": 450, "x2": 1100, "y2": 550, "rot": 0}
      }
    }
  }
relations
metadata {"Dyad": {"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}]}}
end
Flattened Source
dyad
"""
Interface for single-variable continuous controllers with setpoint input, measurement input, and control output.

Defines the basic interface for feedback controllers with one setpoint input, one measurement input, and one
control output. This partial component serves as a template for implementing specific control algorithms
like PID controllers or state-feedback controllers.

```
u_s
│
v
┌─────┐
│     │
│     │ ──► y
│     │
└─────┘
^
│
u_m
```

Partial component that can be extended to create various controller implementations that operate on the error between setpoint and measurement.
"""
partial component SingleVariableController
  "Connector of setpoint input signal"
  u_s = RealInput() {
    "Dyad": {
      "placement": {
        "icon": {"iconName": "default", "x1": -100, "y1": 220, "x2": 0, "y2": 320, "rot": 0},
        "diagram": {"iconName": "default", "x1": -100, "y1": 220, "x2": 0, "y2": 320, "rot": 0}
      }
    }
  }
  "Connector of measurement input signal"
  u_m = RealInput() {
    "Dyad": {
      "placement": {
        "icon": {"iconName": "default", "x1": -100, "y1": 680, "x2": 0, "y2": 780, "rot": 0},
        "diagram": {"iconName": "default", "x1": -100, "y1": 680, "x2": 0, "y2": 780, "rot": 0}
      }
    }
  }
  "Connector of actuator output signal"
  y = RealOutput() {
    "Dyad": {
      "placement": {
        "icon": {"iconName": "output", "x1": 1000, "y1": 450, "x2": 1100, "y2": 550, "rot": 0},
        "diagram": {"iconName": "output", "x1": 1000, "y1": 450, "x2": 1100, "y2": 550, "rot": 0}
      }
    }
  }
relations
metadata {"Dyad": {"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}]}}
end


Test Cases ​

No test cases defined.

  • Examples

  • Experiments

  • Analyses