1 引 言 對數據存儲業來說,磁盤驅動器生產商通過增加磁道密度(以每英寸的磁道數為單位)和磁盤轉速(以每分鐘轉數為單位)來擴大計算機硬盤驅動器的容量和改善其性能。隨著磁密度的增加,兩相鄰磁道間的距離變小了。因此,所允許的讀/寫頭和磁道的偏離誤差,即磁盤驅動器業內所說的誤定位,也相應的降低了,這樣硬盤很容易受到傷害。他的工作原理決定其必須使用抗惡劣環境加固技術,而且主要針對機械物理環境和氣候環境實施加固。對磁盤存儲設備來說,機械物理環境中最為惡劣的是振動、沖擊環境。本文采用了外加固主動控制理論與技術,將電磁主動控制技術用于計算機外部設備(微型盤)的振動沖擊外加固,并且構建了以DSP 為硬件平臺的數字主動控制系統。 2 數字控制系統的硬件設計 從1982年TI(美國德州儀器公司)推出通用可編 程DSP芯片以來,DSP技術取得了迅猛的發展。目前DSP芯片市場中,主要由TI,ADI,AT&T和Motorola公司占據。本文綜合實際要求,采用一款由TI公司生產的新型16位定點DSP芯片:TMS320F243,他集成了A/D,PWM調制等幾種先進外設,特別適于對電機的數字化控制。 2.1 控制系統原理 數字信號處理器(DSP)具有實時信號處理能力和強大的運算功能。該系統的工作原理是基礎加速度傳感器拾取基礎振動沖擊加速度信號,然后送入前置放大器,由DSP將電荷放大器輸出信號經A/D采樣后,完成對信號的一次積分(轉換為速度信號)和二次積分(轉換為位移信號)運算,將兩次積分結果做求和運算,再將結果經D/A轉換后輸入到功率放大器,最后將功率放大器輸出信號以控制電壓的形式加在執行機構上,執行機構會產生相應的作動力來抵消來自基礎的振動和沖擊。由于DSP片內集成了10 b的A/D,所以可直接將模擬信號與DSP相接,圖1是整個數字控制系統的原理框圖。的DAC7611。由于DSP內部10 b A/D的電壓輸入范圍為0~5 V,輸入信號經A/D轉換后由數值0~1 023(十進制數)來分別對應0~5 V的電壓信號。所以DSP的輸入信號已不是正負對稱信號,并且系統中DAC7611的輸出范圍為0~4.095 V,而系統后級中功放的輸入應是零均值的,所以需要對DAC輸出信號利用運算放大器進行電平變換。 另外,DAC7611對于時鐘信號的要求非常嚴格。 他要求其時鐘信號的上升沿發生在每一位數據的傳送過程中。TMS320F243的SPI(串行外設接口)是一個高速、同步串行I/O口,他可以設置每次產生的串行數據流的位數(1~16位),并且對于位傳輸速度也可以編程控制。 SPI的時鐘輸出信號線SPICLK能夠提供4種類型的時鐘信號。其中有一種帶延時的上升沿時鐘,可使SPI在上升沿之前的半個周期內發送數據,或在SPICLK信號上升沿后接收數據。這恰好符合DAC7611時鐘信號的要求。 由于DSP片內資源有限,設計中在片外擴展了用于存放數據的RAMCY71021,其讀寫時間為12 ns,與DSP的速度匹配。并且該芯片在未被操作時會自動采用低功耗工作方式。在利用DSP的串行外設接口向D/A傳送數據時,系統還采用光耦器件將數、模電路進行隔離。外圍接口電路如圖2所示。 由于系統加電后,程序首先是從片內的FLSH程序ROM開始執行的,所以一定要把引腳MP/MC接成微處理器方式。 3 數字控制系統的軟件設計 3.1 控制算法 經過深入研究和大量的分析、計算,得出該系統 的機電動力學模型如下: 其中:為基礎振動加速度;c1,k1分別為與基礎振動相關的二次積分和一次積分系數。 設u為的電荷放大信號,根據控制要求,該系統主要利用DSP完成以下運算: 并采用均值補償法對積分結果進行修正,實現數字系統的控制。將上式離散化則生成: 其中:m1(n),m2(n)分別是一、二次積分運算的均值。 3.2 系統軟件設計與實現 系統頭文件(擴展名為.h)的主要功能就是將DSP內部的各個特殊功能寄存器的名稱與其默認地址相對應。在匯編語言的執行過程中DSP指針會直接按寄存器名去訪問在頭文件中規定過的地址。命令文件(擴展名為.cmd)實際上是DSP的資源配置文件,在PAGE0頁(程序空間)他定義了各程序模塊的起始地址和空間長度,對片內、外各程序段、中斷矢量表的定義等;在PAGE1頁(數據空間)他定義了各數據模塊的起始地址和空間長度,如對各種參數、片內、外 66數據區的定義等。此外,應注意遵守DSP實際存儲器及存儲空間的約定。 由于該系統主要是通過DSP的ADC模塊和SPI模塊與其外圍器件通信,所以在軟件設計中需要對他們的工作模式進行配置[1]。對于片內ADC的工作模式:首先應該確定ADC的啟動模式,然后使ADC達到10 kHz的采樣率。為了保證準確的采樣率,通過DSP內部計數器計數產生中斷作為ADC的啟動方式。由于TMS320F243的機器指令周期為50 ns,所以在兩次采樣時間間隔內至多可以運行約2 000個指令周期,否則就不能完成實時運算。對于SPI模塊:首先設定其通信方式為主模式,使數據按時序從SPISIMO管腳移出;然后設定每次傳輸串行數據的位數、時鐘信號方式、傳輸速率等。由于DSP片外D/A器件為12 b,而DSP的數據總線位16 b,所以必須將最后的運算結果進行相應調整后再由SPI送出。 另外,DSP內部的A/D由數值0~1 023(十進制數)來分別對應0~5 V的輸入電壓信號,所以應由值511來表示零均值點,這一點在均值補償時要特別注意。系統程序流程圖如圖3所示。 4 結 語 采用DSP直接實現機電控制是近年才發展起來的一項技術,他比傳統控制方法具有鮮明優點。實驗表明,以DSP為核心的數字控制系統可以實現實時控制,而且低頻段的相位誤差非常小,同時又可以兼顧較高頻段,適用范圍大。此外,他穩定性好、精度高,并易于實現復雜模型的控制。 |