Coder Social home page Coder Social logo

manav20 / r-theta-manipulator Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 1.0 6.69 MB

Control of a Non-Linear 2 DOF Manipulator

License: MIT License

Python 8.69% MATLAB 91.31%
observer-compensator model-predictive-control state-estimation feedback-controller

r-theta-manipulator's Introduction

Controlling a R- Nonlinear Robot Manipulator

The equation of motions of the system are:

Linearizing the model

The problem statement is to control a Theta-R Robot Manipulator. Since the model is non-linear, to control the robot using linear control methods and techniques we linearize the system about a equillibrium point. The equillibrium point for all the simulation is [pi/4 2 0 0]'.

Controller Design by Pole Placement

After linearization we obtain the state matrices, the eigen values of theses matrices lie in the right half plane indicating that the open loop system is unstable. We use the place command in matlab to place poles of the clodes loop system in the left half plane. The control input is given by (U-Ue) = K*(X-Xe) because the equllibrium point is non zero. The linear controller is then implemented to control the non-linear system and an animation is generated.

We assume a scenario where we do not have sensors to measure all our states of the system, we implement a luenberger observer to estimate the states. Since our observer is linear, we again have to sybtract Ye and Ue before we feed the output and control input to the observer. We use pole placement to place the poles of (A-LC) in left half plane. As rule of thumb choose the observer poles 2-6 times faster than system poles. Since we havecomplete contrl over the observer we choose any initial condition. For comparison we select it as [0 0 0 0]' for all the codes.

Controller Design using Linear Matrix Inequalities(LMIs)

We use the CVX solver for solving LMIs, one can also use the Robust Control Toolbox from MATLAB.

We use the lyapunov theory to form a matrix inequality and use congruence transformation to convert this into a Linear Matrix Inequality. This is then appended with a another linear term to ensure faster convergence.

We frame the Countinous Algebraic Ricatti Equation as an LMI and solve for feedback gain.

We use the lyapunov theory to form a matrix inequality and use congruence transformation to convert this into a Linear Matrix Inequality. This is then appended with a another linear term to ensure faster convergence. We make the convergence of the observer 4 times faster than the state feedback. We initialise the observer at [0 0 0 0]'

Model Predictive Controller

r-theta-manipulator's People

Contributors

manav20 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

liuyuan0123

r-theta-manipulator's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.