5·12

summing amplifier 与电平移动

About 14 minLecture 10

inverting amplifier 的 − 端是 virtual ground(0 V)。在这一点上多接几路输入电阻,每一路的电流只由自己的输入决定,在 − 端汇合以后一起流过反馈电阻。这样就能把几个电压按权重相加,叫 summing amplifier。再把 + 端接一个参考电压而不是地,输出就整体上下平移,叫 level shifting(电平移动)。

① summing amplifier

+ − v1 Ra + − v2 Rb − + Rf vo ia ib if 各路电流在 − 端汇合
两路输入 v1v_1、v2v_2 分别经 RaR_a、RbR_b 接到 − 端,RfR_f 从 − 端接到输出,+ 端接地。箭头是电流的参考方向。
  1. 读图:+ 端接地,v+=0v_+ = 0;RfR_f 把输出接回 − 端,是 negative feedback。
  2. 规则 2:v−=0v_- = 0。课本把这个汇合点叫 summing junction。
  3. 各路电流:ia=v1−0Rai_a = \frac{v_1 - 0}{R_a},ib=v2−0Rbi_b = \frac{v_2 - 0}{R_b}。− 端被钉在 0 V,所以 iai_a 只由 v1v_1 决定,ibi_b 只由 v2v_2 决定,两路互不影响。
  4. 规则 1 和 KCL:流进 op amp 的是 0,所以 if=ia+ibi_f = i_a + i_b;而 RfR_f 左端 0、右端 vov_o,if=0−voRfi_f = \frac{0 - v_o}{R_f}。
  5. 解出 vov_o:
vo=−Rf(v1Ra+v2Rb)v_o = -R_f\left(\frac{v_1}{R_a} + \frac{v_2}{R_b}\right)

每一路的"权重"是 Rf/RkR_f/R_k。所有电阻相等时 vo=−(v1+v2)v_o = -(v_1 + v_2)。路数更多时照样加:vo=−Rf∑kvk/Rkv_o = -R_f \sum_k v_k / R_k。

例题

例 1 等权相加

v1=1v_1 = 1 V,v2=2v_2 = 2 V,Ra=Rb=Rf=1R_a = R_b = R_f = 1 kΩ,Vsat=12V_{sat} = 12 V。求 vov_o。

  1. 规则 2:v−=0v_- = 0。
  2. 各路电流(V、kΩ、mA):ia=1/1=1i_a = 1/1 = 1 mA,ib=2/1=2i_b = 2/1 = 2 mA。
  3. KCL:if=1+2=3i_f = 1 + 2 = 3 mA,从 − 端流向输出。
  4. 求 vov_o:vo=0−ifRf=−3×1=−3v_o = 0 - i_f R_f = -3 \times 1 = -3 V,在 ±12 V 之内 ✓。正好是 −(1+2)-(1 + 2)。
例题

例 2 按权重设计

要 vo=−(2v1+0.5v2)v_o = -(2v_1 + 0.5v_2),取 Rf=10R_f = 10 kΩ。选 RaR_a、RbR_b,再求 v1=1.5v_1 = 1.5 V、v2=4v_2 = 4 V 时的 vov_o。

看解答
  1. 权重定电阻:Rf/Ra=2R_f/R_a = 2,Ra=10/2=5R_a = 10/2 = 5 kΩ;Rf/Rb=0.5R_f/R_b = 0.5,Rb=10/0.5=20R_b = 10/0.5 = 20 kΩ。
  2. 各路电流:ia=1.5/5=0.3i_a = 1.5/5 = 0.3 mA,ib=4/20=0.2i_b = 4/20 = 0.2 mA。
  3. KCL:if=0.3+0.2=0.5i_f = 0.3 + 0.2 = 0.5 mA。
  4. 求 vov_o:vo=−0.5×10=−5v_o = -0.5 \times 10 = -5 V。用目标式核对:−(2×1.5+0.5×4)=−(3+2)=−5-(2 \times 1.5 + 0.5 \times 4) = -(3 + 2) = -5 V ✓。

② level shifting

