Skip to content

control: Control Systems toolbox

Ben edited this page Mar 17, 2017 · 12 revisions

Background

Control systems engineering is a discipline that models the behaviour of a wide range of dynamic systems and the design of controllers that enable these systems produce a desired behaviour. The system analysis is carried out in the time domain using differential equations, in the complex-s domain with the Laplace transform, or in the frequency domain by transforming from the complex-s domain. In recent times, control theory is carried out in the state space, and can deal with multiple-input and multiple-output (MIMO) systems. This overcomes the limitations of classical control theory in more sophisticated design problems. Control techniques today are mostly implemented through computers often as embedded systems.

Control engineering has an essential role in a wide range of control systems, from simple household washing machines to high-performance F-16 fighter aircraft. It seeks to understand physical systems, using mathematical modeling, in terms of inputs, outputs and various components with different behaviors, use control systems design tools to develop controllers for those systems and implement controllers in physical systems employing available technology.

Applications of control methodology have helped to make possible space travel and communication satellites, safer and more efficient aircraft, cleaner automobile engines, and cleaner and more efficient chemical processes.

MATLAB, OCTAVE, PYTHON, SCILAB and several other scientific computing tools have toolboxes in the form of functions/methods that enable the analysis and simulation of control systems.

This project aims at developing an R package that could be generally used for basic control systems studies based on available packages from other scientific languages especially Rlabplus

Related work

There is currently no R package focused on the studies of control systems. However, there are several control system packages available in other computing languages which provide standard functionality.

Details of your coding project

For the GSoC 2017 coding project, the following functionalities are listed for implementation:

  • Conversion of state space models from continuous to discrete time (assuming a zero-order hold on the inputs and sample time T).
  • The time response of the following system: x[n+1] = Ax[n] + Bu[n]. Function: ltitr(A,B,U,X0)
  • the time response of the linear system descried by, . x = Ax + Bu y = Cx + Du Function: lsim(A,B,C,D,U,T,X0)
  • Transfer function to/from state-space conversion. Function: tf2ss, ss2tf, tf2zp, zp2tf

Expected impact

Control systems is a very important field today with standard applications. This project would enable many thousands of engineers and scientists to use R for control systems analysis. Control engineering is usually applied to the fields of finance management, maths, electrical, electronic, mechatronic, mechanical, aerospace, process control engineering, etc

Mentors

Marijan Kostrun, maintainer of RLabPlus

Tests

  • Easy:
  • Medium:
  • Hard:

Solutions of tests

Students, please post a link to your test results here.

Clone this wiki locally