You are on page 1of 10

Signal Flow Graphs

A signal-flow graph (SFG) may be regarded as a simplified version of a block diagram. The SFG was
introduced by S. J. Mason for the cause-and-effect representation of linear systems that are
modelled by algebraic equations. The signal flow graph is constrained to more rigid mathematical
rules when compared to the block-diagram representation. A SFG may be defined as a graphical
means of portraying the input-output relationships among the variables of a set of linear algebraic
equations.

Consider a linear system that is described by a set of algebraic equations:


= = 1,2, ,
=1

Where these equations are written in the form of cause-and-effect relations:


= (( ) ( ))
=1

Which is of the form = ( ). Hence, if we are to draw the SFG for a system
that is being represented by a set of integrodifferential equations then we must find the Laplace
transforms of these equations and then rearrange them in the form outlined above.

Elements of an SFG

In an SFG the junction points or nodes are used to represent signals (variables), while the lines that
connect these nodes, called branches, representing the system (gains) that is processing the signal.
This can be seen in Fig.1 below, where 1(a) is a system and 1(b) is a signal.

Figure 1 Signals and Systems in SFGs

Hence, the SFG of 2 = 12 1 is shown below:

Figure 2 - Example of a simple SFG

From the SFG, we can see that 1 is the input signal, 2 is the output signal and the gain of the
system is 12 .
Example 1.

Consider the following algebraic equations:

2 = 12 1 + 32 3
3 = 23 2 + 43 4
4 = 24 2 + 34 3 + 44 4
5 = 25 2 + 45 4

Figure 3

Apart from branches and nodes, the following terms are useful for the purpose of identification and
execution of the SFG algebra:

Input Node (Source): An input node is a node that has only outgoing branches.

Output Node (Sink): An output node is a node that has only incoming branches. However,
sometimes this condition is not always readily met by an output node. For example, Fig.4(a)
does not have a node that satisfies the condition of an output node. It may be necessary to
make 2 or 3 as output nodes to find the effects at these nodes due to the input. To make
2 and output node, we simply connect a branch with unity gain from the existing 2 node
to a new node which is also designated as 2 . The same procedure is applied to 3 and the
two new SFGs are shown in Fig.4 (b).

Figure 4

In general, we can make any non-input node into an output node by following the same
procedure. However, this procedure cannot be used to convert a non-input node into an
input mode.

Path: A path is any collection of a continuous succession of branches traversed in the same
direction. The definition of a path is entirely general, since it does not prevent any node
from being traversed more than once. Therefore, as simple as the SFG of Fig. 4(a) is, it may
have numerous paths just by traversing the branches 23 and 32 continuously.

Forward Path: A forward path is a path that starts at an input node and ends at an output
node and along which no node is traversed more than once. For example, in the SFG of Fig.
3(d), 1 is the input node, and the rest of the nodes are all possible output nodes. The
forward path between 1 and 2 is simply the connecting branch between the two nodes.
There are two forward paths between 1 and 3 . One contains the branches from 1 to 2
to 3 , and the other one contains the branches from 1 to 2 to 4 (through the branch with
gain 24 ) and then back to 3 (through the branch with gain 43 ).

Path Gain: The product of the branch gains encountered traversing a path is called the path
gain. For example, the path gain for the path 1 2 3 4 in Fig.3(d) is 12 23 34 .

Loop: A loop is a path that originates and terminates on the same node and along which no
other node is encountered more than once. For example the loops of Fig.3(d) are shown in
Fig.5.
Figure 5

Forward-Path Gain: The forward-path gain is the path gain of a forward path.

Loop Gain: The loop gain is the path gain of a loop. For example, the loop gain of loop 2
4 3 2 in Fig.5 is 24 43 32 .

Non-touching Loops: Two parts of an SFG are non-touching if they do not share a common
node. For example, loops 2 3 2 and 4 4 of Fig.3(d) are non-touching loops.

SFG Algebra

Based on the properties of the SFG, we can outline the following manipulation rules and algebra:

1. The value of the variable represented by a node is equal to the sum of all the signals
entering the node. For the SFG of Fig. 6, the value of 1 is equal to the sum of the signals
transmitted through all the incoming branches; that is,
1 = 21 2 + 31 3 + 43 4 + 51 5

Figure 6

2. The value of the variable represented by a node is transmitted through all branches leaving
the node. In the SFG of Fig.6, we have
6 = 16 1
7 = 17 1
8 = 18 1
3. Parallel branches in the same direction connecting two nodes can be replaced by a single
branch with gain equal to the sum of the gains of the parallel branches. An example of this
case is illustrated in Fig.7.

Figure 7

4. A series connection of unidirectional branches, as shown in Fig.8, can be replaced by a single


branch with gain equal to the product of the branch gains.

Figure 8
Block Diagrams and SFGs

Block diagrams can be easily converted into SFGs. We start by drawing the signal nodes for the
system, and then we interconnect the nodes by the branches that show the gain of the signal. The
standard block diagrams are converted into SFGs in Fig.9 below.

Figure 9

Example 2.

Convert the block diagram in Fig.10 to a SFG.

