<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設計應用 > 鋼琴琴鍵排列平整性的測量

          鋼琴琴鍵排列平整性的測量

          作者: 時間:2006-05-07 來源:網絡 收藏

          摘 要: 介紹一種非接觸掃描法測量鋼琴琴鍵平整性的方法,討論了建立測量基準的兩種方法以及測量系統(tǒng)的基本組成。

          本文引用地址:http://www.ex-cimer.com/article/255702.htm

          關鍵詞: 平整性測量 激光模擬傳感器 直線導軌 測量基準

          鋼琴琴鍵排列平整與否不僅關系到鋼琴外形美觀,而且影響演奏時的手感和舒適度。因此,它是現代高級鋼琴的一項重要質量指標。目前國內鋼琴生產廠家對鋼琴琴鍵排列平整性的測量是使用一根長直尺,靠在琴鍵上,用眼睛觀察琴鍵與直尺之間的光隙,以確定其平整程度。該測量方法效率低,受人為因素影響大,同時,直尺為木質材料,長時間使用,直尺的直線度會發(fā)生變化,因此需要經常校準,給使用帶來不便。為了提高鋼琴的產品質量,生產效率和企業(yè)的經濟效益,鋼琴生產廠家迫切需要能夠自動檢測琴鍵排列平整性的測量儀器。

          1 測量原理

          由于琴鍵表面光潔度要求很高,不允許有劃痕,因此,需采用非接觸法進行測量。在測量系統(tǒng)中,我們使用了一對激光模擬傳感器,分別對黑鍵和白鍵進行測量,傳感器安裝在離開琴鍵一定距離(該距離為傳感器要求的工作距離)的平直導軌的滑塊上,分別測出每個琴鍵到傳感器的距離。根據測量基準,計算出每個琴鍵的測量處與測量基準的偏差,再換算為琴鍵支點處的偏差,最終結果以琴鍵支點處應加減墊片數表示。

          1.1 激光模擬傳感器的工作原理

          激光模擬傳感器的核心部件是一個位置敏感檢測器即PSD,這是一種基于橫向光電效應的新型位置敏感檢測器,其等效電路如圖1所示,其中Q為光點位置,A、B為P側電極,C為n側電極,而Io為在Q點形成的電流,Di為理想二極管,Cj為結電容,Rsh為并聯(lián)電阻,S為電流源。在光的照射下,半導體內產生截流子,它們在耗盡層內電場的作用下發(fā)生漂移,空穴進入P-層,電子進入n+層,Q點到電極A及到電極B之間的R1及R2分別與Q點到A及B之間的距離成正比。進入P-層的空穴根據電阻R1和R2進行分配,并以I1和I2的形式從電極A、B輸出,設電極A、B的中點到Q點的距離為X,電極A、B間的距離為L,則I1和I2分別是可由式(1)和式(2)表示:

          鋼琴琴鍵排列平整性的測量 由上式可知,I1、I2是入射光能量(產生Io)和入射位置的函數,由(1),(2),(3)可求得:

          鋼琴琴鍵排列平整性的測量

          將(4)式代入(6)式,可得到被測物體到傳感器的距離:

          鋼琴琴鍵排列平整性的測量激光模擬傳感器的輸出信號大小與各個琴鍵相對傳感器的距離有關,由于傳感器所在導軌平面與琴鍵平面不一定相互平行,因此,必須確定一條參考直線作為測量基準,然后找出各琴鍵與測量基準直線的距離,該數值的差異就反映了琴鍵排列的平整度。測量基準直線的選取方法很多,最直接最簡單的是用首尾琴鍵連線法確定測量基準。

          由激光模擬傳感器輸出的信號經A/D轉換后輸入計算機進行數據處理,得到從1#到n#鍵相對安裝在導軌滑塊上的傳感器的高度值,h1,h2,…,hi,…h(huán)n,如圖3所示。理想直線上第i號鍵與傳感器的距離為hio,實際上i號鍵與傳感器的距離為hi,由此可得到i號琴鍵高度偏差Δhi:

          鋼琴琴鍵排列平整性的測量

          其中y(x)為琴鍵的測量值,x為琴健的坐標值則每一個測量數據與擬合曲線的偏差為:

          鋼琴琴鍵排列平整性的測量

          由方程組(11)解出a與b再代入(9)式,即得到由各琴鍵測量數據所確定的擬合直線的表達式,即用最小二乘法確定的測量基準直線,再將每個琴鍵高度與理想基準線的高度相比較,由此得出每個琴鍵的高度偏差值。

          測量儀研制成功后,對多臺鋼琴進行測試,測量基準分別用首尾連線法和最小二乘法確定,結果證明,后者的效果好于前者,以一次測量為例(琴鍵總數為88個),具體數據見表1。

          很明顯,最小二乘法確定測量基準優(yōu)于首尾連線法,所需調整的琴鍵數目和墊片數目明顯下降。

          1.3由偏差值計算支點處增減墊片數

          黑白鍵的測量點與支點間的位置關系如圖4所示。

          支點處的偏差為:

          白鍵Δha′=(Sa′/Sa)×Δha

          黑鍵Δhb′=(Sb′/Sb)×Δhb

          其中Δha,Δhb:白黑鍵測量點處偏差值。

          設墊片厚度為δ,則應增減墊片數為:

          白鍵Na=Δha′/δ=(Sa′/Sa)×Δha/δ

          黑鍵Nb=Δhb′/δ=(Sb′/Sb)×Δhb/δ

          2 測量系統(tǒng)的組成

          整個測量系統(tǒng)分為三部分。第一部分是傳動機構和支撐機構,用于升降和支撐測頭和導軌;第二部分是測量機構,包括直線導軌,傳感器和橫向掃描拖動機構,這部分是本系統(tǒng)最主要的部分,用于掃描測量;第三部分是測控系統(tǒng)接口和軟件,包括計算機打印機和A/D轉換電路,步進電機驅動電路,輸入輸出接口電路,以及系統(tǒng)中控制測量,數據處理和計算用軟件。

          2.1 直線導軌與傳感器橫向掃描拖動機構

          從測量原理可知,導軌本身的精度直接影響儀器的檢測精度,根據測量精度要求,選用陜西漢江機床廠生產的滾動直線導軌,其規(guī)格為長1480mm,精度≤9μm,傳感器固定在直線導軌的滑塊上,用步進電機帶動滑塊沿琴鍵排列的方向運動,以掃描測量每個琴鍵,為了使傳感器準確地采集到各琴鍵中心位置處的高度數據,用鍵縫作為每次行進距離的參考點,這樣就消除了拖動機構行進中的累積誤差。

          2.2 測控系統(tǒng)接口電路的軟件

          測控系統(tǒng)接口的功能主要是采集傳感器輸出的表示琴鍵高度位置的模擬信號,并將其送入計算機中。為達到這一目的,首先必須有A/D轉換器,其次還要有步進電機控制電路,以便完成對每個琴鍵的測量。

          軟件主要完成測量數據的處理、計算以及系統(tǒng)誤差的修正,其流程如圖5、如圖6所示。

          儀器研制成功后,對多臺不同型號的鋼琴進行了測試,結果表明:儀器的測量精度滿足實際要求,重復測量穩(wěn)定性高,按照儀器給出的數據(各個琴鍵支點處應增減的墊片數)對琴鍵進行調整,一般重復兩次就能將琴鍵調平,這比使用直尺調整要快得多,而且調出的鋼琴一致性好。

          參考文獻

          1 朱尚明.位置敏感檢測器PSD及其應用研究.儀器技術與傳感器,1996;(2)

          2 徐士良.計算機常用算法.北京:清華大學出版社

          3 (日)吉野新治等.傳感器電路設計手冊.北京:中國計量出版社

          4 王士元.IBM PC/XT(長城0520)接口技術及其應用。 天津:南開大學出版社

          5 (日)日本松下電工有限公司.日本松下電工LM100,LM300傳感器說明書

          6 陜西漢江機床廠.陜西漢江機床廠滾動直線導軌HJG-D說明書

          (收稿日期:1999-07-01)

           

           

           

           

           

           

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
          電流變送器相關文章:電流變送器原理


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();