Skip to content

Commit

Permalink
add delay margin and frequency to diskmargin printout
Browse files Browse the repository at this point in the history
  • Loading branch information
baggepinnen committed Mar 16, 2022
1 parent 0f51864 commit a62b581
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 10 deletions.
9 changes: 0 additions & 9 deletions docs/src/uncertainty.md
Original file line number Diff line number Diff line change
Expand Up @@ -175,32 +175,23 @@ In robust control, we often find ourselves having to consider the feedback inter
│ │
y┌───┤ │◄───┐u
│ └─────────┘ │
│ │
│ ┌───┐ │
│ │ │ │
└─────►│ K ├───────┘
│ │
└───┘
```
```
┌───┐
│ │
┌─────►│ Δ ├───────┐
│ │ │ │
│ └───┘ │
│ │
│ ┌─────────┐ │
zΔ└───┤ │◄───┘wΔ
│ │
z◄───┤ P │◄────w
│ │
y┌───┤ │◄───┐u
│ └─────────┘ │
│ │
│ ┌───┐ │
│ │ │ │
└─────►│ K ├───────┘
│ │
└───┘
```

Expand Down
9 changes: 8 additions & 1 deletion src/diskmargin.jl
Original file line number Diff line number Diff line change
Expand Up @@ -57,13 +57,20 @@ Base.propertynames(dm::Diskmargin) = (fieldnames(typeof(dm))..., :margin, :gainm
function Base.show(io::IO, dm::Diskmargin)
println(io, "Disk margin with:")
println(io, "Margin: ", dm.α)
println(io, "Frequency: ", dm.ω0)
println(io, "Frequency: ", dm.ω0, " rad/s, ", dm.ω0/(2π), " Hz")
if dm.γmax < dm.γmin # In this case, we have an "inverted circle"
println(io, "Gain margins: [$(dm.γmin), Inf]")
else
println(io, "Gain margins: [$(dm.γmin), $(dm.γmax)]")
end
println(io, "Phase margin: ", dm.ϕm)
delaymarg = π/180 * dm.ϕm / dm.ω0
print(io, "Delay margin: ", delaymarg, " s")
if isdiscrete(dm.L)
println(io, ", ", floor(Int, delaymarg / dm.L.Ts), " samples")
else
println(io)
end
println(io, "Skew: ", dm.σ)
println(io, "Worst-case perturbation: ", dm.f0)
end
Expand Down

0 comments on commit a62b581

Please sign in to comment.