Applying limits in matlab

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?

 Akzeptierte Antwort

Matt Fig
Matt Fig am 3 Apr. 2011

0 Stimmen

Displacement = min(400,X);
For example:
X = [1:20:800];
plot(min(X,400));
ylim([0 800])

1 Kommentar

Tim
Tim am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB finden Sie in Hilfe-Center und File Exchange

Gefragt:

Tim
am 3 Apr. 2011

Community Treasure Hunt

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

Start Hunting!

Translated by