<noscript id="jftie"></noscript>
    <style id="jftie"><mark id="jftie"><dfn id="jftie"></dfn></mark></style>
  1. <span id="jftie"></span>
    • 国产成人精品久久一区二区,韩国精品久久久久久无码,国产精品国产高清国产av,欧美99久久无码一区人妻a片,亚洲高清码在线精品av,午夜人妻久久久久久久久,伊人热热久久原色播放www ,亚洲女教师丝祙在线播放
      你的位置:首頁 > 測試測量 > 正文

      敲擊揚聲器震動信號建模

      發布時間:2023-07-27 來源:TsinghuaJoking 責任編輯:wenwei

      【導讀】揚聲器震動的頻率特性可以通過敲擊它所獲得的沖激響應來分析。?原本驅動揚聲器紙盆震動的線圈此時可以用作震動傳感器, 它將紙盆的震動速度轉換成電壓信號。?通過示波器可以采集到這個信號, ?本文將對敲擊揚聲器所產生的震動信號進行觀察建模。


      一、前言


      揚聲器震動的頻率特性可以通過敲擊它所獲得的沖激響應來分析。?原本驅動揚聲器紙盆震動的線圈此時可以用作震動傳感器, 它將紙盆的震動速度轉換成電壓信號。?通過示波器可以采集到這個信號, ?本文將對敲擊揚聲器所產生的震動信號進行觀察建模。


      1.jpg


      二、敲擊揚聲器

      ??

      使用示波器連接揚聲器的引線, 敲擊揚聲器可以看到振動的波形。?不同的敲擊力度和部位, 對應的震動還是有些區別。?示波器的探頭直接連接到揚聲器的音圈輸出端口, 中間沒有施加任何信號放大電路。?這樣采集到的電壓信號反映了揚聲器的單位沖激響應。


      2.jpg

      ??

      為了便于分析,使用小型改錐敲擊揚聲器紙盆中心,獲得了這樣一個簡單衰減振蕩波形。?選擇其中三個周期過零點,?查看它們之間的時間差,?大約為19.5毫秒,?它的倒數對應51.3Hz。?由于這是三個振蕩周期,所以原波形的振蕩頻率為153.9Hz。


      1687751338231450.png

      ??

      為了進一步精確估計衰減振蕩波形參數, 通過Python編程,從示波器讀取波形數據。?這是對讀取數據顯示的波形。?對原始示波器采集到的數據進行50個數據點的平均, 獲得更加光滑的信號波形。


      #!/usr/local/bin/python

      # -*- coding: gbk -*-

      #******************************

      # TEST1.PY                     -- by Dr. ZhuoQing 2023-03-01

      #

      # Note:

      #******************************

      from headm import *

      from tsmodule.tsvisa        import *

      mso24open()

      x,y = mso24read(1)

      tspsave('wave1', x=x, y=y)

      plt.plot(x, y)

      plt.xlabel("Time(s)")

      plt.ylabel("Voltage(V)")

      plt.grid(True)

      plt.tight_layout()

      plt.show()

      #------------------------------------------------------------

      #        END OF FILE : TEST1.PY

      #******************************


      1687751325376022.png

      ▲ 圖1.2.1 敲擊揚聲器中間獲得的波形


      1687751316415239.png

      ▲ 圖1.2.2 50個數據進行平滑之后的波形


      三、信號建模

      ??

      下面通過曲線擬合方式對揚聲器振動信號進行建模。?由于信號前面的波形受到敲擊的影響, 所以并不純粹是揚聲器自由響應。?截取時間大于7毫秒之后的波形進行處理。?這是揚聲器在敲擊后7毫秒之后的震動信號波形。?它是一個指數衰減振蕩信號。?可以使用一個帶有五個參數的函數表示。?通過Python編程, ?利用其中的曲線擬合工具來估計波形參數。?


      下面是程序擬合過程。?定義帶有五個參數的指數衰減函數,?根據觀察到的波形,初步估計函數的五個參數的初始值,調用曲線擬合函數,?顯示獲得擬合參數。?利用這些參數計算出擬合曲線,并進行繪制。?下面分析一下擬合結果。?這是五個信號參數擬合數值,?其中參數C代表著振蕩角頻率。?通過它,?可以計算出振蕩頻率 f0。?f0 等于 161.2 赫茲。?


      這里將原始波形和擬合曲線波形繪制在一起, 可以看到擬合參數的有效性。?利用測量波形進行曲線擬合,所獲得的頻率值應該比前面觀察到曲線過零點所獲得頻率更加準確。


      1687751301744108.png

      ▲ 圖1.2.3 曲線擬合后的結果


      1687751290495758.png

      ▲ 圖1.3.2 信號波形擬合函數以及對應的參數


      #!/usr/local/bin/python

      # -*- coding: gbk -*-

      #******************************

      # TEST2.PY                     -- by Dr. ZhuoQing 2023-03-01

      #

      # Note:

      #******************************

      from headm import *

      from scipy.optimize        import curve_fit

      x, y = tspload('wave1', 'x', 'y')

      printf(len(x), len(y))

      AVERAGE_NUM = 50

      DATA_LENGTH = len(x)//AVERAGE_NUM

      xx = array([sum(x[i*AVERAGE_NUM:i*AVERAGE_NUM+AVERAGE_NUM])/AVERAGE_NUM*1e3 for i in range(DATA_LENGTH)])

      yy = array([sum(y[i*AVERAGE_NUM:i*AVERAGE_NUM+AVERAGE_NUM])/AVERAGE_NUM for i in range(DATA_LENGTH)])

      c = where(xx>5)

      xxx = xx[c]/1000

      yyy = yy[c]

      tspsave('wave11', xxx=xxx, yyy=yyy)

      #------------------------------------------------------------

      '''

      plt.plot(xxx, yyy)

      plt.xlabel("Time(s)")

      plt.ylabel("Voltage(V)")

      plt.grid(True)

      plt.tight_layout()

      plt.show()

      '''

      #------------------------------------------------------------

      def fun(x,a,b,c,d,e):

          return a*exp(-b*x)*sin(c*x+d)+e

      param = (1, 50, 2*pi*150, 0, 0)

      param, conv = curve_fit(fun, xxx, yyy, p0=param)

      printf(param)

      ysim = fun(xxx, *param)

      plt.plot(xxx, yyy, linewidth=3, label='Origin')

      plt.plot(xxx, ysim, label='Fit')

      plt.xlabel("Time(s)")

      plt.ylabel("Voltage(V)")

      plt.grid(True)

      plt.legend(loc="upper right")

      plt.tight_layout()

      plt.show()

      #------------------------------------------------------------

      #        END OF FILE : TEST2.PY

      #******************************

      下面是文件 headm.py 的內容:


      import sys, os

      sys.path.append(r'd:\python\teasoft')

      STDFILE = open(r'd:\python\std.txt', 'a', 1)

      sysstderr = sys.stderr

      sysstdout = sys.stdout

      sys.stderr = STDFILE

      sys.stdout = STDFILE


      from threading import Thread

      import time, math, winsound, clipboard, random

      from numpy import *


      from tsmodule.tspdata   import *

      from tsmodule.tspyt     import *

      from tsmodule.tscmd     import *

      from tsmodule.tsdopop   import *

      from tsmodule.tsdraw    import *

      import tsmodule.tsconfig

      import matplotlib.pyplot as plt


      plt.rcParams['font.sans-serif'] = ['SimHei']

      plt.rcParams['axes.unicode_minus'] = False

      plt.figure(figsize=(10,80*10/128))

      plt.get_current_fig_manager().window.wm_geometry("+1950+300")

      plt.rcParams.update({'font.size':14})


      總結

      ??

      本文通過示波器觀察并獲取了一種小型揚聲器敲擊信號。該信號反映了揚聲器的沖激響應。?后面通過信號擬合進行數學建模,?為之后對揚聲器的頻率特性進一步分析打下基礎。


      作者:卓晴



      免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理。


      推薦閱讀:


      輔助駕駛毫米波雷達信號處理流程詳解

      中國移動李晗:今年底將集采400G,推動400G進入商用階段

      支持高速高精度控制和EtherCAT通信的RZ/T2L MPU

      用于SiC MOSFET的隔離柵極驅動器使用指南

      產線能否持續運轉?這個低調的器件說了算!

      特別推薦
      技術文章更多>>
      技術白皮書下載更多>>
      熱門搜索
      ?

      關閉

      ?

      關閉

      主站蜘蛛池模板: 国产偷国产偷亚洲清高网站| 一本久道中文无码字幕av| 免费看国产曰批40分钟| 一二三四视频社区在线| 午夜福利一区二区三区在线观看 | 国产精品污www一区二区三区| av无码一区二区大桥未久| 人妻去按摩店被黑人按中出| 成年动漫18禁无码3d动漫| 亚洲欧美vr色区| 日日干夜夜操高清视频| 无码人妻少妇久久中文字幕蜜桃| 国产乱人伦中文无无码视频试看| 动漫av网站免费观看| 国产区图片区小说区亚洲区| 鲁鲁网亚洲站内射污| 中文字幕日韩人妻不卡一区| 688欧美人禽杂交狂配| 欧洲美熟女乱av亚洲一区| 98视频精品全部国产| 天天做天天爱夜夜爽女人爽| 成人网站国产在线视频内射视频| 午夜福利yw在线观看2020 | 国内精品久久久久久久小说| 少妇的肉体在线观看| 麻豆精品偷拍人妻在线网址| 国产成av人片在线观看无码| 免费午夜无码片在线观看影院| 色情无码www视频无码区小黄鸭| 精品精品国产欧美在线小说区| 三男一女吃奶添下面视频| 久久99国产精品二区| 无码人妻一区、二区、三区免费视频 | 初尝黑人嗷嗷叫中文字幕| 亚洲狠狠婷婷综合久久久久图片 | 国内精品久久久久伊人av| 欧美人成视频在线视频| 亚洲国产成人无码网站大全| 热久久99这里有精品综合久久| 国产麻豆精品一区| 一二三四视频社区在线|