+ − v1 R1 − + + − vref Rf vo v₋ i i
和 inverting amplifier 一样,只是 + 端经参考电压 vrefv_{ref}(+ 在上)接地,不再直接接地。两个 ii 的参考方向都从左往右。
  1. 读图:+ 端经 vrefv_{ref} 接地,v+=vrefv_+ = v_{ref};RfR_f 把输出接回 − 端,是 negative feedback。
  2. 规则 2:v−=vrefv_- = v_{ref}。注意现在 − 端不是 0 V。
  3. R1R_1 上的电流:i=v1−vrefR1i = \frac{v_1 - v_{ref}}{R_1}。
  4. 规则 1:同一个 ii 流过 RfR_f:i=vref−voRfi = \frac{v_{ref} - v_o}{R_f}。
  5. 两式相等,解 vov_o:vo=vref−RfR1(v1−vref)v_o = v_{ref} - \frac{R_f}{R_1}(v_1 - v_{ref}),整理成
vo=−RfR1 v1+(1+RfR1)vrefv_o = -\frac{R_f}{R_1}\,v_1 + \left(1 + \frac{R_f}{R_1}\right)v_{ref}

第一项是普通的 inverting amplifier;第二项是一个常数,把整个输出上下平移。平移量是 vrefv_{ref} 乘 (1+Rf/R1)(1 + R_f/R_1),不是 vrefv_{ref} 本身。

例题

例 3 代数字

vref=1v_{ref} = 1 V,v1=2v_1 = 2 V,R1=Rf=1R_1 = R_f = 1 kΩ。求 vov_o。

  1. 规则 2:v−=vref=1v_- = v_{ref} = 1 V。
  2. R1R_1 上的电流:i=2−11=1i = \frac{2 - 1}{1} = 1 mA。
  3. 同一个电流流过 RfR_f:1=1−vo11 = \frac{1 - v_o}{1},所以 vo=0v_o = 0 V。
  4. 用公式核对:−11×2+(1+1)×1=−2+2=0-\frac{1}{1}\times 2 + (1 + 1)\times 1 = -2 + 2 = 0 V ✓。
例题

例 4 设计一个电平移动

要 vo=3−2v1v_o = 3 - 2v_1(单位 V),取 R1=5R_1 = 5 kΩ。选 RfR_f 和 vrefv_{ref},并验证 v1=0.5v_1 = 0.5 V 时的输出。

看解答
  1. 斜率定 RfR_f:v1v_1 前面的系数 −Rf/R1=−2-R_f/R_1 = -2,所以 Rf=2×5=10R_f = 2 \times 5 = 10 kΩ。
  2. 常数定 vrefv_{ref}:(1+Rf/R1) vref=3(1 + R_f/R_1)\,v_{ref} = 3,即 3 vref=33\,v_{ref} = 3,vref=1v_{ref} = 1 V。
  3. 验证 v1=0.5v_1 = 0.5 V:目标式给 vo=3−1=2v_o = 3 - 1 = 2 V。用 KCL 核对:v−=1v_- = 1 V,R1R_1 上 i=0.5−15=−0.1i = \frac{0.5 - 1}{5} = -0.1 mA(负号表示电流其实从右往左流);RfR_f 上 1−210=−0.1\frac{1 - 2}{10} = -0.1 mA,两者相等 ✓。
  4. 效果:v1v_1 从 0 V 变到 1.5 V 时,vov_o 从 3 V 变到 0 V:反相放大 2 倍,再整体抬高 3 V。
常见错误
  • level shifting 时还把 − 端当成 0 V。− 端等于 vrefv_{ref},电流要写 v1−vrefR1\frac{v_1 - v_{ref}}{R_1},不是 v1R1\frac{v_1}{R_1}。
  • 以为输出平移 vrefv_{ref}。平移量是 (1+Rf/R1) vref(1 + R_f/R_1)\,v_{ref}。
  • 输入源带内阻时忘了算进去。某一路信号源有内阻的话,它和这一路的输入电阻串联,RkR_k 要用两者之和。