วัดความถี่เสียงด้วยไมโครโฟน คอมพิวเตอร์ และโปรแกรม Spectrum Analyzer และเล่นแก้วน้ำร้องเพลงกับเด็กอนุบาล

 

อัลบั้มภาพการเรียนการสอนอยู่ที่นี่ครับ

ถ้าสงสัยว่าไม่เห็นรูปหรือวิดีโอ เข้าไปดูที่เว็บ http://witpoko.com/ นะครับ ส่วนใหญ่ถ้าอ่านในเมล์จะไม่เห็นวิดีโอครับ

(คราวที่แล้วเรื่อง “ดูการ์ตูนการแกว่งลูกตุ้ม ดูสะพานแขวนพัง และเล่นแก้วน้ำร้องเพลง” ครับ)

วันอังคารที่ผ่านมานี้ผมไปสอนเด็กๆกลุ่มบ้านเรียนปฐมธรรม กลุ่มบ้านเรียนเฟิร์น และอนุบาลบ้านพลอยภูมิครับ สำหรับเด็กประถมวันนี้เราวัดความถี่เสียงด้วยไมโครโฟน แล้วเอาคลื่นเสียงที่บันทึกไปให้คอมพิวเตอร์วัดความถี่กันครับ สำหรับเด็กอนุบาลเราเล่นแก้วน้ำร้องเพลงที่เด็กประถมได้เล่นกันไปในครั้งที่แล้วครับ

ผมเอาแก้วร้องเพลงที่เราเล่นกันครั้งที่แล้วมาเล่นกันอีกครั้ง ผมให้เด็กๆดูแก้วที่ใส่น้ำไว้เกือบเต็มที่ผมใช้นิ้วเปียกๆถูปากแก้วจนเกิดการกำทอนมีเสียงดัง (เสียงดังเพราะนิ้วเราลากไปบนปากแก้วเหมือนคันซอสีสายซอครับ ทำให้ปากแก้วสั่นเป็นความถี่ธรรมชาติของมัน ถ้าเราใส่น้ำไว้ด้วยน้ำก็จะสั่นตามแก้วที่สั่นครับ) ให้เด็กๆสังเกตคลื่นในน้ำดังในคลิปเหล่านี้ครับ:

ต่อจากนั้นผมก็ถามเด็กๆว่ามีใครรู้ไหมว่าแก้วสั่นกี่ครั้งต่อวินาที เราไม่สามารถนับการสั่นได้เหมือนตอนเราทำการทดลองเกี่ยวกับการแกว่งของลูกตุ้มได้เพราะแก้วสั่นเร็วกว่าที่เราจะนับทันได้ ผมจึงบอกเด็กๆว่าเรามีวิธีอื่นๆมาช่วยเรานับการสั่นได้

ผมถามเด็กว่าเราได้ยินเสียงจากแก้วอย่างไร เด็กโตหลายคนบอกได้ว่าเกิดจากแก้วสั่นแล้วทำให้อากาศรอบๆสั่นตาม แล้วอากาศสั่นต่อๆมาเข้าไปในหูเราทำให้เราได้ยินได้ ผมบอกว่าถ้าเราใช้ไมโครโฟนรับเสียงแทนหู เราสามารถวาดรูปการสั่นแล้วเก็บไว้ในคอมพิวเตอร์แล้วเราค่อยมาวัดจำนวนครั้งการสั่นได้

ผมใช้โปรแกรมฟรีที่ชื่อ Audacity มาอัดเสียง แล้วให้เด็กๆดูภาพคลื่นเสียงที่อัดได้:

ภาพคลื่นเสียงของแก้วร้องเพลงครับ
ภาพนี้คือคลื่นเสียงของแก้วร้องเพลงที่เราซูมขยายเข้าไปดูการสั่นของอากาศ เพื่อเราจะได้นับจำนวนการสั่นต่อวินาทีได้ด้วยตา

