Computing Applications in Mechanical Systems (MATLAB Simulink)

© All Rights Reserved

34 views

Computing Applications in Mechanical Systems (MATLAB Simulink)

© All Rights Reserved

- How To Make Calculator with Matlab GUI
- Communication Systems Modeling and Simulation Using Matlab and Simulink PDF
- Newton's Interpolation Formulae.pdf
- Interpolating
- Fea Radial Function Tubular Sealability 15
- SciLab Made Easy - Tutorial
- FDI 3-Tank System
- Easy Java Simulations an Open Source
- Chapter 1
- MATLAB LECTURE.pdf
- A
- Matlab Lecture
- MATLAB Cheat Sheet2
- 10432-Volume8 Issue 1 14 Paper
- MATLAB Hardware
- matlab basics
- 12_010_lec14
- A Direct Digital Frequency Synthesizer Utilizing Quasi-Linear Interpolation Method
- Chapter5 – for loops - v2.pptx
- ME121 Week1 2 Review

You are on page 1of 299

MECHANICAL SYSTEMS

(MEEN-561)

INTRODUCTION

TO

MATLAB- SIMULINK

By

Kiran Kumar. K

Lecturer in Mechanical Engineering Department

Eritrea Institute Of Technology

Email:- kiranmek3@gmail.com

kiranmedesign@gmail.com

1.

2.

3.

4.

5.

6.

7.

STATIC ANALYSIS

KINEMATIC ANALYSIS

DYNAMIC ANALYSIS

VIBRATION ANALYSIS MODULE

CONTROL SYSTEM ANALYSIS

MECHANISMS SIMULATION MODULE

HYDRAULIC SYSTEM SIMULATION MODULE

ASSESSMENT SCHEME

(75% FOR CONTINUOUS ASSESSMENTS)

To realize the importance of Computational efficiency in

simulation of Real time Mechanical systems.

To Implement Statics, kinematics, dynamics and control

problems.

To Implement Dynamics and control problems in Vibratory

systems.

To learn vibration pattern in vibratory systems with damping

and without damping for programming effectively differential

equation problems with Ode solvers.

To learn the simulation of Hydraulic systems.

To learn the simulation of mechanism systems.

To implement automation systems by virtual simulation and

analysis of Real Time systems.

www.mathworks.com/

www.mathtools.net/MATLAB

www.math.utah.edu/lab/ms/matlab/matlab.html

web.mit.edu/afs/athena.mit.edu/software/matlab/

www.utexas.edu/its/rc/tutorials/matlab/

www.math.ufl.edu/help/matlab-tutorial/

www.indiana.edu/~statmath/math/matlab/links.html

www.eng.cam.ac.uk/help/tpl/programs/matlab.html

Messner and Tilbury, Controls Tutorial for MATLAB and SIMULINK: A Web-based

approach,

Prentice-Hall, 1999.

Sigmon and Davis, MATLAB Primer, 6th Edition, CRC Press, 2001

http://www.mathworks.com/access/helpdesk/help/techdoc/matlab.html

http://www.mathworks.com/access/helpdesk/help/toolbox/simulink/

http://www.mathworks.com/access/helpdesk/help/pdf_doc/matlab/getstart.pdf

http://www.mathworks.com/access/helpdesk/help/pdf_doc/matlab/using_ml.pdf

http://www.mathworks.com/access/helpdesk/help/toolbox/control/control.shtml

http://www.mathworks.com/academia/student_version/

http://www.mathworks.com/academia/student_version/companion.html

http://travis.eng.man.ac.uk/barry/control2/lab/SIMULINK.htm

http://matlab.kimhua.co.kr/digest/dec98/nonlinear.html

http://www.scsolutions.com/feedback.html

http://www.math.mtu.edu/~msgocken/intro/intro.html

http://www-personal.engin.umich.edu/~tilbury/tutorials/matlab_tutorial.html

http://www.eng.fsu.edu/~cockburn/matlab/matlab_help.html

http://www.engin.umich.edu/group/ctm/working/mac/simulink_basics/

http://www.messiah.edu/acdept/depthome/engineer/Resources/tutorial/matlab/simu.html

http://rclsgi.eng.ohio-state.edu/courses/me780/handouts/simulink.pdf

http://www.mae.ncsu.edu/homepages/buckner/simulink2.pdf

http://www.tutorgig.com/showurls.jsp?group=896&index=0

http://www.rpi.edu/dept/chem-eng/WWW/faculty/bequette/lou/simtut/simtut_html.html

http://www.math.siu.edu/matlab/tutorials.html

http://wolfman.eos.uoguelph.ca/~jzelek/matlab/ctms/

http://www.engin.umich.edu/group/ctm/

http://www.me.cmu.edu/matlab/html/

http://www.math.utah.edu/lab/ms/matlab/matlab.html

http://www.indiana.edu/~statmath/math/matlab/

http://spicerack.sr.unh.edu/~mathadm/tutorial/software/matlab/

http://www.math.ufl.edu/help/matlab-tutorial/matlab-tutorial.html

http://www.cs.ubc.ca/spider/cavers/MatlabGuide/guide.html

http://www.class.umd.edu/enme/403/0101/t1.html

