文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.190306
中文引用格式: 李緯良,肖輝,方鵬飛. 基于STM32的揚聲器定心支片順性測量系統(tǒng)設(shè)計[J].電子技術(shù)應用,2019,45(7):102-106,116.
英文引用格式: Li Weiliang,Xiao Hui,F(xiàn)ang Pengfei. Design of a loudspeaker spider compliance measuring system based on STM32[J]. Application of Electronic Technique,2019,45(7):102-106,116.
0 引言
定心支片是揚聲器的核心部件之一,它用于保證揚聲器工作時,音圈在磁隙中處于正確的位置,并且保證音圈在振動過程中僅沿軸向作往復運動[1-2]。受到制作材料和設(shè)計形狀的影響,在揚聲器工作時,定心支片會產(chǎn)生一定程度的非線性失真。因此,要求在有效的振動范圍內(nèi),定心支片的受力和形變需要有良好的線性關(guān)系。
揚聲器行業(yè)中用定心支片的順性來表征一個定心支片的特性,即定心支片彈性系數(shù)的倒數(shù)。較為普遍的測量方法是施加固定負載(50 g或者100 g標準砝碼)后根據(jù)定心支片的變位來判斷定心支片的順性[3-4]。傳統(tǒng)的定心支片順性測量儀通常基于這一方法來實現(xiàn),但是使用過程中,只能粗略地判斷一個定心支片的線性范圍,不能反映定心支片運動過程中的受力情況,且不能測量定心支片的最大線性范圍,對于后續(xù)的研究與分析具有很大的局限性。
針對以上問題,本文結(jié)合前人的工作,基于STM32F407單片機開發(fā)了一種定心支片順性測量系統(tǒng)。該系統(tǒng)結(jié)合步進電機、數(shù)顯游標卡尺和壓力傳感器,實現(xiàn)了自動控制定心運動并檢測位移和受力大小的功能,并使用滑動均值濾波算法和最小二乘擬合算法對數(shù)據(jù)進行處理,使得測量結(jié)果更加精確。最后通過對順性曲線進行計算來查找被測定心支片的線性范圍。
1 硬件設(shè)計
1.1 系統(tǒng)結(jié)構(gòu)設(shè)計
定心支片在持續(xù)受到一個方向的外力作用時會產(chǎn)生一定的塑性形變而無法自動復原,而在揚聲器工作中,定心支片的受力的大小與方向?qū)嶋H上是一個持續(xù)變化的過程,因而需要動態(tài)地對其進行測量,才能準確反映其運動時的真實受力情況?;谝陨戏治?,本系統(tǒng)使用步進電機和線性滑軌對測量系統(tǒng)進行搭建,既可以模擬定心支片運動的過程,又可以通過單片機對運動狀態(tài)進行控制,來模擬不同的工作場景。另外,在運動過程中通過單片機對各模塊進行數(shù)據(jù)采集和計算,即可得到揚聲器工作時定心支片的運動參數(shù)。
系統(tǒng)的結(jié)構(gòu)示意圖如圖1所示,使用精度為0.01 mm的數(shù)顯游標卡尺與滑軌連接,用于采集定心支片的位移數(shù)據(jù)。壓力傳感器固定于滑軌之上,用于采集壓力數(shù)據(jù)。另外,使用高精度的滾珠絲桿作為步進電機和滑軌的聯(lián)動軸使得系統(tǒng)運行更加精確。
1.2 電路設(shè)計
本系統(tǒng)的硬件電路的設(shè)計從性能、功耗、穩(wěn)定性與可靠性這幾個方面來綜合考慮,并按照實現(xiàn)的功能對電路模塊進行了分類,使用模塊化的設(shè)計方法降低了電路系統(tǒng)設(shè)計的風險,并且易于修改和測試。電路整體設(shè)計框圖如圖2所示,電路系統(tǒng)以STM32F407單片機作為主控芯片,對各類模塊進行控制。其中數(shù)據(jù)采樣模塊使用了低紋波的線性直流穩(wěn)壓電源,來降低電源噪聲對采樣電路的影響,而功耗較大的TFT驅(qū)動模塊和步進電機驅(qū)動模塊則使用了開關(guān)型穩(wěn)壓電源,降低了電路系統(tǒng)的整體功耗。
1.2.1 線性穩(wěn)壓電源設(shè)計
采樣電路供電模塊的穩(wěn)定性決定了采樣結(jié)果的正確性,因此,需要低電壓紋波的線性直流穩(wěn)壓電源來為數(shù)據(jù)采樣模塊供電[5]。本系統(tǒng)的線性直流穩(wěn)壓電源使用增加電壓壓降的設(shè)計方式來提升輸出電壓的穩(wěn)定性,并且使用多路級聯(lián)的方式來分散熱功耗對單個穩(wěn)壓模塊的影響。另外針對工作過程中可能出現(xiàn)的負載波動,設(shè)計了較寬的電流范圍,并且使用三極管對穩(wěn)壓芯片進行并聯(lián)擴流,既提升了電路的帶負載能力,又不會增加芯片的發(fā)熱量,提升了電路的可靠性。
線性直流穩(wěn)壓電源的設(shè)計如圖3所示,使用集成三端穩(wěn)壓芯片LM317為核心,并使用可控精密穩(wěn)壓源TL431作為基準穩(wěn)壓源來對直流穩(wěn)壓電源進行設(shè)計。兩者都具有低噪聲、高紋波抑制比的優(yōu)點,非常適合線性穩(wěn)壓電源的設(shè)計。前級電路使用NPN管Q1對LM317芯片進行擴流,可有效降低芯片的熱功耗,后級電路使用TL431芯片作為基準,降低了輸出電壓紋波。另外,使用PNP管Q2與負載并聯(lián),降低了負載波動對穩(wěn)壓效果的影響,提升了電路的帶負載能力。
1.2.2 壓力采樣電路設(shè)計
本系統(tǒng)的壓力傳感器為平行梁式鋁合金測力傳感器SBT430,該傳感器為壓阻式應變傳感器,其輸出信號為一微弱的差分信號,需要對其進行放大和濾波處理后才能進行A/D轉(zhuǎn)換。
壓力采樣電路使用單一模塊的設(shè)計方式,避免了多路放大與A/D轉(zhuǎn)換模塊級聯(lián)帶來的噪聲疊加和溫度漂移。選擇集成有低噪聲可編程放大器、穩(wěn)壓電源以及片內(nèi)時鐘振蕩器的HX711芯片來進行設(shè)計,可以直接控制STM32F407單片機對其進行采樣,既提高了采樣穩(wěn)定性,又簡化了電路設(shè)計。壓力信號采集電路如圖4所示。
1.2.3 步進電機驅(qū)動電路設(shè)計
系統(tǒng)的運動使用57系列步進電機來進行運動控制,該系列步進電機具有運行平穩(wěn)、可靠性高的特點。工業(yè)生產(chǎn)中常使用集成驅(qū)動塊來對步進電機進行驅(qū)動,使用撥碼開關(guān)對其工作模式進行設(shè)定可以應對大部分的工作場景,但是本系統(tǒng)的運動控制需要有較高的靈敏度和更加多樣的工作方式。為此,本文使用驅(qū)動芯片加STM32F407單片機直接驅(qū)動的方式來對步進電機的驅(qū)動電路進行設(shè)計和優(yōu)化,針對不同的工作狀態(tài),使用單片機來自動選擇不同的細分方式、驅(qū)動電流和驅(qū)動電壓頻率,使得控制方式更加靈活。步進電機驅(qū)動電路如圖5所示。
2 軟件設(shè)計
本文的軟件系統(tǒng)主要實現(xiàn)的功能有數(shù)據(jù)采集、數(shù)據(jù)發(fā)送和系統(tǒng)校正。根據(jù)不同電路模塊的驅(qū)動特點和工作方式的需要,使用模塊化編程的思想對各驅(qū)動模塊、運動控制模塊和采樣模塊進行設(shè)計和組合,節(jié)省了開發(fā)時間,而且便于后期調(diào)試和維護。系統(tǒng)設(shè)計中將數(shù)據(jù)采集模塊和數(shù)據(jù)發(fā)送模塊進行分離,避免了數(shù)據(jù)發(fā)送中的時延對采樣等待時間造成的影響,使得采樣速度更快。另外,使用自動校正壓力傳感器壓力值和定心支片起始點的設(shè)計,節(jié)省了儀器校準的時間,并使得系統(tǒng)的輸出結(jié)果更加準確。系統(tǒng)的軟件設(shè)計流程如圖6所示。
2.1 壓力采樣值濾波
受電源噪聲和外界電磁干擾的影響,對一固定負載進行連續(xù)采樣時,HX711芯片的輸出值會有較大波動。使用數(shù)字濾波法來對數(shù)據(jù)噪聲進行濾波處理可以快速去除數(shù)據(jù)中的噪聲干擾,并且不會占用過多的系統(tǒng)資源。常用的數(shù)字濾波法有限幅濾波法、中位值濾波法、算術(shù)平均法、滑動均值濾波法以及幾種方法組合之后的濾波方法[6-8]。結(jié)合各濾波法的優(yōu)缺點和本系統(tǒng)的采樣特點,本文采用滑動均值濾波法和中位值濾波法相結(jié)合的方式來對壓力信號進行處理。濾波算法的實現(xiàn)過程是構(gòu)建一個長度為N的FIFO(First Input First Output)存儲空間,對采樣值進行存儲,每獲得一次數(shù)據(jù)就對存儲空間中的數(shù)據(jù)做一次中位值濾波(去掉N個數(shù)據(jù)中的最大值和最小值后,對剩下的N-2個數(shù)據(jù)做一次算術(shù)平均),其結(jié)果就為此次濾波后的結(jié)果。此方法對信號中的脈沖干擾有很好的抑制效果,且實現(xiàn)簡單,占用系統(tǒng)資源較少。
2.2 數(shù)據(jù)擬合算法設(shè)計
由于實驗數(shù)據(jù)的離散性,采集的數(shù)據(jù)常需要進行擬合或者插值等處理后才能得到反映變量之間相互關(guān)系的曲線。本文使用最小二乘法對數(shù)據(jù)進行擬合[9-12],可以降低數(shù)據(jù)誤差帶來的影響,提高擬合優(yōu)度。
為找出壓力值p與位移l之間的關(guān)系曲線,需要依據(jù)s個實驗樣本來構(gòu)造一個函數(shù)(l),使得壓力計算值(li)與實測值pi的偏差的平方和達到最小。
設(shè)n次多項式擬合函數(shù)為:
則s個實驗樣本與擬合函數(shù)的殘差為:
2.3 最大線性位移查找算法設(shè)計
系統(tǒng)計算得到擬合函數(shù)后,使用最大線性位移查找算法可以計算得到定心支片的最大線性位移。該算法使用線性逼近法來實現(xiàn),將順性曲線的與其切線進行對比,計算得出低于誤差閾值ε(ε>0)的最大位移值,即為定心支片的最大位移。
設(shè)定心支片的順性曲線為:
從0 mm開始,以0.01 mm為最小單位,對式(9)進行計算,便可以計算出低于誤差閾值的最大位移。另外,通過最大線性位移和擬合曲線可以計算出最大線性受力范圍。該方法實現(xiàn)速度快,通過修改閾值可以應用于不同的場合,可移植性好。
2.4 上位機軟件設(shè)計
本系統(tǒng)的上位機軟件設(shè)計使用Visual Stdio2010軟件來實現(xiàn),并從系統(tǒng)控制、數(shù)據(jù)接收和系統(tǒng)通信三個方面來進行設(shè)計。系統(tǒng)控制和數(shù)據(jù)接收主要完成用戶指令獲取和數(shù)據(jù)保存的功能。系統(tǒng)通信主要完成上位機軟件與單片機之間的指令和數(shù)據(jù)的傳輸功能,設(shè)計中使用了將數(shù)據(jù)變量轉(zhuǎn)換成對應的字符進行傳輸?shù)姆椒▉韺?shù)據(jù)進行傳輸,并使用特殊符號標記的方法來區(qū)分不同的指令和數(shù)據(jù),避免了字符串擾帶來的影響,提高了數(shù)據(jù)傳輸?shù)目煽啃?。上位機軟件設(shè)計界面如圖7所示。
3 系統(tǒng)測試
3.1 整體測試
使用本系統(tǒng)對一個5英寸的定心支片進行采樣測試來檢驗系統(tǒng)的測量功能。在上位機軟件中設(shè)置采樣范圍為-2.00 mm~2.00 mm,設(shè)置線性判斷誤差閾值為0.004 N,使用上位機軟件控制系統(tǒng)進行采樣,并對數(shù)據(jù)進行接收。采樣結(jié)果和擬合曲線如圖8所示,右側(cè)的文本窗顯示了被測定心支片的線性范圍。
可以得到在線性誤差閾值為0.004 N時,該定心支片的位移線性范圍為-0.62 mm~0.85 mm,線性受力范圍為-0.419 N~0.552 N,可見該定心支片在該閾值下的線性范圍并不是上下對稱。
3.2 壓力測量誤差分析
為檢驗壓力采樣的準確性,將壓力測量值與實際值進行比較。使用不同質(zhì)量的標準砝碼來檢測壓力采樣的精度,采樣結(jié)果如表1所示。通過對比可知,采樣值的最大誤差為0.15 g,即壓力采樣值的誤差在0.002 N以內(nèi),具有較高的壓力采樣精度。
4 結(jié)論
本文介紹了一種基于STM32F407單片機的揚聲器定心支片順性測量系統(tǒng),該系統(tǒng)使用動態(tài)測量的方式解決了傳統(tǒng)定心支片順性測量儀對定心支片的運動狀態(tài)把握不準確以及無法獲得定心支片的最大線性范圍的問題,方便揚聲器設(shè)計人員對其進行后續(xù)的研究和分析,具有一定的使用價值。
參考文獻
[1] 王以真.實用揚聲器技術(shù)手冊[M].北京:國防工業(yè)出版社,2003.
[2] 王以真.實用揚聲器工藝手冊[M].北京:國防工業(yè)出版社,2006.
[3] 王文建,沙家正.揚聲器定心支片的非線性失真研究[J].應用聲學,1999(5):24-28.
[4] 閆秉耀.揚聲器定心支片的順性測量儀[J].電聲技術(shù),2006(5):29-32,36.
[5] 李承煒,韓俊南,杜欣,等.基于ADS1293的穿戴式心電檢測裝置設(shè)計與實現(xiàn)[J].電子技術(shù)應用,2017,43(9):8-12.
[6] 郭健忠,程峰,謝斌,等.改進型限幅遞推平均濾波法在燃油表中的應用[J].科學技術(shù)與工程,2018,18(16):62-67.
[7] 周繼裕,陳思露,符少文.基于均值滑動濾波算法和STM32電子秤的設(shè)計[J].現(xiàn)代電子技術(shù),2017,40(10):10-12,15.
[8] 郭富智,杜紅棉,李肖姝,等.乒乓球/羽毛球運動狀態(tài)識別手表的設(shè)計[J].電子技術(shù)應用,2018,44(4):73-76.
[9] 田子林,陳家新.基于最小二乘法與霍夫變換的虹膜定位算法[J].電子技術(shù)應用,2019,45(2):75-79.
[10] 王淳,郭靜波,劉紅旗,等.基于最小二乘的極低頻微弱信號實時檢測方法[J].儀器儀表學報,2009,30(12):2468-2473.
[11] 黃靜,劉琴琴.基于曲線擬合改進算法的水質(zhì)生物毒性研究[J].儀表技術(shù)與傳感器,2017(7):105-107,120.
[12] 賈小勇,徐傳勝,白欣.最小二乘法的創(chuàng)立及其思想方法[J].西北大學學報(自然科學版),2006(3):507-511.
[13] 同濟大學數(shù)學系.線性代數(shù)[M].北京:高等教育出版社,2007.
作者信息:
李緯良,肖 輝,方鵬飛
(武漢大學 物理科學與技術(shù)學院,湖北 武漢430072)