盧春霞,田 遠,王建華
(西安工業大學 機電工程學院,陜西 西安 710021)
齒輪測量技術發展至今已有近百年的歷史,而于20世紀70年代發展起來的CNC坐標測量技術是對傳統測量概念的一大突破[1]。現有的齒輪測量中心的測量需要建立在齒輪理論公式的基礎上,它將曲面的理論公式的計算值與實際采樣點坐標值相比較,得到該點的誤差值。但是現使用的TESA測頭測量范圍為±0.36 mm,對于對一些超大誤差的工件無法完成正常測量,同樣對于一些用戶提出的未知參數工件無法進行檢測或測繪。為此,設計了基于C8051F310的數值隨動控制系統。該系統實時采集測頭信號,所采集的測頭信號表示的是一個變差值,不需要對設定值與輸出值進行差值計算,直接由測頭信號值作為參數控制電機跟隨曲面運動,完成測量動作。
隨動控制系統是運動控制系統的一個功能模塊,在整個隨動控制系統中,隨動控制器在整個隨動系統中處于核心位置,主要負責數據的交換和處理。其作用是獲取測頭數值信息,與設定值比較得出偏差,通過控制算法計算得出控制量,控制電機跟隨運動。設計方案本著簡單、可靠、滿足使用要求的原則,選用C8051F系列單片機為控制核心。測頭信號經過電壓轉換電路送到單片機芯片的A/D轉換模塊,測頭與工件之間的位置偏差由電壓值的表達形式轉化為數字值被單片機接收并加以運算處理,最終利用AD9850輸出可控制測頭運動的脈沖,從而對電機速度進行調節。達到測頭運動跟隨控制信號的目的[2-3]。系統原理總體框圖如圖1所示。

圖1 隨動控制系統結構框圖Fig.1 Structure diagram of the Servo control system
硬件部分主要包含3部分,1)電壓轉換電路主要負責將輸入的±10 V的測頭信號轉換為0~3.3 V的單極性信號。2)隨動控制器采用單片機來實現數據的交換和處理。其作用是獲取測頭數值信息,與設定值比較得出偏差,通過控制算法計算得出控制量。3)脈沖發生模塊接收單片機數據,產生可調頻率的脈沖信號,控制電機跟隨運動[4]。
C8051F310的采樣電壓信號的幅值為0~3.3 V,而測頭信號是雙極性的,所以在A/D轉換前必須將從測頭采集的電壓信號轉化為單極性的,并且通過放大電路把信號范圍降到0~3.3 V,才能保證A/D轉換正常進行。實驗電路如圖2所示。

圖2 電壓轉換電路Fig.2 The voltage conversion circuit
設計中使用兩個電阻對輸入信號分壓,使輸入信號衰減1/4,使用運算放大器u2調整準位。在電路設計中分別使用兩個電位器對輸入電壓的幅值和基準位進行調整。
AD9850是AD公司生產的最高時鐘為125 MHz、采用CMOS技術的直接頻率合成器,主要由可編程DDS系統、高性能數模變換器(DAC)和高速比較器3部分構成,能實現全數字編程控制的頻率合成。內部采用32位的相位累加器將信號截斷成14位輸入到正弦查詢表,查詢表的輸出再被截斷成10位后輸入到DAC,DAC再輸出兩個互補的電流。DAC滿量程輸出電流通過一個外接電阻RSET調節,典型值3.9 kΩ。將DAC的輸出經低通濾波后接到AD9850內部的高速比較器上即可直接輸出方波。在125 MHz的時鐘下,32位頻率控制字可使AD9850輸出頻率分辨率達0.029 1 Hz。

