鄭之龍,孫志峻
(南京航空航天大學 a. 機電學院, b. 航空宇航學院 江蘇 南京 210016)
?
嵌入式超聲電機微步距控制檢測系統(tǒng)設計
鄭之龍a,孫志峻b
(南京航空航天大學 a. 機電學院, b. 航空宇航學院 江蘇 南京 210016)
摘要:設計了一種行波超聲電機的嵌入式微步距控制檢測系統(tǒng),該系統(tǒng)分為三大部分:嵌入式上位機、電機控制器和檢測系統(tǒng)。以ARM9微控制器作為主控芯片,將Linux系統(tǒng)和Qtopia圖形界面移植到ARM微控制器上,作為整個控制系統(tǒng)的上位機和人機交互的工具;電機控制器使用PSoC芯片,上位機與電機控制器之間用UART進行通信;以基恩士激光位移傳感器為核心搭建了微步距檢測系統(tǒng),對整個系統(tǒng)進行了測試。實驗結果表明,此系統(tǒng)能實現超聲電機精確的微步距控制和檢測。
關鍵詞:超聲電機;微步距;嵌入式系統(tǒng)
0引言
電磁步進電機的最小步距角可以做到124μrad,電磁伺服電機的最小步距角可以做到43μrad。獲得更小的步距角一直為各國學者孜孜以求的目標,各種功能驅動元件幾乎都曾被用來嘗試精密旋轉定位。超聲電機是一種具有全新原理、全新結構的新型驅動器, 它突破了傳統(tǒng)的電磁電機的概念, 無電樞繞組和磁路, 不依靠電磁的相互作用來轉換能量, 而是利用壓電陶瓷的逆壓電效應和超聲振動來獲得驅動力, 通過摩擦耦合轉換成轉子或滑塊的運動[1]。與傳統(tǒng)的電磁電機相比, 具有慣性小, 響應快, 控制特性好, 噪聲小, 斷電自鎖, 不受磁場影響, 本身不產生磁場, 低速大轉矩及可直接驅動負載等特性。超聲電機作為一種全新的電機,其步進控制目前還處于探索發(fā)展階段。浙江大學紀科輝等從具體實驗中表明縱扭復合型超聲電機具有高分辨率和步進特性,并證實在結構上無需作特別處理,超聲電機的最小步距可以做到0.005°[2]。南京航空航天大學孫志峻等的研究表明,行波型超聲電機在適當的驅動信號作用且開環(huán)狀態(tài)下,最小步距可以做到1.2μrad(此時轉速為100r/min)[3],但目前還難以保持運行的穩(wěn)定性。
目前控制系統(tǒng)大多采用PC機與控制器相結合,使用通用操作系統(tǒng),如windows操作系統(tǒng)。其優(yōu)點在于能將PC機的開放性和信息處理能力與電機控制器的運轉控制特性相結合,但整個控制系統(tǒng)成本高、硬件資源浪費嚴重、功耗大,而且windows系統(tǒng)存在延時性。本研究上位機的設計拋棄了傳統(tǒng)的PC機,搭建了以觸摸屏為人機交互工具的嵌入式上位機系統(tǒng),以嵌入式技術為平臺,利用其軟硬件資源可定制的特性,開發(fā)了高可靠性、低功耗、高性價比的嵌入式微步距控制系統(tǒng)。
1控制系統(tǒng)總體設計
采用了Cypress Microsystems公司的PSoC混合信號陣列芯片CYC28466作為電機主控制器。它拋棄了使用分立元件搭建驅動及控制電路, 將頻率發(fā)生、分頻分相、死區(qū)和占空比設置、功率放大電路以及部分控制電路等整合到PSoC中, 極大地縮小了驅動控制器的體積, 提高了驅動控制器的穩(wěn)定性、可靠性[4]。嵌入式上位機系統(tǒng)采用三星公司的S3C2440微控制器為核心,以Linux為上位機操作系統(tǒng),選用Qt/Embedded為上位機軟件開發(fā)工具。上位機的作用是發(fā)送控制命令到電機控制器、運行算法、接收微步距檢測信號并生成相應圖形。上位機與電機控制器的通訊采用的是UART。電機微步距檢測,傳統(tǒng)的做法是采用光電編碼器加數字示波器組成的系統(tǒng)。本文采用了KEYENCE公司LK-H020型高速高精度CCD激光位移傳感器作為超聲電機微步距的檢測裝置。該傳感器具有最快的采樣速度(50 kHz),業(yè)界最高的精確度(±0.002%),同類中最高的分辨率(0.01 μm),有多功能控制器和簡單易用的菜單式軟件;傳感器探頭的投光部配置了柱面鏡頭,從而實現了尖銳線束,將線束直徑尖銳到極限(25 μm),從而實現了以往不能實現的高穩(wěn)定檢測;通過識別因目標工件表面狀態(tài)的變化而產生的CMOS入光波形的不同,自動進行最佳的波形處理。類似金屬細線以及樹脂、橡膠等過去難以檢測的工件,也可以無調諧的實現穩(wěn)定檢測。傳感器檢測反饋的信號通過上位機的處理,可生成相應的波形??傮w設計如圖1所示。
圖1 系統(tǒng)總體設計
整個系統(tǒng)的工作過程為:在觸摸屏上點擊相應按鈕和輸入參數,發(fā)送給嵌入式上位機,再通過上位機發(fā)送到PSoC控制器,控制器收到命令后,調用相應函數,控制電機執(zhí)行相應動作;與此同時,CCD激光位移傳感器檢測電機的運轉數據,然后將數據反饋到嵌入式上位機,上位機經過相應處理,將步距波形顯示到觸摸屏上面,并且會根據一定算法智能的調整步距的大小。
2系統(tǒng)硬件設計
將嵌入式技術應用到超聲電機微步距控制系統(tǒng)設計的一大特點就是應用其靈活的軟硬件可裁剪、可定制性,針對不同的對象,可設計與其性能要求相匹配的嵌入式系統(tǒng)硬件。
綜合超聲電機微步距控制的各項因素,系統(tǒng)的設計應實現以下要求:
1) 超聲電機的步距角調整、電機運轉頻率調節(jié)、電機電壓調節(jié)以及傳感檢測數據的處理都應該由嵌入式上位機統(tǒng)一處理;
2) 上位機應具有一款功能強大的嵌入式CPU,能夠搭載合適的嵌入式系統(tǒng),滿足系統(tǒng)多任務和實時性的要求;
3) 能夠提供友好的人機交互接口,支持觸摸屏和操作面板,最人性化的實現操作者對超聲電機的控制;
4) 能夠提供豐富的接口資源,如串口、USB、網絡接口以及各種標準總線接口,方便對外通信和系統(tǒng)開發(fā)初期調試;
5) 能對傳感器反饋回來的數據進行高速處理,并實時的顯示出來。
綜合以上考慮對系統(tǒng)硬件進行了合理的選擇和設計,系統(tǒng)硬件設計如圖2所示。
圖2 系統(tǒng)硬件設計
電機控制器部分的驅動信號是由主控芯片PSoC內部的兩個帶死區(qū)發(fā)生16位可編程數字脈寬調制(PWM)模塊直接產生4路相位互差90°的功率方波信號,取代了原來驅動器中眾多分立元件搭建而成的信號發(fā)生電路。該方波信號的高電平為5V,管腳驅動電流為25mA,可直接驅動MOS管完成直流逆變,最終產生超聲電機所需要的驅動信號。驅動電壓、頻率等可在上位機軟件中進行設置。孤極電壓反饋電路用于實現電機的自動調頻。
嵌入式上位機和微步距檢測部分根據硬件需要可自行定制。上位機與控制器的通訊采用的是串口,用一根交叉串口線將上位機的UART接口和控制器的UART接口連接起來。激光位移傳感器與上位機之間用的是USB連接,一方面?zhèn)鞲衅魍ㄟ^USB將檢測數據傳遞給上位機,由上位機進行數據處理,并將數據存入NAND FLASH中;另一方面,上位機可發(fā)送相關配置信息到傳感器,以便調節(jié)傳感器的檢測參數。如圖2,上位機系統(tǒng)中擴展了網絡接口,便于實現一對多(一個上位機控制多個電機控制器)的控制模式。對于觸摸屏,S3C2440提供了觸摸檢測模塊、觸摸控制模塊和A/D轉換模塊,滿足觸摸控制的所有條件。
3系統(tǒng)軟件設計
嵌入式超聲電機微步距控制系統(tǒng)的軟件設計主要涉及兩個部分,基于PSoC的超聲電機步進控制程序設計和嵌入式操作系統(tǒng)搭建。
PSoC Designer(TM)是PSoC的傳統(tǒng)軟件開發(fā)環(huán)境,它是一款功能全面的基于圖形用戶接口(GUI)的設計工具套件,使用戶能以簡單的點擊對設計中的硅技術進行配置(圖3)。在PSoC Designer的幫助下,用戶可以采用C語言或匯編語言編寫MCU的代碼,還可用事件觸發(fā)器和多斷點等先進的特性對設計進行調試,同時還可以采用C語言、匯編語言或二者的結合,通過代碼實現單步進。
圖3 PSoC Designer基于GUI的設計工具套件
PSoC芯片集成有8位和16位的通用PWM模塊, 根據超聲電機的工作頻段及頻率分辨率的需要,采用16位的PWM模塊并采用48MHz的系統(tǒng)主振頻率作為模塊的時鐘源。由于采用推挽逆變電路, 不允許兩個串聯的開關管同時導通的情況出現, 這樣會損壞開關管, 因此不能使用50%占空比的方波信號進行驅動[5], 必須為兩路驅動信號設置死區(qū)。出于以上情況的考慮, 在PSoC芯片的內部分別利用3個數字模塊配制了兩個帶死區(qū)的16位的PWM模塊, 它可直接產生4路互差90°的方波信號。通過對各個模塊函數參數的調節(jié), 即可完成對PWM信號的頻率、死區(qū)、占空比、相位差及電機啟停的調節(jié)。
超聲電機的步進是在超聲電機的連續(xù)運轉的基礎上進行的:將PWM模塊產生的PWM波形按一定時間間隔分為n段,每段的脈沖波數一定,將每段的脈沖個數稱為超聲電機步進的單步波數。而且單步波數和時間間隔可人為調整,這樣便可實現超聲電機的步進。電機控制器與上位機的底層通訊協議程序是按照圖4的通訊規(guī)約編寫的,使用是PSoC中的UART模塊,只需在程序中設定接收某個字符或數據便可調用相應的電機運轉和設置程序,實現上位機對控制器的控制。通訊規(guī)約如圖4。
圖4 通訊規(guī)約
完成以上代碼編寫,便可實現超聲電機的正反轉、步進、自動調頻、與上位機通信等工作模式。
嵌入式系統(tǒng)軟件層面的搭建流程(由底層到應用層)如圖5所示。
圖5 嵌入式系統(tǒng)軟件搭建流程
簡單的說,bootloader是一段程序,它的作用就是加載操作系統(tǒng),bootLoader(引導加載程序)是系統(tǒng)加電后運行的第一段軟件代碼。通過這段代碼實現硬件的初始化,建立內存空間的映射圖,為操作系統(tǒng)內核準備好硬件環(huán)境并引導內核的啟動[6]。在設備的啟動過程中,bootloader位于最底層,首先被運行來引導操作系統(tǒng)運行,很容易可以看出 bootloader是底層程序所以它的實現嚴重地依賴于硬件,特別是在嵌入式系統(tǒng)。文中采用的是嵌入式系統(tǒng)中常用的U_boot,移植U_boot時以S3C2410為模板。
Linux內核配置與編譯的步驟為:清除臨時文件、中間文件和配置文件;確定目標系統(tǒng)的軟硬件配置情況,如CPU類型、網卡類型;使用make menuconfig命令配置內核;使用make zImage命令編譯內核;編譯內核模塊;安裝內核模塊[7]。
根文件系統(tǒng)采用的是Busybox,直接使用的已編譯好的根文件系統(tǒng),安裝到Linux系統(tǒng)上。
Linux設備驅動程序開發(fā)是一個很大的工程。本文編寫了LED、按鍵、中斷、定時、串口、觸摸屏、網卡等設備的驅動程序。由于在開發(fā)階段,這些設備的驅動程序還不穩(wěn)定,所以將這些驅動程序以內核模塊的方式安裝到內核。
上位機控制界面的開發(fā)環(huán)境為Linux環(huán)境下的Qt/Embedded。與其他開發(fā)環(huán)境相比,其特點是:良好的平臺移植性[8]、良好的封裝機制、豐富的API、信號與槽通信機制等。主要的界面模塊有:串口選擇模塊(下拉框),按鈕,文本輸入模塊,波形顯示插件,其中波形顯示插件使用的是第三方插件qwt_plot。界面如圖6所示。
圖6 上位機控制界面
4系統(tǒng)測試實驗
實驗使用南京航空航天大學大學自主研制的60型行波超聲電機作為對象,對整個嵌入式超聲電機微步距控制檢測系統(tǒng)進行了測試實驗。單步波數為20個,電機頻率為38.506kHz,外接電源電壓為5V,得到超聲電機步進波形如圖7所示。
圖7 超聲電機步進波形圖
橫坐標為時間,縱坐標為電機步進位移??梢钥闯?,系統(tǒng)不僅可以實現步距角較為穩(wěn)定且單步時間較為均勻的超聲電機的步進,還可以對超聲電機的微步距進行精確的檢測與顯示。
5結語
設計了一個嵌入式超聲電機微步距控制檢測系統(tǒng),具有功能完善、軟硬件可裁剪、實時性高、運行穩(wěn)定、檢測精確、操作簡單、人機交互友好等優(yōu)點。與傳統(tǒng)的微步距控制檢測系統(tǒng)相比,增加了嵌入式的應用,提高了檢測精度。在后續(xù)的研究中,可進一步完善微步距的控制算法,提高波形顯示的實時性。
參考文獻:
[1] 段小匯,莫岳平,張新星. 基于ARM的超聲波電機嵌入式驅動控制系統(tǒng)[J]. 微特機電,2009,12.
[2] 紀科輝,郭吉豐,劉曉. 超聲波電機的步進特性和步進定位控制[J]. 中國電機工程學報,2004,24(1):71-75.
[3] Zhijun Sun, Chunsheng Zhao. Micro Stepping Performance of Traveling Wave Type Ultrasonic Motor Using a Special Drive Method, the 7 the International Workshop on Piezoelectric Materials and Applications Actuators, 2010,46-50.
[4] 李華峰,冒俊,趙淳生. 基于PSoC的超聲電機快速反應裝置驅動控制器[J]. 壓電與聲光,2009,31(2).
[5] 李華峰,冒俊,趙純生,等. 基于可編程片上系統(tǒng)的超聲電機小型驅動電源[J]. 壓電與聲光,2009,31(3).
[6] 楊鑄,唐攀,嵌入式底層軟件開發(fā)[M]. 北京:北京航空航天大學出版社,2011.
[7] Linux內核設計與實現[M]. 陳莉君,康華譯,北京:機械工業(yè)出版社,2011.
[8] 丁丁,習勇,魏急波,三種主流嵌入式圖形用戶界面的移植及性能比較[J]. 電子產品,2004,9(5):3-4.
Design of Embedded System of Micro-step Control and Measurement Based on Ultrasonic Motor
ZHENG Zhi-longa,SUN Zhi-junb
(a. College of Mechanical and Electrical Engineering; b. College of Aerospace Engineering,
Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China)
Abstract:This paper designs an embedded micro-step control and detection system of a travelling wave ultrasonic motor. The system is composed of three parts: the embedded host computer, the motor controller, and the detecting devices. ARM9 microcontroller is adopted as the master chip and the Linux system and Qtopia graphical interface are incorporated in the ARM micro controller as the tool of the host PC and human. computer interation of the overall system. PSoC chip is employed as the motor controller, and the communication method between the host PC and the motor controller is UART. To detect the outputs of the ultrasonic motor, a micro-step detection system is developed based on the Keyence laser displacement sensor. The experimental results show that the system can be used to achieve accurate micro-step control and detection of a travelling wave ultrasonic motor.
Keywords:ultrasonic motor; micro-step; embedded system
中圖分類號:TM32;TP274+.5
文獻標志碼:B
文章編號:1671-5276(2015)02-0177-04
作者簡介:鄭之龍(1988-),男,安徽安慶人,碩士研究生,研究方向為超聲電機控制和嵌入式教學應用。
基金項目:國家自然科學基金資助項目(51175264)
收稿日期:2014-02-24