master
Øyvind Skaaden 2020-10-04 23:46:09 +02:00
parent 735b0d3c7f
commit b93294bd34
20 changed files with 21470 additions and 0 deletions

28
D8/BB/4k1HzOsc.txt Normal file
View File

@ -0,0 +1,28 @@
$ 1 0.000005 0.14549914146182014 50 5 43
c -64 128 -64 288 0 1.0000000000000001e-7 0.7237624443288374
a 16 144 160 144 8 5 -5 1000000 0.7237624443288374 2.5000888138184743 100000
w -64 128 16 128 0
w 16 128 16 64 0
r 16 64 160 64 0 1000
w 160 64 160 144 0
w 16 160 16 208 0
r 16 208 16 288 0 1000
w -64 288 16 288 0
g 16 288 16 336 0
r 16 208 160 208 0 1000
w 160 208 160 144 0
p 224 144 224 288 1 0
w 224 288 16 288 0
w 224 144 160 144 0
R -192 128 -192 192 0 0 40 5 0 0 0.5
s -208 64 -80 64 0 1 false
r 224 144 384 144 0 5100
l 384 144 544 144 0 0.1 0.0011361541550910638
c 544 144 544 288 0 1.5000000000000002e-8 -0.05351672070695961
w 544 144 640 144 0
p 640 144 640 288 1 0
w 544 288 640 288 0
w 544 288 224 288 0
o 12 1 0 5122 10 0.1 0 1
o 0 1 0 4099 5 0.025 1 2 0 3
o 21 1 0 5122 10 0.1 2 1

Binary file not shown.

BIN
D8/BB/Design_8.pdf Normal file

Binary file not shown.

BIN
D8/D8.pdf Normal file

Binary file not shown.

556
D8/D8.tex Normal file
View File