ถึงแม้ว่าเราจะพอนับจำนวนการสั่นต่อวินาทีด้วยตาเราได้แต่มันเป็นงานที่ยากและเหนื่อย เราจึงใช้เครื่องทุ่นแรงที่เรียกว่า Spectrum Analyzer ซึ่งมีทั้งแบบที่เป็นกล่องๆฮาร์ดแวร์และแบบที่เป็นโปรแกรม เจ้าเครื่องนี้จะทำการเปรียบเทียบการสั่นของเราว่ามีการสั่นแบบความถี่เท่าไรและสั่นแรงเท่าไรในแต่ละความถี่ ในที่นี้ผมใช้โปรแกรมที่เขียนใน Mathematica โดยคัดลอกและดัดแปลงมาจากที่นี่ ตัวโปรแกรมที่ผมใช้หน้าตาเป็นอย่างนี้ครับเผื่อจะมีคนเอาไปทำอะไรต่อ อันแรกสำหรับหาว่าความถี่อะไรสั่นแรงแค่ไหน:

getPowerSpectrum[file_] :=
 Module[{sampleRate, data, fourier, nChannels, nSamples, nUniquePts,f},
  sampleRate = Import[file, “SampleRate”];
  nUniquePts = Ceiling[(nSamples + 1)/2];
  data = Import[file, “Data”];
  {nChannels, nSamples} = Dimensions[data];
  fourier = Fourier[data[[1]]] ;(*
  working with only one channel of sound*)
 
  fourier = Abs[fourier]/nSamples;
  fourier = fourier ^ 2;
  fourier = 2 fourier;
  fourier[[1]] = fourier[[1]]/2;
  fourier = Take[fourier, nUniquePts];
  f = N[(Range[0, nUniquePts – 1] sampleRate)/nSamples];
  Transpose[{f, fourier}]]

อันต่อไปสำหรับวาดกราฟแสดงความแรงของการสั่นที่ความถี่ต่างๆ (วาด Power Spectrum):

plotPowerSpectrum[file_] := ListLogPlot[getPowerSpectrum[file],
  Joined -> True, PlotRange -> All, PlotLabel -> “Power Spectrum”,
  AxesLabel -> {“Hertz”, “Power”}]

อันสุดท้ายใช้เลือกความถี่ที่สั่นแรงที่สุดสิบอันดับแรกออกมาให้ดูครับ:

topFrequency[file_] :=
 Take[Sort[getPowerSpectrum[file], #1[[2]] > #2[[2]] &], 10]

ตัวอย่างผลการใช้โปรแกรมครับ:

กราฟและข้อมูลใต้กราฟแสดงว่าแก้วไวน์ใส่น้ำน้อยๆสั่นแรงที่ความถี่ประมาณ 1,112 ครั้งต่อวินาทีครับ
กราฟและข้อมูลใต้กราฟแสดงว่าแก้วไวน์ใส่น้ำไว้เกือบเต็มสั่นแรงที่ความถี่ประมาณ 776 ครั้งต่อวินาทีครับ

จากนั้นเด็กๆก็เข้ามาอัดเสียงตัวเองแล้วดูว่าความถี่หลักๆในเสียงเป็นอย่างไรครับ พบว่าเสียงเด็กๆจะมีความถี่หลักประมาณพันต้นๆถึงพันกลางๆครั้งต่อวินาทีครับ เสียงผมจะต่ำและมีความถี่หลักประมาณ 700 ครั้งต่อวินาที เสียงกรีดร้องของเด็กๆที่เสียงสูงๆจะมีความถี่หลักๆประมาณ 2,000-3,000 ครั้งต่อวินาทีครับ

สำหรับเด็กอนุบาล ผมให้ทดลองลูบแก้วไวน์ให้เป็นแก้วร้องเพลงครับ วิธีทำและคำอธิบายอยู่ในบันทึกการสอนครั้งที่แล้วนะครับ

ต่อไปนี้คือบรรยากาศและบันทึกการเรียนรู้ของเด็กๆครับ อัลบั้มเต็มอยู่ที่นี่นะครับ

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Leave a Reply

Your email address will not be published. Required fields are marked *