Figure 10

Solution:

We draw the signal nodes, as shown in Fig.11(a). Then we interconnect the nodes, showing the
direction of signal flow and identifying each transfer function. The result is shown in Fig.11(b). Notice
that the negative signs at the summing junctions of the block diagram are represented by the
negative transfer functions of the signal-flow graph. Finally, if desired, simplify the signal-flow graph
to the one shown in Fig.11(c) by eliminating signals that have a single flow in and a single flow out,
such as 2 (), 6 (), 7 (), and ().

Figure 11

Masons Rule
()
The transfer function, of a system represented by a SFG is given by:
()


()
() = =
()
=1

Where:
= the number of forward paths
= the forward path gain
= 1 product of all loop gains +product of non-touching loop gains taken two at a time
product of non-touching loop gains taken three at a time +product of non-touching loop gains
taken four at a time
= loop gain terms in that touch the forward path.
In other words, is formed by eliminating from those loop gains that touch the forward
path.

Example 3.

Consider the SFG of a simple feedback system, shown below:

Figure 12

Find the transfer function, using Masons rule.

Solution

1. There is only one forward path between the input node and output node. That path is
() () () (), hence = 1. So the forward path gain is: 1 = ().

2. There is only one loop, that is () () (). So the loop gain is 1 = ()().
This means that = 1 (()()) = 1 + ()().

3. There is only one loop and that loop touches the forward path so 1 = 1.

4. Hence:
() 1 1 ()
= =
() 1 + ()()

Example 4

Consider the SFG in Figure 3(d). Using Masons rule, find the transfer function of the system.

Solution

1. There are three forward paths between 1 and 5 so = 3

Path 1: 1 2 3 4 5 with gain 1 = 12 23 34 45

Path 2: 1 2 4 5 with gain 2 = 12 24 45

Path 3: 1 2 5 with gain 3 = 12 25


2. There are four loops in the SFG, these are
Loop 1: 2 3 2 with loop gain 1 = 23 32
Loop 2: 3 4 3 with loop gain 2 = 34 43
Loop 3: 4 4 with loop gain 3 = 44
Loop 4: 2 4 3 2 with loop gain 4 = 24 43 32
Only loop 1 and loop 3 are non-touching, the product of non-touching loops two at a time is
1 3 = 23 32 44 . This means that:
= 1 (1 + 2 + 3 + 4 ) + 1 3
= 1 (23 32 + 34 43 + 44 + 24 43 32 ) + 23 32 44
3. All of the loops touch forward paths 1 and 2, hence 1 = 2 = 1, but loop 3 and loop 2
doesnt touch forward path 3, hence we eliminate the terms of Loops 1 and 4 from to get
3 = 1 (34 43 + 44 ) = 1 34 43 + 44

4. Hence:

5 1 1 + 2 2 + 3 3 12 23 34 45 + 12 24 45 + (12 25 )(1 34 43 + 44 )
= =
1 1 (23 32 + 34 43 + 44 + 24 43 32 ) + 23 32 44

Example 5.

Find the transfer function for the SFG in Fig.12

Figure 13

Solution

1. Theres only one forward path between () and (), = 1. That path is () 4 ()
3 () 2 () 1 () (). The forward path gain is 1 = 1 ()2 ()3 ()4 ()5 ().

2. There are four loops in the SFG, these are


Loop 1: 4 () 3 () 4 () with loop gain 1 = 2 ()1 ()
Loop 2: 2 () 1 () 2 () with loop gain 2 = 4 ()2 ()
Loop 3: 5 () 6 () 5 () with loop gain 3 = 7 ()4 ()
Loop 4: 4 () 3 () 2 () 1 () () 5 () 6 () 4 () with loop gain 4 =
2 ()3 ()4 ()5 ()6 ()7 ()8 ()

Non-touching loops 2 at a time:


1 2 = 2 ()1 ()4 ()2 ()
1 3 = 2 ()1 ()7 ()4 ()
2 3 = 4 ()2 ()7 ()4 ()
Non-touching loops 3 at a time:
1 2 3 = 2 ()1 ()4 ()2 ()7 ()4 ()
Hence:
= 1 (1 + 2 + 3 + 4 ) + (1 2 + 1 3 + 2 3 ) (1 2 3 )
= 1 [2 ()1 () + 4 ()2 () + 7 ()4 ()]
+ [2 ()1 ()4 ()2 () + 2 ()1 ()7 ()4 ()
+ 4 ()2 ()7 ()4 ()] [2 ()1 ()4 ()2 ()7 ()4 ()]

3. All of the loops, except Loop 3, touch the forward path. Hence
1 = 1 3 = 1 7 ()4 ()

4. Therefore:
1 1 (1 ()2 ()3 ()4 ()5 ())(1 7 ()4 ())
() = =

Where:

= 1 [2 ()1 () + 4 ()2 () + 7 ()4 ()]


+ [2 ()1 ()4 ()2 () + 2 ()1 ()7 ()4 () + 4 ()2 ()7 ()4 ()]
[2 ()1 ()4 ()2 ()7 ()4 ()]

You might also like