http://www.math.mtu.edu/~msgocken/intro/intro.html

http://www.engin.umich.edu/group/ctm

OPEN

WEB

RESOURCES

Mathworks Information

Mathworks: http://www.mathworks.com

Mathworks Central: http://www.mathworks.com/matlabcentral

http://www.mathworks.com/applications/controldesign/

http://www.mathworks.com/academia/student_center/tutorials/launchpad.html

Matlab Demonstrations

Matlab Overview: A demonstration of the Capabilities of Matlab

http://www.mathworks.com/cmspro/online/4843/req.html?13616

Numerical Computing with Matlab

http://www.mathworks.com/cmspro/online/7589/req.html?16880

Select Help-Demos in Matlab

Matlab Help

Select Help in Matlab. Extensive help about Matlab, Simulink and toolboxes

Matlab Homework Helper

http://www.mathworks.com/academia/student_center/homework/

Newsgroup: comp.soft-sys.matlab

Matlab/Simulink student version (program and book ~50)

http://www.mathworks.com/academia/student_center

Other Matlab and Simulink Books

Mastering Matlab 6, Hanselman & Littlefield, Prentice Hall

Mastering Simulink 4, Dabney & Harman, Prentice Hall

10/14

EE-M110

W1Simulink

06-07

MatlabEFIS,

and

Student Version Release

14

What is Matlab?

MATLAB (Matrix Laboratory) is basically a high level language

which has many specialized toolboxes for making things easier for

us.

MATLAB is a software for doing numerical computation. It was

originally designed for solving linear algebra type problems using

matrices. Its name is derived from Matrix Laboratory.

MATLAB has since been expanded and now has built-in functions

for solving problems requiring data analysis, signal processing,

optimization, and several other types of scientific computations.

It also contains excellent GUI features of functions for 2-D and 3-D

graphics and animation.

Powerful,

extensible,

highly

integrated

computation,

programming, visualization, and simulation package.

Widely used in engineering, mathematics, and science.

Why?

MATLAB is too broad tool used in industry for

real time interfacing of sensors and machine

vision etc. and programming the real time

systems for active control of the system

behavior.

For our course purpose in this Laboratory we

will have brief overview of basics and learn

what can be done with MATLAB at beginner

level.

Need to Perform

Vibration analysis

Human Vibration

Human body sections

Eyeball, Intraocular Structure (20-90 Hz)

Head (axial mode) (20-30 Hz)

Shoulder Girdle (4-5 Hz)

Chest wall (50-100 Hz)

Arm (5-10 Hz)

Hand (30-50 Hz)

Abdominal Mass (4-8 Hz)

Spinal column (axial mode) (10-12 Hz)

It may be noted that the abdominal mass mode (around 5 Hz)

makes us nauseating and is avoided in automotive design.

Top gun pilots had problem with a particular maneuver when the eyeball

socket went into resonance.

BASICS

Displacement

distance

35 Metres

Speed

65 m/s

D

Time

Velocity

V

Time

0-60 m/s

in 8.6

second

Acceleration

A

Time

Displacement

d = D sinnt

Displacement

D

Time

Frequency

1

T

Period, Tn in [sec]

k

Frequency, fn=

n= 2 fn =

1

Tn

k

m

in [Hz = 1/sec]

Continued

Natural frequency of a simple single degree of freedom

undamped system is given by the equation

N = square root of (stiffness / mass)

ENGINEERS USE MATLAB

Solving kinematics, kinetics and complete

dynamic systems control of Automotive

suspension , Thermal systems etc.,

M

Mg

Fs

Fc

Yo

Ys

Yin

d 2 yo

M 2 Mg Fc Fs

dt

Components of a car

For comfortable ride in a car requires analysis of car frame and

many other components, e.g. exhaust systems (bellows),

shock absorber, tire etc.

We know what a typical shock absorber does

saves us from unpleasant vibration.

xs

ms

ks

cs

mu

xu

kt

kt = tire spring constant

mu = unsprung mass

xu = displacement of unsprung mass

cs = suspension damping constant

ms = sprung mass

xs = displacement of sprung mass

Mg

y

Suspension system

ys

yin

24

Solve for y given yin

WHEELER

CONTINUED

CONTINUED

CONTINUED

zs

sprung mass

(body) Ms

suspension spring

unsprung mass

(wheel, axle) Mu

tyre stiffness Kt

suspension damper

zu

zr

CONTINUED

CONTINUED

CONTINUED

Active suspension

Bus suspension

Designing an automatic suspension system for a bus

ROBOT

Matlab WINDOW

Variables

No need for types. i.e., no need of declaring

variables

int a;

double b;

float c;

Accuracy and comfort is very high with MATLAB

codes.

>>x=5;

>>x1=2;

Array, Matrix

Matrix Index

Operators (arithmetic)

MatriX Operations

x = [1,2,3] , vector-row,

y=[1;2;3], vector-column,

x=0:0.1:0.8 , vector x=[0,0.1,0.2,0.3....0.8],

A = [1,3,5;5,6,7;8,9,10], matrix,

A(1,2), element of matrix, 1. row, 2. column,

A(:,2), second column of matrix,

A(1,:), first row of matrix ,

C=[A;[10,20,30]] matrix with additional row,

