Skip to content

Using interconnect/interconnected system #516

Closed
@sawyerbfuller

Description

@sawyerbfuller

Trying to get the hang of creating interconnected systems, and hoping that interconnect can provide a more human-readable form of connect.

This is my question: If I'd like to create a simple feedback system like this:

                    y
->0--->P(s)------>
  ^ -           |
  |    u        |
  ------C(s)<----

the following code gives the same system for both systems:

P = control.ss(control.tf(1, [1, 0]))
C = control.ss(control.tf(10, [1, 1]))
Pio = control.LinearIOSystem(P, inputs='u', outputs='y', name='P')
Cio = control.LinearIOSystem(C, inputs='y', outputs='u', name='C')
CL = control.interconnect((Pio, Cio), 
                                    connections = [['P.u', 'C.u'], ['C.y', '-P.y']],
                                    inplist='P.u', outlist='P.y')
display(control.feedback(P, C))
display(CL)

Is there any chance you could just, by correctly assigning names that match between systems as I have done here, interconnect automatically without needing the "connections" argument? Here, that doesnt seem to work (systems don't match anymore), but for some reason I had in my mind that it was possible. Am I just missing something? Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions