Generator with Prime Mover

A single-phase AC electric generator has a moving rotor with a magnet, which induces a voltage V t V_t at its stator terminals. A resistor R R is connected across the stator terminals.

The machine model is as follows:

λ = V m ω 0 cos θ V t = λ ˙ d d t ( 1 2 I θ ˙ 2 ) = P M P R \lambda = \frac{V_m}{\omega_0} \cos \theta \\ V_t = \dot{\lambda} \\ \frac{d}{dt} \Big(\frac{1}{2} I \dot{\theta}^2 \Big) = P_M-P_R

In the model, λ \lambda is the stator magnetic flux linkage as a function of rotor angular position θ \theta . The terminal voltage V t V_t is the time derivative of the flux linkage. The third equation states that the rotor is gaining kinetic energy at a rate equal to the difference between the mechanical input power and resistor power dissipation (a statement of energy conservation). The parameter I I is the machine inertia constant.

At time t = 0 t = 0 , θ = 0 \theta = 0 and θ ˙ = ω 0 \dot{\theta} = \omega_0 . The mechanical input power P M P_M is such that the machine maintains nominal speed ω 0 \omega_0 (more or less). See the "details" section.

As the machine rotates, what is the magnitude of the maximum deviation of θ ˙ \dot{\theta} from ω 0 \omega_0 ? For practical purposes, restrict your simulation interval to ( 0 t 10 ) (0 \leq t \leq 10) , to limit the effects of any accumulated numerical errors.

Note: In this problem, we see that single-phase machines have an inherent wobble even during steady state operation. In three-phase machines, these wobbles cancel out, resulting in smoother operation.

Details and Assumptions (assume standard SI units):
1) V m = 120 2 V_m = 120 \sqrt{2}
2) ω 0 = 120 π \omega_0 = 120 \pi
3) R = 15 R = 15
4) I = 0.01 I = 0.01
5) P M = 12 0 2 R P_M = \frac{120^2}{R}


The answer is 0.338.

This section requires Javascript.
You are seeing this because something didn't load right. We suggest you, (a) try refreshing the page, (b) enabling javascript if it is disabled on your browser and, finally, (c) loading the non-javascript version of this page . We're sorry about the hassle.

1 solution

Karan Chatrath
Sep 24, 2019

The governing equation of the system is:

θ ¨ = P m I θ ˙ A sin 2 ( θ ) θ ˙ \ddot{\theta} = \frac{P_m}{I\dot{\theta}} - A \sin^2(\theta)\dot{\theta}

A = V m 2 ω o 2 R I A = \frac{V_m^2}{\omega_o^2RI}

This can be re-written as a system of first-order ODE's by taking x 1 = θ x_1 = \theta and x 2 = θ ˙ x_2 = \dot{\theta} :

x ˙ = f ( x ) [ x ˙ 1 x ˙ 2 ] = [ x 2 P m I x 2 A sin 2 ( x 1 ) x 2 ] \dot{x} = f(x) \implies\left[\begin{matrix} \dot{x}_1\\\dot{x}_2\end{matrix}\right] = \left[\begin{matrix} x_2\\\frac{P_m}{Ix_2} - A \sin^2(x_1)x_2 \end{matrix}\right]

The initial conditions are: x ( 0 ) = [ x 1 ( 0 ) x 2 ( 0 ) ] = [ 0 ω o ] x(0) = \left[\begin{matrix} x_1(0)\\x_2(0)\end{matrix}\right] = \left[\begin{matrix} 0\\\omega_o\end{matrix}\right]

From here, numerical integration is used. Simulation code as follows:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import math
import numpy as np

#constants
wo  = 120*math.pi
Vm  = 120*math.sqrt(2)
R   = 15
I   = 0.01
A   = (Vm**2)/((wo**2)*R*I)
Pm  = (120**2)/R

# Initialize t and initial conditions

t  = 0
dt = 10.0**(-5.0)
xs = np.array([[0.0],[wo]])
max = 0

# Numerical Integration - Euler step:
while t <= 10.0:
    xs = xs +  np.array([xs[1],(Pm/(I*xs[1]))-(A*(math.sin(xs[0]))**2 *xs[1])])* dt

    # Computation of magnitude of deviation:
    Dev = abs(wo - xs[1])

    # Condition to check for maximum:
    if Dev > max:
        max = Dev

    t = t + dt



print(max)
# Result: 0.33840585

0 pending reports

×

Problem Loading...

Note Loading...

Set Loading...