@ -0,0 +1,556 @@
%Dokumentinnstillinger:---------------------------------
\documentclass[11pt,norsk]{elsys-design}
\heading{Designnotat}
\title{Sinus-generator}
\author{Øyvind Skaaden}
\version{2.0}
\date{\today}
\begin{document}
\maketitle
%Automatisk generert innholdsfortegnelse:------------------
\toc
%Selve rapporten:------------------------------------------
\section{Problembeskrivelse}
\label{sec:innledning}
I veldig mange sammenhenger er det å kunne generere et periodisk signal en veldig nyttig ting. I de fleste tilfeller ønsker vi at signalet skal ha en enkel tone, og da må vi bruke et sinussignal.
For å generere et sinussignal er det flere måter å gjøre det på, men her vil vi ta utganspunk i systemet i \autoref{fig:introsystem}.
\begin{figure}[!htbp]
\centering
\includegraphics[width=0.4\textwidth]{figurer/D8_Innledning.pdf}
\caption{Blokkdiagram for sinus-generatoren. Spenningen $v_2$ er utgangen på sinus-generatoren.}
\label{fig:introsystem}
\end{figure}
Vi ønsker å ikke være veldig langt unna frekvensen som velges, så vi ønsker å være innenfor $10 000$ ppm av frekvensen $f_0 $ til sisnussignalet.
Siden vi lager sinusen fra en firkantpuls ønsker vi også at signalet ikke er veldig ødelagt av de overharmoniske svingningene. Derfor velger vi at harmonisk forvrengning, $D$, ikke skal være større enn $D_{max} = 2\% $.
\section{Prinsipiell løsning}
\label{sec:prinsipielllosning}
For å generere et firkantsignal er det flere måter å gjøre det på. Her vil det bli tatt utganspunkt i en type generator som heter relaksasjonsgenerator, som i \autoref{circ:relaksasjonStart}. Den genererer et firkantsignal basert på opp- og utladning av en kondensator i et $RC$-ledd. Vi kan da styrefrekvensen ved å velge riktig tidskonstant.
Vi vil deretter filtrere ut alle overtonene til firkantsignalet med et lavpassfilter, fordi et firkantsignal er bygget opp av uendelig mange sinussignaler. Det totale systemet vil se ut som i \autoref{fig:prinsippSinus}.
\begin{figure}[!htbp]
\centering
\includegraphics[width=0.7\textwidth]{figurer/D8_Prinsipp.pdf}
\caption{Blokkdiagram for delene i sinus-generatoren. Spenningen $v_1$ og $v_2$ er henholdsvis utgangen på firkantgeneratoren og utgangen på lavpassfilteret eller selve sinus-generatoren.}
\label{fig:prinsippSinus}
\end{figure}
\subsection{Relasasjonsgenerator}
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){}
(opamp.up) ++ (0,.5) node[opampuplbl] {$+V$} -- (opamp.up)
(opamp.down) ++ (0,-.5) node[opampdownlbl] {$-V$} -- (opamp.down)
(opamp.-) to [short] ++(0,1.5) coordinate(C)
to [R, l=$R_1 $, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$C$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1.5) coordinate(R_b)
to [R, l_=$R_3 $, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$R_2$] ++(-2,0) node[ground] {}
(opamp.out) to [short, -o] ++(1,0) node[right] {$v_1$}
;
\end{circuitikz}
\caption{Relaksjonsgenerator. Genererer et firkantsignal basert på tidskonstanten $\tau = R_1 \cdot C$.}
\label{circ:relaksasjonStart}
\end{figure}
Vi antar forsyningsspenningen til operasjonsforsterkeren som brukes som en komparator i generatoren er like positiv og negativ, $ +V = - (-V) $. Da er perioden $T$ til signalet som blir generert som i \eqref{eq:periodeGenerator}.
\begin{align}
T = 2 \cdot R_1 \cdot C \cdot \ln\left(1 + 2\frac{R_2}{R_3}\right) \label{eq:periodeGenerator}
\end{align}
Vi kan også anta at $R_2 = R_3$, og skriver om fra periode $T$ til frekvens $f = \frac{1}{T}$ i \eqref{eq:frekvensGenerator}.
\begin{align}
f = \frac{1}{2 \cdot R_1 \cdot C \cdot \ln\left(3\right)} \label{eq:frekvensGenerator}
\end{align}
\subsection{Lavpass-filter}
Siden en firkantpuls består av en grunnfrekvens og mange overtoner av grunnfrekvensen, kan vi hente ut et sinussignal fra firkantsignalgeneratoren ved å fjerne overtonene. Dette kan gjøres med et lavpass-filter.
Igjen så finnes det mange varianter av et lavpassfilter, men her tas det utganspunkt i en Sallan-Key-topologi \cite{sallan-key} med en Butterworth-form\cite{butterworth} på dempningen.
Sallan-key-filteret er et andreordens-filter og disse kan seriekobles for å legge til flere ordener. Dersom det er to i serie vil vi kunne ha opp til et fjerdeordens-filter, tre så får vi sjetteordens osv.. I designnotat om hvordan lage et Anti-alias-filter \cite{anti-alias} gåes det mer i dybden i hvordan designe et n-ordens filter med Sallan-Key-topologi. Men kort oppsummert i dette avsnittet.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}
\draw
(0,0) node[op amp,yscale=-1](opamp){}
(opamp.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$C_2$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$R$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$C_1 $] (C1-|opamp.out)
to [short, -*] (opamp.out)
(R2) to [R, l_=$R$, -o] ++(-2,0) node[left] {$v_i$}
(opamp.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp.out)
to [short] (opamp.out)
to [short, -o] ++(1,0) node[right] {$v_o$}
;
\end{circuitikz}
\caption{Kretstopologi for et andregrads lavpass-filter i Sallen-Key topologi.}
\label{circ:sallen-key-start}
\end{figure}
For å regne ut de forskjellige komponentverdiene har vi noen formler. Siden vi bruker operasjonsforsterkere (opamp) er det ganske standard å bruke motstandsverdier mellom $1k\Omega$ og $100k\Omega$. Motstandene kan da velges fritt innenfor disse grenser.
$\omega_0 $ er knekkfrekvensen i radianer og gitt i (\ref{eq:knekkfreq}).
\begin{align}
\omega_0 = 2\pi \cdot f_0 \label{eq:knekkfreq}
\end{align}
To tidskonstanter $\tau_1$ og $\tau_2$ i (\ref{eq:tidskonstanter}).
\begin{align}
\tau_1 = \frac{1}{\omega_0 \zeta} \quad \text{og} \quad \tau_2 = \frac{1}{\omega_0^2\tau_1} \label{eq:tidskonstanter}
\end{align}
Da er kondensatorverdiene gitt som i (\ref{eq:kondiser}).
\begin{align}
C_1 = \frac{\tau_1}{R} \quad \text{og} \quad C_2 = \frac{\tau_2}{R} \label{eq:kondiser}
\end{align}
Verdiene for $\zeta$ kan regnes ut eller så er de gitt for et normal Butterworth-filter for orden 1 til 6 i \autoref{tab:sallenKeyLosning}. Her kommer $\zeta$-verdiene i par som gjelder for et sett med et Sallen-Key-filter.
\begin{table}[!htpb]
\centering
\caption{$\zeta$-verdier for forskjellige ordener $n$ for et butterwurth-filter med et Allan-Key-filter topologi.}
\label{tab:sallenKeyLosning}
\begin{tabular}{|l|l|l|l|}
\hline \hline
& \multicolumn{3}{l|}{Polpar \textit{i}} \\ \hline
$n$ & $1$ & $2$ & $3$ \\ \hline
\hline
$1$ & $1$ & & \\ \hline
$2$ & $0.70711$ & & \\ \hline
$3$ & $1$ & $0.5$ & \\ \hline
$4$ & $0.92388$ & $0.38268$ & \\ \hline
$5$ & $1$ & $0.80902$ & $0.30902$ \\ \hline
$6$ & $0.96593$ & $0.70711$ & $0.25882$ \\ \hline
\hline
\end{tabular}%
\end{table}
Hele sinusgeneratoren vil da være firkantgeneratoren og deretter filteret/ene i serie som vist i \autoref{circ:sinusTeori}. Dersom det seriekobles flere filtere gøres dette ved å koble $v_i$ på filteret på utgangen $v_2$.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$R_1 $, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$C$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$R_3 $, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$R_2$] ++(-2,0) node[ground] {}
(9,0) node[op amp,yscale=-1](opamp2){}
(opamp2.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$C_2$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$R$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$C_1 $] (C1-|opamp2.out)
to [short, -*] (opamp2.out)
(R2) to [R, l_=$R$] ++(-2,0) coordinate(koblingInn)
(opamp2.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp2.out)
to [short] (opamp2.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
(opamp.out) to [short, *-o] (opamp.out-|koblingInn) node[below]{$v_1$}
to (koblingInn)
;
\end{circuitikz}
\caption{Relaksjonsgenerator med lavpass-filter. Genererer et sinussignal på utgangen $v_2$ basert på tidskonstanten $\tau = R_1 \cdot C$.}
\label{circ:sinusTeori}
\end{figure}
\section{Realisering og test}
\label{sec:realisering}
\subsection{Realisering}
Frekvensen som sinusgeneratoren skal generere er gitt ved $f_0 = 4,1kHz$.
Velger $R_1 = R_2 = R_3 = R = 1k\Omega$. Kondensatoren i generatoren er gitt i \eqref{eq:generatorKondis}. Operasjonsforsterkerene som blir brukt til generatoren er MC34082 \cite{opamp}, den har to opamper i samme pakke.
\begin{align}
C = \frac{1}{2 \cdot R_1 \cdot f_0 \cdot \ln(3)} = 111\text{nF} \label{eq:generatorKondis}
\end{align}
Vi trenger å lage et 4. ordens filter for å fjerne alle de uønskede frekvensene. Det blir da brukt en til MC34082P for filterene, da denne har 4 operasjonsforsterkere.
Dermed blir hele kretsen som i \autoref{circ:prinsippKrets}.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){OP1}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$R_1 $, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$C$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$R_3 $, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$R_3 $] ++(-2,0) node[ground] {}
%% Filter 1
(9,3) node[op amp,yscale=-1](opamp2){\raisebox{\depth}{\scalebox{1}[-1]{OP2}}}
(opamp2.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$C_2 $, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$R$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$C_1 $] (C1-|opamp2.out)
to [short, -*] (opamp2.out)
(R2) to [R, l_=$R$] ++(-2,0) coordinate(koblingInn)
(opamp2.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp2.out)
to [short] (opamp2.out)
to [short] ++(1,0) coordinate(filter1ut)
(opamp.out) to [short, *-o] (opamp.out-|koblingInn) node[below]{$v_1$}
to (koblingInn)
% Filter 2
(10,-3) node[op amp,yscale=-1](opamp3){\raisebox{\depth}{\scalebox{1}[-1]{OP3}}}
(opamp3.+) to [short] ++(-1,0) coordinate(C4)
to [C, l_=$C_4$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C4) to [R, l_=$R$] ++(-2,0) coordinate(R4)
to [short, *-] ++(0,1) coordinate(C3)
to [C, l=$C_3$] (C3-|opamp3.out)
to [short, -*] (opamp3.out)
(R4) to [R, l_=$R$] ++(-2,0) coordinate(koblingInn)
(opamp3.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp3.out)
to [short] (opamp3.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
(filter1ut) -- (filter1ut|-opamp.out) -- (opamp.out-|koblingInn) -- (koblingInn)
;
\end{circuitikz}
\caption{Relaksjonsgenerator med 4. ordens lavpass-filter. Genererer et sinussignal på utgangen $v_2$ basert på tidskonstanten $\tau = R_1 \cdot C$ Uten komponentverdier.}
\label{circ:prinsippKrets}
\end{figure}
Siden dette er et fjerde-ordens filter blir $\zeta_1 = 0.92388$ og $\zeta_2 = 0.38268$. Knekkfrekvensen $\omega_0 = 2\pi \cdot f_0 = 8,1\pi \cdot 10^3 $ rad/s. Da er tidskonstantene gitt i \eqref{eq:tid1} og \eqref{eq:tid2}.
\begin{align}
\tau_1 = \frac{1}{\omega_0 \zeta_1} \approx 43\mu\text{s} \quad &\text{og} \quad \tau_2 = \frac{1}{\omega_0^2\tau_1} \approx 36\mu\text{s} \label{eq:tid1}\\
\tau_3 = \frac{1}{\omega_0 \zeta_2} \approx 103\mu\text{s} \quad &\text{og} \quad \tau_4 = \frac{1}{\omega_0^2\tau_3} \approx 15\mu\text{s} \label{eq:tid2}
\end{align}
Dermed blir kondensatorene gitt i \eqref{eq:kond1}, \eqref{eq:kond2}, \eqref{eq:kond3} og \eqref{eq:kond4}.
\begin{align}
C_1 &= \frac{\tau_1}{R} \approx 43 \text{nF} \label{eq:kond1}\\
C_2 &= \frac{\tau_2}{R} \approx 36 \text{nF} \label{eq:kond2} \\
C_3 &= \frac{\tau_3}{R} \approx 103 \text{nF} \label{eq:kond3}\\
C_4 &= \frac{\tau_4}{R} \approx 15 \text{nF} \label{eq:kond4}
\end{align}
Alle koponentene justert for standardverdier er i \autoref{tab:komponenter}.
\begin{table}[!htbp]
\centering
\caption{Tabell for alle komponeneter til kretsen, både utregnet og justert for standardverdier.}
\label{tab:komponenter}
\begin{tabular}{|l|c|c|}
\hline \hline
Komponent & Verdi & Justert for standardverdier \\ \hline
$R_1$ & $1k\Omega$ & $1k\Omega$ \\ \hline
$R_2$ & $1k\Omega$ & $1k\Omega$ \\ \hline
$R_3$ & $1k\Omega$ & $1k\Omega$ \\ \hline
$C$ & $111$nF & $100\text{nF}||10\text{nF}||1\text{nF}$ \\ \hline
$R$ & $1k\Omega$ & $1k\Omega$ \\ \hline
$C_1$ & $43$nF & $10\text{nF}||10\text{nF}||10\text{nF}||10\text{nF}||1\text{nF}||1\text{nF}||1\text{nF}$ \\ \hline
$C_2$ & $36$nF & $10\text{nF}||10\text{nF}||10\text{nF}||(10\text{nF}+10\text{nF})||1\text{nF}$ \\ \hline
$C_3$ & $103$nF & $100\text{nF}||1\text{nF}||1\text{nF}||1\text{nF}$ \\ \hline
$C_4$ & $15$nF & $10\text{nF}||(10\text{nF}+10\text{nF})$ \\ \hline
OP1 & \multicolumn{2}{c|}{LF353P} \\ \hline
OP2 & \multicolumn{2}{c|}{LM339N} \\ \hline
OP3 & \multicolumn{2}{c|}{LM339N} \\ \hline
\hline
\end{tabular}
\end{table}
Den fullførte kretsen er som i \autoref{circ:sinusVerdier}.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){OP1}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$1k\Omega$, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$111\text{nF}$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$1k\Omega$, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$1k\Omega$] ++(-2,0) node[ground] {}
%% Filter 1
(9,3) node[op amp,yscale=-1](opamp2){\raisebox{\depth}{\scalebox{1}[-1]{OP2}}}
(opamp2.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$36 \text{nF}$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$43$nF] (C1-|opamp2.out)
to [short, -*] (opamp2.out)
(R2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(koblingInn)
(opamp2.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp2.out)
to [short] (opamp2.out)
to [short] ++(1,0) coordinate(filter1ut)
(opamp.out) to [short, *-o] (opamp.out-|koblingInn) node[below]{$v_1$}
to (koblingInn)
% Filter 2
(10,-3) node[op amp,yscale=-1](opamp3){\raisebox{\depth}{\scalebox{1}[-1]{OP3}}}
(opamp3.+) to [short] ++(-1,0) coordinate(C4)
to [C, l_=$15 \text{nF}$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C4) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(R4)
to [short, *-] ++(0,1) coordinate(C3)
to [C, l=$103 \text{nF}$] (C3-|opamp3.out)
to [short, -*] (opamp3.out)
(R4) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(koblingInn)
(opamp3.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp3.out)
to [short] (opamp3.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
(filter1ut) -- (filter1ut|-opamp.out) -- (opamp.out-|koblingInn) -- (koblingInn)
;
\end{circuitikz}
\caption{Relaksjonsgenerator med lavpass-filter. Genererer et sinussignal på utgangen $v_2$ basert på tidskonstanten $\tau = R_1 \cdot C$.}
\label{circ:sinusVerdier}
\end{figure}
\clearpage
\subsection{Test}
Etter testing må motstandsverdien $R_1$ endres til $R_1 = 870\Omega$ og kondensatoren $C$ må endres til $C = 112$nF. Ellers helt lik krets. Endelige verdier kan sees i \autoref{tab:komponenterEndelig}. Den ferdige kretsen kan sees i \autoref{circ:ferdig} og \autoref{fig:irl}.
\begin{table}[!htbp]
\centering
\caption{Tabell for alle komponeneter til kretsen, både utregnet og justert for standardverdier.}
\label{tab:komponenterEndelig}
\begin{tabular}{|l|c|c|}
\hline \hline
Komponent & Verdi & Justert for standardverdier \\ \hline
$R_1$ & $870\Omega$ & $1k\Omega$ \\ \hline
$R_2$ & $1k\Omega$ & $1k\Omega$ \\ \hline
$R_3$ & $1k\Omega$ & $1k\Omega$ \\ \hline
$C$ & $112$nF & $100\text{nF}||10\text{nF}||1\text{nF}||1\text{nF}$ \\ \hline
$R$ & $1k\Omega$ & $1k\Omega$ \\ \hline
$C_1$ & $43$nF & $10\text{nF}||10\text{nF}||10\text{nF}||10\text{nF}||1\text{nF}||1\text{nF}||1\text{nF}$ \\ \hline
$C_2$ & $36$nF & $10\text{nF}||10\text{nF}||10\text{nF}||(10\text{nF}+10\text{nF})||1\text{nF}$ \\ \hline
$C_3$ & $103$nF & $100\text{nF}||1\text{nF}||1\text{nF}||1\text{nF}$ \\ \hline
$C_4$ & $15$nF & $10\text{nF}||(10\text{nF}+10\text{nF})$ \\ \hline
OP1 & \multicolumn{2}{c|}{MC34082P} \\ \hline
OP2 & \multicolumn{2}{c|}{MC34082P} \\ \hline
OP3 & \multicolumn{2}{c|}{MC34082P} \\ \hline
\hline
\end{tabular}
\end{table}
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){OP1}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$870\Omega$, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$112\text{nF}$] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$1k\Omega$, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$1k\Omega$] ++(-2,0) node[ground] {}
%% Filter 1
(9,3) node[op amp,yscale=-1](opamp2){\raisebox{\depth}{\scalebox{1}[-1]{OP2}}}
(opamp2.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$36 \text{nF}$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$43$nF] (C1-|opamp2.out)
to [short, -*] (opamp2.out)
(R2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(koblingInn)
(opamp2.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp2.out)
to [short] (opamp2.out)
to [short] ++(1,0) coordinate(filter1ut)
(opamp.out) to [short, *-o] (opamp.out-|koblingInn) node[below]{$v_1$}
to (koblingInn)
% Filter 2
(10,-3) node[op amp,yscale=-1](opamp3){\raisebox{\depth}{\scalebox{1}[-1]{OP3}}}
(opamp3.+) to [short] ++(-1,0) coordinate(C4)
to [C, l_=$15 \text{nF}$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C4) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(R4)
to [short, *-] ++(0,1) coordinate(C3)
to [C, l=$103 \text{nF}$] (C3-|opamp3.out)
to [short, -*] (opamp3.out)
(R4) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(koblingInn)
(opamp3.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp3.out)
to [short] (opamp3.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
(filter1ut) -- (filter1ut|-opamp.out) -- (opamp.out-|koblingInn) -- (koblingInn)
;
\end{circuitikz}
\caption{Komplett fungerende krets med alle komponentverdier.}
\label{circ:ferdig}
\end{figure}
\begin{figure}[!htbp]
\centering
\includegraphics[width=\textwidth]{figurer/irlKrets.jpg}
\caption{Fysisk oppkobling av kretsen.}
\label{fig:irl}
\end{figure}
Den målte frekvensen til sinusen er $f=4.100kHz$, se \autoref{fig:maaling}, som er godt innenfor avviket på $10000$ppm. Kretsen hadde et avvik på $0$ ppm. Ved måling av harmonisk forvrengning, se \autoref{fig:maalingSpec}, fant vi at den totale forvrengningen er på $2.0\%$, som også er innenfor kravene.
\begin{figure}[!htpb]
\centering
\includegraphics[width=\textwidth]{figurer/maalingavsinus.png}
\caption{Måling av sinusgeneratoren. Oransje er firkantgeneratoren og blå er den rene sinusen.}
\label{fig:maaling}
\end{figure}
\begin{figure}[!htpb]
\centering
\includegraphics[width=\textwidth]{figurer/maalingavsinusspektrum.png}
\caption{Måling av sinusgeneratorens harmoniske forvrengning. Blå linje er spektrumet til sinusgeneratoren.}
\label{fig:maalingSpec}
\end{figure}
\section{Konklusjon}
\label{sec:konklusjon}
Ut i fra spesifikasjonene som ble oppgitt var kretsen velfungerende. Frekvensen hadde et avvik på ca $0$ ppm, og sinusen ser ut som en sinus, med en total harmonisk forvrengning på $2\%$. For å få til en enda bedre sinus, vil det fungere å ha et enda høyere ordens filter. Den vil da fjerne mer av de uønskede frekvensene.
%Bibliografi: Legg til flere elementer ved å legge til flere \bibitem:--------
\phantomsection
\addcontentsline{toc}{section}{Referanser}
\begin{thebibliography}{99}
\bibitem{sallan-key}
Wikipedia contributors. (2019, August 6). \textit{SallenKey topology}. In Wikipedia, The Free Encyclopedia. Retrieved 11:21, October 8, 2019, from \url{https://en.wikipedia.org/w/index.php?title=Sallen%E2%80%93Key_topology&oldid=909548354}
\bibitem{butterworth}
Wikipedia contributors. (2019, September 27). \textit{Butterworth filter}. In Wikipedia, The Free Encyclopedia. Retrieved 10:22, October 8, 2019, from \url{https://en.wikipedia.org/w/index.php?title=Butterworth_filter&oldid=918135860}
\bibitem{notat}
L. Lundheim. (23.10.2018). \textit{Teknisk Notat: Sinus-generator}. NTNU, Elsys-2018-LL-1.
\bibitem{anti-alias}
Ø. Skaaden. (09.10.2019). \textit{Designnotat: Anti-Alias-filter}. NTNU, elsys. Hentet 24.11.2019 fra \url{https://glados.no/files/ntnu/h19/ttt4265/D7.pdf}
\bibitem{opamp}
On Semiconductors. (03.2002). \textit{MC34080 thru MC34085 - High performance JFET input operational amplifiers}. On Semiconductors. MC34080/D. \url{https://www.digchip.com/datasheets/download_datasheet.php?id=643869&part-number=MC34082P}
\end{thebibliography}{}
\clearpage
\appendix
%Tillegg. Flere tillegg legges til ved å lage flere sections:-----------------
\end{document}

359
D8/D8.tex.old Normal file
View File

@ -0,0 +1,359 @@
%Dokumentinnstillinger:---------------------------------
\documentclass[11pt,norsk]{elsys-design}
\heading{Designnotat}
\title{Sinus-generator}
\author{Øyvind Skaaden}
\version{1.0}
\date{\today}
\begin{document}
\maketitle
%Automatisk generert innholdsfortegnelse:------------------
\toc
%Selve rapporten:------------------------------------------
\section{Problembeskrivelse}
\label{sec:innledning}
I veldig mange sammenhenger er det å kunne generere et periodisk signal en veldig nyttig ting. I de fleste tilfeller ønsker vi at signalet skal ha en enkel tone, og da må vi bruke et sinussignal.
For å generere et sinussignal er det flere måter å gjøre det på, men her vil vi ta utganspunk i systemet i \autoref{fig:introsystem}.
\begin{figure}[!htbp]
\centering
\includegraphics[width=0.7\textwidth]{figurer/D8_Innledning.pdf}
\caption{Blokkdiagram for sinus-generatoren. Spenningene $v_1$ og $v_2$ er henholdsvis til utgangen på firkantsignalgeneratoren og lavpassfilteret.}
\label{fig:introsystem}
\end{figure}
Vi ønsker å ikke være veldig langt unna frekvensen som velges, så vi ønsker å være innenfor $10 000$ ppm av frekvensen $f_0 $ til sisnussignalet.
Siden vi lager sinusen fra en firkantpuls ønsker vi også at signalet ikke er veldig ødelagt av de overharmoniske svingningene. Derfor velger vi at harmonisk forvrengning, $D$, ikke skal være større enn $D_{max} = 2\% $.
\section{Prinsipiell løsning}
\label{sec:prinsipielllosning}
For å generere et firkantsignal er det flere måter å gjøre det på. Her vil det bli tatt utganspunkt i en type generator som heter relaksjonsgenerator. Den genererer et firkantsignal basert på opp- og utladning av en kondensator i et $RC$-ledd. Vi kan da styrefrekvensen ved å velge riktig tidskonstant.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$R_1 $, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$C$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$R_3 $, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$R_2$] ++(-2,0) node[ground] {}
(opamp.out) to [short, -o] ++(1,0) node[right] {$v_1$}
;
\end{circuitikz}
\caption{Relaksjonsgenerator. Genererer et firkantsignal basert på tidskonstanten $\tau = R_1 \cdot C$.}
\label{circ:relaksjonStart}
\end{figure}
Vi antar forsyningsspenningen til operasjonsforsterkeren i generatoren er lik positiv og negativ. Da er perioden $T$ til signalet som blir generert som i \eqref{eq:periodeGenerator}.
\begin{align}
T = 2 \cdot R_1 \cdot C \cdot \ln\left(1 + \frac{R_2}{R_3}\right) \label{eq:periodeGenerator}
\end{align}
Vi kan også anta at $1k\Omega < R_2 = R_3 < 100k\Omega$, og skriver om fra periode $T$ til frekvens $f = \frac{1}{T}$ i \eqref{eq:frekvensGenerator}.
\begin{align}
f = \frac{1}{2 \cdot R_1 \cdot C \cdot \ln\left(3\right)} \label{eq:frekvensGenerator}
\end{align}
Siden en firkantpuls består av en grunnfrekvens og mange overtoner av grunnfrekvensen, kan vi hente ut et sinussignal fra firkantsignalgeneratoren ved å fjerne overtonene. Dette kan gjøres med et lavpass-filter.
Igjen så finnes det mange varianter av et lavpassfilter, men her tas det utganspunkt i en Sallan-Key-topologi \cite{sallan-key} med en Butterworth-form\cite{butterworth} på dempningen.
Sallan-key-filteret er et andreordens-filter og disse kan seriekobles for å legge til flere ordener. Dersom det er to i serie vil vi kunne ha opp til et fjerdeordens-filter, tre så får vi sjetteordens o.s.v.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}
\draw
(0,0) node[op amp,yscale=-1](opamp){}
(opamp.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$C_2$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$R$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$C_1 $] (C1-|opamp.out)
to [short, -*] (opamp.out)
(R2) to [R, l_=$R$, -o] ++(-2,0) node[left] {$v_1$}
(opamp.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp.out)
to [short] (opamp.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
;
\end{circuitikz}
\caption{Kretstopologi for et andregrads lavpass-filter i Sallen-Key topologi.}
\label{circ:sallen-key-start}
\end{figure}
For å regne ut de forskjellige komponentverdiene har vi noen formler. Siden vi bruker operasjonsforsterkere (opamp) er det ganske standard å bruke motstandsverdier mellom $1k\Omega$ og $100k\Omega$. Motstandene kan da velges fritt innenfor disse grenser.
$\omega_0 $ er knekkfrekvensen i radianer og gitt i (\ref{eq:knekkfreq}).
\begin{align}
\omega_0 = 2\pi \cdot f_0 \label{eq:knekkfreq}
\end{align}
To tidskonstanter $\tau_1$ og $\tau_2$ i (\ref{eq:tidskonstanter}).
\begin{align}
\tau_1 = \frac{1}{\omega_0 \zeta} \quad \text{og} \quad \tau_2 = \frac{1}{\omega_0^2\tau_1} \label{eq:tidskonstanter}
\end{align}
Da er kondensatorverdiene gitt som i (\ref{eq:kondiser}).
\begin{align}
C_1 = \frac{\tau_1}{R} \quad \text{og} \quad C_2 = \frac{\tau_2}{R} \label{eq:kondiser}
\end{align}
Verdiene for $\zeta$ kan regnes ut eller så er de gitt for et normal Butterworth-filter for orden 1 til 6 i \autoref{tab:sallenKeyLosning}. Her kommer $\zeta$-verdiene i par som gjelder for et sett med et Sallen-Key-filter.
\begin{table}[!htpb]
\centering
\caption{$\zeta$-verdier for forskjellige ordener $n$ for et butterwurth-filter med et Allan-Key-filter topologi.}
\label{tab:sallenKeyLosning}
\begin{tabular}{|l|l|l|l|}
\hline \hline
& \multicolumn{3}{l|}{Polpar \textit{i}} \\ \hline
$n$ & $1$ & $2$ & $3$ \\ \hline
\hline
$1$ & $1$ & & \\ \hline
$2$ & $0.70711$ & & \\ \hline
$3$ & $1$ & $0.5$ & \\ \hline
$4$ & $0.92388$ & $0.38268$ & \\ \hline
$5$ & $1$ & $0.80902$ & $0.30902$ \\ \hline
$6$ & $0.96593$ & $0.70711$ & $0.25882$ \\ \hline
\hline
\end{tabular}%
\end{table}
Hele sinusgeneratoren vil da være firkantgeneratoren og deretter filteret/ene i serie som vist i \autoref{circ:sinusTeori}.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$R_1 $, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$C$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$R_3 $, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$R_2$] ++(-2,0) node[ground] {}
(9,0) node[op amp,yscale=-1](opamp2){}
(opamp2.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$C_2$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$R$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$C_1 $] (C1-|opamp2.out)
to [short, -*] (opamp2.out)
(R2) to [R, l_=$R$] ++(-2,0) coordinate(koblingInn)
(opamp2.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp2.out)
to [short] (opamp2.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
(opamp.out) to [short, -o] (opamp.out-|koblingInn) node[below]{$v_1$}
to (koblingInn)
;
\end{circuitikz}
\caption{Relaksjonsgenerator med lavpass-filter. Genererer et sinussignal på utgangen $v_2$ basert på tidskonstanten $\tau = R_1 \cdot C$.}
\label{circ:sinusTeori}
\end{figure}
\section{Realisering og test}
\label{sec:realisering}
\subsection{Realisering}
Frekvensen som sinusgeneratoren skal generere er gitt ved $f_0 = 4,1kHz$.
Velger $R_1 = R_2 = R_3 = 1k\Omega$. Kondensatoren i generatoren er gitt i \eqref{eq:generatorKondis}. Opampen som blir brukt er en LF353P, den har to opamper i samme pakke.
\begin{align}
C = \frac{1}{2 \cdot R_1 \cdot f_0 \cdot \ln(3)} = 111\text{nF} \label{eq:generatorKondis}
\end{align}
Siden vi har to opamper tilgjengelig, og brukte én i generatoren lager vi kun et andre-ordens filter.
Starter med å velge $R=1k\Omega$.
Siden dette er et andre-ordens filter blir $\zeta = 0.70711$. Knekkfrekvensen $\omega_0 = 2\pi \cdot f_0 = 8,1\pi \cdot 10^3 $ rad/s. Da er tidskonstantene gitt i \eqref{eq:tid1}.
\begin{align}
\tau_1 = \frac{1}{\omega_0 \zeta_1} \approx 55\mu\text{s} \quad &\text{og} \quad \tau_2 = \frac{1}{\omega_0^2\tau_1} \approx 27\mu\text{s} \label{eq:tid1}
\end{align}
Dermed blir kondensatorene, og justert for standardverdier som i \eqref{eq:kond1} og \eqref{eq:kond2}.
\begin{align}
C_1 = \frac{\tau_1}{R} \approx 55 \text{nF} \approx (100 \text{nF} + 100 \text{nF}) || (10 \text{nF} + 10 \text{nF}) \label{eq:kond1}\\
C_2 = \frac{\tau_2}{R} \approx 27 \text{nF} \approx 10 \text{nF} || 10 \text{nF} || (10 \text{nF} + 10 \text{nF}) || 1 \text{nF} || \text{nF} \label{eq:kond2}
\end{align}
Den fullførte kretsen er som i \autoref{circ:sinusVerdier}.
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$1k\Omega$, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$C$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$1k\Omega$, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$1k\Omega$] ++(-2,0) node[ground] {}
(9,0) node[op amp,yscale=-1](opamp2){}
(opamp2.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$27 \text{nF}$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$55 \text{nF}$] (C1-|opamp2.out)
to [short, -*] (opamp2.out)
(R2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(koblingInn)
(opamp2.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp2.out)
to [short] (opamp2.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
(opamp.out) to [short, -o] (opamp.out-|koblingInn) node[below]{$v_1$}
to (koblingInn)
;
\end{circuitikz}
\caption{Relaksjonsgenerator med lavpass-filter. Genererer et sinussignal på utgangen $v_2$ basert på tidskonstanten $\tau = R_1 \cdot C$.}
\label{circ:sinusVerdier}
\end{figure}
\subsection{Test}
Etter testing må motstandsverdien $R_1$ endres til $R_1 = 870\Omega$. Ellers helt lik krets. Den endelige kretsen kan sees i
\begin{figure}[!htpb]
\centering
\begin{circuitikz}[scale=0.92, every node/.style={transform shape}]
\draw
(0,0) node[op amp,yscale=1](opamp){}
(opamp.-) to [short] ++(0,1) coordinate(C)
to [R, l=$1k\Omega$, *-] (C-|opamp.out)
to (opamp.out)
(C) to [C, l_=$C$,] ++(-2,0) node[ground] {}
(opamp.+) to [short] ++(0,-1) coordinate(R_b)
to [R, l_=$1k\Omega$, *-] (R_b-|opamp.out)
to (opamp.out)
(R_b) to [R, l=$1k\Omega$] ++(-2,0) node[ground] {}
(9,0) node[op amp,yscale=-1](opamp2){}
(opamp2.+) to [short] ++(-1,0) coordinate(C2)
to [C, l_=$27 \text{nF}$, *-] ++(0,-2)
to ++(0,0) node[ground]{}
(C2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(R2)
to [short, *-] ++(0,1) coordinate(C1)
to [C, l=$55 \text{nF}$] (C1-|opamp2.out)
to [short, -*] (opamp2.out)
(R2) to [R, l_=$1k\Omega$] ++(-2,0) coordinate(koblingInn)
(opamp2.-) to [short] ++(0,-1) coordinate(fb)
to [short] (fb-|opamp2.out)
to [short] (opamp2.out)
to [short, -o] ++(1,0) node[right] {$v_2$}
(opamp.out) to [short, -o] (opamp.out-|koblingInn) node[below]{$v_1$}
to (koblingInn)
;
\end{circuitikz}
\caption{Komplett fungerende krets med alle komponentverdier.}
\label{circ:ferdig}
\end{figure}
Den målte frekvensen til sinusen er $f=4.096kHz$ som er godt innenfor avviket på $10000$ppm. Kretsen hadde et avvik på $976$ppm. Harmonisk forvrengning fikk vi ikke til å måle, men antar den ikke er så stor.
\begin{figure}
\centering
\includegraphics[width=\textwidth]{graphs/sinusmaalingWhite.png}
\caption{Måling av sinusgeneratoren. Oransje er firkantgeneratoren og blå er den rene sinusen.}
\label{fig:maaling}
\end{figure}
\section{Konklusjon}
\label{sec:konklusjon}
Ut i fra spesifikasjonene som ble oppgitt var kretsen velfungerende. Frekvensen var nære, og sinusen ser ut som en sinus. For å få til en enda bedre sinus, vil det fungere å ha et enda høyere ordens filter. Den vil da fjerne mer av de uønskede frekvensene.
%Bibliografi: Legg til flere elementer ved å legge til flere \bibitem:--------
\phantomsection
\addcontentsline{toc}{section}{Referanser}
\begin{thebibliography}{99}
\bibitem{sallan-key}
Wikipedia contributors. (2019, August 6). \textit{SallenKey topology}. In Wikipedia, The Free Encyclopedia. Retrieved 11:21, October 8, 2019, from \url{https://en.wikipedia.org/w/index.php?title=Sallen%E2%80%93Key_topology&oldid=909548354}
\bibitem{butterworth}
Wikipedia contributors. (2019, September 27). \textit{Butterworth filter}. In Wikipedia, The Free Encyclopedia. Retrieved 10:22, October 8, 2019, from \url{https://en.wikipedia.org/w/index.php?title=Butterworth_filter&oldid=918135860}
\bibitem{notat}
L. Lundheim. (23.10.2018). \textit{Teknisk Notat: Sinus-generator}. NTNU, Elsys-2018-LL-1.
\end{thebibliography}{}
\clearpage
\appendix
%Tillegg. Flere tillegg legges til ved å lage flere sections:-----------------
\end{document}

36
D8/Sinusgenerator.txt Normal file
View File

@ -0,0 +1,36 @@
$ 1 0.000005 0.8729138363720133 63 5 43
c 384 80 384 240 0 1.0000000000000001e-7 2.447360802545873
a 464 96 608 96 8 5 -5 1000000 2.447360802545873 -2.5002473779090226 100000
w 384 80 464 80 0
w 464 80 464 16 0
r 464 16 608 16 0 1000
w 608 16 608 96 0
w 464 112 464 160 0
r 464 160 464 240 0 1000
w 384 240 464 240 0
g 464 240 464 288 0
r 464 160 608 160 0 1000
w 608 160 608 96 0
p 672 96 672 240 1 0
w 672 240 464 240 0
w 672 96 608 96 0
R 256 80 256 144 0 0 40 5 0 0 0.5
s 240 16 368 16 0 1 false
a 960 112 1056 112 9 5 -5 1000000 4.443987333865353 4.444031773738692 100000
r 672 96 784 96 0 1000
r 784 96 912 96 0 1000
c 784 32 1056 32 0 5.5e-8 0.6790196142120433
w 784 32 784 96 0
c 912 96 912 240 0 2.7e-8 4.444031773738692
w 912 96 960 96 0
w 960 128 960 176 0
w 960 176 1056 176 0
w 1056 176 1056 112 0
w 1056 32 1056 112 0
w 912 240 672 240 0
w 1056 112 1120 112 0
p 1120 112 1120 240 1 0
w 1120 240 912 240 0
o 12 1 0 5122 10 0.1 0 1
o 0 1 0 4099 5 0.025 1 2 0 3
o 30 1 0 4098 5 0.1 2 1

Binary file not shown.

BIN
D8/figurer/D8_Prinsipp.pdf Normal file

Binary file not shown.

Binary file not shown.

BIN
D8/figurer/irlKrets.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

BIN
D8/graphs/sinus.dwf3work Normal file

Binary file not shown.

8193
D8/graphs/sinusmaaling.csv Normal file

File diff suppressed because it is too large Load Diff

BIN
D8/graphs/sinusmaaling.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

7
D8/ref.bib Normal file
View File

@ -0,0 +1,7 @@
@misc{ wiki:SallanKey,
author = "{Wikipedia contributors}",
title = "SallenKey topology --- {Wikipedia}{,} The Free Encyclopedia",
year = "2019",
howpublished = "\url{https://en.wikipedia.org/w/index.php?title=Sallen%E2%80%93Key_topology&oldid=924138246}",
note = "[Online; accessed 24-November-2019]"
}