張天恒 彭東林 楊繼森 鄭方燕 陳自然
(重慶理工大學機械檢測技術與裝備教育部工程研究中心,重慶 400054)
縱覽人類長度測量工具發展的過程,就是一部社會科技進步史,從最早的機械式到現在應用計算機作為測量工具。直線式時柵傳感器是一種全新原理的位移傳感器[1]。為了延伸時柵傳感器的種類,在圓時柵傳感器達到計量光柵水平并且批量化生產的基礎上,著手對直線式時柵傳感器研究。本文利用PHILIPS公司的ARM處理器LPC2214和它內部集成的脈寬調制器(PWM)、定時器(Timer),利用PWM發送高速脈沖,定時器同步計數方法,實現了高頻脈沖的輸出和脈沖數的精確控制,設計一套高精度自動閉環控制系統,并能與直線式時柵傳感器和上位機通信。
直線式時柵傳感器自動控制系統結構如圖1所示。上位機通過串口向ARM控制器發送直線位移數據,ARM控制電動機旋轉以帶動滾珠絲杠,同時用串口接收直線時柵與直線光柵測量的反饋信號,形成閉環控制。控制完成后,ARM通過串口向上位機發送控制完成信號,上位機接收精密直線光柵和時柵的測量結果做差值運算,從而得到直線式時柵傳感器的誤差。然后向ARM處理器發送下一個設定的位移值,這樣在上位機主程序的控制下按步驟完成每一個設定目標值的準確控制,等到所有的目標點都采集完成后,上位機得到并輸出直線時柵傳感器的全程原始誤差曲線。
自動控制系統硬件設計如圖1中控制模塊部分所示。
LPC2214是PHILIPS公司新推出的基于ARM7TDMI-S的高性能32位RISC微控制器,集成了Thumb擴展指令集,256 kB可在系統中編程(ISP)和可在應用中編程(IAP)的片內Flash。

FLASH編程時間為1 ms,128位寬度接口/加速器實現高速60 MHz的操作頻率。2個定時器(7個捕獲/比較通道),PWM單元可提供多達6個 PWM輸出,8通道10位ADC,實時時鐘,看門狗,定時器,112個通用I/O引腳。相對于普通ARM7芯片,LPC2214還提升了I/O端口的速度,具有很高的性價比[3-4]。
ARM控制器,其外圍電路(圖2)主要有6大部分[2-3]:電源電路、復位電路、時鐘電路、調試測試接口電路、步進電動機控制接口電路和RS232通信串口電路。

