WOLFRAM

WolframControl SystemsA Core Part of
Wolfram Language

Model, Design, Deploy.

Model the environment. Design a controller. Deploy to the real world. All in a highly integrated workflow, developed for learners and professionals.

Block-Based Models

Create state-space or transfer function model blocks directly or from differential or difference equations. Connect them to form larger systems. Use the resulting models for analysis, design and deployment.

Component-Based Models

Drag, drop and connect model components like Lego pieces to get high-fidelity multidomain models. Use them for simulation, validation and to derive block-based models for control design.

Graphical Design

Design and analyze control systems using graphical techniques such as Bode, Nyquist, root locus and other plots. Typical examples include lead-lag design, stability analysis and robustness analysis.

PID Design

Automatically tune PID controllers based on tuning models and rules. Improve system tracking and disturbance rejection. Comes with built-in tuning rules, including Ziegler–Nichols, Cohen–Coon and several more.

LQ Design

Design controllers and estimators using linear quadratic (LQ) optimization methods. Solve regulation or tracking problems. Comes with built-in support for standard techniques, including LQR, LQG and Kalman.

MPC Design

Design explicit model predictive controllers (MPC) for fast-sampling applications and those with limited computing power by automatically using offline parametric optimization. Solve constrained regulation or tracking problems for 1-, squared 2- or ∞-normed cost minimization.

Delay and Descriptor Design

Design controllers for models with delays and a mixture of dynamic and algebraic equations. Delays, from communication lags etc., can cause instabilities unless compensated for. Use special-purpose procedures such as a Smith compensator or reduce to standard models using approximations.

Affine and Nonlinear Design

Design nonlinear controllers for systems in which nonlinearities play an important role. This results in less performance degradation in regions far from the operating point. Employ symbolic techniques such as feedback linearization, output regulation and more.

FMI Deployment

Deploy controllers as Functional Mockup Units (FMUs) to 100+ other FMI-compatible tools. Collaborate effectively in an environment where subsystems are designed by different companies and tools. Identify defects early and avoid major downstream integration issues.

Microcontroller Deployment

Automatically generate and deploy control designs and data acquisition code to microcontrollers. Eliminate error-prone and tedious iterations of the lower-level source code.

Live Playground

This is an interactive notebook—try making your own changes!

Wolfram Control Systems Documentation

Wolfram Control Systems is an integrated part of Wolfram Language. The full system contains over 6,000 built-in functions covering all areas of computation—all carefully integrated so they work perfectly together.

