Implementar circuitos com amplificadores operacionais
Apresentação
UC01996 (25h) do curso Técnico de Sistemas de Computação e Redes. Cobre o amplificador operacional (AOP) desde o modelo ideal até às configurações práticas lineares e não-lineares. Inclui filtros activos, condicionamento de sinal e aplicações em instrumentação e controlo. Pressupõe conhecimento de UC01995.
1. AOP Ideal vs Real
1.1 Modelo ideal e regras de ouro
O amplificador operacional (AOP, Op-Amp) é um amplificador diferencial de ganho muito elevado:
$$V_{out} = A_0 \times (V^+ - V^-)$$
O modelo ideal assume: - A₀ = ∞ (ganho em malha aberta infinito) - Zin = ∞ (não absorve corrente nas entradas) - Zout = 0 (fonte de tensão ideal na saída) - Largura de banda = ∞ - CMRR = ∞ (rejeita perfeitamente o sinal de modo comum) - VIO = 0 (sem offset de tensão)
Com realimentação negativa (feedback): A₀ → ∞ implica que V⁺ ≈ V⁻ (diferença tendente a zero), e as correntes de entrada são nulas.
Regras de ouro da análise: 1. V⁺ = V⁻ (terra virtual — em configuração inversora, V⁻ = V⁺ = 0) 2. I⁺ = I⁻ = 0 (nenhuma corrente entra nas entradas do AOP)
1.2 Parâmetros do AOP real
Tensão de offset de entrada (VIO): - Tensão DC que aparece na saída mesmo com Vin = 0 - Efeito: Vout(erro) = VIO × (1 + Rf/R1) - Redução: usar potenciómetro de ajuste de offset (pinos de trim) ou topologias insensíveis ao offset
Corrente de bias de entrada (IB): - Corrente necessária para polarizar a base dos BJTs internos (ou gate dos JFETs) - AOPs BJT: IB ≈ 100 nA; AOPs JFET (TL071): IB ≈ 50 pA - Efeito: queda de tensão nos resistores de realimentação → erro DC adicional
CMRR (Common Mode Rejection Ratio): $$CMRR = 20 \times \log_{10}\left(\frac{A_d}{A_{cm}}\right) \text{ dB}$$ - Ad = ganho diferencial; Acm = ganho de modo comum - Típico: 80–120 dB → a tensão de modo comum é atenuada 10 000 a 1 000 000 vezes
Produto ganho-largura de banda (GBW): $$f_{H} = \frac{GBW}{|A_{cl}|}$$ - GBW constante para um dado AOP - LM741: GBW = 1 MHz → com Av = 10, fH = 100 kHz; com Av = 100, fH = 10 kHz
Slew rate (SR): - Velocidade máxima de variação da saída: SR = ΔVout/Δt (V/µs) - LM741: SR = 0,5 V/µs — limita a frequência máxima de sinal de grande amplitude: $$f_{SR} = \frac{SR}{2\pi \times V_{out(pico)}}$$ - Para Vout(pico) = 10 V e SR = 0,5 V/µs: fSR = 0,5×10⁶ / (2π×10) = 7958 Hz ≈ 8 kHz
1.3 Comparação de AOPs comuns
| AOP | Tecnologia entrada | GBW | SR | IB | Supply | Característica |
|---|---|---|---|---|---|---|
| LM741 | BJT | 1 MHz | 0,5 V/µs | 80 nA | ±5 a ±22V | Clássico, robusto |
| TL071/TL081 | JFET | 3 MHz | 13 V/µs | 30 pA | ±5 a ±18V | JFET, rápido, baixo IB |
| LM358 | BJT | 1 MHz | 0,6 V/µs | 45 nA | 3 a 32V (single) | Single-supply, 5V compatível |
| LM324 | BJT | 1 MHz | 0,5 V/µs | 45 nA | 3 a 32V | Quad, single-supply |
| TL072 | JFET | 3 MHz | 13 V/µs | 30 pA | ±5 a ±18V | Duplo, áudio |
| NE5532 | BJT | 10 MHz | 9 V/µs | 200 nA | ±5 a ±22V | Baixo ruído, áudio Hi-Fi |
2. Configurações Lineares
2.1 Amplificador inversor
Fórmula de ganho: $$A_v = -\frac{R_f}{R_1}$$
Análise usando as regras de ouro: 1. V⁻ = V⁺ = 0 (terra virtual, pois V⁺ está ligado à massa) 2. I1 = Vin/R1 (corrente em R1) 3. Como I(AOP) = 0, toda I1 flui por Rf 4. Vout = –I1 × Rf = –Vin × (Rf/R1)
Impedância de entrada: Zin = R1 (o ponto V⁻ = 0 V → R1 "vê" massa)
Resistência de compensação de offset: R_comp = R1 ∥ Rf (ligar em série com V⁺ para compensar IB)
Exemplo: ganho de –20 dB (×10, invertido): - R1 = 1 kΩ, Rf = 10 kΩ - Zin = 1 kΩ (pode ser baixa — considerar buffer na entrada)
2.2 Amplificador não-inversor
Fórmula de ganho: $$A_v = 1 + \frac{R_f}{R_1}$$
Análise: 1. V⁺ = Vin 2. V⁻ = V⁺ = Vin (regra de ouro) 3. V⁻ é nó entre R1 e Rf (divisor de tensão) 4. Vin = Vout × R1/(R1+Rf) → Vout = Vin × (1 + Rf/R1)
Impedância de entrada: Zin ≈ ∞ (entrada directa no pino V⁺ do AOP)
Caso especial — seguidor de tensão (buffer): Rf = 0 (curto), sem R1: $$A_v = 1 \quad Z_{in} \to \infty \quad Z_{out} \to 0$$
Exemplo: ganho de +20 dB (×10, não invertido): - R1 = 1 kΩ, Rf = 9 kΩ - Zin ≈ ∞ (excelente para sensores de alta impedância)
2.3 Somador inversor
$$V_{out} = -R_f \left(\frac{V_1}{R_1} + \frac{V_2}{R_2} + \frac{V_3}{R_3}\right)$$
Aplicação como mixer de áudio (R1=R2=R3=R, Rf=R): Vout = –(V1+V2+V3)
DAC ponderado (4 bits): R, 2R, 4R, 8R → cada bit tem peso proporcional (MSB → R, LSB → 8R) Vout = –Rf × (b3/R + b2/2R + b1/4R + b0/8R) onde bi = 0 ou Vref
3. Configurações Lineares Avançadas
3.1 Amplificador diferencial (subtractor)
$$V_{out} = \frac{R_f}{R_1}(V_2 - V_1) \quad \text{(com R1=R2, R3=R4=Rf)}$$
Análise: usando superposição e as regras de ouro.
Cuidados práticos: - O CMRR do circuito é limitado pelo emparelhamento das resistências - Usar redes de resistências integradas (1%, 0,1%) para CMRR elevado - Para muito alta precisão: usar amplificador de instrumentação (3 AOPs)
3.2 Integrador
$$V_{out}(t) = -\frac{1}{R_1 C} \int_0^t V_{in}(\tau)\, d\tau + V_{out}(0)$$
Resposta em frequência: ganho cai –20 dB/dec → filtro passa-baixo de 1ª ordem $$f_c = \frac{1}{2\pi R_1 C}$$
Problema prático: qualquer offset DC integra indefinidamente → saturação da saída. Solução: adicionar resistência Rf >> R1 em paralelo com C (limita o ganho DC a –Rf/R1).
3.3 Derivador
$$V_{out}(t) = -R_f C_1 \frac{dV_{in}}{dt}$$
Problema prático: amplifica ruído de alta frequência — pode oscilar. Solução: resistência R em série com C1 (limita o ganho a altas frequências).
3.4 Amplificador de instrumentação
O In-Amp de 3 AOPs combina: - Alta impedância de entrada (2 buffers de entrada) - Ganho ajustável por um único resistor RG - CMRR muito elevado (100–120 dB)
$$A_v = \left(1 + \frac{2R}{R_G}\right)$$
INA128 (Burr-Brown/TI): R interno = 25 kΩ $$A_v = 1 + \frac{50\text{ kΩ}}{R_G}$$
| Ganho desejado | RG |
|---|---|
| 1 | aberto (sem RG) |
| 10 | 5,56 kΩ → usar 5,6 kΩ |
| 100 | 505 Ω → usar 499 Ω (1%) |
| 1000 | 50 Ω → usar 49,9 Ω (1%) |
Aplicação típica: sensor de pressão (ponte Wheatstone) + INA128 → 0–5 V para ADC
4. Configurações Não-Lineares
4.1 Comparador
Com AOP sem realimentação: - A₀ ≈ 100 000 → qualquer diferença > 0,15 mV leva à saturação - Vout = +Vsat (≈ VCC – 1,5 V) quando V⁺ > V⁻ - Vout = –Vsat (≈ VEE + 1,5 V) quando V⁺ < V⁻
AOPs dedicados para comparação: LM393, LM311 — saída open-collector, rápidos, não oscilar como AOPs lineares.
Problema do comparador simples: ruído em torno de Vref → múltiplas comutações indesejadas → usar Schmitt trigger.
4.2 Schmitt trigger — dimensionamento completo
Configuração não-inversora (Vref = 0, alimentação ±Vcc):
$$V_H = +V_{sat} \times \frac{R_1}{R_1 + R_f}$$ $$V_L = -V_{sat} \times \frac{R_1}{R_1 + R_f}$$ $$\Delta V_{histerese} = V_H - V_L = 2 V_{sat} \times \frac{R_1}{R_1 + R_f}$$
Procedimento de dimensionamento:
Dados: Vsat = 13 V, histerese desejada ΔV = 1 V
$$\frac{R_1}{R_1 + R_f} = \frac{\Delta V}{2 V_{sat}} = \frac{1}{26} = 0{,}0385$$ $$\frac{R_f}{R_1} = \frac{1 - 0{,}0385}{0{,}0385} = \frac{0{,}9615}{0{,}0385} = 24{,}97 \approx 25$$
Escolher: R1 = 1 kΩ, Rf = 25 kΩ → usar 22 kΩ (ΔV = 2×13×1/(1+22) = 1,13 V ≈ 1 V ✓)
Aplicação em sensor de temperatura: - NTC + divisor → tensão proporcional à temperatura - Schmitt trigger: Liga ventilador (relé/BJT) quando T > T_alta, desliga quando T < T_baixa - Histerese evita o ventilador ligar/desligar continuamente na temperatura de limiar
4.3 Oscilador de onda quadrada
Combinação de Schmitt trigger (realimentação positiva) com rede RC de carga:
$$f_{osc} = \frac{1}{2RC \ln\left(\frac{1 + k}{1 - k}\right)} \quad \text{onde } k = \frac{R_1}{R_1 + R_f}$$
Para R1 = Rf (k = 0,5): ln(3) ≈ 1,0986 → f ≈ 1/(2,197 RC) ≈ 1/(2,2 RC)
5. Filtros Activos
5.1 Filtros de 1ª ordem
Passa-baixo não-inversor (Sallen-Key simplificado): $$H(f) = \frac{A_0}{1 + j(f/f_c)} \quad f_c = \frac{1}{2\pi R C}$$
Passa-alto: $$H(f) = \frac{A_0 \cdot j(f/f_c)}{1 + j(f/f_c)} \quad f_c = \frac{1}{2\pi R C}$$
5.2 Filtro Butterworth 2ª ordem — Sallen-Key
Topologia: dois pólos conjugados complexos com Q = 0,707 (Butterworth — máxima planura)
Passa-baixo (R1=R2=R, C1=C2=C, A₀=1): $$f_c = \frac{1}{2\pi RC}$$
Tabela de projecto (fc e valores de componentes):
| fc | C (escolhido) | R = 1/(2πfcC) | Próximo E24 |
|---|---|---|---|
| 100 Hz | 100 nF | 15,92 kΩ | 15 kΩ (fc = 106 Hz) |
| 1 kHz | 10 nF | 15,92 kΩ | 15 kΩ (fc = 1,06 kHz) |
| 10 kHz | 1 nF | 15,92 kΩ | 15 kΩ (fc = 10,6 kHz) |
| 1 kHz | 22 nF | 7,23 kΩ | 7,5 kΩ (fc = 965 Hz) |
Nota: para Butterworth 2ª ordem exacto com A₀ = 1, usar a topologia de unidade de ganho (R_feedback = 0, sem R1 de ganho). Se se quiser ganho A₀ > 1, a condição de Butterworth muda (ver tabelas de filtros).
5.3 Procedimento de projecto de filtro passa-baixo 2ª ordem Butterworth
Dados: fc = 1 kHz, A₀ = 1
- Escolher C1 = C2 = C = 10 nF (valor prático de condensador de poliéster)
- R1 = R2 = R = 1/(2π × 1000 × 10n) = 1/(62832 × 10⁻⁹) = 15,92 kΩ → 15 kΩ (fc = 1,06 kHz)
- Para ganho de unidade: A₀ = 1 → ligação directa Vout → V⁻ do segundo AOP interno
- Verificar com simulação (LTspice/Falstad): resposta plana até fc, depois –40 dB/dec
Verificação do ganho a fc: Butterworth → atenuação de –3 dB exacto em fc. Ganho a 2×fc: –40 dB/dec × 1 oitava = –12 dB abaixo da passband.
6. Tabela de fórmulas de ganho — referência rápida
| Configuração | Fórmula | Inversão | Zin | Zout |
|---|---|---|---|---|
| Inversor | –Rf/R1 | Sim | R1 | ≈ 0 |
| Não-inversor | 1 + Rf/R1 | Não | ≈ ∞ | ≈ 0 |
| Buffer | 1 | Não | ≈ ∞ | ≈ 0 |
| Somador inv. | –Rf(V1/R1+V2/R2) | Sim | R1, R2 | ≈ 0 |
| Diferencial | Rf/R1 × (V2–V1) | — | R1 (par) | ≈ 0 |
| Integrador | –1/(R1C) ∫ Vin dt | Sim | R1 | ≈ 0 |
| Derivador | –RfC dVin/dt | Sim | ≈ 0 | ≈ 0 |
| In-Amp | 1 + 2R/RG | Não | ≈ ∞ | ≈ 0 |
| Comparador | ±Vsat | Não linear | ≈ ∞ | Baixa |
| Schmitt (NI) | ±Vsat ×R1/(R1+Rf) | Não linear | ≈ ∞ | Baixa |
7. Projecto completo — amplificador de instrumentação para célula de carga
Especificação
- Célula de carga: 10 kg, sensibilidade 2 mV/V, excitação 5 V
- Sinal diferencial máximo: 2 mV/V × 5 V = 10 mV (plena carga)
- Saída desejada: 0–5 V (para ADC 12 bits de microcontrolador)
- Ganho necessário: 5V / 10mV = 500
Projecto com INA128
- Ganho = 1 + 50kΩ/RG = 500 → RG = 50000/(500–1) = 100,2 Ω → usar 100 Ω (1%)
- Ganho real = 1 + 50000/100 = 501 (erro 0,2% — aceitável)
- Alimentação do INA128: ±5 V (para single-supply usar INA333 com V⁻ = GND)
- Filtro anti-aliasing na saída: RC passa-baixo fc = 10 Hz (C = 100 nF, R = 160 kΩ → usar 150 kΩ)
- Ajuste de zero: potenciómetro de 100 Ω no pino REF do INA128
Verificação de ruído
Ruído referido à entrada (RTI) do INA128: en ≈ 8 nV/√Hz típico. Na banda de 10 Hz: Vn = 8n × √10 = 25 nV RMS. Com ganho 500: Vn(saída) = 500 × 25n = 12,5 µV RMS — desprezável em 5 V de fundo de escala (LSB de 12 bits ≈ 1,2 mV >> ruído) ✓
8. Glossário
CMRR: Common Mode Rejection Ratio — capacidade do AOP de rejeitar sinais iguais nas duas entradas
GBW: Gain-Bandwidth Product — produto ganho × banda, constante para um dado AOP
Histerese: diferença entre os limiares de comutação do Schmitt trigger — imunidade ao ruído
In-Amp: amplificador de instrumentação — três AOPs com CMRR muito elevado e ganho ajustável
Offset (VIO): tensão de erro DC à entrada do AOP — propaga-se amplificada para a saída
Realimentação negativa: parte do sinal de saída subtraída da entrada — estabiliza o ganho e lineariza
Realimentação positiva: parte do sinal de saída somada à entrada — cria comportamento biestável (Schmitt, oscilador)
Slew rate: velocidade máxima de variação da tensão de saída — limita frequências de grande amplitude
Terra virtual: o nó V⁻ do inversor está a 0 V (mas não directamente ligado à massa) — consequência da regra de ouro V⁺ = V⁻
Vsat: tensão de saturação da saída do AOP — aproximadamente ±(VCC – 1,5 V)