| i | = | (2.41) | |
| eg2 | = | iRk2 | (2.42) |
| eo | = | - μ1eg1 - i(rp1 + Rk1 + Rk2) | (2.43) |
| ei | = | eg1 - iRk1 | (2.44) |
| eg1 | = | ei + iRki | |
| (rp1 + Rk1 + rp2 + Rk2)i | = | - μ1ei - (μ1Rk1 + μ2Rk2)i | |
| {rp1 + (1 + μ1)Rk1 + rp2 + (1 + μ2)Rk2}i | = | - μ1ei | |
| i | = | ||
| eo | = | - μ1ei![]() |
|
| A | = | - μ1![]() |
(2.45) |
出力インピーダンスを求めるための等価回路は,図2.27になります. これより,以下の関係が成り立ちます.
| id | = | ![]() |
|
| (rp1 + Rk1 + Rk2)id | = | eo - μ1idRk1 | |
| id | = | ||
| iu | = | ![]() |
|
| = | ![]() |
||
| = | ![]() |
||
| = | eo![]() |
| Zo | = | ![]() |
|
| = | ![]() |
(2.46) |
| A | = | -17.22177 = - 12.3541 |
|
| Zi | = | 470 [kΩ] | |
| Zo | = | = 3.238234 [kΩ] |
シミュレーションの回路を図2.28に示します.
1 SRPP voltage amplifier with 12AU7
2 .OPTIONS ITL1=200 ITL2=200
3 .INCLUDE 12AU7.lib
4 X1 1 2 0 12AU7
5 X2 4 1 3 12AU7
6 RK 1 3 1.2k
7 VBB 4 0 196.4884V
8 RG 2 0 470k
9 VIN 2 0 DC -3.511599V AC 1V
10 .NODESET V(3)=100V
11 .control
12 op
13 print v(1) v(2) v(4,3) v(1,3) i(vbb)
14 tf v(3) vin
15 print all
16 .endc
17 .END
1
2 Circuit: SRPP voltage amplifier with 12AU7
3
4 v(1) = 9.648839e+01
5 v(2) = -3.51160e+00
6 v(4,3) = 9.648841e+01
7 v(1,3) = -3.51160e+00
8 i(vbb) = -2.92633e-03
9 transfer_function = -1.23541e+01
10 output_impedance_at_v(3) = 3.238233e+03
11 vin#input_impedance = 4.700000e+05
| A | = | -17.22177 = - 8.300797 |
|
| Zi | = | 470 [kΩ] | |
| Zo | = | = 5.93471 [kΩ] |
シミュレーションの回路を図2.29に示します. この回路で tf 解析をやろうとすると, SPICEが異常終了するため,ac 解析を使用しています.
1 SRPP voltage amplifier with 12AU7
2 .OPTIONS ITL1=200 ITL2=200
3 .INCLUDE 12AU7.lib
4 .SUBCKT SRPPCF IN OUT
5 X1 1 2 5 12AU7
6 X2 4 1 3 12AU7
7 RK1 5 0 1.2k
8 RK2 1 3 1.2k
9 VBB 4 0 200V
10 RG 2 0 470k
11 CI IN 2 1u
12 CO 3 OUT 1000u
13 .ENDS
14
15 XA1 1 2 SRPPCF
16 VI 1 0 DC 0V AC 1V
17 RL 2 0 100Meg
18 .NODESET V(A1:1)=100V
19
20 XA2 3 4 SRPPCF
21 VS 3 0 DC 0V
22 VO 4 0 DC 0V AC 1V
23 .NODESET V(A2:1)=100V
24
25 .control
26 op
27 print v(a1:1,a1:5) v(a1:2,a1:5) v(a1:4,a1:3) v(a1:1,a1:3) v(a1:1) v:a1:bb#branch
28 ac dec 1 1k 1k
29 print abs(v(2)/v(1)) abs(v(1)/i(vi)) abs(v(4)/i(vo))
30 .endc
31 .END
1
2 Circuit: SRPP voltage amplifier with 12AU7
3
4 v(a1:1,a1:5) = 9.648840e+01
5 v(a1:2,a1:5) = -3.51160e+00
6 v(a1:4,a1:3) = 9.648840e+01
7 v(a1:1,a1:3) = -3.51160e+00
8 v(a1:1) = 1.000000e+02
9 v:a1:bb#branch = -2.92633e-03
10 abs(v(2)/v(1)) = 8.300174e+00
11 abs(v(1)/i(vi)) = 4.694988e+05
12 abs(v(4)/i(vo)) = 5.934634e+03
> uniroot(function(ep) Ip(t12AU7, ep, -6) - 5e-3, c(0, 250))$root [1] 160.5975より, Ep2 = 160.6 V です. この点は,図2.30の点Xです. このようにして Ip を変えながら Ep を求めてプロットすると, 図2.30の緑色の線のようになります. この線はほぼ直線になり, V2は抵抗のような働きをしていることがわかります. 概略の抵抗値は, 160.6/5
このとき, V1のプレート電圧は, Ebb - Ep2 - IpRk2 で, 青色の線のようになります. これがV1のロードラインになります. V1は,負荷抵抗が約 32 kΩ のカソード接地として動作しています. この等価的な負荷抵抗の大きさは,Rk の値により変わります. 出力は,V1のプレート電圧に Rk2 の電圧降下を加えたもので, 特性図上ではオレンジ色の線になります. 入力に対する出力の様子を調べるには, 入力に対応するグリッド電圧と青色の線の交点を求め, その点を通る水平線とオレンジ色の線の交点を求めます. その電圧がV2のカソード電圧になります.
動作点Oの決め方はカソード接地と同様で, ロードラインと Eg1 = 0 (または Eg1 = - 0.7 V)の交点Aの位置を 参考にします. 例えば, Eg1 = - 6 V を動作点とすると, その時のプレート電流は Ip0 = 3.19 mA となります. このとき,V1のプレート電圧は Ep1 = 141.2 V, V2のグリッド電圧は Eg2 = - Ip0Rk2 = - 3.83 V, V2のカソード電圧は Ep1 - Eg2 = 145.0 V となります.
V1のグリッドに +6 V の信号が加わったとき, プレート電流は Ip max = 5.86 mA, V1のプレート電圧は Ep1 min = 56.9 V, V2のグリッド電圧は Eg2 min = - Ip maxRk2 = - 7.03 V, V2のカソード電圧は Ep1 min - Eg2 min = 63.9 V となります(点A). V1のグリッドに -6 V の信号が加わったとき, プレート電流は Ip min = 1.34 mA, V1のプレート電圧は Ep1 max = 205.5 V, V2のグリッド電圧は Eg2 max = - Ip minRk2 = - 1.60 V, V2のカソード電圧は Ep1 max - Eg2 max = 207.1 V となります(点B).
一般に,自己バイアスでSRPPを構成するとき, カソード抵抗の値を上下で同じ値とし, Ep1 = Ep2 として使う場合が多いのですが, 図からわかるとおり, SRPPから大きな出力を取り出したい場合は, Ep1 > Ep2 とすべきです. 入力が小さい場合は,逆に Ep1 < Ep2 としたほうがよい場合もあります. また,2次歪みの打ち消しを行なう場合は, V1の動作点を動かすことが必要です.
SRPPの伝達特性を求めるRの関数 trans.srpp を以下に示します.
1 "trans.srpp" <-
2 function(p1, ei, Ebb, Eg1, Rk1=0, Rk2, p2=p1)
3 {
4 # SRPPの伝達関数を求める
5 # p1: V1のパラメータ
6 # p2: V2のパラメータ
7 # ei: 入力電圧
8 # Ebb: 電源電圧
9 # Eg1: V1グリッド電圧(対アース)
10 # Rk1: V1カソード抵抗
11 # Rk2: V2カソード抵抗
12 # 返値
13 # $Ip: プレート電流
14 # $Eg1: 対カソードV1グリッド電圧
15 # $Ep1: 対カソードV1プレート電圧
16 # $Eg2: 対カソードV2グリッド電圧
17 # $Ep2: 対カソードV2プレート電圧
18 # $Eo: 出力電圧(対アースV2カソード電圧)
19
20 get.ep2 <- function(ip) {
21 # プレート電流 ip に対するV2のプレート電圧を求める
22 if (ip == 0) # カットオフの場合
23 return(0)
24 eg2 <- -ip * Rk2
25 uniroot(function(ep2) Ip(p2, ep2, eg2) - ip, c(0, Ebb))$root
26 }
27
28 f <- function(ip) {
29 ep2 <- get.ep2(ip) # V2が分担する電圧
30 eg1 <- eg - ip * Rk1 # 実際のV1のグリッド電圧
31 ep1 <- Ebb - ip * (Rk1 + Rk2) - ep2
32 ip1 <- Ip(p1, ep1, eg1)
33 ip - ip1
34 }
35
36 # V2だけを考え、流れうる最大の電流を求める
37 Ipmax <- uniroot(function(ip) Ip(p2, Ebb-ip*(Rk1+Rk2), -ip*Rk2) - ip,
38 c(0, Ip(p2, Ebb, 0)))$root
39
40 Eg <- ei + Eg1
41 ip <- ep2 <- rep(0, length(Eg))
42 for (i in seq(along=Eg)) {
43 eg <- Eg[i]
44 cat(eg, "")
45 ip[i] <- if (Ip(p1, Ebb, eg) == 0) 0
46 else uniroot(f, c(0, Ipmax*0.99), tol=1e-8)$root
47 ep2[i] <- get.ep2(ip[i]) # 対カソードプレート電圧
48 }
49 cat("\n")
50 eg2 <- -ip * Rk2 # 対カソードグリッド電圧
51 eg1 <- Eg - ip * Rk1 # 対カソードグリッド電圧
52 ep1 <- Ebb - ip * (Rk1 + Rk2) - ep2 # 対カソードプレート電圧
53 eo <- ip * (Rk1 + Rk2) + ep1 # 対アースV2カソード電圧
54 list(Ip=ip, Eo=eo, Eg1=eg1, Ep1=ep1, Eg2=eg2, Ep2=ep2)
55 }
この関数を利用して,SRPPの動作点を求めます.
> trans.srpp(t12AU7, ei=0, Ebb=250, Eg1=-6, Rk2=1.2e3) -6 $Ip # プレート電流 [1] 0.003193013 $Eo # 出力ポイント対アース電圧 [1] 144.9966 $Eg1 # 対カソードグリッド電圧 [1] -6 $Ep1 # 対カソードプレート電圧 [1] 141.165 $Eg2 # 対カソードグリッド電圧 [1] -3.831616 $Ep2 # 対カソードプレート電圧 [1] 105.0034
入力に対する出力を求めます.
> ei <- c(0, 6, -6) > z <- trans.srpp(t12AU7, ei=ei, Ebb=250, Eg1=-6, Rk2=1.2e3) -6 0 -12 > z$Ip [1] 0.003193013 0.005858398 0.001339306 > z$Eo [1] 144.99661 63.93202 207.14122
伝達特性のグラフを作成します.
> eg <- seq(-20, 0, by=0.5) > ip <- trans.srpp(t12AU7, ei=0, Ebb=250, Eg1=eg, Rk2=1.2e3)$Ip -20 -19.5 -19 ... -2.5 -2 -1.5 -1 -0.5 0 > plot(eg, ip, type="l")図2.31のようなグラフが作成されます.