Plaats een reactie

Je mail wordt niet openbaar getoond. Het wordt enkel gebruik voor contact of notificatie vanuit het beheer.

🗨️ Wat vind jij? Stel direct je vraag of geef je mening – zonder registratie. Je reactie zet het topic weer bovenaan bij 'Laatste posts' en trekt snel nieuwe reacties aan🔥. Mocht je als vaste bezoeker willen reageren, dan kun je je ook registreren.

Bevestig dat je geen robot bent door de volgende vragen te beantwoorden.

Noor heeft 10 knikkers. Ze verliest er 4 in het gras. Hoeveel heeft ze er nog?

Antwoord: (vul een getal in)

Er zitten 5 vogels op een hek. Twee vliegen weg. Hoeveel blijven er zitten?

Antwoord: (vul een getal in)

Weergave uitklappen Voorafgaande berichten: Twee stemvorken van 440 Hz

Re: Twee stemvorken van 440 Hz

door OOOVincentOOO » za 26 nov 2022, 17:28

Oke thanks! Mooie aanvulling! Is mij nu ook duidelijker. Had misschien eerder moeten vereenvoudigen. :)

Re: Twee stemvorken van 440 Hz

door Xilvo » za 26 nov 2022, 17:26

OOOVincentOOO schreef: za 26 nov 2022, 17:21
Wat bedoel je hiermee: "Nee, toch?" dat snap ik niet.
Dat je een iets andere maar wel constante frequentie krijgt.

Re: Twee stemvorken van 440 Hz

door OOOVincentOOO » za 26 nov 2022, 17:21

Xilvo schreef: za 26 nov 2022, 17:14 Nee, toch?
Inderdaad dat is wat ik bedoel. Ik heb het bewust niet vereenvoudigt opgeschreven.

Maar ik weet geen andere mooie manier om een faseverschuiving te maken (in een continue signaal).

Het effect is dat bij 7.5 seconden links en recht pi verschoven zijn (op een kleine fout na).

Dit is wat ik wilde bereiken op de eenvoudigste manier (wellicht zijn er andere simpelere mogelijkheden onbekend door mij).

EDIT:
Wat bedoel je hiermee: "Nee, toch?" dat snap ik niet.

Re: Twee stemvorken van 440 Hz

door Xilvo » za 26 nov 2022, 17:14

OOOVincentOOO schreef: za 26 nov 2022, 17:05
  • Kanaal links: \(L=sin(\omega t)\).
  • Kanaal rechts: \(R=sin(\omega t + \frac{2 }{15}\pi t)\).
  • Hier had ik twijfel of dit toelaatbaar is. De frequentie kanaal rechts veranderd eigenlijk kleine beetjes. Echter de frequentie verandering is periodiek en netto: 0 over 15 seconden. Bij een frequentie van 440 Hz verwaarloosbaar zou ik zeggen.
Nee, toch?
\(R=sin(\omega t + \frac{2 }{15}\pi t)=sin((\omega+ \frac{2 }{15}\pi) t)=\)
\(=sin((2\pi 440+ \frac{2 }{15}\pi) t)=sin((440+ \frac{1 }{15})2 \pi) t)\)
De nieuwe frequentie is \(440+\frac{1 }{15}\) Hz.

Re: Twee stemvorken van 440 Hz

door OOOVincentOOO » za 26 nov 2022, 17:05

HansH schreef: za 26 nov 2022, 10:24 je ziet dan ook dat energie tussen de 2 kringen heen en weer slingert, maar dis niet tot een evenwicht komt met gelijkblijvende amplitudes.
Nog een experiment gedaan krijg iets welke vergelijkbaar is als jouw plot.

Principe:
Het linker kanaal heb ik op: 440 Hz gehouden. Het rechter kanaal pas ik een fase verschuiving toe van 2pi over 15 seconden.

Signaal:
  • Wave file gecreëerd zie code onderstaand.
  • Kanaal links: \(L=sin(\omega t)\).
  • Kanaal rechts: \(R=sin(\omega t + \frac{2 }{15}\pi t)\).
  • Hier had ik twijfel of dit toelaatbaar is. De frequentie kanaal rechts veranderd eigenlijk kleine beetjes. Echter de frequentie verandering is periodiek en netto: 0 over 15 seconden. Bij een frequentie van 440 Hz verwaarloosbaar zou ik zeggen.
  • Het geluids bestand is dan als volgt
    Left-Right-Phase-Rec_440_Hz
  • Wavefile Left-Right-Phase-Rec_440_Hz
  • Door enkel het linker of recht kanaal af te spelen is gecontroleerd of de geluidsterkte constant blijft.
  • Het valt op dat de onderste paarse grafiek als: som links en recht uit geluids bestand een envelope laten zien vergelijkbaar als HansH grafiek.