B=A(2:3,1:2), part of matrix,

x, transpose.

44

det(A), determinant,

inv(A), inverse matrix,

eye(3), unit matrix,

zeros(3,4), matrix of zeros,

rand(3,5), matrix of random values,

sum(A), sum of elements,

A*x, matrix-vector product (if dimensions are

corresponding),

A.*B, element multiplication of two matrixes.

help sqrt, looking for known command,

help, help topics are shown,

45

(Element by element operation)

vectors of matrices

Type-1 programming

Program:clc;

clear all;

p=10,000;

t=2;

r=11;

I=(p*t*r)/100;

Solution:I = 2200

Type-2

Programming

Program:clc;

clear all;

p=input('enter the value of p:');

t=input('enter the value of t:');

r=input('enter the value of r:');

I=(p*t*r)/100

Solution:Input:

enter the value of p:10000

enter the value of t:2

enter the value of r:11

Output:

I = 2200

Function

nle.m (function of the program)

function f = nle(x)

f(1) = x(1)-4*x(1)*x(1)-x(1)*x(2);

f(2) = 2*x(2)-x(2)*x(2)+3*x(1)*x(2);

Main body of the Program:x0 = [1 1]';

x = fsolve('nle', x0)

Solution of the program:x=

0.2500

0.0000

PERFORMING Differentation

Performing Integration

Numerical Integration

provides the following built-in functions for numerical integration:

quad:

It integrates the specified function over specified limits, based on adaptive

Simpson's rule.

The general call syntax for both quad and quadl is as follows:

Syntax:integral = quad(function, a, b)

dblquad: (It calculates double integration)

MATLAB provides a function dblquad. The calling syntax for dblquad is:

Syntax:I = dblquad(function_xy, xmin, xmax, ymin, ymax)

functions

IN MATLAB

2-D plotting functions

>> plot(x,y)

Example:-

x = 1:2:50;

y = x.^2;

plot(x,y,'*-')

xlabel('Values of x')

ylabel('y')

plot(x,y,line specifiers)

Line

Style

Specifier

Solid

dotted

:

dashed

dash-dot

--.

Line

Color

red

green

blue

Cyan

magenta

yellow

black

Specifier

r

g

b

c

m

y

k

Marker Specifier

Type

plus sign

circle

asterisk

point

square

diamond

+

o

*

.

s

d

3-D Plotting syntax

Line

>> plotfunction(vector1, vector2, vector3)

Vector lengths must be the same

Example

>> a = 1:0.1:30;

>> plot3( sin(a), cos(a), log(a) )

between 0x4

0x4

0x4

Contd..

Graph of sine function in 0 to (2*pi) range

1

sin(x)

0.8

sin(x)

Program:0.6

clear all; % clear all variables

0.4

clc;

% clear screen

0.2

N=30;

0

h=pi/N;

-0.2

x=0:h:(2*pi);

-0.4

y=sin(x);

-0.6

plot(x,y)

-0.8

xlabel('x')

-1

0

1

ylabel('sin(x')

title('Graph of sine function in 0 to (2*pi) range')

Syntax: fplot (function, *lower limit, upper limit)

fplot ('x*cos(x)',[0, 10*pi]);

plot of function f1(x)

12

f1(x)

10

6

y=f(x)

Program:clc;

clear all;

x=-1:1:2;

y=-3*x+4;

figure

plot(x,y)

xlabel('x')

ylabel('y=f(x)')

grid on

title('plot of function f_1(x)');

legend('f_1(x)');

axis([-2 4 -2 12])

-2

-2

-1

1

x

sine curve and cosine curve in single window.

Test of multi-plot option in Matlab

1

sine

cosine

0.8

Program:-

0.6

functions

clc;

0.4

clear all;

0.2

N=15;

0

h=pi/N;

-0.2

x=0:h:2*pi;

-0.4

plot(x,sin(x),'r-',x,cos(x),'g--')

-0.6

legend('sine','cosine');

-0.8

grid

-1

xlabel('x');

0

1

ylabel('functions');

title('Test of multi-plot option in Matlab');

4

x

y1 = 2 cos(x), y2 = cos(x), and y3 =0.5* cos(x), in the interval 0 x (2*pi)

Typical example of multiple plots

3

Cosine functions

Program:2

x = 0:pi/100:2*pi;

1

y1 = 2*cos(x);

0

y2 = cos(x);

-1

y3 = 0.5*cos(x);

plot(x,y1,'--',x,y2,'-',x,y3,':'); -2

xlabel('0 \leq x \leq 2\pi');

-3

0

1

ylabel('Cosine functions');

legend('2*cos(x)','cos(x)','0.5*cos(x)');

title('Typical example of multiple plots');

axis([0 2*pi -3 3]);

2*cos(x)

cos(x)

0.5*cos(x)

3

0 x 2

window

2-D Plot

Sine Wave

Decaying Exponential

Sin(t)

Program:1

clc;

0.9

<--sin(/3)

clear all;

0.8

x=0:.1:2*pi;

0.7

y=sin(x);

0.6

plot(x,y);

0.5

grid on;

0.4

hold on;

0.3

plot(x, exp(-x), 'r:*');

0.2