Wolfram Language
Full Scope & Documentation
AffineStateSpaceModel ▪ AsymptoticOutputTracker ▪ BodePlot ▪ CarlemanLinearize ▪ ContinuousTimeModelQ ▪ ControllabilityGramian ▪ ControllabilityMatrix ▪ ControllableDecomposition ▪ ControllableModelQ ▪ DescriptorStateSpace ▪ DiscreteInputOutputModel ▪ DiscreteLQEstimatorGains ▪ DiscreteLQRegulatorGains ▪ DiscreteTimeModelQ ▪ DualSystemsModel ▪ EstimatorGains ▪ EstimatorRegulator ▪ FeedbackLinearize ▪ FeedbackSector ▪ FeedbackSectorStyle ▪ FeedbackType ▪ FullInformationOutputRegulator ▪ GainMargins ▪ GainPhaseMargins ▪ InternallyBalancedDecomposition ▪ JordanModelDecomposition ▪ KalmanEstimator ▪ KroneckerModelDecomposition ▪ LinearizingTransformationData ▪ LQEstimatorGains ▪ LQGRegulator ▪ LQOutputRegulatorGains ▪ LQRegulatorGains ▪ MinimalStateSpaceModel ▪ ModelPredictiveController ▪ NicholsGridLines ▪ NicholsPlot ▪ NonlinearStateSpaceModel ▪ NyquistGridLines ▪ NyquistPlot ▪ ObservabilityGramian ▪ ObservabilityMatrix ▪ ObservableDecomposition ▪ ObservableModelQ ▪ OutputControllabilityMatrix ▪ OutputControllableModelQ ▪ OutputResponse ▪ PhaseMargins ▪ PhaseRange ▪ PIDData ▪ PIDDerivativeFilter ▪ PIDFeedforward ▪ PIDTune ▪ PoleZeroMarkers ▪ RootLocusPlot ▪ SamplingPeriod ▪ SingularValuePlot ▪ SmithDelayCompensator ▪ StabilityMargins ▪ StabilityMarginsStyle ▪ StateFeedbackGains ▪ StateOutputEstimator ▪ StateResponse ▪ StateSpaceModel ▪ StateSpaceRealization ▪ StateSpaceTransform ▪ StateTransformationLinearize ▪ SystemsConnectionsModel ▪ SystemsModelControllerData ▪ SystemsModelDelay ▪ SystemsModelDelayApproximate ▪ SystemsModelDelete ▪ SystemsModelDimensions ▪ SystemsModelExtract ▪ SystemsModelFeedbackConnect ▪ SystemsModelLabels ▪ SystemsModelLinearity ▪ SystemsModelMerge ▪ SystemsModelOrder ▪ SystemsModelParallelConnect ▪ SystemsModelSeriesConnect ▪ SystemsModelStateFeedbackConnect ▪ SystemsModelVectorRelativeOrders ▪ ToContinuousTimeModel ▪ ToDiscreteTimeModel ▪ TransferFunctionCancel ▪ TransferFunctionExpand ▪ TransferFunctionFactor ▪ TransferFunctionModel ▪ TransferFunctionPoles ▪ TransferFunctionZeros ▪ Eigenvalues ▪ Unevaluated ▪ ZTransform ▪ MatrixExp ▪ LaplaceTransform ▪ MatrixLog ▪ MaxIterations ▪ ZeroTest ▪ PadeApproximant ▪ StandardForm ▪ DiscreteShift ▪ IdentityMatrix ▪ D ▪ Inverse ▪ MAProcess ▪ ARProcess ▪ ARMAProcess ▪ ARIMAProcess ▪ SARIMAProcess ▪ SARMAProcess ▪ CreateSystemModel ▪ SquareWave ▪ Cos ▪ Function ▪ Tolerance ▪ Interval ▪ ListPlot ▪ NRoots ▪ PlotMarkers ▪ UnitStep ▪ NDSolve ▪ RecurrenceTable ▪ DSolve ▪ RSolve ▪ InverseLaplaceTransform ▪ InverseZTransform ▪ GreenFunction ▪ Graphics ▪ LineLegend ▪ Dashed ▪ Dotted ▪ Minimize ▪ JordanDecomposition ▪ Eigensystem ▪ SingularValueDecomposition ▪ Solve ▪ NSolve ▪ Listable ▪ LinearSolve ▪ Sin ▪ MatrixRank ▪ Min ▪ Sort ▪ Max ▪ TemporalData ▪ MissingDataMethod ▪ ResamplingMethod ▪ InterpolationOrder ▪ FoldList ▪ Association ▪ Dataset ▪ RecurrenceFilter ▪ TimeSeries ▪ ListConvolve ▪ Det ▪ MonomialList ▪ Block ▪ AlignmentPoint ▪ Center ▪ AspectRatio ▪ GoldenRatio ▪ Axes ▪ AxesLabel ▪ AxesOrigin ▪ AxesStyle ▪ Background ▪ BaselinePosition ▪ BaseStyle ▪ ClippingStyle ▪ ColorFunctionScaling ▪ ColorFunction ▪ ContentSelectable ▪ CoordinatesToolOptions ▪ Epilog ▪ EvaluationMonitor ▪ Exclusions ▪ ExclusionsStyle ▪ Filling ▪ FillingStyle ▪ FormatType ▪ TraditionalForm ▪ Frame ▪ FrameLabel ▪ FrameStyle ▪ FrameTicks ▪ FrameTicksStyle ▪ GridLines ▪ GridLinesStyle ▪ ImageMargins ▪ ImagePadding ▪ ImageSize ▪ LabelingSize ▪ LabelStyle ▪ MaxRecursion ▪ Mesh ▪ MeshFunctions ▪ MeshShading ▪ MeshStyle ▪ Method ▪ PerformanceGoal ▪ $PerformanceGoal ▪ PlotHighlighting ▪ PlotLabel ▪ PlotLabels ▪ PlotLayout ▪ PlotLegends ▪ PlotPoints ▪ PlotRange ▪ Full ▪ PlotRangeClipping ▪ PlotRangePadding ▪ PlotRegion ▪ PlotStyle ▪ PlotTheme ▪ $PlotTheme ▪ PreserveImageOptions ▪ Prolog ▪ RegionFunction ▪ RotateLabel ▪ True ▪ None ▪ ScalingFunctions ▪ False ▪ TargetUnits ▪ Ticks ▪ TicksStyle ▪ WorkingPrecision ▪ MachinePrecision ▪ AbsArgPlot ▪ Total ▪ All ▪ ExternalTypeSignature ▪ Automatic ▪ Normal ▪ Transpose ▪ ItoProcess ▪ SystemModelExamples ▪ SystemModels ▪ SystemModelSimulate ▪ SystemModelMeasurements ▪ SystemModelSimulationData ▪ SystemModelSimulateSensitivity ▪ SystemModelPlot ▪ ParametricPlot ▪ SystemModel ▪ Plot ▪ ListLinePlot ▪ LogPlot ▪ SystemModelParametricSimulate ▪ ParametricFunction ▪ NMinimize ▪ FindMinimum ▪ NMaximize ▪ SystemModelLinearize ▪ FindSystemModelEquilibrium ▪ ConnectSystemModelController ▪ SystemModelReliability ▪ ReliabilityDistribution ▪ SurvivalFunction ▪ StructuralImportance ▪ ButterworthFilterModel ▪ Chebyshev1FilterModel ▪ BiquadraticFilterModel ▪ InputOutputResponse ▪ InputOutputResponseData ▪ RiccatiSolve ▪ DiscreteRiccatiSolve ▪ LyapunovSolve ▪ DiscreteLyapunovSolve ▪

Get Started with Wolfram Control Systems

Explore interactive examples
in the cloud

Wolfram Supports Organizations Large and Small