Skip to content

Commit 5b2b96d

Browse files
committed
update pacakge links
1 parent db44227 commit 5b2b96d

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

docs/src/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,8 @@ Depth = 1
6161

6262
The JuliaControl and surrounding ecosystem contains a few additional packages that may be of interest
6363
- [RobustAndOptimalControl.jl](https://github.com/JuliaControl/RobustAndOptimalControl.jl) contains more advanced features for LQG design, robust analysis and synthesis, uncertainty modeling, named systems and an interface to [DescriptorSystems.jl](https://github.com/andreasvarga/DescriptorSystems.jl).
64-
- [SymbolicControlSystems.jl](https://github.com/JuliaControl/SymbolicControlSystems.jl) contains basic C-code generation for linear systems.
64+
- [ModelPredictiveControl.jl](https://github.com/JuliaControl/ModelPredictiveControl.jl) is a package for solving both linear and nonlinear MPC problems.
65+
- [SymbolicControlSystems.jl](https://github.com/JuliaControl/SymbolicControlSystems.jl) contains basic C-code generation for linear systems as well as symbolic manipulation of transfer functions using SymPy.
6566
- [ControlSystemIdentification.jl](https://github.com/baggepinnen/ControlSystemIdentification.jl) is a system-identification toolbox for identification of LTI systems using either time or frequency-domain data. This package can use data to estimate statespace models, transfer-function models and Kalman filters that can be used for control design.
6667
- [ControlSystemsMTK.jl](https://juliacontrol.github.io/ControlSystemsMTK.jl/dev/) is an interface between ControlSystems.jl and [ModelingToolkit.jl](https://mtk.sciml.ai/stable/).
6768
- [DiscretePIDs.jl](https://github.com/JuliaControl/DiscretePIDs.jl) contains a reference implementation in Julia of a discrete-time PID controller including set-point weighting, integrator anti-windup, derivative filtering and bumpless transfer.
@@ -80,7 +81,6 @@ and the introductory Youtube video below, as well as the following [Youtube play
8081
The following is a list of packages from the wider Julia ecosystem that may be of interest.
8182

8283
- [DescriptorSystems.jl](https://github.com/andreasvarga/DescriptorSystems.jl) contains types that represent statespace systems on descriptor form, i.e., with a mass matrix. These systems can represent linear DAE systems and non-proper systems.
83-
- [TrajectoryOptimization.jl](http://roboticexplorationlab.org/TrajectoryOptimization.jl/stable/) is one of the more developed packages for open-loop **optimal control** and trajectory optimization in Julia.
8484
- [LowLevelParticleFilters.jl](https://github.com/baggepinnen/LowLevelParticleFilters.jl) is a library for state estimation using particle filters and Kalman filters of different flavors.
8585
- [ModelingToolkit.jl](https://mtk.sciml.ai/stable/) is an acausal modeling tool, similar in spirit to Modelica. A video showing ControlSystems and ModelingToolkit together is [available here](https://youtu.be/favQKOyyx4o). [ControlSystemsMTK.jl](https://juliacontrol.github.io/ControlSystemsMTK.jl/dev/) exists to ease the use of these two packages together.
8686
- [JuliaSimControl.jl](https://help.juliahub.com/juliasimcontrol/dev/) is a product that builds upon the JuliaControl ecosystem and ModelingToolkit, providing additional nonlinear and robust control methods.
@@ -89,9 +89,9 @@ The following is a list of packages from the wider Julia ecosystem that may be o
8989
- [MatrixEquations.jl](https://github.com/andreasvarga/MatrixEquations.jl) contains solvers for many different matrix equations common in control. ControlSystems.jl makes use of this package for solving Riccati and Lyapunov equations.
9090
- [JuMP.jl](https://jump.dev/JuMP.jl/stable/) is a modeling language for optimization, similar to YALMIP. JuMP is suitable for solving LMI/SDP problems as well as advanced linear MPC problems.
9191
- [SumOfSquares.jl](https://jump.dev/SumOfSquares.jl/stable/) is a package for sum-of-squares programming that builds on top of JuMP. Their documentation contains examples of Lyapunov-function search and nonlinear synthesis.
92+
- [InfiniteOpt.jl](https://github.com/infiniteopt/InfiniteOpt.jl) is a tool for solving numerical optimal-control problems built on top of JuMP.
9293
- [MonteCarloMeasurements.jl](https://baggepinnen.github.io/MonteCarloMeasurements.jl/stable/) is a library for working with parametric uncertainty. An example using ControlSystems is available [here](https://github.com/baggepinnen/MonteCarloMeasurements.jl/blob/master/examples/controlsystems.jl).
9394
- [DifferentialEquations.jl](https://diffeq.sciml.ai/stable/) is the home of the SciML ecosystem that provides solvers for scientific problems. ControlSystems.jl uses these solvers for continuous-time simulations.
94-
- [Dojo.jl](https://github.com/dojo-sim/Dojo.jl) is a differentiable robot simulator.
9595
- [StaticCompiler.jl](https://github.com/tshort/StaticCompiler.jl) contains tools for compiling small binaries of Julia programs.
9696
- [JuliaPOMDP](https://github.com/JuliaPOMDP) is a Julia ecosystem for reinforcement learning.
9797
- [JuliaReinforcementLearning](https://github.com/JuliaReinforcementLearning) is another Julia ecosystem for reinforcement learning.

docs/src/man/creating_systems.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ The transfer functions created using this method will be of type `TransferFuncti
3737
For more general expressions, it is sometimes more convenient to define `s = tf("s")` (only use this approach for low-order systems).:
3838
#### Example:
3939
```julia
40-
julia> s = tf("s")
40+
julia> s = tf("s") # or s = zpk("s"), z = tf("z", Ts), z = zpk("z", Ts)
4141

4242
TransferFunction{Continuous,ControlSystems.SisoRational{Int64}}
4343
s

lib/ControlSystemsBase/src/pid_design.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ C3 = pid(2., 3, 0; Ts=0.4, state_space=true) # Discrete
3737
```
3838
3939
The functions `pid_tf` and `pid_ss` are also exported. They take the same parameters
40-
and is what is actually called in `pid` based on the `state_space` parameter.
40+
and is what is actually called in `pid` based on the `state_space` parameter. See also [`pid_2dof`](@ref) for a 2DOF controller with inputs `[r; y]` and outputs `u`.
4141
"""
4242
function pid(param_p, param_i, param_d=zero(typeof(param_p)); form=:standard, Ts=nothing, Tf=nothing, state_space=false, balance=true, kwargs...)
4343
C = if state_space # Type instability? Can it be fixed easily, does it matter?

0 commit comments

Comments
 (0)