505 lines
19 KiB
TeX
505 lines
19 KiB
TeX
\documentclass[conference]{IEEEtran}
|
|
% \IEEEoverridecommandlockouts
|
|
% The preceding line is only needed to identify funding in the first footnote. If that is unneeded, please comment it out.
|
|
\usepackage{cite}
|
|
\usepackage{xcolor}
|
|
\definecolor{codegreen}{rgb}{0,0.6,0}
|
|
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
|
|
\definecolor{codepurple}{rgb}{0.58,0,0.82}
|
|
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
|
|
|
|
\usepackage{listings}
|
|
\lstdefinestyle{mystyle}{
|
|
backgroundcolor=\color{backcolour},
|
|
commentstyle=\color{codegreen},
|
|
keywordstyle=\color{magenta},
|
|
numberstyle=\tiny\color{codegray},
|
|
stringstyle=\color{codepurple},
|
|
basicstyle=\ttfamily\footnotesize,
|
|
breakatwhitespace=false,
|
|
breaklines=true,
|
|
captionpos=b,
|
|
keepspaces=true,
|
|
numbers=left,
|
|
numbersep=5pt,
|
|
showspaces=false,
|
|
showstringspaces=false,
|
|
showtabs=false,
|
|
tabsize=2
|
|
}
|
|
|
|
\lstset{style=mystyle}
|
|
|
|
\usepackage{amsmath,amssymb,amsfonts}
|
|
\usepackage{algorithmic}
|
|
\usepackage{graphicx}
|
|
\usepackage{textcomp}
|
|
\usepackage{cancel}
|
|
\usepackage{framed}
|
|
\usepackage{longtable,booktabs,array}
|
|
\usepackage{caption}
|
|
|
|
\usepackage{siunitx}
|
|
\usepackage{circuitikz}
|
|
\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
|
|
T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
|
|
\begin{document}
|
|
|
|
\title{An Amplified Review of Operational Amplifiers in High-Frequency Applications}
|
|
|
|
\author{\IEEEauthorblockN{Martin Kennedy}
|
|
\IEEEauthorblockA{\textit{College of Engineering and Mathematical Sciences} \\
|
|
\textit{University of Vermont}\\
|
|
Burlington, Vermont, USA \\
|
|
martin.kennedy@uvm.edu}
|
|
}
|
|
|
|
\maketitle
|
|
|
|
\begin{abstract}
|
|
Operational amplifiers see wide use in modern electronics thanks to
|
|
their convenient properties. However, commonplace op-amps like the
|
|
LM741 have limitations which make them unsuitable in some
|
|
applications. This document discusses an active first-order
|
|
high-pass filter design, and uses a more realistic model of the
|
|
op-amp to analytically investigate the importance of op-amp
|
|
selection in this type of application.
|
|
\end{abstract}
|
|
|
|
\begin{IEEEkeywords}
|
|
op-amp, filter, signaling
|
|
\end{IEEEkeywords}
|
|
|
|
\section{Introduction}
|
|
The operational amplifier is one of the most important building blocks
|
|
in analog electronic circuits. Discrete op-amp integrated circuits
|
|
(ICs) are produced by nearly every general semiconductor manufacturer,
|
|
but not all op-amps perform equally.
|
|
|
|
In this paper, a simple high-pass filter based on an op-amp is
|
|
introduced, and used to review a particular property of the op-amp:
|
|
the frequency response of the open-loop gain.
|
|
|
|
One of the most well-known op-amps is the LM741. In no small part to
|
|
demonstrate one weakness of the LM741, a cutoff frequency of
|
|
$\SI{400}{kHz}$ is selected for the high-pass filter design. To compare,
|
|
three op-amps are selected beyond the LM741:
|
|
|
|
\begin{enumerate}
|
|
\item
|
|
The TI TL081,
|
|
\item
|
|
The TI OPA818, and
|
|
\item
|
|
The ``ideal'' op-amp.
|
|
\end{enumerate}
|
|
|
|
To focus on the real-world impact of the variations in performance of
|
|
these op-amps at higher frequencies: imagine that the application for
|
|
our high-pass filter is as a pre-amplifier for a hobbyist AM receiver
|
|
kit to receive emergency weather and traffic alerts in the Northeast
|
|
US. These alerts are broadcast between $\SI{530}{\kHz}$ AM and
|
|
$\SI{1650}{\kHz}$ \cite{b4}.
|
|
|
|
\section{Design of a High-pass Active Filter}
|
|
|
|
A design for a first-order inverting active high-pass filter with
|
|
amplification is depicted in Figure \ref{fig:hpf}.
|
|
|
|
\begin{figure}[h]
|
|
\caption{A first-order high-pass filter}
|
|
\label{fig:hpf}
|
|
\begin{circuitikz}[american voltages]
|
|
\draw
|
|
(0,2) node[left=0cm]{$v_{in}$} to [short, o-] [R, l_=$R_1$] (1.5,2) coordinate (IN)
|
|
(3,3) to [R, l_=$R_2$] (5.375,3) coordinate (FB)
|
|
(3,2)
|
|
node[op amp, noinv input down, anchor=-](OA) {}
|
|
(OA.-) to [short, o-] ++(0, 1)
|
|
|
|
(OA.-) to [C=$C_1$] (IN)
|
|
(OA.+) to [short, o-] ++(0,-0.5) node[ground]{}
|
|
(OA.out) to ++(0, 0) coordinate (OUT) to (FB)
|
|
(OUT) to [short, *-o] ++(0.5,0) node [right=0.2cm]{$v_{out}$};
|
|
\node (v_p) [above=0cm] at (OA.+) {$v_p$};
|
|
\node (v_n) [below=0cm] at (OA.-) {$v_n$};
|
|
;
|
|
\end{circuitikz}
|
|
\end{figure}
|
|
|
|
Ordinarily, the analysis of this filter is easy. With an ideal op-amp
|
|
configured in negative feedback, $v_n = v_p$: this is easy to see by
|
|
inspection with awareness of the properties of an ideal op-amp, as
|
|
when $v_p > v_n$, $v_{out}$ is driven as high as possible, and
|
|
vice-versa when $v_p < v_n$.
|
|
|
|
At this point, it is easy to derive the relationship between
|
|
$v_{out}$ and $v_{in}$: $v_n = v_p = \SI{0}{V}$; since all current
|
|
which flows from $v_{in}$ into $v_n$ then flows from $v_n$ into
|
|
$v_{out}$, the network of $R_1$ and $C_1$ into $R_2$ forms a voltage
|
|
divider, and so
|
|
|
|
\begin{equation}\label{eqn:hpf_tf}
|
|
\frac{v_{out}}{v_{in}} = - \frac{R_2}{R_1+Z_{C_1}}
|
|
\end{equation}
|
|
|
|
This high-pass filter design is a common one, with a well-known cutoff
|
|
frequency $\omega_c = \frac{1}{R_1 C}$ and gain $K = \frac{R_2}{R_1}$
|
|
\cite{b3}. To acquire a cutoff frequency of
|
|
$\omega_c = \SI{400}{\kHz} \approx \SI{2.51E6}{}$ rad/s,
|
|
$R_1 = \SI{100}{\ohm}$ and $C_1 = \SI{3.9}{\nano\farad}$ will
|
|
suffice. Only $R_2$ remains to be selected to determine the limit on
|
|
gain; selecting $R_2 = \SI{100}{\kohm}$ yields
|
|
$K = 1000 = \SI{60}{dB}$.
|
|
|
|
\subsection{Toward a more perfect Model}
|
|
A more accurate representation of the op-amp foregoes the assumption,
|
|
often made regarding op-amps wired in a feedback configuration, that
|
|
$v_n = v_p$. Avoiding this assumption requires a more precise
|
|
description of the properties of the op-amp itself, describing its
|
|
input resistance $R_i$, output resistance $R_o$, and the relationship
|
|
$A$ between the input and output, also known as the open-loop
|
|
gain. Figure \ref{img:opamp_internal} depicts such a model.
|
|
|
|
\begin{figure}[h]
|
|
\caption{A more accurate depiction of an op-amp \cite{b2}}
|
|
\label{img:opamp_internal}
|
|
\centering
|
|
\includegraphics[width=0.4\textwidth]{opamp_internal}
|
|
\end{figure}
|
|
|
|
An ideal op-amp operates as though $R_i \to \infty$, $R_o \to 0$, and
|
|
$A \to \infty$: it is these three properties which in the ideal case
|
|
allow $v_n$ to be considered equal to $v_p$ in the closed-loop
|
|
feedback configuration \cite{b2}.
|
|
|
|
This paper focuses only on adjusting $A$ in our model; the
|
|
assumptions that $R_o = 0$ and $R_i \to \infty$ remain in place.
|
|
|
|
\subsection{Notes on Terms related to Open-Loop Gain}
|
|
|
|
Manufacturers document the value of $A$ primarily as a function of
|
|
frequency in an attribute called the ``open-loop gain''. This is the
|
|
gain of the op-amp when no feedback is applied to connect the output
|
|
and input of the op-amp. This measure is useful, as it describes the
|
|
absolute maximum gain performance of the op-amp: notice, for example,
|
|
that the feedback resistor $R_2$ in the selected high-pass filter
|
|
design only serves to limit the gain and has no bearing on the cutoff
|
|
frequency; its value can be increased until the gain is restricted by
|
|
the op-amp itself instead of the resistor (otherwise, an op-amp
|
|
would have infinite gain if it lacked a feedback resistor).
|
|
|
|
In some cases, manufacturers give more precise details about op-amp
|
|
operation than would be specified under generic ``open-loop gain'':
|
|
for example, the LM741 datasheet documents the \textit{Open-Loop
|
|
Large-Signal Differential Voltage Amplification} as a function of
|
|
frequency, as seen in Figure \ref{img:lm741_oclsg}. Despite being
|
|
closely related to ``open-loop gain'', it is distinct in that it is
|
|
measured with an output load (in this case, $R_L = \SI{2}{\kohm}$),
|
|
and under conditions such that the load is significant, i.e. that the
|
|
operating output is known to be a meaningful fraction of the supply
|
|
voltage \cite{b1}. Here, it is $V_o = \SI{10}{V}$ for
|
|
$V_{CC} = \pm \SI{15}{V}$. Still, for the purposes of this paper,
|
|
``open-loop gain'' is treated as ``open-loop large-signal differential
|
|
voltage amplification'', with caution made to stay away from
|
|
specifically small-signal measurements.
|
|
|
|
\begin{figure}[h]
|
|
\caption{The large-signal open-loop gain of the LM741}
|
|
\label{img:lm741_oclsg}
|
|
\centering
|
|
\includegraphics[width=0.4\textwidth]{lm741_oclsg}
|
|
\end{figure}
|
|
|
|
\section{A Combined Description of the Filter}
|
|
|
|
Using the more complete model of the op-amp makes analysis more
|
|
complex. The following observations simplify the task:
|
|
\begin{itemize}
|
|
\item $v_p$ remains at ground potential, so the dependent voltage
|
|
source has voltage $A(-v_n)$
|
|
\item $R_i \to \infty$ is, in effect, an open circuit, so the $R_i$
|
|
branch need not be considered
|
|
\item $R_o = 0$ acts as a wire, meaning $R_o$ can be ignored.
|
|
\end{itemize}
|
|
|
|
The simplified circuit can be depicted as seen in Figure
|
|
\ref{fig:simp_model}. Solving this system is not daunting; there is
|
|
only a single branch.
|
|
|
|
\begin{figure}[h]
|
|
\caption{A simplification of the combined model}
|
|
\label{fig:simp_model}
|
|
\begin{circuitikz}[american voltages]
|
|
\draw (0,0) node[left=0cm]{$v_{in}$} to [short, o-] [R, l_=$R_1$, i=$i$] (1.5,0);
|
|
\draw (1.5,0) to [C, l_=$\frac{1}{s C_1}$] (2.75,0);
|
|
\draw (2.75,0) node [above=0.1cm]{$v_n$} to [short, o-] [R, l_=$R_2$] (5,0);
|
|
\draw (5,0) node [above=0.1cm]{$v_{out}$} to [short, o-] [american controlled voltage source, label=$A(-v_n)$] (7,0);
|
|
\draw (7,0) node[ground]{};
|
|
\end{circuitikz}
|
|
\end{figure}
|
|
|
|
By Kirchoff's Current Law,
|
|
|
|
\begin{equation}\label{eqn:kcl}
|
|
\frac{v_{in}-v_n}{R_1+\frac{1}{s C_1}} - \frac{v_n - v_{out}}{R_2} = 0
|
|
\end{equation}
|
|
|
|
By observation,
|
|
|
|
\begin{equation}\label{eqn:known}
|
|
v_{out} = A(-v_n), \quad \frac{-v_{out}}{A} = v_n
|
|
\end{equation}
|
|
|
|
Combining equations \ref{eqn:kcl} and \ref{eqn:known},
|
|
|
|
\begin{align}
|
|
\begin{split}
|
|
0 &= \frac{v_{in}-v_n}{R_1+\frac{1}{s C_1}} - \frac{v_n - A(-v_n)}{R_2} \\
|
|
&= \frac{v_{in}}{R_1+\frac{1}{s C_1}} - v_n \left(\frac{1}{R_1+\frac{1}{s C_1}} + \frac{A+1}{R_2} \right) \\
|
|
&= \frac{v_{in}}{R_1+\frac{1}{s C_1}} + \frac{v_{out}}{A} \left(\frac{1}{R_1+\frac{1}{s C_1}} + \frac{A+1}{R_2} \right) \\
|
|
\end{split}
|
|
\end{align}
|
|
|
|
So,
|
|
|
|
\begin{align}
|
|
\begin{split}
|
|
\frac{v_{out}}{A} \left(\frac{1}{R_1+\frac{1}{s C_1}} + \frac{A+1}{R_2} \right) &= -\frac{v_{in}}{R_1+\frac{1}{s C_1}} \\
|
|
H(s) = \frac{v_{out}}{v_{in}} &= -A \frac{R_2}{R_2+(A+1)(R_1+\frac{1}{s C_1})} \\
|
|
&= -A\frac{\SI{10}{\kohm}}{\SI{10}{\kohm} + (A + 1) (\SI{100}{\ohm} + \frac{1}{s \SI{3.9}{\nano\farad}})} \\
|
|
\end{split}
|
|
\end{align}
|
|
|
|
$H(s)$ is our \textit{transfer function}, representing how the signal
|
|
changes from the input to the output (specifically, the ratio of the
|
|
output to the input, as a function of frequency).
|
|
|
|
There remains an unspecified term $A$; this term depends on which
|
|
op-amp is being used. It remains to be shown how the overall transfer
|
|
function responds as the properties of each op-amp are applied in
|
|
turn.
|
|
|
|
\subsection{The original case: the LM741}
|
|
|
|
As previously seen in Figure \ref{img:lm741_oclsg}, the open-loop gain
|
|
$A$ of the LM741 decreases logarithmically as the frequency increases
|
|
logarithmically. The rate of reduction matches that which is seen in
|
|
normal first-order filters, approximately 20dB per order of magnitude
|
|
of frequency increase (also known as ``per decade''). This standard
|
|
decrease means that a transfer function can be used to represent $A$ as
|
|
one might represent a first-order low-pass filter. For given values of
|
|
$\tau = \frac{1}{\omega_c}$ and $A_0$:
|
|
|
|
\begin{equation}
|
|
A(s) = \frac{A_0}{\tau s + 1}
|
|
\end{equation}
|
|
|
|
$A_0$ represents the peak gain; we can see from Figure
|
|
\ref{img:lm741_oclsg} that this is about
|
|
$\SI{106}{dB} \approx \SI{2E5}{}$. The cut-off frequency is that for
|
|
which the gain is $\SI{6}{dB}$ less than this peak - this is
|
|
approximately $\omega_c = 25$ rad/s. This yields:
|
|
|
|
\subsection{An improvement: the TL081}
|
|
|
|
\begin{figure}[h]
|
|
\caption{The large-signal open-loop gain of the TL081}
|
|
\label{img:tl08xx_oclsg}
|
|
\centering
|
|
\includegraphics[width=0.4\textwidth]{tl08xx_oclsg}
|
|
\end{figure}
|
|
|
|
In this case, the peak gain $A_0$ is still approximately $\SI{2E5}{}$
|
|
(agreeing with earlier content of the datasheet, noting
|
|
$A_{VD}= 200V/mV$ typical). The cut-off frequency, however, is higher,
|
|
closer to $\omega_c = 210$ rad/s.
|
|
|
|
\subsection{A whole new world: the OPA818}
|
|
|
|
The TI OPA818 is a much higher-cost, much higher-bandwidth, and much
|
|
less common op-amp than either the LM741 or the TL08X. It was selected
|
|
in case neither of the previous two op-amps were able to perform well
|
|
enough in this application.
|
|
|
|
\begin{figure}[h]
|
|
\caption{The open-loop gain of the OPA818}
|
|
\label{img:opa818_olgm}
|
|
\centering
|
|
\includegraphics[width=0.4\textwidth]{opa818_olgm}
|
|
\end{figure}
|
|
|
|
While the OPA818 has a lower peak gain of
|
|
$A_0 \approx \SI{92}{dB} \approx \SI{4E4}{}$, it is a much
|
|
higher-bandwidth part, with a cutoff frequency of approximately
|
|
$\SI{7E5}{}$ rad/s.
|
|
|
|
\subsection{The ideal op-amp}
|
|
|
|
In the case of the ideal op-amp, the transfer function is much
|
|
clearer: $A \to \infty$, so, substituting $A$ back in the overall
|
|
transfer function approaches
|
|
$-\frac{AR_2}{A(R_1 + \frac{1}{sC_1})} = -\frac{R_2}{R_1 +
|
|
\frac{1}{sC_1}}$. This is, unsurprisingly, exactly the transfer
|
|
function seen in Equation \ref{eqn:hpf_tf} for the inverting ideal
|
|
active high-pass filter.
|
|
|
|
\section{A complete comparison}
|
|
MATLAB is used to compare the final transfer functions of all four
|
|
cases; the result is shown in Figure \ref{img:bode_plots}. Of
|
|
particular note: MATLAB's symbolic handling does some heavy lifting to
|
|
generate Bode plots without having to further simplify the transfer
|
|
functions, beyond substituting each $A(s)$ into place.
|
|
|
|
\begin{figure}[h]
|
|
\caption{Bode plots of our four filters}
|
|
\label{img:bode_plots}
|
|
\centering
|
|
\includegraphics[width=0.5\textwidth]{bode_plots}
|
|
\end{figure}
|
|
|
|
Figure \ref{img:bode_plots} clearly shows that while the ideal op-amp
|
|
has no problem enabling a 'proper' $\omega_c = \SI{400}{\kHz}$, both
|
|
the LM741 and TL081 miss the mark substantially, and act in practice
|
|
more like band-pass filters with upper cutoff frequencies of around
|
|
$\SI{1.2E5}{}$ rad/s and $\SI{3.0E5}{}$ rad/s, respectively, both
|
|
\textit{below} the intended \textit{lower} cutoff frequency of our
|
|
high-pass filter.
|
|
|
|
Ultimately, even the much more capable OPA818 acts as a band-pass
|
|
filter rather than a high-pass filter. Nevertheless, it succeeds in
|
|
reaching an upper $\omega_{c_2} = \SI{4E7}{}$ rad/s
|
|
$\approx \SI{6.37}{\MHz}$, making it functional, if not necessarily
|
|
suitable, for the intended application.
|
|
|
|
\subsection{Gain response}
|
|
In terms of the frequency response of gain, it is clear that only
|
|
exceptional op-amps succeed in higher-frequency circumstances. Note as
|
|
well that the application described -- AM radio reception -- is,
|
|
compared to other types of radio amplification, relatively
|
|
low-frequency. Compare, for example, FM radio, which operates in the
|
|
$\SI{87.9}{\MHz}$ through $\SI{107.9}{\MHz}$ band. Of our models, the
|
|
only one that comes out unscathed is the ideal op-amp model.
|
|
|
|
\subsection{Phase response}
|
|
The phase response of the three non-ideal op-amps is consistent: below
|
|
the cutoff frequency, the phase is delayed by 270 degrees; in the
|
|
effective pass-band, the phase shift moves towards 180 degrees, and
|
|
after the pass-band, it reduces to 90 degrees.
|
|
|
|
Note that for any time-sensitive applications, where the bandwidth of
|
|
the signal being carried is a substantial portion of the frequency of
|
|
the signal, this phase shift would be problematic. An additional
|
|
phase-shift is entirely expected since we are using it as an inverting
|
|
op-amp, obligating an 180 degree phase-shift in the passband.
|
|
|
|
The ideal op-amp yields a true high-pass filter, which is reflected as
|
|
well in the fact that the phase shift never decreases past 180
|
|
degrees.
|
|
|
|
\section{Summary}
|
|
The exploration of op-amps applied to a higher-frequency application
|
|
makes for an excellent illustration for the extremely limited
|
|
applicability of some op-amps in this application. While an LM741 or
|
|
TL081 would make for a fine low-power audio amplifier, they are, due
|
|
to their low cutoff frequency, not suitable for $\ge \SI{100}{\kHz}$
|
|
applications; indeed, even more performant op-amps have limits in
|
|
amplifying higher-frequency signals.
|
|
|
|
\section{Code appendix}
|
|
|
|
\begin{lstlisting}[style=mystyle,breaklines=true,language=Octave]
|
|
% Define symbolic variables
|
|
syms s
|
|
|
|
r_1 = 1.e2
|
|
r_2 = 1.e5
|
|
c_1 = 3.9e-9
|
|
|
|
% Transfer function setup: LM741 %
|
|
A_0_LM741 = 2.e5;
|
|
tau_LM741 = 1./25;
|
|
A_sym_LM741 = A_0_LM741 / (tau_LM741 * s + 1);
|
|
|
|
% Symbolic setup and consumption: LM741 %
|
|
sym_LM741 = -A_sym_LM741 * (r_2) / (r_2 + (A_sym_LM741 + 1) * (r_1 + 1 / (s * c_1)));
|
|
tf_sym_LM741 = subs(sym_LM741, A_sym_LM741, A_0_LM741 / (tau_LM741 * s + 1));
|
|
|
|
% Perform sym extraction for LM741, and generate polynomial num/denom %
|
|
[nH_LM741um_sym_LM741, den_sym_LM741] = numden(tf_sym_LM741);
|
|
num_coeffs_LM741 = sym2poly(num_sym_LM741);
|
|
den_coeffs_LM741 = sym2poly(den_sym_LM741);
|
|
|
|
% Create the numeric transfer function object for LM741 %
|
|
LM741 = tf(num_coeffs_LM741, den_coeffs_LM741);
|
|
|
|
|
|
% Transfer function setup: TL081 %
|
|
A_0_TL081 = 2.e5;
|
|
tau_TL081 = 1./210;
|
|
A_sym_TL081 = A_0_TL081 / (tau_TL081 * s + 1);
|
|
|
|
% Symbolic setup and consumption: TL081 %
|
|
sym_TL081 = -A_sym_TL081 * (r_2) / (r_2 + (A_sym_TL081 + 1) * (r_1 + 1 / (s * c_1)));
|
|
tf_sym_TL081 = subs(sym_TL081, A_sym_TL081, A_0_TL081 / (tau_TL081 * s + 1));
|
|
|
|
% Perform sym extraction for TL081, and generate polynomial num/denom %
|
|
[num_sym_TL081, den_sym_TL081] = numden(tf_sym_TL081);
|
|
num_coeffs_TL081 = sym2poly(num_sym_TL081);
|
|
den_coeffs_TL081 = sym2poly(den_sym_TL081);
|
|
|
|
% Create the numeric transfer function object for TL081 %
|
|
TL081 = tf(num_coeffs_TL081, den_coeffs_TL081);
|
|
|
|
|
|
% Transfer function setup: OPA818 %
|
|
A_0_OPA818 = 4.e4;
|
|
tau_OPA818 = 1./7.E5;
|
|
A_sym_OPA818 = A_0_OPA818 / (tau_OPA818 * s + 1);
|
|
|
|
% Symbolic setup and consumption: OPA818 %
|
|
sym_OPA818 = -A_sym_OPA818 * (r_2) / (r_2 + (A_sym_OPA818 + 1) * (r_1 + 1 / (s * c_1)));
|
|
tf_sym_OPA818 = subs(sym_OPA818, A_sym_OPA818, A_0_OPA818 / (tau_OPA818 * s + 1));
|
|
|
|
% Perform sym extraction for OPA818, and generate polynomial num/denom %
|
|
[num_sym_OPA818, den_sym_OPA818] = numden(tf_sym_OPA818);
|
|
num_coeffs_OPA818 = sym2poly(num_sym_OPA818);
|
|
den_coeffs_OPA818 = sym2poly(den_sym_OPA818);
|
|
|
|
% Create the numeric transfer function object for OPA818 %
|
|
OPA818 = tf(num_coeffs_OPA818, den_coeffs_OPA818);
|
|
|
|
% Create a numeric TF for the ideal op-amp %
|
|
% Symbolic consumption: ideal %
|
|
tf_sym_ideal = - (r_2) / (r_1 + 1 / (s * c_1));
|
|
|
|
% Perform sym extraction for OPA818, and generate polynomial num/denom %
|
|
[num_sym_ideal, den_sym_ideal] = numden(tf_sym_ideal);
|
|
num_coeffs_ideal = sym2poly(num_sym_ideal);
|
|
den_coeffs_ideal = sym2poly(den_sym_ideal);
|
|
|
|
% Create the numeric transfer function object for the ideal op-amp %
|
|
ideal = tf(num_coeffs_ideal, den_coeffs_ideal);
|
|
|
|
% Generate the Bode plot
|
|
hold on;
|
|
bode(LM741);
|
|
bode(TL081);
|
|
bode(OPA818);
|
|
bode(ideal);
|
|
legend('LM741','TL081','OPA818','ideal');
|
|
|
|
grid on;
|
|
title('Frequency responses of op-amp driven high-pass filters');
|
|
hold off;
|
|
\end{lstlisting}
|
|
|
|
\begin{thebibliography}{00}
|
|
\bibitem{b1} J. Karki, ``Understanding Operational Amplifier Specifications.'' Accessed: May 05, 2025. [Online]. Available: https://www.ti.com/lit/an/sloa011b/sloa011b.pdf, p. 14.
|
|
\bibitem{b2} J. W. Nilsson and S. A. Riedel, Electric Crircuits, 12th ed., Hoboken: Pearson, 2022, p.168
|
|
\bibitem{b3} J. W. Nilsson and S. A. Riedel, Electric Crircuits, 12th ed., Hoboken: Pearson, 2022, p.576
|
|
\bibitem{b4} N. US Department of Commerce, ``NOAA Weather Radio Frequently Asked Questions,'' www.weather.gov. https://www.weather.gov/phi/nwrfaq
|
|
\end{thebibliography}
|
|
\vspace{12pt}
|
|
\end{document}
|