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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
{
"metadata": {
"name": "",
"signature": "sha256:0b0e55250634c45aa2467a932e519f96ff88bbef8b9763f284db3e3b2e15ca01"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"CHAPTER24 : DYNAMIC BEHAVIOUR OF CONTROL SYSTEMS"
]
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Example E02 : Pg 863"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# a\n",
"# parameter values \n",
"import math\n",
"Kp = 0.5; # V/rad \n",
"Ka = 100.; # V/V\n",
"Km = 2.*10.**-4. ; # lb-ft/V\n",
"F = 1.5*10.**-4.; # lb-ft/rad/s\n",
"J = 10.**-5. # slug-ft**2\n",
"\n",
"K = Kp*Ka*Km ; # loop propotional gain\n",
"dr = F/(2.*math.sqrt(K*J)); # damping ratio\n",
"wn = math.sqrt(K/J);\n",
"ts = 5./(dr*wn);\n",
"wd = wn*math.sqrt(1. - dr**2.); # frequency at which damped oscillations occur \n",
"print '%s' %(\"a\")\n",
"print '%s %.2f' %(\"damped oscillations occur at a frequency = \",wd)\n",
"print '%s %.2f' %(\"damping ratio = \",dr)\n",
"\n",
"# b\n",
"Tl = 10.**-3.; # load disturbance (lb-ft)\n",
"e = Tl/K; # position lag error \n",
"print '%s' %(\"b\")\n",
"print '%s %.2f' %(\"position lag error (in rad) = \",e)\n",
"\n",
"# c\n",
"KaNew = (e/0.025)*Ka; # new loop gain\n",
"print '%s' %(\"c\")\n",
"print '%s %.2f' %(\"new loop gain for which the position lag error is equal to 0.025rad = \",KaNew)\n",
"\n",
"# d\n",
"drNew = F/(2.*math.sqrt(Kp*KaNew*Km*J)); # new damping ratio\n",
"print '%s' %(\"d\")\n",
"print '%s %.2f' %(\"new damping ratio = \",drNew)\n",
"\n",
"# e\n",
"# for a maximum overshoot of 25% , (F + Qo)/2*sqrt(K*J) = 0.4\n",
"Qo = (0.4*2.*math.sqrt(Kp*KaNew*Km*J)) - F ; \n",
"Ko = Qo/(KaNew*K) ; # output gain factor \n",
"print '%s' %(\"e\")\n",
"print '%s %.2e' %(\"output gain factor = \",Ko)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"a\n",
"damped oscillations occur at a frequency = 30.72\n",
"damping ratio = 0.24\n",
"b\n",
"position lag error (in rad) = 0.10\n",
"c\n",
"new loop gain for which the position lag error is equal to 0.025rad = 400.00\n",
"d\n",
"new damping ratio = 0.12\n",
"e\n",
"output gain factor = 8.90e-05\n"
]
}
],
"prompt_number": 1
}
],
"metadata": {}
}
]
}
|