Meting:
  • De luidsprekers zijn dicht nabij geplaatst zoals onderstaande foto.
  • 20221126_164237
  • Observatie: indien de luidsprekers dicht bij elkaar staan is WEL verandering in luissterkte waarneembaar. Indien verder van elkaar is er GEEN verandering in luid strekte waarneembaar door mij.
  • Middels de webcam microfoon is er een mono opname gemaakt.
  • Observaties: de intensiteit van de opname veranderd net zoals de theoretische som van kanaal links en rechts. Het signaal is sinus vormig. Het spectrogram laat de frequentie zien van 440 Hz en de intensiteit verandering is waarneembaar (donker rood start en einde, licht rood / oranje in het midden.
Conclusie:
  • Constructieve/Destructieve interferentie door faseverschuiving is alleen waargenomen indien beide luidsprekers nabij elkaar geplaatst zijn.
Fase verschuiving heeft invloed op de geluidsterkte voornamelijk wanneer bronnen zeer dicht bij elkaar zijn. Ik zou verder moeten studeren welke theorie dit beschrijft mits correct waargenomen.

Geluid Signaal en grafiek:

Code: Selecteer alles

import numpy as np
from scipy.io.wavfile import write

samplerate = 44100;
fs = 440
time = 15

amplitude = np.iinfo(np.int16).max

# time array
t = np.arange(0, int(time*fs)/fs, 1 / samplerate)

# left signal phase constant
left = amplitude * np.sin(2. * np.pi * fs * t)

# right signal phase shift 2pi over time
phase = np.linspace(0, 2*np.pi, len(t))
right = amplitude * np.sin((2. * np.pi ) * fs * t + phase)

# combine left right channel and save wavefile
signal = np.array([np.array(left), np.array(right)]).T
write("Left-Right-Phase_440_Hz.wav", samplerate, signal.astype(np.int16))


# De grafiek:
from matplotlib.ticker import FormatStrFormatter
import matplotlib.pyplot as plt

# Define layout spectrogram plot and time series
layout = [  ["left","left","left"], ["right","right","right"], ["1", "2","3"], ["left+right", "left+right", "left+right"]]
gs_kw = dict(width_ratios=[1,1,1], height_ratios=[1, 1, 1, 1])
fig, axd = plt.subplot_mosaic(layout, figsize=(16, 9), layout="constrained", gridspec_kw=gs_kw)

axd["left"].plot(t, left, color="red", linewidth=0.05)
axd["left"].set_title("Left")

axd["right"].plot(t, right, color="blue", linewidth=0.05)
axd["right"].set_title("Right")

axd["1"].plot(t, left, color="red", linewidth=0.5)
axd["1"].plot(t, right, color="blue", linewidth=0.5)
axd["1"].set_xlim(1.99, 2.01)
axd["1"].xaxis.set_major_formatter(FormatStrFormatter('%.2f'))

axd["2"].plot(t, left, color="red", linewidth=0.5)
axd["2"].plot(t, right, color="blue", linewidth=0.5)
axd["2"].set_xlim(7.49, 7.51)
axd["2"].xaxis.set_major_formatter(FormatStrFormatter('%.2f'))

axd["3"].plot(t, left, color="red", linewidth=0.5)
axd["3"].plot(t, right, color="blue", linewidth=0.5)
axd["3"].set_xlim(12.99, 13.01)
axd["3"].xaxis.set_major_formatter(FormatStrFormatter('%.2f'))

axd["2"].set_title("left and right")

axd["left+right"].plot(t, left+right, color="purple", linewidth=0.05)
axd["left+right"].set_title("Left+Right")

fig.suptitle("Signals In Wave File: Left-Right-Phase_440_Hz.wav", fontsize=26)

plt.show()
Spectrogram van geluidopname:

Code: Selecteer alles

from scipy.io import wavfile
import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
import numpy as np
from scipy.io.wavfile import write

# Define layout spectrogram plot and time series
layout = [  ["time"], ["timepart"], ["freq"], ["phase"]]
gs_kw = dict(width_ratios=[1], height_ratios=[1, 1, 1, 1])
fig, axd = plt.subplot_mosaic(layout, figsize=(16, 9), layout="constrained", gridspec_kw=gs_kw)

# Sample frequency
fs = 44100

sample_rate, signal = wavfile.read('Left-Right-Phase-Rec_440_Hz.wav')

def spectogram(signal):
    # calcuate the spectrogram, determine perios instead of frequency
    spec, freq, t = mlab.specgram(signal, Fs=fs, mode="magnitude", NFFT=15000, noverlap=14800)

    # Crop frequency range: 0-1500 Hz
    difference_array = np.absolute(freq - 500)
    end = difference_array.argmin()

    difference_array = np.absolute(freq - 380)
    start = difference_array.argmin()

    return t, freq[start:end:], spec[start:end:]


def phasegram(signal):
    # calcuate the spectrogram, determine perios instead of frequency
    spec, freq, t = mlab.specgram(signal, Fs=fs, mode="phase", NFFT=15000, noverlap=14800)

    # Crop frequency range: 0-1500 Hz
    difference_array = np.absolute(freq - 500)
    end = difference_array.argmin()

    difference_array = np.absolute(freq - 380)
    start = difference_array.argmin()

    return t, freq[start:end:], spec[start:end:]


# Plot time signal
time = np.arange(np.size(signal))/sample_rate
axd["time"].plot(time, signal, color="black", linewidth=0.1)
axd["time"].set_xlabel("elapsed time [seconds]")
axd["time"].set_ylabel("Amplitude [arb.]")
axd["timepart"].plot(time, signal, color="black", linewidth=0.5)
axd["timepart"].set_xlabel("elapsed time [seconds]")
axd["timepart"].set_ylabel("Amplitude [arb.]")

# Plot Spectogram
time, period, spectrum = spectogram(signal)
axd["freq"].pcolormesh(time, (period), np.log10(spectrum), cmap="coolwarm")
axd["freq"].set_xlabel("elapsed time [seconds]")
axd["freq"].set_ylabel("frequency [Hz]")

# Plot Spectogram
time, period, spectrum = phasegram(signal)
axd["phase"].pcolormesh(time, period, spectrum, cmap="coolwarm")
axd["phase"].set_xlabel("elapsed time [seconds]")
axd["phase"].set_ylabel("frequency [Hz]")

fig.suptitle("Mono Recording Two Speakers", fontsize=26)
plt.show()

Re: Twee stemvorken van 440 Hz

door OOOVincentOOO » za 26 nov 2022, 13:39

Off topic Dat weet ik en doe ik ook. Maar om netjes een bericht met aanhang en latex te maken kost veel tijd en concentratie eenmaal verkeerde knopje versturen en je bent de haas.

Ook opletten eenmaal aangang openen in ontwerp en mogelijk alles kwijt daar link in dezelfde tab openen kan.

Edit tijd is gewoon veel te kort als aanhang veranderd of algemene edits benodigd. Ala minuutjes reacties zijn ook ergerlijk btw.

Daar dit off topic is mag verwijderd worden.

Re: Twee stemvorken van 440 Hz

door Xilvo » za 26 nov 2022, 12:03

OOOVincentOOO schreef: za 26 nov 2022, 10:52 Laatste zin copy paste fout. Kan niet meer editen. Erg stressvol zulke korte edit tijd. Zo een berichtje kost veel tijd te typen.
Gebruik "volledige bewerker en voorbeeld".
Je kunt dan zien hoe het bericht eruit komt te zien, inclusief quotes, plaatjes etc. Je kunt het dan zorgvuldig doornemen voor je het plaatst. Zo doe ik het, dan is verbeteren maar zelden nodig.

Re: Twee stemvorken van 440 Hz

door HansH » za 26 nov 2022, 11:59

OOOVincentOOO schreef: za 26 nov 2022, 10:52
Laatste zin copy paste fout. Kan niet meer editen. Erg stressvol zulke korte edit tijd. Zo een berichtje kost veel tijd te typen.
klopt. daar heb ik me ook al vaker aan geergerd dat je na een tijdje typefoutjes of het feit dat je iets achteraf gezien net wat duidelijker had kunnen opschrijven niet meer kunt wijzigen.

Re: Twee stemvorken van 440 Hz

door OOOVincentOOO » za 26 nov 2022, 10:52

OOOVincentOOO schreef: za 26 nov 2022, 10:39 Ter aanvulling voor signalen in fase en niet in fase twee testjes gedaan. Hierbij gebruik gemaakt van luidsprekers en een wav file.
Aanvulling: Wanneer de geluid filetjes af te spelen: de versterking en verzwakking is beter te horen wanneer luidspreker nabij elkaar staan. Net getest op grotere afstand van elkaar en dan onduidelijker (zie foto voor mijn opstelling). Weet niet of het op een mobieltje werkt. Edit: bij mijn mobieltje perfecte uitdoving.


Type fout:
Test: 3 (koppeling)
Geprobeerd beide luidsprekers te koppelen met lijmtang en met gezamelijke wielstjes ophang. Dit experiementje mislukt. Misschien dat ik straks nog een koppeling testje doe. De overgaan tot simultaan duurt langer dan test 1, alsof het fase verschil gecompenseerd dient te worden.
Laatste zin copy paste fout. Kan niet meer editen. Erg stressvol zulke korte edit tijd. Zo een berichtje kost veel tijd te typen.

Re: Twee stemvorken van 440 Hz

door Xilvo » za 26 nov 2022, 10:44

Je kunt nog een experiment doen om te zien hoe snel te vorken in fase raken.

Tik ze aan wacht even en zoek een plaats (met oor, of beter, met een microfoon) waar uitdoving optreedt. Die plaats zal niet veranderen als de vorken eenmaal gesynchroniseerd zijn.

Vervolgens zou je een paar keer de vorken kunnen aantikken (de onderlinge fase is dan volkomen willekeurig) en zien hoe lang het duurt voordat ze synchroon met elkaar zijn, dus wanneer uitdoving weer op die specifieke plaats gebeurt.

Re: Twee stemvorken van 440 Hz

door OOOVincentOOO » za 26 nov 2022, 10:39

Interessant, dat is dan het resoneren ten gevolge van een bron en object. Enkele experimentjes uitgevoerd (al gestart voor jouw reply) betreffende fase verschillen.

Ter aanvulling voor signalen in fase en niet in fase twee testjes gedaan. Hierbij gebruik gemaakt van luidsprekers en een wav file.

Test:1 (in fase)
Signaal sinus links en rechts in fase.
0-5 [seconde], Links sinus
5-10 [seconde] Rechts sinus
10-15 [seconde] Beide
Left-Right-Left+Right_300_Hz
(9.19 KiB) 129 keer gedownload
Opname gemaakt met microfoon webcam:
Left-Right-Left+Right
Observatie: Het rechterkanaal is iets sterker (waarschijnlijk door opname richting). Wanneer links en rechts gelijk afspelen is versterking zichtbaar. De overgang is vergroot weergegeven in het midden. Merk overgang op (wanneer beide simultaan) alleen de amplitude veranderd.


Test: 2 (uit fase)
Signaal sinus links en rechts, echter rechter signaal geinverteerd (180 graden in fase verschoven).
0-5 [seconde], Links sinus
5-10 [seconde] Rechts (inverse) sinus
10-15 [seconde] Beide
Left-iRight-Left+iRight_300_Hz
(9.52 KiB) 178 keer gedownload
Opname gemaakt met microfoon webcam:
Left-iRight-Left+iRight
Observatie: Het rechterkanaal is iets sterker (waarschijnlijk door opname richting). Wanneer links en rechts gelijk afspelen is het signaal gedoofd. De overgang is vergroot weergegeven in het midden.


Test: 3 (koppeling)
Geprobeerd beide luidsprekers te koppelen met lijmtang en met gezamelijke wielstjes ophang. Dit experiementje mislukt. Misschien dat ik straks nog een koppeling testje doe. De overgaan tot simultaan duurt langer dan test 1, alsof het fase verschil gecompenseerd dient te worden.
Untitled

Conclusie:
Ja er kan uitdoving/versterking ontstaan wanneer de signaal puur sinus zijn.
Er onstaat tevens een interferentie patroon zoals het twee spleten experiment (echter hier micro op zelfde plaats) golflengte 300 Hz is 1.15 meter.

Code Signaal:

Code: Selecteer alles

import numpy as np
from scipy.io.wavfile import write

import matplotlib.pyplot as plt

samplerate = 44100;
fs = 300
time = 6

t = np.arange(0, time, 1 / samplerate)

amplitude = np.iinfo(np.int16).max

signal = amplitude * np.sin(2. * np.pi * fs * t)
zero = amplitude * np.zeros(len(signal))

left = np.append(signal, [zero, signal])
right = np.append(zero, [-signal, -signal])

signal = np.array([left, right]).T

write("Left-iRight_300_Hz.wav", samplerate, signal.astype(np.int16))
Code Opname:

Code: Selecteer alles

import sounddevice as sd
from scipy.io.wavfile import write

fs = 44100  # Sample rate
seconds = 6 # Duration of recording

myrecording = sd.rec(int(seconds * fs), samplerate=fs, channels=1)
sd.wait()  # Wait until recording is finished
write('Left-iRight_nocoupling_300_Hz_rec.wav', fs, myrecording)  # Save as WAV file

Re: Twee stemvorken van 440 Hz

door HansH » za 26 nov 2022, 10:28

jkien schreef: vr 25 nov 2022, 23:07 Er ontstond een hoorbare zweving in het geluid van de twee stemvorken samen, zie de grafiek. Naarmate het gewichtje minder dicht bij het uiteinde van de vork zat werd de frequentieafwijking kleiner.
De vraag is wel of die zwevingen het gevolg waren van overdracht van energie van de ener naar de andere vork of dat het gewoon zwevingen zijn zijnde de som van 2 sinustermen met verschillende frequentie. daarcoor zou je dus de amplitude van beide apart moeten plotten.

Re: Twee stemvorken van 440 Hz

door HansH » za 26 nov 2022, 10:24

met LTspice: https://www.analog.com/en/design-center ... lator.html
kun je 2 gekoppelde oscillatoren onderzoeken.
Image1
je ziet dan ook dat energie tussen de 2 kringen heen en weer slingert, maar dis niet tot een evenwicht komt met gelijkblijvende amplitudes.
bijgaand de LTspice files zodat je het zelf kunt simuleren.
Draft1
(864 Bytes) 174 keer gedownload

Re: Twee stemvorken van 440 Hz

door jkien » vr 25 nov 2022, 23:07

OOOVincentOOO schreef: do 24 nov 2022, 11:57 Misschien is het een mogelijkheid beide stemvorken op 3 of 4 spijkers/punaises te plaatsen (ophangen vislijn?) en kijken of de koppeling dan verdwijnt. En wellicht een piepschuim tussen beide. En varieren in alle combinaties.
De stemvork-klankkasten zijn al geisoleerd van de ondergrond door dikke vilten voetjes. De koppeling van stemvorken-met-klankkast gaat via de lucht. Als je de ene stemvork aanstoot gaat de andere stemvork meeresoneren. Als je het trillen van de ene dempt, hoor je de andere naklinken. video

Als je de stemvorken van elkaar scheidt met een matras als tussenwand blijkt dat de tweede stemvork nog steeds mee gaat resoneren met de eerste. De geluidskoppeling blijft blijkbaar werken als het geluid een omweg door de lucht om de matras heen moet maken.

In een ander experiment (zonder matras-tussenwand) heb ik de ene stemvork iets ontstemd door de vork te verzwaren met een klein gewichtje (een om de vork gewikkeld stukje koperdraad). Er ontstond een hoorbare zweving in het geluid van de twee stemvorken samen, zie de grafiek. Naarmate het gewichtje minder dicht bij het uiteinde van de vork zat werd de frequentieafwijking kleiner. De laagste waargenomen zwevingsfrequentie in het experiment was ongeveer 0.1 Hz. Ik vraag me af of dat betekent dat de synchronisatie pas compleet is nadat er 10 seconden koppeling is.

stemvorkzweving
Geluidsvolume van de twee stemvorken samen, gemeten met een smartphone, voor vijf posities van het gewichtje. Hoe kleiner de zwevingsfrequentie des te kleiner de modulatiediepte, met name de uitdoving verdwijnt.

Re: Twee stemvorken van 440 Hz

door Xilvo » vr 25 nov 2022, 19:40

HansH schreef: vr 25 nov 2022, 19:37
Xilvo schreef: do 24 nov 2022, 21:33 Wat me opvalt is dat dat niet gebeurt ondanks dat het frequentieverschil klein en de koppeling groot is.
onder koppeling zou je denk ik moeten verstaan het overdragen van vermogen van de ene naar de andere snaar. wat dat betreft vraaag ik me af of de koppeling wel zo groot is als je dat vergelijkt met dat voorbeeld van de gekoppelde metronomen.
Die metronomen staan op een heel bewegelijk en relatief licht plateau. Zet je ze op een stevige tafel dan lukt het veel minder makkelijk of helemaal niet.