axis([0 2*pi 0 1]);

0.1

title('2-D Plot');

0

xlabel('Time');

0

1

2

ylabel('Sin(t) ');

text(pi/3, sin(pi/3), '<--sin(\pi/3) ');

legend('Sine Wave','Decaying Exponential');

3

Time

Multiple Plots

t=0:pi/100:2*pi;

y1=sin(t);

y2=sin(t+pi/2);

subplot(2,2,1)

plot(t,y1)

grid on

subplot(2,2,2)

plot(t,y2);

grid on

0.5

0.5

-0.5

-0.5

-1

-1

subplot(i,j,k)

i is the number of rows of subplots in the plot

j is the number of columns of subplots in the plot

k is the position of the plot

x

7.5

10

6.5

5.5

Program:

clc;

Clear all;

x=[1 2 3 5 7 7.5 8 10];

y=[2 6.5 7 7 5.5 4 6 8];

plot(x, y)

Year

1988

1989

1990

1991

1992

1993

1994

Sales (M)

127

130

136

145

158

178

211

Program:

clc;

Clear all;

year = [1988:1:1994];

sales = [127, 130, 136, 145, 158, 178, 211];

plot(year, sales,'--r*')

40

30

Program:clc;

clear all;

z = 0:0.1:10*pi;

x = exp(-z/20).*cos(z);

y = exp(-z/20).*sin(z);

plot3(x,y,z,'LineWidth',2)

grid on

xlabel('x')

ylabel('y')

zlabel('z')

20

10

0

1

0.5

1

0.5

-0.5

y

-0.5

-1

-1

Program:-

clc;

clear all;

t=0:pi/50:10*pi;

plot3(sin(t),cos(t),t);

40

30

20

10

0

1

0.5

1

0.5

-0.5

-0.5

-1 -1

f(x,y)= (x-3)2 (y-2)2 on the domain -2 x 4 and 1 y 3.

Program:25

clc;

20

clear all;

15

[X,Y] = meshgrid(-2:0.2:4,1:0.2:3); 10

5

Z = (X-3).^2 - (Y-2).^2;

0

mesh(X,Y,Z);

-5

3

xlabel('x');

ylabel('y');

2.5

4

2

2

1.5

y

0

1

-2

Curve fitting is the process of constructing a curve, or mathematical function,

that has the best fit (in a least square sense) to a series of data points,

possibly subject to additional constraints. Interpolation is the method of

constructing new data points within the range of a discrete set of known

data points. Extrapolation is the process of constructing new data points

outside a discrete set of known data points. Matlab has many utilities for

curve fitting and interpolation.

Interpolation:Given the data points (xi, yi), find yj at desired xj xi from yj = f(xj), where f is

a continuous function to be found from interpolation.

Syntax:- ynew = interp1(x,y,xnew, method ).

linear -> Linear interpolation (default)

spline -> Cubic spline interpolation

pchip -> Piecewise cubic Hermite interpolation

cubic -> Same as pchip

by nearest interpolation method

nearest interpolation

Program:-

nearest

0.8

0.6

0.4

0.2

sin(x)

clc;

clear all;

x = 0:10;

y = sin(x);

xi = 0:.25:10;

yi = interp1(x,y,xi,'nearest');

plot(x,y,'o',xi,yi)

xlabel('x');

ylabel('sin(x)');

title('nearest interpolation ');

legend('nearest')

0

-0.2

-0.4

-0.6

-0.8

-1

5

x

10

by linear interpolation method

nearest interpolation

Program:-

nearest

0.8

0.6

0.4

0.2

sin(x)

x = 0:10;

y = sin(x);

xi = 0:.25:10;

yi = interp1(x,y,xi,'linear');

plot(x,y,'x',xi,yi)

xlabel('x');

ylabel('sin(x)');

title('linear interpolation ');

legend('linear')

0

-0.2

-0.4

-0.6

-0.8

-1

5

x

10

by Spline interpolation method

spline interpolation

1

spline

0.8

0.6

0.4

0.2

sin(x)

Program:x = 0:10;

y = sin(x);

xi = 0:.25:10;

yi = interp1(x,y,xi,'spline');

plot(x,y,'o',xi,yi);

xlabel('x');

ylabel('sin(x)');

title('spline interpolation ');

legend('spline');

0

-0.2

-0.4

-0.6

-0.8

-1

5

x

10

by Piecewise cubic Hermite interpolation method.

cubic interpolation

1

cubic

0.8

0.6

0.4

0.2

sin(x)

Program:x = 0:10;

y = sin(x);

xi = 0:.25:10;

yi = interp1(x,y,xi,'cubic');

plot(x,y,'o',xi,yi);

xlabel('x');

ylabel('sin(x)');

title('cubic interpolation ');

legend('cubic');

0

-0.2

-0.4

-0.6

-0.8

-1

5

x

10

method:

2x-3y+4z = 5

x+y+4z = 10

3x+4y-2z = 0

Program:clc;

clear all;

A=[2 -3 4; 1 1 4; 3 4 -2];

B=*5 10 0+;

X=inv(A)*B;

(or)

X=A\B;

Program:

clc;

clear all;

game1 = input('Enter the points scored in the first game ');