電源電路為控制器提供穩定的電源。由于系統對電壓要求比較高,且其功耗不是很大,所以不適合用開關電源,應當用低壓差模擬電源LDO,使之有很低的靜態電流。當輸出電流減小時,靜態電流隨負載變化,并提高效率。
微控制器在上電時狀態并不確定,將造成微處理不能正確工作。為了解決這個問題,所以微控制器均有一個復位邏輯,它負責將微控制器初始化為某個確定的狀態。最簡單的阻容復位電路成本低廉,但不夠可靠。所以一般需要使用專門的復位芯片。
滾珠絲杠將回轉運動轉化為直線運動,或將直線運動轉化為回轉運動,具有很小的摩擦阻力,被廣泛應用于各種工業設備和精密儀器,是工具機和精密機械上最常使用的傳動元件。
根據現有的實驗裝置和控制要求,以及系統要具有良好的運動特性,并充分考慮裕量,選用臺灣ABBA的1605滾珠絲杠、轉矩較大的34HS300D型兩相混合式步進電動機及與其配套的驅動器。為達到最高的控制精度,細分數應設為最大值。驅動器對輸入的電壓信號或電流信號均有要求,由此需設計控制器與驅動器的接口電路,以八同相三態緩沖器/線驅動器74HC244為接口芯片。經過74HC244后將3.3 V高電平電壓轉換為驅動器要求的5 V,同時增強了驅動能力。系統選用CP/DIR控制方式,選用ARM的單邊沿脈寬調制輸出PWM2(P0.7)作為驅動脈沖信號。P0.5作為電動機使能控制信號,P0.6作為電動機轉動方向控制信號。由于電動機驅動器為大功率輸出器件,為了減少其對主控元件的影響,在微處理器與電動機控制器之間采用高速光電隔離器進行光電隔離。
軟件設計要求:(1)能通過鍵盤操作,實現正向運行、反向運行、相對、絕對、停止、暫停、最優化控制等功能;(2)正向、反向運行均可采用最優化控制;(3)能通過顯示器顯示正、反向運行時的位移。
為滿足上述要求,軟件設計采用下列措施:(1)利用8279可編程鍵盤、顯示接口器件,識別鍵盤上閉合鍵的鍵號,實現調用不同子程序的功能;(2)采用ARM微處理器內部的PWM和TIMER,向步進電動機發送控制信號,同時正向運行時顯示提示符“Z”及運行頻率,反向運行時顯示提示符“F”及運行頻率;(3)正向運行與反向運行子程序中有判斷鍵值的功能,若接受到停止信號,則此時向步進電動機發出停止信號,且顯示“STOP”提示符;若接受到暫停信號,則保留當時的PWM信號值,同時顯示“PAUSE”提示符。
自動閉環控制系統流程圖如圖3所示。首先ARM控制器從串口接收運動位移信號,然后折算出步進電動機完成轉動所需的脈沖數,發脈沖控制步進電動機轉動,脈沖發送完畢后從串口接收時柵測量結果的反饋信號,與上位機預先設定的值進行比較。若一致,則輸出控制完畢信號,再從串口接收上位機傳來的下一個位移值;若不一致,再判斷是否超過了設定值,控制電動機轉動。為了實現對步進電動機的更為精確定位和控制,更有效地避免過沖和失步現象的發生。在本設計中,當步進電動機啟動或停止時,除采用升頻啟動和降頻停止技術之外,還對步進電動機的步距角進行細分。步進電動機的步距角為1.8°,經過驅動器200等分細分之后,每個驅動器脈沖當量為 PD=0.009°。
由于步進電動機的轉動角位移與控制脈沖數成線性比例關系,電動機的轉速與脈沖頻率也成正比。因此,可以利用ARM的脈寬調制器(PWM)產生變頻的驅動脈沖進行電動機位移和速度的驅動控制。
3.2.1 步進電動機的位置控制
步進電動機的位置控制,指的是控制步進電動機帶動執行機構從一個位置精確地運行到另一個位置。步進電動機的位置控制需要兩個參數。第一個參數是步進執行機構當前的位置參數,稱其為絕對位置。絕對位置是有界限的,其界限是執行機構運動的范圍,超越了這個界限就應報警。第二個參數是從當前位置移動到目標位置的距離,可以用折算的方式將這個距離折算成步進電動機的步數。
對步進電動機位置控制的一般做法是:步進電動機每走一步,步數減1,如果沒有失步存在,當執行機構到達目標位置時,步數正好減到0。因此,用步數是否等于0來判斷是否移動到目標位置,作為步進電動機停止運行的信號[4]。
3.2.2 步進電動機的速度控制
步進電動機的速度控制通過ARM控制器發出的步進脈沖頻率來實現。通過定時器中斷的方法,在中斷服務子程序中進行脈沖輸出操作,調整定時器的定時常數就可以實現調速。如果啟動時一次將速度升到給定速度,由于啟動頻率超過極限啟動頻率fq,步進電動機會發生失步現象,因此會造成不能正常啟動。如果到終點時突然停下來,由于慣性作用,步進電動機會發生過沖現象。所以,對步進電動機的加減速有嚴格的要求,那就是保證在不失步和過沖的前提下,用最快的速度移動到指定位置[5]。實際應用中常用的升降速曲線包括分段線性加速曲線和S形加減速曲線。S形(分段指數曲線)加減速曲線最好的選擇,如圖4b所示,這是因為電動機的電磁轉矩與轉速的關系接近指數規律。


此套基于ARM的自動閉環控制系統具有豐富的通信接口,控制精度高,抑制擾動能力強,能實現最優控制。用于新型智能傳感器——直線式時柵傳感器自動閉環控制系統設計,如圖5。采用ARM作為主控芯片形成自動閉環控制系統,其控制精度能達到0.1 μm,在不喪失控制精度的同時極大地提高了測試效率。對直線式時柵傳感器的產品化進程必將起到積極的促進作用。
[1]彭東林,張興紅,劉小康,等.基于時空轉換的精密位移測量新方法與傳統方法的比較[J].儀器儀表學報,2006,27(4):423 -426.
[2]周立功,張華.深入淺出 ARM7——LPC213x/214x(上下冊)[M].北京:北京航空航天大學出版社,2005.
[3]田澤.嵌入式系統開發與應用[M].北京:北京航空航天大學出版社,2006.
[4]王曉明.電動機的單片機控制[M].北京:北京航空航天大學出版社,2007.
[5]張天恒,彭東林,楊繼森,等.直線式時柵傳感器的自動定位閉環控制系統設計[J].工具技術,2010,44(4):91 -93.