杜鳴笛 何淑珍
摘 要:該文采用Labview軟件設計了壓力電子琴。利用惠斯通電路原理設計外部壓力系統,對輸出電壓進行放大,采用DAQ數據采集通道來采集該系統所感應壓力機械信號成比例的電壓信號。采集的數據在內部進行處理后,實現壓力的變化引起輸出音調的變化。
關鍵詞:電子琴 壓力 惠斯通
中圖分類號:TP216 文獻標識碼:A 文章編號:1672-3791(2017)06(b)-0097-03
Labview是一種較先進的工業標準圖形化用于編程的工具,是1986年美國國家儀器公司提出的一個概念,是計算機輔助測試(CAT)行業的一項非常重要的技術。同時它也有一些強大的基本功能,包括一些程序調試工具,如單步執行等。運用虛擬儀器技術設計,思路清晰,編程、調試和功能十分簡單。
關于電子琴的發展,不同的科研人員采用不同的方法。如:付夢婷用VHDL語言設計了一個產生88個電子琴琴音的數字電路。王江偉設計了一種激光虛擬電子琴的工作原理和制作過程,通過紅外手指定位技術來確定按鍵,控制音響部分發出相應的聲音。鐘秀媚設計采用硬件電路與軟件程序相結合的方式,設計的思路是采用一個模擬鍵盤,由超聲波來測定手的位置,測定后數據反饋給FPGA處理模塊,內部處理結束后輸出對應的頻率,再由揚聲器進行播放。王杰等采用嵌入式開發板設計了一個電子琴,電子琴采用觸摸式液晶屏按鍵,由按鍵來控制脈沖寬度調制波形進行演奏,不同的音符會使得LED燈有不同的閃爍方式,另外還能播放預置歌曲。王洋設計以AT89S52單片機作為系統核心控制器,通過外部硬件電路的實現和軟件的設計,最終實現電子琴的演奏、播放功能。張國華 采用軟件的方式,設計的思路是采用前面板設計模擬琴鍵,程序則負責在有琴鍵按下的時候,播放對應頻率的音樂。
1 壓力電子琴程序流程
壓力電子琴程序流程圖如圖1所示。首先電壓信號產生和放大;再采用DAQ采集放大的電壓信號;然后就是一個多重判斷,根據電壓大小所在的范圍來給y賦不同的值。當電壓為負值或高于設計的范圍,則會給y賦“0”值。程序運行依據y值來跳轉到不同的程序段執行。執行時,將一個數字頻率輸入控件,控件負責播放該頻率對應的聲音。
2 電壓信號的產生
外部設計電路就是電壓信號產生電路,也是惠斯通電路,如圖2所示。電路由三個固定電阻和一個可變電阻組成。固定電阻阻值為R1=R2=R3=2 kΩ,可變電阻Rx的最大值為2 kΩ。電阻是由敏感柵等構成用于測量應變的元件。它能夠將機械構件上的形變轉換為電阻變化,感應靈敏度極高。在圖2中,如果四個電阻阻值相同,此時處于電橋平衡狀態。如果此時電阻應變片的阻值發生變化,平衡狀態被打破,變化電阻對應著變化的電壓值,由此可以把不可測量的壓力信號轉化為可測量的電信號。
聲音的一般音調是由0~7組成,相對應8個鍵,圖3是琴鍵和音調對應的示意圖。8個鍵根據力的大小和形變的大小來控制。
3 電壓信號的放大
通過改變壓力來改變電阻的阻值,盡管構件已經發生最大的形變,但電阻應變片發生的阻值變化太小,故引起的電壓變化自然很小。一般情況下,電壓的輸出值太小,無法很好地對應進行判斷。電橋輸出的電壓值不僅很小且易被外界信號干擾,所以在電橋輸出之后必須加入放大電路和抗干擾電路。具體的硬件電路原理圖如圖4所示。當壓力傳感裝置感知的壓力產生變化后,傳感器里的電阻阻值便會相應的進行變化,進而引起壓力橋式測量電路輸出的電壓發生變化,該變化的電信號經由連接元件J2輸入后被前三個LM324構成的差分放大電路執行一級放大,最終在CH2端輸出一個被LM324的U8A進行二級放大后正比于壓力F的電壓信號。
4 Labview軟件設計
8個音調對應的8個鍵,每個鍵都是0和1兩種狀態,因此需要設計8個條件結構,每個條件結構有“真”“假”兩個分支。然后采用“仿真信號”控件,只需要設置信號類型為“正弦”波形,其他無需設置,點擊確定保存即可。將條件結構中8個分支下的數值常量與“仿真信號”控件的“頻率”接線端連接。軟件設計流程如圖5所示。
5 實驗調試
此外,把設計的控制軟件和放大電路共同組合和調試,可以得到如下的效果。
(1)基本可控制的力的大小,實現單鍵發音。
(2)能夠彈奏非常簡單的曲子。
但是也存在很大的問題,力的大小很難把握和控制,經常出現跑調等情況。
6 結語
該文利用惠斯通電路原理設計外部壓力感應系統,根據放大電路對輸出電壓進行放大,采用DAQ數據采集通道來采集該系統所感應與壓力機械信號成比例的電壓信號。利用Labview軟件設計壓力感電子琴,采集的數據在內部進行處理后,實現壓力的變化引起輸出音樂頻率的變化。按的力度不同,會有不同音調的聲音。
參考文獻
[1] 陳錫輝,張銀紅.LabVIEW 8.20程序設計從入門到精通[M].北京:清華大學出版社,2007:60-65.
[2] 龍馬工作室.labview完全自學手冊[M].北京:人民郵電出版社,2005:104-105.
[3] 張金.LabVIEW程序設計與應用[M].北京:電子工業出版社,2015:93-96.