game2 = input('Enter the points scored in the second game ');

game3 = input('Enter the points scored in the third game ');

average = (game1+game2+game3)/3

Solution:

Input:

Enter the points scored in the first game

Enter the points scored in the second game

Enter the points scored in the third game

Output:

average =

Program:

clc;

clear all;

close all;

x = 1:1:10;

term = 1./sqrt(x);

y = sum(term);

Solution:

y=

Control Structures

Control Structures

Control Structures

if statement

% Program to find whether roots are imaginary or not%

clc;

clear all;

a=input('enter value of a:');

b=input('enter value of b:');

c=input('enter value of c:');

discr = b*b - 4*a*c;

if discr < 0

disp('Warning: discriminant is negative, roots are imaginary');

end

Solution:Input:

enter value of a:1

enter value of b:2

enter value of c:3

Output:

Warning: discriminant is negative, roots are imaginary

Continued

Program:clc;

clear all;

a=input('enter value of a:');

b=input('enter value of b:');

c=input('enter value of c:);

discr = b*b - 4*a*c;

if discr < 0

disp('Warning: discriminant is negative, roots are imaginary');

else

disp('Roots are real, but may be repeated')

end

Solution:Input:

enter value of a:1

enter value of b:3

enter value of c:2

Output:

Roots are real, but may be repeated

Program:clear all;

clc;

a=input('Enter values for a:');

b=input('Enter values for b:');

c=input('Enter values for c:');

delta = b^2 - 4*a*c;

if delta < 0

fprintf('\nEquation has no real roots:\n\n')

disp(['discriminant = ', num2str(delta)])

elseif delta == 0

fprintf('\nEquation has one real root:\n')

xone = -b/(2*a)

else

fprintf('\nEquation has two real roots:\n')

x(1) = (-b + sqrt(delta))/(2*a);

x(2) = (-b -sqrt(delta))/(2*a);

fprintf('\n First root = %10.2e\n\t Second root = %10.2f', x(1),x(2))

end

Algorithm:Read in values of a, b, c

Calculate

IF < 0

Print message No real roots Go END

ELSEIF = 0

Print message One real root Go END

ELSE

Print message Two real roots

END

Solution:Input:

Enter values for a:

Enter values for b:

Enter values for c:

Output:

Example

Program :n = input(Enter the upper limit: );

if n < 1

disp (Your answer is meaningless!)

end

x = 1:n;

term = sqrt(x);

y = sum(term)

Jump to here if FALSE

Example

Program:clc;

clear all;

A=input(enter the value of A: );

B=input(enter the value of B:);

if A > B

'A is bigger'

elseif A < B

'B is bigger'

elseif A == B

'A equals B'

else

error('Something odd is happening')

end

Solution:Input:

enter the value of A: 4

enter the value of B: 3.9

Out put:

A is bigger

b.)

Problem: Draw graphs of sin(n x) on the interval 1 x 1 for n = 1,2,....,8.We could do this by

giving 8 separate plot commands but it is much easier to use a loop.

Program:x=-1:0.05:1;

1

1

for n=1:8

0

0

subplot(4,2,n);

-1

-1

-1

-0.5

0

0.5

1

-1

-0.5

0

0.5

plot(x, sin(n*pi*x));

1

1

end

0

-1

-1

1

-0.5

0.5

0

-1

-1

1

-1

-1

1

-0.5

0.5

-0.5

0.5

-0.5

0.5

0

-0.5

0.5

0

-1

-1

-1

-1

1

0

-0.5

0.5

-1

-1

% example of for loop%

Program:for ii=1:5

x=ii*ii

end

Solution:

1 4 9 16 25

%example of while loop%

Program:x=1

while x <= 10

x = 3*x

nd

Solution:

x=1 x=3 x= 9 x=27

Program:S = 1;

n = 1;

while S+(n+1)^2 < 100

n = n+1;

S = S + n^2;

end

Solution:[n,S] = 6 91

Program:n=input(enter the value of n: );

switch(rem(n,3))

case 0

m = 'no remainder'

case 1

m = the remainder is one'

case 2

m = the remainder is two'

otherwise

error('not possible')

end

Solution:enter the value of n: 8

m =the remainder is two

theoretical and Experimental observations

FORMATTING PLOTS

With formatting you can:

Add title to the plot.

Change range of the axes.

Add legend.

Add text blocks.

Add grid.

Contd

There are two methods to format a plot:

1.

Formatting commands.

In this method commands, that make changes or additions to the

plot, are entered after the plot() command. This can be done in

the Command Window, or as part of a program in a script file.

2.

In this method the plot is formatted by clicking on the plot and

using the menu to make changes or add details.

FORMATTING COMMANDS

title(string)

Adds the string as a title at the top of the plot.

xlabel(string)

Adds the string as a label to the x-axis.

ylabel(string)

Adds the string as a label to the y-axis.

Sets the minimum and maximum limits of the x- and y-axes.

FORMATTING COMMANDS

legend(string1,string2,string3)

Creates a legend using the strings to label various curves (when

several curves are in one plot). The location of the legend is

specified by the mouse.

text(x,y,string)

Places the string (text) on the plot at coordinate x,y relative to the

plot axes.

gtext(string)

