0% found this document useful (0 votes)
9 views13 pages

Signal Flow Graph

This document outlines the use of Signal Flow Graphs (SFG) to derive the overall transfer function of systems, emphasizing their advantages over block diagrams in handling complex interrelationships. It provides multiple examples demonstrating the calculation of transfer functions using MATLAB, along with the necessary equations and procedures. The document also includes homework assignments for further practice on the topic.

Uploaded by

ali alaa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views13 pages

Signal Flow Graph

This document outlines the use of Signal Flow Graphs (SFG) to derive the overall transfer function of systems, emphasizing their advantages over block diagrams in handling complex interrelationships. It provides multiple examples demonstrating the calculation of transfer functions using MATLAB, along with the necessary equations and procedures. The document also includes homework assignments for further practice on the topic.

Uploaded by

ali alaa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

50

MATLAB Applications No. (3)


Signal Flow Graphs

 Objective:
The objective of this application is to obtain the overall
transfer function of a systems using Signal Flow Graphs.

 Signal Flow Graphs:

The block diagrams are adequate for the representation of


the interrelationships of controlled and input variables.
However, for a system with reasonably complex
interrelationships, the block diagram reduction procedure is
cumbersome and often quite difficult to complete.
A signal-flow graph may be regarded as a simplified version
of a block diagram, which provides the relation between
system variables without requiring any reduction procedure
or manipulation of the flow graph.
The signal-flow graph for the cause-and-effect
representation of linear systems that are modeled by
algebraic equations. Besides the differences in the physical
appearance of the signal-flow graph and the block diagram,
the signal-flow graph is constrained by more rigid
mathematical rules, whereas the block-diagram notation is
more liberal. A signal-flow graph may be defined as a
graphical means of portraying the input-output relationships
among the variables of a set of linear algebraic equations.

Khaled Mustafa Mahmoud Session: Spring 2020/2021


51

The transfer function the output variable Y (s) to the input


variable R ( s ) of a system represented by a signal flow graph
is:
Y ( s ) ∑ Pk ∆ k
T ( s )= =
R( s) ∆

Where: Pk the k th forward path gain.


∆ k the value of the Δ for that part of the graph not touching

the k th forward path.

