Convert Transfer Function from Discrete to Continuous Time

Due to the solid establishment of theories and methods, control system design is typically performed in continuous-time domain. But when it comes to implementation phase, nobody would want to construct an analog controller nowadays. So the continuous-time controller needs to be converted to one in the discrete-time domain. Scilab has mainly two commands for the task: dscr and cls2dls, which use zero-order hold and bilinear transformation methods, respectively. Both commands work with data in state-space form.
Continue reading

Scilab Recipe 4: GUI Basics

While most articles on this website focus on the computational aspects of Scilab as control engineering aids, from time to time we would touch upon other features of the software, such as user interface design. As computer technology evolves, a developer has more tools and options to make her application attractive and user-friendly. A Graphical User Interface (GUI) consists of common gadgets we are accustomed to already, such as push and radio buttons, sliders, editable input fields, check boxes, etc. The designer’s task is to create and arrange them in a graphical window, and then orchestrate their functions to a particular set of requirements.
Continue reading

PID Anti-Windup Schemes

Integrator windup in PID feedback control is well-known to control engineers. It happens when the integral term is used with some nonlinear saturation in the loop, such as when a physical variable reach its limit. When that happens, the feedback loop breaks, causing error accumulation in the integrator. This results in worse step and disturbance responses than the case of pure linear system.
Continue reading

Scilab Recipe 3: Xcos Blocks Seasoning

What I like about Scilab? Well, its computation engine is just great, but it does not come with everything prebuilt and clearly explained. So often I have to swim in Google search pages for a solution. Even while in the process of writing the previous recipe, I did solve a problem that bothered me for a long time. To understand the basics of things is much more valuable than to rely on a proprietary software that provides everything, and your soul may eventually become addictive to it.
Continue reading