Places the string (text) on the plot. When the command executes

the figure window pops and the text location is clicked with the

mouse.

Example Program

Light Intensity as a Function of Distance

1200

INTENSITY (lux)

clc;

Theory

Experiment

clear all;

1000

x=[10:0.1:22];

y=95000./x.^2;

800

Comparison between theory and experiment.

xd=[10:2:22];

600

yd=[950 640 460 340 250 180 140];

plot(x,y,'-','LineWidth',1.0)

400

hold on

plot(xd,yd,'ro--','linewidth',1.0,'markersize',10)

200

hold off

0

xlabel('DISTANCE (cm)')

8

10

12

14

16

18

20

22

DISTANCE (cm)

ylabel('INTENSITY (lux)')

title('\fontname{Arial}Light Intensity as a Function of Distance','FontSize',14)

axis([8 24 0 1200])

text(14,700,'Comparison between theory and experiment.','EdgeColor','r','LineWidth',2)

legend('Theory','Experiment',0)

24

Consider a particle moving in a straight line, and assume that its position is defined by the

equation, where x is expressed in meters and t in seconds. Write a program in MATLAB to

determine the displacement, velocity and acceleration variation with respect to time interval

from 0 to 120 seconds.

Program:clc;

clear all;

syms t;

t=0:0.1:120;

x=6.*t.^2-t.^3;

v=12.*t-3.*t.^2;

a=12-6.*t;

plot(t,x);

xlabel(time in seconds);

ylabel(displacement in m);

title(displacement of a particle along its motion);

%plot(t,v);

%xlabel(time in seconds);

%ylabel(velocity in m/s);

%title(velocity of a particle in motion);

%plot(t,a);

%xlabel(time in seconds);

%ylabel(acceleration in m/s2);

%title(acceleration of a particle);

A particle moves along a straight line with variable acceleration. If the displacement is

measured in m, and given by the relation interms of time taken t, as below, determine the

displacement, velocity and acceleration of the particle

S=t3 +2t2+7t+3

Program:clc;

clear all;

syms t;

t=0:0.1:120;

x=t.^3+2*t.^2+7.*t+3;

v=3.*t.^2+4.*t+7;

a=6.*t+4;

plot(t,x);

xlabel(time in seconds);

ylabel(displacement in m);

title(particle behavior along its motion);

%plot(t,x,'.'t,v,'o',t,a,'+');

%xlabel(time in seconds);

%ylabel(displacement, velocity and acceleration of a particle);

%title(kinematics behavior of a particle along its motion);

Spring/Mass/Damper system

example

105

MATLAB AND SIMULINK

INTRODUCTION

PROBLEM

PROBLEM

function f=programone (t,z)

m=3;

c=8;

k=100;

dzdt=[z(2); -(c/m)*z(2)-(k/m)*z(1)];

% For a single degree of freedom system in free

vibration

clc;

clear all;

%Enter initial conditions

z0=[5;15];

%Enter time span for solution

tspan=[0 10];

%Call solver

