薛 超 魏 昕 謝小柱
(廣東工業(yè)大學機電工程學院 ,廣東 廣州 510006)
化學機械拋光(CMP)是一種新興的超精密無損傷表面特種加工技術(shù),該技術(shù)能有效的實現(xiàn)工件表面全局平坦化和局部平坦化,在計算機硬磁盤、晶圓及集成電路芯片的表面平整化加工等工業(yè)領(lǐng)域有著廣泛的應(yīng)用。因此,CMP工藝對CMP設(shè)備的性能提出了更高的要求,高性能CMP設(shè)備是實現(xiàn)高效、高精度和高表面質(zhì)量CMP工藝必不可少的硬件基礎(chǔ)[2-4]。
在CMP設(shè)備中位置檢測有著廣泛的需求,在拋光過程中需要對拋光的位置進行實時檢測,以保證對拋光頭行程進行精確地控制。在工業(yè)應(yīng)用中距離檢測主要分為接觸式與非接觸式兩種,而非接觸式檢測常常用于一些復雜的環(huán)境和特殊的工作場合??紤]到拋光設(shè)備實驗平臺的復雜環(huán)境采用非接觸的方式檢測拋光頭的行程。在工業(yè)現(xiàn)場中非接觸測距手段主要有:激光、毫米波和超聲波等測量介質(zhì)。較前兩種而言,超聲波具有指向性強、能耗慢、受環(huán)境影響小、傳播距離遠,對光線、電磁干擾不敏感等優(yōu)點[5];結(jié)合微電子技術(shù)信息處理簡單,成本低,可準確、快速地計算出距離值,便于實時控制。因此在機器人避障、車輛導航及定位等領(lǐng)域應(yīng)用廣泛。
本文針對CMP設(shè)備拋光頭位置檢測需求,應(yīng)用超聲波測距原理設(shè)計了基于ARM的拋光頭位置實時檢測系統(tǒng)。
檢測系統(tǒng)由上位機和下位機兩層結(jié)構(gòu),分別為嵌入式現(xiàn)場數(shù)據(jù)采集終端和PC端上位機顯示界面。整個系統(tǒng)結(jié)構(gòu)如圖1所示。拋光頭在氣缸的控制下實現(xiàn)上下運動,使得超聲波傳感器與氣缸安裝臺發(fā)生距離變化,通過檢測距離值就可以測得拋光頭的位置變化。
現(xiàn)場嵌入式檢測終端,主要是完成拋光頭位置參數(shù)和現(xiàn)場環(huán)境溫度的采集及數(shù)據(jù)的傳輸?shù)裙ぷ鳌V饕墓ぷ魇菍崟r采集超聲波傳感器、溫度傳感器DS18B20的數(shù)據(jù)信號,并進行數(shù)據(jù)處理,再通過串口RS232將處理好的數(shù)據(jù)傳輸?shù)缴衔粰C。上位機基于Qt設(shè)計實時顯示界面,實時顯示溫度及拋光頭位置信息。
系統(tǒng)設(shè)計主要工作內(nèi)容:檢測系統(tǒng)硬件平臺的搭建;基于Linux2.6內(nèi)核編寫超聲波模塊、溫度模塊、串口傳輸?shù)闰?qū)動程序;基于Qt的實時顯示界面的設(shè)計。
檢測系統(tǒng)以超聲波模塊作為檢測元件實時監(jiān)控拋光頭的位置,超聲波測距原理是基于回波時間法,如圖2所示。具體過程是:超聲波測距模塊在被觸發(fā)時會產(chǎn)生20 kHz 以上的聲波,聲波在傳輸過程中遇到障礙物后反射回來[7]。通過測取聲波傳輸?shù)臅r間t,再乘以聲波在空氣介質(zhì)中傳播的速度c除以2,就可以換算出拋光頭的行程位置[8]。即:
d=c·t/2
(1)
式中:d拋光頭行程;c為空氣中聲波傳播速率。在空氣中,聲波的傳輸速率為:
(2)
式中:T為絕對溫度;c0=331.4 m/s,一般認為c為常數(shù)340 m/s[9]。
聲速在不同的溫度下傳播速度有所不同,為了提高系統(tǒng)的檢測精度需要考慮溫度補償,以減小誤差[10]。
ARM公司是全球領(lǐng)先的16/32位微處理器供應(yīng)商。ARM處理器采用先進的精簡指令集,具有能耗低、性價比高等優(yōu)點。本系統(tǒng)選用的ARM處理器為Cortex-A8系列32位處理器S5PV210,該處理器采用ARM V7指令集,主頻可達1 GHz,并擴展有兩片512MB的 DDR2共1GB RAM內(nèi)存,板載1GB NAND Flash,掉電非易失[1]。
檢測系統(tǒng)的硬件部分主要包括:ARM處理器S5PV210、溫度傳感器DS18B20、超聲測距模塊、RS232串口傳輸、上位機界面等組成,系統(tǒng)構(gòu)成如圖3所示。各模塊與微處理器的硬件連接如圖4所示。
超聲波模塊有4個引腳分別為:VCC(電源)、TRIG(控制端)、ECHO(接收端)、GND(接地)??刂贫薚RIG接處理器的GPA12引腳,接收端ECHO接處理器的GPA13引腳。通過控制GPA12、GPA13引腳實現(xiàn)超聲波模塊的驅(qū)動及距離數(shù)據(jù)的讀取。由其控制時序圖(如圖5所示)可知,控制GPA12引腳輸出大于10 μs時長的高電平信號驅(qū)動超聲波模塊,該模塊將自動發(fā)送8個40 kHz的方波,等待信號返回,當GPA13檢測到信號返回,GPA13輸出高電平,高電平持續(xù)的時間即超聲波從出發(fā)到遇到障礙物返回所經(jīng)歷的時間[10],即可由式(1)計算出距離值。
DS18B20是數(shù)字式溫度傳感器,采用單總線1-wire,與微處理器連接時僅需要一條口線即可實現(xiàn)處理器與DS18B20的雙向通訊。DS18B20的DQ端連接處理器GPH31引腳,如圖4所示。DS18B20測溫范圍為-55~+125 ℃,在-10~85 ℃范圍內(nèi)精確度為±0.5 ℃。DS18B20有9~12位編程分辨率供選擇,對應(yīng)的溫度值分辨率分別為0.5 ℃,0.25 ℃,0.125 ℃和0.062 5 ℃[5]。系統(tǒng)采用9位分辨率時,把溫度轉(zhuǎn)換為數(shù)字最多需要93.75 ms,最小分辨率為0.5 ℃,在正常的溫度環(huán)境下DS18B20完全滿足測量條件。
通用異步收發(fā)器(Universal Asynchronous Receiver and Transmitter,UART )是處理器中最常用、最重要的部件之一,可以用來實現(xiàn)不同處理器的數(shù)據(jù)通信。本系統(tǒng)通過RS232將下位機采集到的數(shù)據(jù)傳輸?shù)缴衔粰C。S5PV210有4個獨立的UART接口,系統(tǒng)采用UART1通過MAX232芯片轉(zhuǎn)換,再依據(jù)RS232通信協(xié)議實現(xiàn)數(shù)據(jù)的傳輸。RS232串口硬件連接圖如圖4所示。其中RXD1為接收端,TXD1為發(fā)送端。RS232串口波特率設(shè)置為115200,8位數(shù)據(jù)位異步通信,一幀數(shù)據(jù)共10位,其中包括8位數(shù)據(jù)位,1位數(shù)據(jù)起始位(0)和1位數(shù)據(jù)停止位(1)。
要實現(xiàn)很好的交互,需要設(shè)計上位機用戶界面,下位機采集的數(shù)據(jù)經(jīng)過RS232串口傳輸顯示在PC上。在PC端需要實時顯示距離數(shù)據(jù),動態(tài)顯示一段關(guān)于時間的動態(tài)曲線,同時記錄歷史距離數(shù)據(jù),方便查閱。本系統(tǒng)的監(jiān)視界面是采用QT來設(shè)計的。QT有著比較強的跨平臺特性,開源的QT給自由開發(fā)提供了很大的便利。
檢測系統(tǒng)是在S5PV210上移植了Linux2.6操作系統(tǒng)。Linux操作系統(tǒng)是一種完全開源、多用戶、多任務(wù)環(huán)境的實時操作系統(tǒng),內(nèi)核采用模塊化的思想,可根據(jù)外設(shè)需要進行配置、裁剪。
利用Linux內(nèi)核模塊化的思想,開發(fā)超聲波傳感器、溫度傳感器、RS232串口通信等設(shè)備的驅(qū)動程序,動態(tài)加載驅(qū)動模塊,再編寫好相應(yīng)的應(yīng)用層代碼,就可以實現(xiàn)對外設(shè)的調(diào)試控制了。
3.2.1 超聲測距模塊驅(qū)動程序設(shè)計
在開發(fā)Linux內(nèi)核模塊驅(qū)動程序時,將超聲波模塊視作只讀設(shè)備,編寫好驅(qū)動程序后,設(shè)備只需要通過應(yīng)用層傳來控制參數(shù),在驅(qū)動層即可完成測距。驅(qū)動層通過相應(yīng)的函數(shù)將距離值傳給應(yīng)用層,即可在用戶態(tài)讀取并操作距離值[10]。
Linux內(nèi)核將一切外設(shè)均視為文件,在具體開發(fā)驅(qū)動程序時只需要初始化結(jié)構(gòu)體file_operations中的成員即可。file_operations中的成員變量主要是用來實現(xiàn)對設(shè)備節(jié)點的打開、讀寫、偏移、關(guān)閉等操作,為了便于操作代碼實現(xiàn)時將超聲波傳感器注冊為雜項設(shè)備的形式,其驅(qū)動中定義的le_operations與miscdevice的成員實現(xiàn)如下:
static struct file_operations sonar_drv_fops = {
.owner = THIS_MODULE,
.open =sonar_open,
.ioctl = sonar_ioctl,
.read =sonar_read,
.write =sonar_write,
.release =sonar_close,
};
static struct miscdevice sr04_drv_misc = {
.minor = MISC_DYNAMIC_MINOR,
.name = "sr04_drv",
.fops = &sr04_drv_fops,
};
open()函數(shù)是用于打開設(shè)備產(chǎn)生超聲波設(shè)備節(jié)點的文件描述符,是設(shè)備的入口,sonar_open()申請中斷資源, sonar_ioctl用于設(shè)置GPA12輸出是0還是1,sonar_read()通過控制定時中斷得到時間值,最后通過copy_to_user()將換算的距離值返回給應(yīng)用程序。
3.2.2 溫度傳感器驅(qū)動程序設(shè)計
DS18B20是一種智能傳感器,采用1-Wire的方式傳輸數(shù)據(jù),只需要一個引腳即可實現(xiàn)數(shù)據(jù)的輸入 /輸出。DS18B20的操作需要嚴格按照時序驅(qū)動,使用時需使其復位,其復位時序圖如圖6所示。如圖4 所示DS18B20接于S5PV210的GPH31,復位操作如下:首先控制GPH31輸出480~960 μs低電平,然后釋放數(shù)據(jù)線,再將GPH31設(shè)置為低電平保持15~60 μs,等待DS18B20返回存在脈沖,脈沖持續(xù)時間為60~240 μs, 這樣就完成了DS18B20的復位操作。
如圖7、8所示為DS18B20的讀、寫程序,采用循環(huán)移位的辦法,實現(xiàn)字節(jié)讀、寫。
為了驗證位置檢測系統(tǒng)的穩(wěn)定性與精確程度,需要對檢測系統(tǒng)進行實驗驗證,實驗采用對比上位機讀數(shù)與高度尺讀取實際測量距離進行對比驗證。表1列出了系統(tǒng)上位機讀數(shù)與對應(yīng)的實際值:(實驗環(huán)境:室內(nèi);室溫:22 ℃)
表1 上位機讀取值與實際值
試驗中每組數(shù)據(jù)測量5次,求取平均值,以減小偶然誤差影響,并計算系統(tǒng)的誤差范圍。由實驗數(shù)據(jù)可知,系統(tǒng)測量誤差在2%以內(nèi),誤差沒有出現(xiàn)較大的波動,也沒有隨距離的增加而變大,系統(tǒng)滿足拋光頭位置檢測使用要求,而且精度比較高。
將設(shè)計好的檢測系統(tǒng)嵌入到CMP設(shè)備中進行拋光實驗。在系統(tǒng)初始化后,開始檢測按鍵狀態(tài),當檢測到“開始按鍵”按下時開始一次加載過程中記錄拋光頭的運行軌跡,部分軌跡如圖9所示。
實驗研究表明系統(tǒng)調(diào)試通過、運行正常,滿足CMP設(shè)備拋光頭位置實時檢測與顯示的需求。
本文設(shè)計的拋光頭位置檢測系統(tǒng)能夠?qū)崿F(xiàn)拋光頭運行過程中位置、環(huán)境溫度的實時檢測及動態(tài)顯示。詳細分析了基于S5PV210—Linux平臺測距系統(tǒng)的軟硬件設(shè)計。經(jīng)過反復實驗該系統(tǒng)在實際拋光實驗中運行穩(wěn)定,能夠?qū)崿F(xiàn)對拋光頭行程位置進行實時顯示與監(jiān)控,解決了拋光設(shè)備拋光頭位置檢測的需求。同時該系統(tǒng)可移植性強,可擴展到整個CMP設(shè)備的自動化控制系統(tǒng)中,應(yīng)用前景好。
[1]周立功. ARM嵌入式系統(tǒng)基礎(chǔ)教程[M]. 北京:航空航天大學出版社, 2005.
[2]Chandra A,Bastawros A, Wang X, et al. An integrated wafer surface evolution model for chemical mechanical planarization (CMP)[M].Micromanufacturing Processes, 2012.
[3]Doi T, Philipossian A, Denardis D. Polishing apparatus and method of polishing work piece: US, US7195546[P]. 2007.
[4]武昌壕, 郭冰, 姚光,等. 硬脆材料的化學機械拋光機理研究[J]. 機械設(shè)計與制造, 2014(2):37-39.
[5]黨元一, 何思遠, 富璇. 基于ARM的高精度超聲波測距系統(tǒng)設(shè)計[J]. 科技風, 2009(1X):67-67.
[6]洪松, 朱龍英. 基于ARM—Linux的超聲波測距系統(tǒng)設(shè)計與實現(xiàn)[J]. 自動化與儀表, 2013, 28(3):21-24.
[7]王浩, 譚振文, 王治彪,等. 基于STM32的分體式超聲測距與目標定位系統(tǒng)[J]. 儀表技術(shù)與傳感器, 2017(2):58-61.
[8]趙廣濤, 程蔭杭. 基于超聲波傳感器的測距系統(tǒng)設(shè)計[J]. 微計算機信息, 2006, 22(1):129-130.
[9]李駒光, 張華. 基于ARM的工業(yè)以太網(wǎng)控制系統(tǒng)智能節(jié)點的設(shè)計[J]. 電子技術(shù), 2003, 30(7):17-18.
[10]Wen ZZ, Li F N, Xia Z B. High-precision ultrasonic ranging system design and research[J]. Applied Mechanics & Materials, 2012, 127:501-505.