圖3 C8051F310與AD9850接口電路Fig.3 C8051F310 and AD9850 interface circuit
在設計中使用串行輸入方式,AD9850有40位控制字,32位用于頻率控制,5位用于相位控制,1位用于電源休眠(Powerdown)控制,2位用于選擇工作方式。這40位控制字可通過并行方式或串行方式輸入到AD9850,W-CLK上升沿把25引腳的一位數據串行移入,當移動40位后,用一個FQ_UD脈沖即可更新輸出頻率和相位[5-6]。
該系統的軟件部分主要是與C8051F310有關的功能模塊的配置,以及電機控制算法的設計。總體思想是采用中斷方式(定時器2中斷)來處理頻率值的更新,測頭狀態標志的操作。主程序完成系統內各個模塊的初始化以及頻率輸出的開啟/停止。
系統上電后,由初始化模塊完成各監測點的初始化工作并進入默認工作模式,由定時器2啟動AD模塊進行數據采集,采樣頻率應當盡可能小。當定時器2溢出后,寄存器進行重新裝載并啟動AD轉換,同時觸發中斷程序,更新測頭狀態標志位p,當測頭未接觸工件時p=0,當與工件接觸時p=1,然后將AD值經過計算后賦給AD9850,系統開始控制電機工作。同時,主程序不斷循環檢測測頭狀態標志位p判斷測頭值是否處于合適的位置,開啟/停止AD9850模塊頻率信號輸出。

圖4 系統程序框圖Fig.4 The system block diagram
設計中使用C8051F310片內10位ADC進行模擬量的轉換,由于其中涉及硬件連接,系統配置,轉換速率等各種因素因此這里需要單獨提出。
由于雙極性測頭模擬信號已經過電壓轉換電路調理,并且頻率調整精度要求不高,因此片內AD選擇工作方式為單端模式,使用左對齊方式取高八位,所測量的輸入范圍為0-VREF*255/256。當工作在單端方式時,轉化碼為8位無符號整數.AD轉換速率對系統跟隨運動時的響應速度有著很大的影響,因此AD轉換的合理配置是非常必要的。ADC0的最高轉換速度為 200 ksps。ADC0的轉換時鐘由系統時鐘分頻得到。有6種A/D轉換啟動方式。
為了不斷的更新頻率輸出模塊中的頻率控制字來對脈沖信號進行調整,這里選用定時器2溢出的方式來啟動AD轉換,定時器2被配置使用16位自動重載方式工作,使用系統最高頻率,當定時器溢出時,啟動AD轉換模塊并產生中斷對AD9850控制字進行更新,從而實現模擬輸入對輸出頻率的實時調整。
ADC寄存器的初始化程序為:


40位數據/控制字通過AD9850的D7腳輸入,在WCLK脈沖信號的上升沿分40次裝入。驅動程序需調整時序,將單片機運算數據通過對應的I/O口向AD9850送相位、頻率控制字,使IOUT口輸出對應的頻率信號。控制字更新程序如下:


文中介紹了一種使用C8051F310單片機[7-8]實現測頭跟蹤測量的方法,并給出了重要電路圖和調試驅動程序,最后筆者通過實際電路的測試表明,該電路設計方案可行,輸出頻率與測頭數值成線性比例關系,頻率更新速率基本滿足跟蹤控制需要。隨動控制系統在齒輪測量中心的實現對未知輪廓曲線的測量方面,具有重要的實用價值。
[1]石照耀.齒輪測量技術100年——回顧與展望[J].機電產品市場,2003(12):48-50.SHI Zhao-yao.100 years of gear measurement technology—review and prospect[J].Mechanical and Electrical Products Market,2003(12):48-50.
[2]張培仁,孫力.C8051F系列單片機原理與應用[M].北京:清華大學出版社,2013.
[3]長飛.C8051F系列單片機開發與 C語言編程[M].北京:北京航空航天大學出版社,2005.
[4]褚福領.隨動控制實驗臺的設計與研究[D].南京:南京理工大學,2013.
[5]孫群,宋卿.基于DDS技術的便攜式波形信號發生器[J].儀表技術與傳感器,2009 (4):67-70.SUN Qun,SONG Qing.Technology of DDS portable waveform signal generatorbased[J].Instrument Technique and Sensor,2009(4):67-70.
[6]王慧華.基于C8051F單片機的步進電機控制驅動器設計[J].硅谷,2013(19):65-65.WANG Hui-hua.C8051F single-chip stepper motor control drive design of[J].Silicon Valley,2013(19):65-65.
[7]張糧雨.基于51單片機的高頻頻率計的設計[J].電子科技,2014(2):82-84.ZHANG Liang-yu.High frequency meter based on 51 singlechip[J].Electronic Science and Technology,2014(2):82-84.
[8]陳菁,張小溪.基于單片機的小型恒溫箱設計[J].現代電子技術,2014(22):101-104.CHENJing,ZHANGXiao-xi.Design of SCM-based temperature control system in small-size incubator[J].Modern Electronic Technique,2014(22):101-104.