ControlSurfacePidController

class sharpy.controllers.controlsurfacepidcontroller.ControlSurfacePidController[source]

The settings that this solver accepts are given by a dictionary, with the following key-value pairs:

Name

Type

Description

Default

time_history_input_file

str

Route and file name of the time history of desired state

None

P

float

Proportional gain of the controller

None

I

float

Integral gain of the controller

0.0

D

float

Differential gain of the controller

0.0

input_type

str

Quantity used to define the reference state. Supported: pitch

None

dt

float

Time step of the simulation

None

controlled_surfaces

list(int)

Control surface indices to be actuated by this controller

None

controlled_surfaces_coeff

list(float)

Control surface deflection coefficients. For example, for antisymmetric deflections => [1, -1].

[1.0]

write_controller_log

bool

Write a time history of input, required input, and control

True

controller_log_route

str

Directory where the log will be stored

./output/

control(data, controlled_state)[source]

Main routine of the controller. Input is data (the self.data in the solver), and currrent_state which is a dictionary with [‘structural’, ‘aero’] time steps for the current iteration.

Parameters
  • data – problem data containing all the information.

  • controlled_statedict with two vars: structural and aero containing the timestep_info that will be returned with the control variables.

Returns

A dict with structural and aero time steps and control input included.