陳 燦,秦曉楠
(1.中國人民解放軍海軍駐南京地區(qū)航空軍事代表室,江蘇南京 211106,2.南京航空航天大學(xué)自動(dòng)化學(xué)院,江蘇南京 210016)
隨著自動(dòng)控制技術(shù)的飛速發(fā)展,伺服系統(tǒng)中的定位精度要求也越來越嚴(yán)格。如航天技術(shù)領(lǐng)域,對于飛機(jī)舵機(jī)角位移的精確測量,就可以使用同步自整角機(jī)角位移傳感器。應(yīng)用軸角數(shù)字轉(zhuǎn)換技術(shù)完成角位移傳感器模擬輸出信號(hào)到數(shù)字量的轉(zhuǎn)換是同步自整角機(jī)自動(dòng)測試系統(tǒng)中的關(guān)鍵技術(shù)[1]。對于軸角數(shù)字轉(zhuǎn)換技術(shù),在20世紀(jì)70年代國內(nèi)外就開始對其展開研究。70年代初,國外AD公司就生產(chǎn)了封裝分立模塊SDC以實(shí)現(xiàn)軸角A/D轉(zhuǎn)換,隨后國內(nèi)江蘇自動(dòng)化研究所也先后研發(fā)了多個(gè)系列的轉(zhuǎn)換器[1-2]。近幾年,國內(nèi)外對軸角數(shù)字轉(zhuǎn)換技術(shù)的研究集中于采用FPGA、DSP微處理器來實(shí)現(xiàn)。Joan Bergas-Jané等人提出在DSP上采用移頻技術(shù)和雙同步參考幀解耦的鎖相環(huán)技術(shù)來實(shí)現(xiàn)簡單、經(jīng)濟(jì)的同步/數(shù)字轉(zhuǎn)換器[3]。Yijing Wang等人介紹了一種通過FPGA將非線性信號(hào)轉(zhuǎn)化為與角位置成正比的線性信號(hào),并通過矯正策略得到數(shù)字角度信號(hào)的軸角數(shù)字轉(zhuǎn)換方法[4]。但受算法復(fù)雜度,外界環(huán)境噪聲干擾,以及處理器內(nèi)置ADC的分辨率影響,轉(zhuǎn)換速率的進(jìn)一步提高以及誤差的減小就會(huì)受到一定的限制。針對這一問題,本文設(shè)計(jì)一種基于AD2S80A旋變數(shù)字轉(zhuǎn)換器以及IAP15W4K58S4單片機(jī)的同步自整角機(jī)動(dòng)態(tài)測角系統(tǒng),并分別從系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì)方面展開介紹,最后通過對本文所設(shè)計(jì)的同步自整角機(jī)自動(dòng)測試系統(tǒng)的實(shí)驗(yàn)測量,以驗(yàn)證文中方法的可行性。
因?yàn)橥阶哉菣C(jī)是由轉(zhuǎn)子和定子組成的將角位移與交流電壓進(jìn)行轉(zhuǎn)換的感應(yīng)式微型電機(jī),所以從同步自整角機(jī)所輸出的旋轉(zhuǎn)角度信號(hào)是一組模擬信號(hào)。另外同步自整角機(jī)之間通過一定的連接電路,使得沒有直接連接在一起的兩根或兩根以上的機(jī)械轉(zhuǎn)軸自動(dòng)保持一樣的旋轉(zhuǎn)角度并達(dá)到同步旋轉(zhuǎn)。將機(jī)械轉(zhuǎn)角變化轉(zhuǎn)變?yōu)槟M電信號(hào)的同步自整角機(jī)稱為控制式同步自整角機(jī),而將接收模擬轉(zhuǎn)角信號(hào)并產(chǎn)生機(jī)械軸角旋轉(zhuǎn)的同步自整角機(jī)稱為力矩式同步自整角機(jī)同步[2]。本文主要研究控制式同步自整角機(jī)將機(jī)械轉(zhuǎn)角轉(zhuǎn)化為模擬電信號(hào)后,如何將包含角度信息的模擬電信號(hào)轉(zhuǎn)化為數(shù)字角度信息,以傳送給單片機(jī)和電腦進(jìn)行數(shù)據(jù)處理。自整角機(jī)的轉(zhuǎn)子繞組為激磁繞組,當(dāng)轉(zhuǎn)子繞組上加入激磁電壓為VR=Vmsinωt時(shí),定子三相繞組上輸出的相位均勻分布的三相交流信號(hào)如下:
(1)
式中,θ為相對于初始狀態(tài)的轉(zhuǎn)子轉(zhuǎn)角,k為同步自整角機(jī)變比,三相交流信號(hào)的載波頻率與勵(lì)磁完全相同。同步自整角機(jī)的電氣結(jié)構(gòu)圖如圖1所示。
同步自整角機(jī)自動(dòng)測試系統(tǒng)包括激勵(lì)電源、自整角機(jī)傳感器、Scott三相轉(zhuǎn)兩相變壓器、AD2S80A、濾波電路、單片機(jī)工作電路、計(jì)算機(jī)等。系統(tǒng)結(jié)構(gòu)圖如圖2所示。
其中,軸角轉(zhuǎn)換電路由Scott變壓器、AD2S80A、濾波電路組成。因?yàn)橥阶哉菣C(jī)的定子端輸出的是三相交流電壓信號(hào),而AD2S80A旋變數(shù)字轉(zhuǎn)換器的信號(hào)輸入端是成正交關(guān)系的正弦與余弦信號(hào),所以同步自整角機(jī)輸出的三個(gè)相位差各相差120°的線電壓信號(hào)應(yīng)經(jīng)過Scott變壓器轉(zhuǎn)換成正、余弦形式,以符合AD2S80A轉(zhuǎn)換器的輸入要求。Scott變壓器原理圖如圖3所示。
同步自整角機(jī)的輸出線電壓經(jīng)過Scott變壓器中的AD712運(yùn)放,即式(1)中的電壓經(jīng)過一定的線性組合可以生成符合AD2S80A要求的正余弦信號(hào),轉(zhuǎn)換關(guān)系式如式(2)所示。
(2)
改變Scott變壓器原理圖中R3,R4,R5的值可以Scott變壓器輸出的正余弦信號(hào)電壓值滿足2V的有效值,關(guān)系式如式(3)所示。
(3)
若R1=RR2=1.155R,則R3=kVR·R,R4=0.5VR·R,R5=0.5kVR·R。式(3)中,k為同步自整角機(jī)變比,VR為激勵(lì)電源電壓有效值。Scott變壓器對電阻阻值精度要求較高,0.1%的誤差將導(dǎo)致2弧分到7弧分角度誤差。
另外,在非實(shí)驗(yàn)室環(huán)境下,同步自整角機(jī)可能會(huì)受外界噪聲干擾而導(dǎo)致角度測量的不準(zhǔn)確。當(dāng)Scott變壓器輸出的正弦信號(hào)達(dá)到峰值時(shí),用示波器測量Scott變壓器輸出的余弦信號(hào),可以清楚地發(fā)現(xiàn)信號(hào)所含噪聲較多,如圖4所示。(圖中通道1為激磁信號(hào),通道2為余弦信號(hào))。根據(jù)文獻(xiàn)資料顯示,現(xiàn)有的軸角轉(zhuǎn)換系統(tǒng)在設(shè)計(jì)時(shí)都基于理想的實(shí)驗(yàn)環(huán)境,所以在對自整角機(jī)輸出的模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換前沒有對其進(jìn)行有源濾波來動(dòng)態(tài)抑制諧波。針對以上問題,本文采用二階巴特沃斯低通濾波加移相電路來濾除同步自整角機(jī)輸出正余弦信號(hào)中的多次和高頻噪聲的干擾,如圖5所示。通過增加有源濾波電路的設(shè)計(jì),可以優(yōu)化軸角測試系統(tǒng)的硬件電路,進(jìn)一步減小測角誤差。
當(dāng)同步自整角機(jī)的激磁電壓為36Vrms,頻率為400Hz時(shí),低通濾波器的截止頻率為500Hz,衰減斜率為-40dB/十倍頻。信號(hào)過低通濾波器,高頻噪聲被成功濾除了。但是與原有信號(hào)相比產(chǎn)生了相移,如圖6所示。應(yīng)此加入移相電路,來補(bǔ)償濾波后信號(hào)產(chǎn)生的相移。
對于軸角數(shù)字轉(zhuǎn)換電路,為保證所測得角度數(shù)字信號(hào)的準(zhǔn)確性,必須采用跟蹤速率高、精度高、輸出性能穩(wěn)定的數(shù)字轉(zhuǎn)換器。本文引入的旋變數(shù)字轉(zhuǎn)換器AD2S80A其采用電子Ⅱ型伺服控制回路,分辨率可變,輸出將自動(dòng)跟隨輸入,當(dāng)設(shè)置為10位分辨率時(shí),可以跟蹤轉(zhuǎn)速最高達(dá)1040轉(zhuǎn)/s的角度信號(hào)。16位分辨率的精度可達(dá)0.3′。另外,由于轉(zhuǎn)換結(jié)果的準(zhǔn)確度和輸入信號(hào)的賦值無關(guān),而和其比率相關(guān),因此賦值和頻率變化著的輸入信號(hào)不會(huì)影響AD2S80A的轉(zhuǎn)化結(jié)果。Scott輸出的正余弦角度信號(hào)經(jīng)AD2S80A中的高速數(shù)字乘法器、誤差放大器、相敏解調(diào)器、積分器、壓控振蕩器和計(jì)數(shù)器形成一個(gè)閉環(huán)系統(tǒng)。
高速數(shù)字乘法器的主要功能為將輸入模擬角度信號(hào)與計(jì)數(shù)器中的數(shù)字角度信號(hào)相比較,求得兩個(gè)角度差值的模擬信號(hào)。誤差放大器的作用是將高速數(shù)字乘法器獲得的角度誤差信號(hào)進(jìn)行放大。相敏檢測器是將乘法器輸出的交流信號(hào)進(jìn)行解調(diào),將正弦波形式的角度信號(hào)轉(zhuǎn)換為直流信號(hào)。轉(zhuǎn)換器中的積分器是用來將前一級(jí)的輸出信號(hào)進(jìn)行積分后生成速率信號(hào)輸出。將積分器的輸入端引入調(diào)零電阻是為了防止積分器在工作時(shí)產(chǎn)生的較大直流漂移。積分器生成的速率信號(hào)通過壓控振蕩器產(chǎn)生脈沖信號(hào),接著加減計(jì)數(shù)器根據(jù)脈沖信號(hào)輸出數(shù)字信號(hào)并將其發(fā)送給輸出鎖存器輸出。同時(shí),數(shù)字角度信號(hào)作為反饋信號(hào)傳輸給高速數(shù)字乘法器,與模擬角度信號(hào)進(jìn)行比較。假定當(dāng)前同步自整角機(jī)轉(zhuǎn)過的角度為θ,可逆計(jì)數(shù)器當(dāng)前字狀態(tài)為φ,通過閉環(huán)回路系統(tǒng),使得sin(θ-φ)趨近于0。AD2S80A系統(tǒng)內(nèi)部結(jié)構(gòu)圖如圖7所示。
系統(tǒng)的硬件集成電路原理圖如圖8所示。本文選用的IAP15W4k58S4單片機(jī)總共有44個(gè)通用IO口,本系統(tǒng)通過定義16個(gè)通用IO口來作為16位數(shù)字角度信號(hào)的輸入端口。另外,為了保證單片機(jī)電路工作的穩(wěn)定性,對單片機(jī)專門采用三端穩(wěn)壓芯片AS1117供電。
本文在軟件部分的設(shè)計(jì)包括:單片機(jī)的采集與處理,單片機(jī)與電腦通信程序設(shè)計(jì),以及電腦數(shù)據(jù)的采集。
下位機(jī)軟件程序主要包括AD2S80A旋變數(shù)字轉(zhuǎn)換器的數(shù)據(jù)采集程序、單片機(jī)數(shù)據(jù)處理程序和基于Modbus通信協(xié)議的下位機(jī)與上位機(jī)數(shù)據(jù)傳輸程序。具體的實(shí)現(xiàn)程序框圖如圖9所示。
要將AD2S80A轉(zhuǎn)換器的16位數(shù)字輸出給單片機(jī),程序設(shè)計(jì)中應(yīng)滿足轉(zhuǎn)換器的讀寫數(shù)字時(shí)序。時(shí)序圖如圖10所示。
根據(jù)以上AD2S80A的讀寫數(shù)字時(shí)序,本系統(tǒng)采用IAP15W4K58S4單片機(jī)與AD2S80A轉(zhuǎn)換器進(jìn)行通信,讀取轉(zhuǎn)換器的16位數(shù)字信號(hào),然后在單片機(jī)中進(jìn)行數(shù)據(jù)處理,將16位二進(jìn)制數(shù)字角度數(shù)據(jù)轉(zhuǎn)換成可供數(shù)碼管顯示的角度值,并通過Modbus協(xié)議傳輸處理過的角度數(shù)據(jù)給上位機(jī),具體流程圖見圖11所示。在單片機(jī)測得真實(shí)數(shù)字角度值θ后,要通過單片機(jī)的串口實(shí)時(shí)將數(shù)據(jù)傳給上位機(jī)。通過Modbus協(xié)議主機(jī)可以請求訪問從設(shè)備,并且對從設(shè)備發(fā)出的請求信號(hào)作出應(yīng)答,以及檢測錯(cuò)誤并記錄。根據(jù)Modbus協(xié)議定義的主機(jī)向從機(jī)發(fā)出報(bào)文指令的格式,本系統(tǒng)需要上位機(jī)發(fā)送從機(jī)地址和功能碼為03的讀保持寄存器指令,單片機(jī)接收電腦的請求讀取指令后,通過RS232與電腦進(jìn)行通信,將寄存器中的二進(jìn)制角度數(shù)據(jù)傳輸給電腦進(jìn)行處理。
3.2.1 系統(tǒng)軟件框架
在以往的自整角機(jī)軸角測試系統(tǒng)的設(shè)計(jì)中,只有下位機(jī)通過數(shù)碼管來實(shí)時(shí)顯示角度測量數(shù)據(jù)。但是對于實(shí)驗(yàn)和工作中需要統(tǒng)計(jì)自整角機(jī)旋轉(zhuǎn)0—360°的測角情況,以往的設(shè)計(jì)就無法滿足實(shí)驗(yàn)工作需求了。因此,本系統(tǒng)設(shè)計(jì)基于LabVIEW虛擬儀器技術(shù)的上位機(jī)用戶交互軟件系統(tǒng)。此上位機(jī)軟件系統(tǒng)將電量、角度、相位等信息數(shù)據(jù)采集、儀器控制、數(shù)據(jù)顯示及處理、用戶交互事件等多個(gè)相互獨(dú)立但又存在數(shù)據(jù)依賴關(guān)系的功能模塊分配各自獨(dú)立的線程的方式,設(shè)計(jì)出功能友好的用戶交互系統(tǒng)顯示界面,以方便實(shí)驗(yàn)人員進(jìn)行測試。上位機(jī)軟件框架如圖12所示。
3.2.2 用戶交互系統(tǒng)
本文所設(shè)計(jì)的用戶交互系統(tǒng)如圖13所示,該界面中可分為左側(cè)和中上部的“測試量顯示區(qū)”以及右側(cè)和中下部的“控制操作區(qū)”兩大功能區(qū)。在中上部的“測試量顯示區(qū)”形象地顯示出了各待測量的所在位置及其當(dāng)前測試數(shù)據(jù);在左側(cè)上半部分以表格形式呈現(xiàn)測量過程數(shù)據(jù),左側(cè)下半部分則顯示測量分析數(shù)據(jù)。在右側(cè)的“控制操作區(qū)”可通過,“自動(dòng)模式/手動(dòng)模式”切換開關(guān)實(shí)現(xiàn)兩大功能模式的切換,在“自動(dòng)模式”下,用戶可通過點(diǎn)擊“開始”按鈕實(shí)現(xiàn)角位移傳感器的自動(dòng)測試。當(dāng)自動(dòng)測量完成后,系統(tǒng)將會(huì)自動(dòng)在相應(yīng)目錄下生成報(bào)表文件。在“手動(dòng)模式”下,用戶可以通過點(diǎn)擊右側(cè)及中下部的控制按鈕選擇關(guān)心的測量量進(jìn)行測試或控制角位移機(jī)構(gòu)運(yùn)動(dòng)。
3.2.3 程序架構(gòu)設(shè)計(jì)
由于本文研究的同步自整角機(jī)自動(dòng)測試系統(tǒng)涉及角度等信息數(shù)據(jù)采集、數(shù)據(jù)顯示及處理、儀器控制、用戶交互事件等多個(gè)相互獨(dú)立但又存在數(shù)據(jù)依賴關(guān)系的功能模塊。
例如數(shù)據(jù)采集程序在運(yùn)行時(shí)仍然希望系統(tǒng)能夠處理用戶輸入的事件,而數(shù)據(jù)采集的同時(shí)也需要進(jìn)行必要的數(shù)據(jù)處理并將結(jié)果輸出到用戶界面顯示。為了確保以上各功能模塊能夠及時(shí)、可靠地運(yùn)行,需要設(shè)計(jì)合理的程序架構(gòu)對各部分進(jìn)行獨(dú)立管理合理調(diào)配系統(tǒng)資源,并在這些功能模塊間建立可靠高效的數(shù)據(jù)通信渠道。
為了滿足本系統(tǒng)各功能模塊間同時(shí)被響應(yīng)和處理,需解決使相互獨(dú)立的功能模塊并行運(yùn)行問題以及并行運(yùn)行模塊間的通信協(xié)調(diào)問題。對于第一個(gè)問題,本文將采用基于多線程程序語言的虛擬儀器開發(fā)環(huán)境Labview,通過為每個(gè)功能模塊安排一個(gè)彼此沒有數(shù)據(jù)依賴關(guān)系的循環(huán)結(jié)構(gòu)來達(dá)到為每個(gè)功能模塊分配一個(gè)獨(dú)立的線程的目的。及為電量、角度、相位等信息數(shù)據(jù)采集、儀器控制、數(shù)據(jù)顯示及處理、用戶交互事件開辟了數(shù)據(jù)采集、數(shù)據(jù)顯示、儀器控制、事件處理等循環(huán)。對于第二個(gè)問題,為了避免造成數(shù)據(jù)的丟失或重復(fù)。因此,本項(xiàng)目采用生產(chǎn)者消費(fèi)者的程序架構(gòu)設(shè)計(jì),運(yùn)用隊(duì)列操作函數(shù),這樣就避免循環(huán)速率不等所帶來數(shù)據(jù)丟失或重復(fù)的影響。如圖14所示,即為本文采用Labview所設(shè)計(jì)的自動(dòng)多線程生產(chǎn)者/消費(fèi)者程序架構(gòu)。
為了驗(yàn)證本文所設(shè)計(jì)的同步自整角機(jī)自動(dòng)測試系統(tǒng)是否滿足設(shè)計(jì)要求,須對測角系統(tǒng)進(jìn)行實(shí)驗(yàn)比對與分析。實(shí)驗(yàn)中采用28ZKF011型同步自整角機(jī)作為實(shí)驗(yàn)的測試對象來分析本文所設(shè)計(jì)的系統(tǒng)的精度與誤差。28ZKF011型同步自整角機(jī)的激勵(lì)電壓為36Vrms,400Hz,輸出電壓為16Vrms。其他的測試設(shè)備包括基于雷尼紹圓光柵的光學(xué)分度頭的角度給定裝置,激勵(lì)電源,數(shù)字萬用表,示波器,串行通信線纜,上位機(jī)等。系統(tǒng)設(shè)備裝置圖如圖15所示。
在實(shí)驗(yàn)中以光學(xué)分度頭所給定的角度值作為基準(zhǔn)與本文所設(shè)計(jì)的同步自整角機(jī)自動(dòng)測試系統(tǒng)所測得的同步自整角機(jī)轉(zhuǎn)軸旋轉(zhuǎn)的角度值相比較,并且每隔5°做一次測量。實(shí)驗(yàn)中得到的測角誤差曲線圖如圖16所示,其中橫坐標(biāo)為理論角度值,縱坐標(biāo)為實(shí)際測角誤差。從圖中可以看出,采用本文所設(shè)計(jì)的同步自整角機(jī)自動(dòng)測試系統(tǒng)的測角誤差在0.1°的范圍內(nèi),滿足系統(tǒng)的精度設(shè)計(jì)要求。
本文設(shè)計(jì)了一套基于AD2S80A的高精度同步自整角機(jī)動(dòng)態(tài)測角系統(tǒng),能夠滿足測角精度為0.3′,實(shí)時(shí)測角誤差為6′小于0.1°,滿足同步自整角機(jī)動(dòng)態(tài)測角的高精度設(shè)計(jì)要求。在硬件設(shè)計(jì)上,采用Scott變壓器,AD2S80A轉(zhuǎn)換器,濾波電路加單片機(jī)的簡潔軸角測量電路,保證了測量的實(shí)時(shí)性,可靠性與準(zhǔn)確性。在軟件設(shè)計(jì)上采用單片機(jī)結(jié)合上位機(jī)的方式,不僅可以在數(shù)碼管上實(shí)時(shí)顯示出當(dāng)前角度值,又具備了上位機(jī)功能友好的用戶交互系統(tǒng)顯示界面。在傳輸方式上,采用Modbus通信協(xié)議與用LabVIEW構(gòu)建的上位機(jī)用戶交互系統(tǒng)進(jìn)行相關(guān)的數(shù)據(jù)傳輸。最后,通過實(shí)驗(yàn)比對與分析,在驗(yàn)證本套同步自整角機(jī)自動(dòng)測試系統(tǒng)滿足測角需求的同時(shí),為下一步優(yōu)化測角系統(tǒng)奠定基礎(chǔ)。