Azzera filtri
Azzera filtri

Applying limits in matlab

3 visualizzazioni (ultimi 30 giorni)
Tim
Tim il 3 Apr 2011
I have created a transfer function describing the movement of a piston in a cylinder. The piston can only move a max distance of 400mm. My mathematical model for the cylinder piston Q(s)=AsX(s) were Q is flow rate A is piston area and X is displacement, hence transfer function is X(s)/Q(s)=1/As (in matlab num=1, den=10 (when A is 10) function=tf(num, den). For step input step (function) gives a straight line inclined to the right. How do I tell matlab that the max displacement is 400mm so when the line gets to this limit it becomes flat?
I also need to apply PID tuning to this function, can anyone help with this?

Risposta accettata

Matt Fig
Matt Fig il 3 Apr 2011
Displacement = min(400,X);
For example:
X = [1:20:800];
plot(min(X,400));
ylim([0 800])
  1 Commento
Tim
Tim il 3 Apr 2011
Do I add this line after function=tf(num, den)before doing the step input? Sorry for asking these type of questions, but first time using matlab.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by