[t,z+=ode45(programone',tspan,x0);

%Set up plot

plot(t,z(:,1));

Result

single degree of freedom spring mass damper system behaviour

6

displacement

5

displacement in mm

4

3

2

1

0

-1

-2

-3

10

time in seconds

15

SIMULINK

Simulink is an interactive tool for dynamics system modeling and

analysis.

Simulink is a Matlab add-on that allows one to simulate a variety of

engineering systems.

Used for modeling, simulating, and analyzing the behavior of dynamic

systems.

Basically it is a tool for model-based design.

Simulink is a graphical extension to MATLAB for modeling and simulation

of various engineering systems.

In Simulink, systems are drawn on screen as block diagrams.

Simulink offers a variety of components that are assembled to provide a

full system simulation.

Many elements of block diagrams are available, such as transfer

functions, summing junctions, etc., as well as virtual input and output

devices such as function generators and oscilloscopes.

Simulink is integrated with MATLAB and data can be easily transferred

between the programs.

Simulink

Simulink can be used to solve any initial value ODE.

Modelling/designing dynamic systems including

nonlinear dynamics.

Modelling/designing control systems including

nonlinear controller plants.

User creates device model by means of standard blocks

and carries out calculations.

There are additional block libraries for different scopes

as SimMechanics mechanical devices modeling,

SimHydraulics Hydraulic systems modeling.

Sources

1.

2.

3.

4.

Sinewaves

Function

Generators

From MATLAB

workspace

From Disk Files

Sinks

Systems

1.

Interconnection

of Linear and

Nonlinear blocks

1.

2.

3.

4.

Displays scopes

FFT scopes

To MATLAB

workspace

To disk files

Type Simulink in the

Command window.

Create new model under

file/new/model.

117

Simulink- libraries

Continuous; integrator, transfer function..

Discrete; discrete transfer function, unite delay,

memory..

Math operations; gain, product, sum, trigonometric

functions..

Sinks; blocks that have only input, scope, to worspace..

Sources; blocks that have only output, generators,

constant,...

User defined functions: S-function, S-function builder,..

118

Model is created by choosing the blocks from different

libraries, dragging them to model window and linking

them.

The parameters of block (shown on picture, sine wave

parameters), can be reached with double click on the

block.

119

Numerical solver method, start time, stop time

(it can be also set directly)...

120

An Introduction to Simulink

Configuration Parameters

Simulink is designed to be a front-end tool for

integrating ordinary differential equations

(ODEs).

Connecting blocks

1. Hold down the Control key down.

2. Click on the source icon.

3. Click on the sink icon.

4. Press the left mouse key to make the

connection.

Displaying Output

Can use the scope attached to any signal.

Use the Autoscale function that appears as

binoculars in order to look at the results of the

entire simulations.

Click on the X, the Y or the zoom

functions to look at any specific part of the

simulation.

SIMULINK DESIGN

SIMULINK

RESULT

DESIGN PROBLEM

Build a Simulink model that solves the

following differential equation

2nd-order mass-spring-damper system

zero ICs

input f(t) is a step with magnitude 3

parameters: m = 0.25, c = 0.5, k = 1

mx cx kx f (t )

Simulink Design

EXAMPLE

SIMULINK DESIGN

damping

Simulink design

m=1;k=2;c=0.5;

Continued

Continued

CONVERSIONS IN MATLAB

Transfer function to state space

[A,B,C,D]=tf2ss([num],[den]);

[num,den]=ss2tf(A,B,C,D);

[z,p,k]=tf2zp([num],[den]);

[num,den]=zp2tf(z,p,k);

[z,p,k]=ss2zp(A,B,C,D,iu);

[A,B,C,D]=zp2ss(z,p,k);

EASY BY LAPLACE TRANSFORM

EXAMPLE

SIMULINK DESIGN

FIRST STEP

SIMULINK DESIGN

Problem2

Simulink design

UNDERSTANDING CONTROL

PROBLEM

UNDERSTANDING CONTROL

PROBLEM

PROBLEM (OSCILLATOR)

SIMULINK DESIGN

EXAMPLE

MODELLING COMPOUND PENDULUM

SIMULINK DESIGN

TRANSFORM

CONTINUED

FOR M-C-K SYSTEM

PROCEDURE

CONTINUED

SIMULINK DESIGN

EXAMPLE

CASCADED M-C-K SYSTEM

EXAMPLE

MODEL OF MECHANICAL ACCELEROMETER

Landing gear Suspension schematic

y yo ys yin

dt

dt

dt

dt

Yo

Ys

Yin

Force balance

M

Mg

Fs Fc

Ma Mg Fc Fs

d 2 yo

M 2 Mg Fc Fs

dt

Simulink design

Fs k ( y0 yin ys )

Fc Fs

v g dt

M M

dyo dyin

Fc C

dt

dt

yo vdt

Y o-Y in

Yin

Fs

Ks

du/dt

dY in/dt

Derivative

.5

1

s

Fc

Integrator1

C

0

Mv

Mg

Mg

v =dY o/dt

.5

1/M

v =dY o/dt

1

s

Y0

Integrator2

Scope

SELF PRACTISE-1

SELF PRACTISE-2

INTRODUCTION

TO

SimMechanics

Introduction

SimMechanics provides a multi body Simulation

environment for Mechanical Systems like robots, vehicle

suspension systems, construction equipment and any

mechanism and machinery etc.

We model systems using blocks representing bodies, joints,

constraints, and force elements and then SimMechanics

formulates and solves the equations of motion for the

complete mechanical system.

Models from CAD systems, including mass, inertia, joint,

constraint, and 3D geometry can be imported into

SimMechanics.

An automatically generated 3D animation lets you visualize

the system dynamics.

COMPUTATIONAL MECHANICS

WORK

CONTINUED

platform

CONTINUED.

simmechanics

CAD models should be saved in STL

format

mechanism

SIMULINK DESIGN

@ JOINT

EXERCISE 2:

MODELING FOUR BAR

MECHANISM

SIMULINK DESIGN

CONTINUED

(FOUR BAR MECHANISM)

TEST OF UNDERSTANDING

HYBRID DRIVEN FIVE-BAR PLANAR MECHANISM

PUBLISHED IN INTERNATIONAL JOURNAL OF ADVANCED ROBOTICSYSTEMS

design

design

SIMULINK DESIGN

SOLUTION

PENDULUM ON CART

Solving by matlab

Equation of motion are derived as

Simulink design

for forward dynamics

Forward dynamics

by

simmechanics

Inverse dynamics

by

sim mechanics

models with simulink design

ROBOT ARM

SIMULINK DESIGN

Elevator system

Thank You

Any Questions ?

- How To Make Calculator with Matlab GUIUploaded byJans Hendry
- Communication Systems Modeling and Simulation Using Matlab and Simulink PDFUploaded byRichard
- Newton's Interpolation Formulae.pdfUploaded byvictomina
- InterpolatingUploaded byahmedhassib
- Fea Radial Function Tubular Sealability 15Uploaded byRMolina65
- SciLab Made Easy - TutorialUploaded byNyro Research Foundation
- FDI 3-Tank SystemUploaded byJimi Ogunsanya
- Easy Java Simulations an Open SourceUploaded byArturo Rodriguez
- Chapter 1Uploaded byleo232
- MATLAB LECTURE.pdfUploaded byAshish Gupta
- AUploaded byamanseera
- Matlab LectureUploaded bygdv82
- MATLAB Cheat Sheet2Uploaded byShaukat Ali Shah
- 10432-Volume8 Issue 1 14 PaperUploaded byBenciu Florin Valentin
- MATLAB HardwareUploaded byImran Khan
- matlab basicsUploaded byElisha Ruth Estanislao
- 12_010_lec14Uploaded byjayramramesh
- A Direct Digital Frequency Synthesizer Utilizing Quasi-Linear Interpolation MethodUploaded byYermakov Vadim Ivanovich
- Chapter5 – for loops - v2.pptxUploaded byLouis Reynolds
- ME121 Week1 2 ReviewUploaded byandman753
- readme.txtUploaded bykarthikeyan
- 2BezierUploaded byAmit Singh Bhati
- lec16Uploaded bymanikandaprabhu.rk14
- ReportUploaded bySiva Kumar
- chapter4.pdfUploaded byBuddhika
- 1-s2.0-S1474667015365460-main.pdfUploaded byVignesh Ramakrishnan
- chapter 5Uploaded byDaryAnto
- NMUploaded byBhanubhakta poudel
- interp1Uploaded bymaicol perez
- Module 3Uploaded byPRE-GAMERS INC.

- Whirling of ShaftUploaded byGinu Thomas
- Composite_rev7.pdfUploaded bylawlaw
- OptimalPlacementofPiezoelectricActuatorsonPlateStructuresforActiveVibrationControlUsingGeneticAlgorithm.pdfUploaded bylawlaw
- AutoCad MechanicalUploaded bygd1901
- FreeVibrations Freestudy Co UkUploaded bydeepak_dce_me
- Let s Read and Write in English 1Uploaded bybathuka chuka
- الحركة الاهتزازية.pdfUploaded bylawlaw
- Mechanical Vibrations Single Degree-Of-Freedom Damped Free Vibration (Chapter TREE)Uploaded bylawlaw
- Mechanical Vibrations lecture notes ( Undamped Single Degree-of-Freedom System) (Chapter Two)Uploaded bylawlaw
- Lecture notes on Mechanical vibrations 1Uploaded byAbdulRahman Bahaddin
- Helpful example on Velocity and Acceleration diagramUploaded bylawlaw
- Quit SmokingUploaded byalnawashi
- 100 Thematic Word Search Puzzles Junior.pdfUploaded bym.jancheva
- Learn TurkeyUploaded bylawlaw
- EFFECT OF ACOUSTIC VIBRATION ON THE SATELLITE STRUCTURE AT LAUNCH STAGEUploaded byAbsaAC

- atomic mass evaluation - Tables, graphs and referencesUploaded byLuís Henrique Amorin
- 1995-Water-In-oil Emulsion Formation a Review of Physics and Mathematical Modelling. Merv Fingas.Uploaded bySilvia Nathalia Contreras
- Abraham Pais-Niels Bohr's Times,_ in Physics, Philosophy, And Polity-Oxford University Press, USA (1994)Uploaded byClaudio Daniel
- Barcode Generator (code128).txtUploaded byAleks54321
- Lilly 2017Uploaded bylig
- E3 Stellar DistancesUploaded byRita Rosa
- Ece471 Hw1 SolUploaded bySaied Aly Salamah
- Optical Fiber Connector Handbook - Ver 1.6Uploaded bymarkprice
- Cathode RayUploaded byGilberto Manhattan
- 1983, Holst T. L., Numerical Computation of Transonic Flow Governed by the Full-Potential Equation, NASA TM 84310.pdfUploaded byAnatoli Krasilnikov
- TWO PHASE FLOWUploaded byVikrant Deshmukh
- Lecture 7Uploaded byPhysicist91
- Worksheet Medium Work Energy ProblemsUploaded byIsrael Lives
- LC-MS.pdfUploaded byhugoboss_dark
- Squat CalculationUploaded byAjay Singh
- Cavity Opto-mechanics - Wikipedia, The Free EncyclopediaUploaded byNeha Anis
- Distillation column profile map paper.pdfUploaded bysdrtfg
- SHRP-H-332 Handbook of Test Methods for Evaluating Chemical DeicersUploaded byrostovsky
- Ivanova Petropulos2016Uploaded byHarry Yucra
- lec19.pdfUploaded byCarlos Arturo García
- Can Plantar Pressure Predict Foot Motion - Friso HagmanUploaded byAngel Javier Vazquez Lopez
- acs.iecr.7b04181Uploaded byMiguelÁngelHernándezOsorio
- Steel Construction BCSATata Steel SCI -DesignUploaded bymys85
- Cbse Sample Paper for Class 7 Science Sa2Uploaded byJaimon Jacob
- Tarea 2 MasaUploaded byvanessa ramos
- SA NegativeUploaded byShenren Xu
- hidrogeluriUploaded byAlinaDiana
- Point Load on SlabsUploaded bysebastian9033
- A Study of High Temperature Autoignition & Thermal Decomposition of Hydrocabons - David CharlesUploaded bymyas100
- FEM&BestpracticesUploaded byHem A

## Much more than documents.

Discover everything Scribd has to offer, including books and audiobooks from major publishers.

Cancel anytime.