How to model a variable RL branch?

1 view (last 30 days)
And Meng
And Meng on 26 Apr 2017
Commented: And Meng on 27 Apr 2017
Hi, I would like to implementing a current controlled variable RL branch using integrator. I have one using i(t) = integ( v(t) - i(t)*R ) / L, but this would develop an algebraic loop, which I want to avoid. Any ideas?

Answers (1)

Sebastian Castro
Sebastian Castro on 26 Apr 2017
This is the right approach, but as you said it does come with an algebraic loop. You can resolve this loop by adding in a Transfer Fcn block to act as a low-pass filter. In fact, several Simscape Power Systems blocks (e.g. PV Array) already do this under the hood.
The transfer function will typically take the form 1/(Ns+1) where N is associated with the time constant of the filter. You want to pick this value to be small enough that it doesn't filter out your system dynamics, but large enough that it doesn't slow down your simulation with high-frequency components.
Sebastian
  1 Comment
And Meng
And Meng on 27 Apr 2017
Hi Sebastian, I have added a transfer fcn with a time constant of (1e-6) after the divide sign. This return me an error message. I know that my fundamental frequency would be around 50 Hz, and not caring for other frequency components. Do you know what is causing this error?
An error occurred while running the simulation and the simulation was terminated
Derivative of state '1' in block 'xx/xxx/Subsystem/Integrator' at time 0.00495 is not finite. The simulation will be stopped. There may be a singularity in the solution. If not,
try reducing the step size (either by reducing the
fixed step size or by tightening the error tolerances)

Sign in to comment.

Categories

Find more on Physical Units in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!