Δ=1−
[ ∑ of loop
gains of all
indivisialloops ][
+
∑ of gain productsof all
possible combination
of two non touching loops ][

∑ of gain productsof all
possible combination
of three nontouching loops ][
+
∑ of gain productsof a
possible combination
of four non touching loo

Example 4.1: Determine the closed loop transfer function for


the signal flow graph in Figure 4.1.

Figure 4.1: Signal flow graph for Example 4.1.


Solution:
From the signal flow graph in Figure 4.1, we have:
(4.1
)
E ( s )=R ( s )+ B ( s )

(4.2
)
B ( s )=−H ( s ) Y ( s )

(4.3
)
Y ( s )=G ( s ) E(s)

The equations (4.1, 4.2, and 4.3) can be rewritten as:

Khaled Mustafa Mahmoud Session: Spring 2020/2021


52

[ ]
E B Y R
1 −1 0 −1
0 1 H 0
−G 0 1 0

>> % To determine the closed loop transfer function of the SFG for
Example 4.1%
>> syms G H
>> M=[1 -1 0 -1;1 0 H 0;0 -G 1 0];
>> N=rref(M);
>> T=-N(3,4); % T=Y(s)/R(s) %
>> pretty(T)
G
------------
1+ G H

Example 4.2: A control system has a signal flow graph as


shown in Figure 4.2. Find the Y (s)/ R ( s ).

Figure 4.2: Signal flow graph of multiple loop system for Example
4.2.
Solution:
From the signal flow graph in Figure 4.2, we have:
(4.4
)
E1 ( s )=R ( s ) −H 2 ( s ) Y ( s )

Y ( s )=G2 ( s ) E2 ( s ) (4.5

Khaled Mustafa Mahmoud Session: Spring 2020/2021


53

)
(4.6
)
E2 ( s )=G1 ( s ) E1 ( s )−H 1 ( s ) Y ( s )

The equations (4.4, 4.5, and 4.6) can be rewritten as:

[ ]
E1 Y E2 R
1 H2 0 −1
0 1 −G2 0
−G1 H 1 1 0

>> % To determine the Y(s)/R(s) for the SFG in Example 4.2%


>> syms G1 G2 H1 H2
>> M=[1 H2 0 -1;0 1 -G2 0;-G1 H1 1 0];
>> N=rref(M);
>> T=-N(2,4); % T=Y(s)/R(s) %
>> pretty(T)
G1 G2
------------------------------
1 +G2 H1 + G1 G2 H2

Example 4.3: Consider the interacting system has signal


flow graph given in Figure 4.3. Use MATLAB to determine
Y 1 (s)/ R1 (s), Y 1 (s)/ R2 (s), Y 2 (s)/ R1 (s), and Y 2 (s)/ R2 (s).

Figure 4.3: Signal flow graph of interacting system.

Solution:

Khaled Mustafa Mahmoud Session: Spring 2020/2021


54

From the signal flow graph in Figure 4.3, we have:


E1 (s)= R1 (s)− H 1 (s)Y 1(s) (4.7)
Y 1 (s)=G2 (s)E 2 (s ) (4.8)
E2 (s)=G1 (s)E 1 (s) +G3 (s)E 3 (s ) (4.9)
E3 (s)= R2 (s)− H 2 (s)Y 2(s) (4.10
)
Y 2 (s)=G6 (s) E4 (s) (4.11
)
E 4 (s )=G4 ( s ) E2 ( s ) +G5 (s ) E 3(s) (4.12
)
The equations (4.7 to 4.12) can be rewritten as:

[ ]
E1 Y 1 E2 E3 Y 2 E 4 R 1 R2
1 H1 0 0 0 0 −1 0
0 1 −G2 0 0 0 0 0
−G2 0 1 −G3 0 0 0 0
0 0 0 1 H2 0 0 −1
0 0 0 0 1 −G6 0 0
0 0 −G 4 −G5 0 1 0 0

>> syms G1 G2 G3 G4 G5 G6 H1 H2
>> M=[1 H1 0 0 0 0 -1 0
0 1 -G2 0 0 0 0 0
-G1 0 1 -G3 0 0 0 0
0 0 0 1 H2 0 0 -1
0 0 0 0 1 -G6 0 0
0 0 -G4 -G5 0 1 0 0];
>> N=rref(M);
>> % To determine the transfer function Y1(s)/R1(s) %
>> T11=-N(2,7);
>> pretty(T11)

Khaled Mustafa Mahmoud Session: Spring 2020/2021


55

G1 G2 + G1 G2 G5 G6 H2
--------------------------------------------------------------------------------
1+ G1 G2 H1 + G5 G6 H2 + G3 G4 G6 H2 + G1 G2 G5 G6 H1 H2
>> % To determine the transfer function Y1(s)/R2(s) %
>> T12=-N(2,8);
>> pretty(T12)
G2 G3
---------------------------------------------------------------------------------
1+G1 G2 H1 + G5 G6 H2 + G3 G4 G6 H2 + G1 G2 G5 G6 H1 H2
>> % To determine the transfer function Y2(s)/R1(s) %
>> T21=-N(5,7);
>> pretty(T21)
G1 G4 G6
---------------------------------------------------------------------------------
1+ G1 G2 H1 + G5 G6 H2 + G3 G4 G6 H2 + G1 G2 G5 G6 H1 H2

>> % To determine the transfer function Y2(s)/R2(s) %


>> T22=-N(5,8);
>> pretty(T22)
G5 G6 + G3 G4 G6 + G1 G2 G5 G6 H1
---------------------------------------------------------------------------------
1+G1 G2 H1 + G5 G6 H2 + G3 G4 G6 H2 + G1 G2 G5 G6 H1 H2

Example 4.4: To exploit the strength advantage of robot


manipulators and the intellectual advantage of humans, a
class of manipulators called extenders has been examined.
The extender is defined as an active manipulator worn by a
human to augment the human’s strength. The human
provides as in input U ( s), as shown in Figure 4.4. The
endpoint of the extenders is P(s). Perform the following
using MATLAB:
1. Determine the output P(s) for both U ( s) and F (s ) in the
form:

Khaled Mustafa Mahmoud Session: Spring 2020/2021


56

P ( s )=T 1 ( s ) U ( s ) +T 2 ( s ) F ( s )

2. Repeat part (1) if: G1 ( s )=4 /( s+ 2)( s+ 3) , Gc ( s )=( s+ 0.5)/s ,

G ( s )=2/(s (s+1)), K ( s)=10 , H (s)=1 , E( s)=1/(s +1), B (s )=1/s .

Figure 4.4: Model of extender.

Solution:
From the signal flow graph in Figure 4.4, we have:

(4.13
)
E1 ( s )=U ( s ) −H ( s ) P( s)

(4.14
)
E2 ( s )=F ( s )−E ( s ) P(s)

(4.15
)
P ( s )=G ( s ) E1 ( s )+ K ( s ) G1 ( s ) E 3 ( s ) +Gc (s) E2 (s )

(4.16
)
E3 ( s )=B ( s ) E1 ( s )+ E 2 (s )

The equations (4.13 to 4.16) can be rewritten as:

Khaled Mustafa Mahmoud Session: Spring 2020/2021


57

[ ]
E1 E2 P E3 U F
1 0 H 0 −1 0
0 1 E 0 0 −1
−G −Gc 1 −K G1 0 0
−B −1 0 1 0 0

>> syms H E G Gc G1 K B
>> M=[1 0 H 0 -1 0;0 1 E 0 0 -1;-G -Gc 1 -K*G1 0 0;-B -1 0 1 0 0];
>> N=rref(M);
>> % To determine the transfer function P(s)/U(s) %
>> TPU=-N(3,5);
>> pretty(T)
G + B G1 K
----------------------------------------------
1+ E Gc + G H + E G1 K + B G1 H K
>> % To determine the transfer function P(s)/F(s) %
>> TPF=-N(3,6);
>> pretty(T)
Gc + G1 K
----------------------------------------------
1+E Gc + G H + E G1 K + B G1 H K

>> % To Repeat part (1) if: G1(s)=4/(s+2)*(s+3), Gc(s)=(s+0.5)/s... %


>> % G(s)=2/(s*(s+1)), K(s)=10, H(s)=1, E(s)= 1/(s+1), B(s)=1/s %
>> syms s
>> G1=4/((s+2)*(s+3));
>>Gc=(s+0.5)/s;G=2/(s*(s+1));
>> K=10;H=1;E=1/(s+1);B=1/s;
>> M=[1 0 H 0 -1 0;0 1 E 0 0 -1;

Khaled Mustafa Mahmoud Session: Spring 2020/2021


58

-G -Gc 1 -K*G1 0 0;
-B -1 0 1 0 0];
>> N=rref(M);
>> % To determine the transfer function P(s)/U(s) %
>> T=-N(3,5);
>> pretty(T)
4 s2+ 100 s + 104
------------------------------------------
2 s4+ 14 s3+ 37 s2+ 209 s + 110
>> % To determine the transfer function P(s)/U(s) %
>> T=-N(3,6);
>> pretty(T)
2 s4+ 13 s3+ 108 s2+ 103 s + 6
------------------------------------------
2 s4+ 14 s3+ 37 s2+ 209 s + 110

Example 4.5: Find the overall transfer function Y (s)/ R ( s )that


is equivalent to the system shown in Figure 4.5 using the
connect command.

Khaled Mustafa Mahmoud Session: Spring 2020/2021


59

Figure 4.5: A multi loop feedback control system.

Solution:
>> % To determine the closed loop transfer function of the SFG for
Example 4.5%
>> s=tf('s');G1=s;G2=2*s;G3=G2;G4=G1;G5=1/(s+1);
>>H1=s^0;H2=4*s^0;H3=H1;H4=H3;
>>G1.inputname='E1';G1.outputname='A';
>>G2.inputname='E1';G2.outputname='B';
>>G3.inputname='E1';G3.outputname='E';
>>G4.inputname='E2';G4.outputname='C';
>>G5.inputname='E3';G5.outputname='Y';
>>H1.inputname='C';H1.outputname='D';
>>H2.inputname='Y';H2.outputname='F';
>>H3.inputname='Y';H3.outputname='G';
>>H4.inputname='Y';H4.outputname='H';
>>sum1=sumblk('E1','R','H','+-'); sum2=sumblk('E2','A','B','D','++-');
>>sum3=sumblk('E3','C','E4','H','++-'); sum4=sumblk('E4','E','F','+-');
>>T=mineral(connect(G1,G2,G3,G4,G5,H1,H2,H3,H4,sum1,sum2,sum
3,sum4,'R','Y'))
0.8333 s^2 + 0.3333 s
-------------------------------
s^2 + 1.5 s + 1

Khaled Mustafa Mahmoud Session: Spring 2020/2021


60

Homework 4.1: Consider the signal flow graph in Figure


4.6. Use MATLAB to find the transfer function Y (s)/ R(s).

Figure 4.6: Multiple loop system.

-------------------------------------------------------------------------------------------
-
Homework 4.2: Find the transfer function Y (s)/ R ( s )using
MATLAB for the idle - speed control system for a fuel -
injected engine as shown in Figure 4.7.

Figure 4.7: Idle speed control system.

Khaled Mustafa Mahmoud Session: Spring 2020/2021


61

Homework 4.3: A system consists of two electric motors


that are coupled by a continuous flexible belt. The belt also
passes over a swinging arm that is instrumented to allow
measurement of the belt speed and tension. The basic
control problem is to regulate the belt speed and tension by
varying the motor torques.
An example of a practical system similar to that shown
occurs in textile fiber manufacturing processes when yarn is
wound from one spool to another at high speed. Between
the two spools, the yarn is processed in a way that may
require the yarn speed and tension to be controlled within
defined limits. A model of the system is shown in Figure 4.8.
Find Y 2 (s)/ R1 (s)and Y 1 (s)/ R2 (s)using MATLAB.

Figure 4.8: A model of the coupled motor drives.

Khaled Mustafa Mahmoud Session: Spring 2020/2021


62

Khaled Mustafa Mahmoud Session: Spring 2020/2021

You might also like