refactor: nicht_sinus_signale

This commit is contained in:
Matthias Jung
2026-08-10 13:27:08 +02:00
parent 74d9386314
commit aaf5500d28
6 changed files with 234 additions and 14 deletions
+159
View File
@@ -0,0 +1,159 @@
<html>
<script src="https://www.50ohm.de/assets/jquery/3.7.1/jquery.min.js"></script>
<script src="https://www.50ohm.de/assets/chartjs/4.4.1/chart.min.js"></script>
<p>Hier kann die Fourier-Näherung eines symmetrischen Rechtecksignals mit einer variablen Anzahl ungerader Harmonischer untersucht werden. Die Schalter erlauben Werte von 1 bis 500.</p>
<table>
<tr>
<td>Harmonische $N$:</td>
<td>
<input type="range" id="harmonicsRange" min="1" max="499" value="1" step="2">
</td>
<td>
<input type="number" id="harmonicsInput" min="1" max="499" value="1" step="2" style="width: 6em;">
</td>
</tr>
</table>
<canvas id="rectangleFourierChart" style="width:100%; height:260px;"></canvas>
<script>
const chartCanvas = document.getElementById('rectangleFourierChart');
const harmonicsRange = document.getElementById('harmonicsRange');
const harmonicsInput = document.getElementById('harmonicsInput');
const xMin = -1.5 * Math.PI;
const xMax = 1.5 * Math.PI;
const rectangleChart = new Chart(chartCanvas, {
type: 'line',
data: {
datasets: [
{
label: 'Rechteck ideal',
borderColor: '#ED7D71',
backgroundColor: 'transparent',
pointRadius: 0,
borderDash: [6, 4],
data: []
},
{
label: 'Fourier-Näherung',
borderColor: '#00AEDF',
backgroundColor: 'transparent',
pointRadius: 0,
tension: 0.15,
data: []
}
]
},
options: {
responsive: true,
animation: false,
plugins: {
legend: {
display: true
}
},
scales: {
x: {
type: 'linear',
min: xMin,
max: xMax,
title: {
display: true,
text: 't'
},
ticks: {
callback: function(value) {
if (Math.abs(value) < 1e-8) return '0';
if (Math.abs(value - Math.PI) < 1e-8) return 'π';
if (Math.abs(value + Math.PI) < 1e-8) return '-π';
if (Math.abs(value - 1.5 * Math.PI) < 1e-8) return '3π/2';
if (Math.abs(value + 1.5 * Math.PI) < 1e-8) return '-3π/2';
return value.toFixed(2);
}
}
},
y: {
min: -1.3,
max: 1.3,
title: {
display: true,
text: 'f(t)'
},
ticks: {
stepSize: 0.5,
callback: function(value) {
return value.toFixed(1);
}
}
}
}
}
});
function clampHarmonics(value) {
const parsed = Number.parseInt(value, 10);
if (Number.isNaN(parsed)) return 1;
const clamped = Math.max(1, Math.min(499, parsed));
return clamped % 2 === 0 ? clamped - 1 : clamped;
}
function buildFourierSeries(n) {
const samples = [];
const sampleCount = Math.max(1200, n * 40);
const step = (xMax - xMin) / sampleCount;
for (let x = xMin; x <= xMax + 1e-9; x += step) {
let y = 0;
for (let k = 1; k <= n; k += 2) {
y += (4 / Math.PI) * Math.sin(k * x) / k;
}
samples.push({ x, y });
}
const idealPoints = [
{ x: xMin, y: 1 },
{ x: -Math.PI, y: 1 },
{ x: -Math.PI, y: -1 },
{ x: 0, y: -1 },
{ x: 0, y: 1 },
{ x: Math.PI, y: 1 },
{ x: Math.PI, y: -1 },
{ x: xMax, y: -1 }
];
return { samples, idealPoints };
}
function updateChart() {
const n = clampHarmonics(harmonicsInput.value);
harmonicsRange.value = n;
harmonicsInput.value = n;
const { samples, idealPoints } = buildFourierSeries(n);
rectangleChart.data.datasets[0].data = idealPoints.map(point => ({ x: point.x, y: point.y }));
rectangleChart.data.datasets[1].data = samples.map(point => ({ x: point.x, y: point.y }));
rectangleChart.update();
}
harmonicsRange.addEventListener('input', function() {
harmonicsInput.value = this.value;
updateChart();
});
harmonicsInput.addEventListener('input', function() {
harmonicsRange.value = this.value;
updateChart();
});
harmonicsInput.addEventListener('change', function() {
harmonicsRange.value = this.value;
updateChart();
});
updateChart();
</script>
</html>
+27 -14
View File
@@ -1,28 +1,41 @@
Ein ideales rein sinusförmiges Signal besteht nur aus seiner *Grundwelle welche auch 1. Harmonische* genannt wird. Sobald ein Signal nicht mehr der Sinusform entspricht und auch nur leicht davon abweicht, enthält das Signal *ganzzahlige Vielfache* seiner Grundschwingung, die auch *Oberwellen oder Oberschwingungen* genannt werden. Hierbei ist es wichtig zwischen den beiden Begriffen Oberwellen und Harmonischen zu differenzieren.
Die 1. Oberwelle entspricht hierbei der 2. Harmonischen der Grundschwingung und befindet sich auf der doppelten Frequenz der Grundschwingung. Die 2. Oberwelle entspricht der 3. Harmonischen der Grundschwingung und befindet sich auf der dreifachen Frequenz der Grundschwingung. Nach diesem Prinzip werden alle Harmonischen und Oberwellen auf die Grundwelle bezogen und mit einer Ordnungszahl (n) durchnummeriert.
Ein ideales rein sinusförmiges Signal besteht nur aus seiner *Grundwelle* welche auch *1. Harmonische* genannt wird. Sobald ein Signal nicht mehr der Sinusform entspricht und auch nur leicht davon abweicht, enthält das Signal *ganzzahlige Vielfache* seiner Grundschwingung, die auch *Oberwellen oder Oberschwingungen* genannt werden. Hierbei ist es wichtig zwischen den beiden Begriffen Oberwellen und Harmonischen zu differenzieren.
<indepth>
Je nach Art der Verzerrung eines Signals entstehen im Verhältnis mehr geradzahlige oder ungeradzahlige Oberwellen in dessen Frequenzspektrum. Rechteckförmige Signale, welche z.B. durch Übersteuerung von Verstärkerstufen entstehen (hierbei werden die Spitzen der Amplituden begrenzt und abgeflacht), enthalten überwiegend ungeradzahlige Harmonische bzw. geradzahlige Oberwellen.
Sägezahnförmige Signale enthalten überwiegend geradzahlige Harmonische bzw. ungeradzahlige Oberwellen.
</indepth>
Die Abbildung [ref:zusammenhang_oberwellen_harmonische] zeigt den Zusammenhang zwischen Oberwellen und Harmonischen, den man sich nur einmal einprägen muss. Die 1. Oberwelle entspricht hierbei der 2. Harmonischen der Grundschwingung und befindet sich auf der doppelten Frequenz der Grundschwingung. Die 2. Oberwelle entspricht der 3. Harmonischen der Grundschwingung und befindet sich auf der dreifachen Frequenz der Grundschwingung. Nach diesem Prinzip werden alle Harmonischen und Oberwellen auf die Grundwelle bezogen und mit einer Ordnungszahl $N$ durchnummeriert.
<margin>
[picture:869:zusammenhang_oberwellen_harmonische:Zusammenhang zwischen Oberwellen und Harmonischen]
</margin>
<indepth>
Je nach Art der Verzerrung eines Signals entstehen im Verhältnis mehr geradzahlige oder ungeradzahlige Oberwellen in dessen Frequenzspektrum. Rechteckförmige Signale, welche z.B. durch Übersteuerung von Verstärkerstufen entstehen (hierbei werden die Spitzen der Amplituden begrenzt und abgeflacht), enthalten ungeradzahlige Harmonische bzw. geradzahlige Oberwellen.
<webonly>
[include:applet_rectangle]
An den Sprungstellen zeigt die Fourier-Näherung das sogenannte Gibbs-Phänomen: Selbst bei sehr vielen Harmonischen bleibt dort ein kleines Über- und Unterschwingen bestehen.
</webonly>
Sägezahnförmige Signale enthalten überwiegend geradzahlige Harmonische bzw. ungeradzahlige Oberwellen.
</indepth>
[question:AB403]
[question:AB401]
[question:AB402]
Ist die Grundfrequenz eines Signals bekannt, ergibt sich die Frequenz der $N$-ten Harmonischen durch Multiplikation der Grundfrequenz mit der Ordnungszahl $N$:
$f_N = N \cdot f_0$
Für die $N$-te Oberwelle gilt dagegen:
$f_\mathrm{Oberwelle,N} = (N+1)\cdot f_0$
[question:AJ201]
[question:AJ205]
[question:AJ202]
[question:AJ206]
Auch wenn ein Signal auf dem Oszilloskop zunächst sinusförmig erscheint, kann das Signal trotzdem nennenswerte Oberwellenanteile (bzw. Harmonische der Grundwelle) enthalten. Um den Oberwellenanteil eines Signals quantitativ und qualitativ beurteilen zu können benötigt man einen *Spektrumanalysator* der das Signal im Frequenzbereich (Frequency-Domain) darstellen kann und hierbei die Amplitudenwerte der einzelnen Oberwellen logarithmisch darstellen kann, so dass deren Anteile am Gesamtsignal messbar sind.
[question:AI615]
[question:AI614]
Bei gegebener Grundfrequenz (1. Harmonische) eines Signals, können Frequenzen der Harmonischen durch Multiplikation der Grundfrequenz mit der jeweiligen Ordnungszahl (n) der Harmonischen errechnet werden.
Gleichermaßen können die Frequenzen der Oberwellen eines Signals durch Multiplikation der Grundfrequenz mit der Ordnungszahl der Oberwelle plus 1 (n+1) berechnet werden.
[question:AJ201]
[question:AJ205]
[question:AJ202]
[question:AJ206]
+9
View File
@@ -0,0 +1,9 @@
Die zweite Harmonische hat die doppelte Frequenz der Grundfrequenz:
$f_2 = 2 \cdot f_0$
Mit $f_0 = \qty{3,730}{\mega\hertz}$ ergibt sich:
$f_2 = 2 \cdot \qty{3,730}{\mega\hertz} = \qty{7,460}{\mega\hertz}$
Die zweite Harmonische liegt somit bei $\qty{7,460}{\mega\hertz}$.
+9
View File
@@ -0,0 +1,9 @@
Die dritte Harmonische hat die dreifache Frequenz der Grundfrequenz:
$f_3 = 3 \cdot f_0$
Mit $f_0 = \qty{7,050}{\mega\hertz}$ ergibt sich:
$f_3 = 3 \cdot \qty{7,050}{\mega\hertz} = \qty{21,150}{\mega\hertz}$
Der Empfänger muss somit auf $\qty{21,150}{\mega\hertz}$ eingestellt werden.
+11
View File
@@ -0,0 +1,11 @@
Die ungeradzahligen Harmonischen haben die Ordnungszahlen $1$, $3$, $5$, $\ldots$
Die zweite ungeradzahlige Harmonische ist daher die 3. Harmonische:
$f_3 = 3 \cdot f_0$
Mit $f_0 = \qty{144,690}{\mega\hertz}$ ergibt sich:
$f_3 = 3 \cdot \qty{144,690}{\mega\hertz} = \qty{434,070}{\mega\hertz}$
Die zweite ungeradzahlige Harmonische liegt somit bei $\qty{434,070}{\mega\hertz}$.
+19
View File
@@ -0,0 +1,19 @@
Harmonische liegen bei ganzzahligen Vielfachen der Grundfrequenz. Um zu prüfen, ob eine der angegebenen Frequenzen eine Harmonische von $\qty{144,300}{\mega\hertz}$ ist, kann die Frequenz durch die Grundfrequenz geteilt werden. Ergibt sich dabei eine ganze Zahl, handelt es sich um eine Harmonische. Die Ordnungszahl der Harmonischen kann mit folgender Formel berechnet werden:
$N=\frac{f_N}{f_0}$
Für $\qty{432,900}{\mega\hertz}$ ergibt sich:
$N=\frac{\qty{432,900}{\mega\hertz}}{\qty{144,300}{\mega\hertz}}=3$
Es handelt sich also um die dritte Harmonische.
Für $\qty{1298,700}{\mega\hertz}$ ergibt sich:
$N=\frac{\qty{1298,700}{\mega\hertz}}{\qty{144,300}{\mega\hertz}}=9$
Es handelt sich um die neunte Harmonische.
Das Sendesignal kann somit bei $\qty{432,900}{\mega\hertz}$ und $\qty{1298,700}{\mega\hertz}$ Störungen verursachen.
Bei den anderen angegebenen Frequenzen ergibt die Division keine ganze Zahl. Sie sind daher keine Harmonischen der Grundfrequenz.