晏 宇 陳永忠 俞路陽(yáng)
(中國(guó)科學(xué)院上海應(yīng)用物理研究所 上海 201800)
束流截面是表征束流性能的重要參數(shù),束流截面測(cè)量系統(tǒng)可獲得束流截面的形狀和大小、束流發(fā)射度、能散度以及能量等參數(shù),對(duì)加速器調(diào)試、運(yùn)行和研究必不可少。上海深紫外自由電子激光(SDUV-FEL)[1]的束流截面測(cè)量系統(tǒng)[2]包括圖像采集、氣動(dòng)控制和步進(jìn)電機(jī)控制三大子系統(tǒng),均由分立模塊組成,其中步進(jìn)電機(jī)控制子系統(tǒng)選用美國(guó)Galil公司的DMC-21x3運(yùn)動(dòng)控制卡[3],配合驅(qū)動(dòng)器細(xì)分控制,定位精度達(dá)1 mm。
隨著SDUV-FEL控制步進(jìn)電機(jī)數(shù)量的增加,原有電動(dòng)控制系統(tǒng)的安全保護(hù)需額外定制的軟件系統(tǒng)實(shí)現(xiàn),對(duì)束流測(cè)量系統(tǒng)的安全性和精確性有較大影響,亟需對(duì)現(xiàn)有設(shè)備提出改進(jìn)方案。上海光源采用的束流位置測(cè)量(Beam Position Monitor, BPM)系統(tǒng)參考斯洛文尼亞Instrumentation Technology公司的Libera EBPM處理器[4],采用RF信號(hào)直接采樣處理的工作模式,利用帶通欠采樣技術(shù)對(duì)RF信號(hào)進(jìn)行量化后,在FPGA(Field- Programmable Gate Array)中完成數(shù)字下變頻、濾波、抽取等處理而得到束流位置,典型的采樣率為百M(fèi)Hz。這類(lèi)處理器能同時(shí)進(jìn)行閉軌、逐圈位置、快軌道反饋用束流位置的精確測(cè)量,數(shù)據(jù)服務(wù)器內(nèi)置其中。參考該 BPM 系統(tǒng)的成功案例,本文提出基于 ARM(Advanced RISC Machines)與FPGA的運(yùn)動(dòng)控制平臺(tái)方案。
選用ARM與FPGA作為運(yùn)動(dòng)控制的嵌入式通用平臺(tái),用于束流截面測(cè)量系統(tǒng)的電動(dòng)位置和氣動(dòng)位置控制。ARM用于接入EPICS系統(tǒng)、電機(jī)速度控制及位置控制;FPGA完成步進(jìn)電機(jī)的閉環(huán)控制,用于接收并處理步進(jìn)電機(jī)的脈沖控制信號(hào),同時(shí)處理光柵尺提供的反饋信號(hào)。本文對(duì)嵌入式束流截面測(cè)量系統(tǒng)的總體結(jié)構(gòu),硬件接口設(shè)計(jì)和軟件設(shè)計(jì)進(jìn)行了分析。
電機(jī)控制模塊是運(yùn)動(dòng)控制平臺(tái)的核心功能模塊,主要性能指標(biāo)包括:外接八路步進(jìn)電機(jī),每路步進(jìn)電機(jī)通過(guò)限位信號(hào)和光柵尺反饋信號(hào)實(shí)現(xiàn)電機(jī)閉環(huán)控制,提供多個(gè)I/O擴(kuò)展接口,以便接入圖像采集系統(tǒng)和氣動(dòng)控制系統(tǒng)。束流截面測(cè)量系統(tǒng)采用ARM與FPGA芯片作為主控芯片,硬件系統(tǒng)包括ARM模塊、FPGA模塊、步進(jìn)電機(jī)接口板模塊。系統(tǒng)總體設(shè)計(jì)方案如圖1所示。
在同行評(píng)審結(jié)束之后,相關(guān)美國(guó)國(guó)立衛(wèi)生研究院中心還將對(duì)擬資助課題進(jìn)行一系列評(píng)估,包括與美國(guó)國(guó)立衛(wèi)生研究院資助原則的一致性、課題經(jīng)費(fèi)預(yù)算評(píng)估、申請(qǐng)人課題組織管理系統(tǒng)評(píng)估、申請(qǐng)人能力評(píng)估、與公共政策及需求的一致性評(píng)估等。
2.3.9 腎小球?yàn)V過(guò)率 2項(xiàng)研究[6,16]報(bào)道了腎小球?yàn)V過(guò)率,各研究間有統(tǒng)計(jì)學(xué)異質(zhì)性(P=0.001,I2=90.4%),采用隨機(jī)效應(yīng)模型進(jìn)行分析,詳見(jiàn)圖10。Meta分析結(jié)果顯示,兩組患者腎小球?yàn)V過(guò)率比較,差異無(wú)統(tǒng)計(jì)學(xué)意義[WMD=3.97,95%CI(-6.87,14.81),P=0.47]。
圖1 系統(tǒng)總體設(shè)計(jì)原理框圖Fig.1 Block diagram of overall system design.
采用基于 ARM 和 FPGA的控制平臺(tái),移植Linux操作系統(tǒng)到ARM中,通過(guò)IOC編程即可接入現(xiàn)有EPICS環(huán)境。ARM作為主控芯片,發(fā)送脈沖控制信號(hào);利用FPGA的I/O端口多、功耗低、主頻高的優(yōu)點(diǎn),充分實(shí)現(xiàn)電機(jī)控制器的功能。ARM和FPGA平臺(tái)的優(yōu)點(diǎn)在于:便于對(duì)系統(tǒng)控制策略進(jìn)行修改;根據(jù)實(shí)際需求對(duì)控制信號(hào)參數(shù)進(jìn)行設(shè)置,使系統(tǒng)具有良好的可靠性、可維護(hù)性及可擴(kuò)展性;降低了硬件采購(gòu)的成本??刂破脚_(tái)可在步進(jìn)電機(jī)控制器基礎(chǔ)上,利用空余的FPGA的I/O端口進(jìn)行功能擴(kuò)展,滿足后續(xù)的擴(kuò)展功能,系統(tǒng)保護(hù)通過(guò)FPGA硬件實(shí)現(xiàn),不需使用額外的軟件。這樣充分利用了ARM的網(wǎng)絡(luò)傳輸功能和FPGA的并行數(shù)據(jù)處理功能,提高了電機(jī)控制系統(tǒng)的可靠性和擴(kuò)展性。
秦錫麟,1942年出生于江西南昌,1964年畢業(yè)于景德鎮(zhèn)陶瓷學(xué)院美術(shù)系,原任景德鎮(zhèn)陶瓷學(xué)院黨委書(shū)記、院長(zhǎng),現(xiàn)任景德鎮(zhèn)陶瓷學(xué)院名譽(yù)院長(zhǎng)、教授、中國(guó)工藝美術(shù)大師。中國(guó)工藝美術(shù)大師評(píng)審委員會(huì)評(píng)委、中國(guó)陶瓷藝術(shù)評(píng)審委員會(huì)主任委員、中國(guó)陶瓷協(xié)會(huì)副理事長(zhǎng)、中國(guó)工藝美術(shù)學(xué)會(huì)副理事長(zhǎng)、中國(guó)美術(shù)家協(xié)會(huì)陶瓷專業(yè)委員會(huì)委員。
(2) 輸出控制信號(hào)接口設(shè)計(jì)。輸出信號(hào)為步進(jìn)電機(jī)的兩路脈沖控制信號(hào),每路都有使能、脈沖和方向信號(hào),8路共24個(gè)輸出信號(hào)。FPGA輸出信號(hào)經(jīng)電平轉(zhuǎn)換和光電隔離后輸?shù)讲竭M(jìn)電機(jī)驅(qū)動(dòng)器。
運(yùn)動(dòng)控制平臺(tái)系統(tǒng)軟件設(shè)計(jì)包括FPGA控制模塊、Linux系統(tǒng)的驅(qū)動(dòng)開(kāi)發(fā)、控制界面編程和EPICS的移植。FPGA編程采用模塊化設(shè)計(jì),單獨(dú)控制各路步進(jìn)電機(jī),以完善系統(tǒng)的控制功能,便于提高電機(jī)的控制精度和步進(jìn)電機(jī)控制器的靈敏度,增強(qiáng)系統(tǒng)的可靠性;ARM部件編程在嵌入式Linux操作系統(tǒng)環(huán)境下實(shí)現(xiàn)。
S3C2440的CPU主頻400 MHz,最高533 MHz;Flash容量64 MB,可供移植嵌入式Linux操作系統(tǒng)。
FIFO存儲(chǔ)器內(nèi)部有讀寫(xiě)指針,使用數(shù)據(jù)寄存器訪問(wèn),當(dāng)ARM讀取一個(gè)數(shù)據(jù)后,F(xiàn)IFO讀指針會(huì)指向下一個(gè)數(shù)據(jù),再次讀取時(shí)讀取下一個(gè)數(shù)據(jù),寫(xiě)入端操作同理。
XC3S400-4PQ208芯片的系統(tǒng)門(mén)數(shù)400 k,等效邏輯單元8064,分布式RAM容量56 kb,塊RAM容量288 kb,專用乘法器5個(gè),數(shù)字時(shí)鐘管理單元4個(gè),最大用戶IO數(shù)141個(gè)。
FPGA到ARM的接口包括上行異步FIFO和下行異步FIFO,判斷兩個(gè)異步FIFO的狀態(tài)。上行異步和下行異步 FIFO分別用來(lái)緩存來(lái)自或發(fā)送給ARM的數(shù)據(jù)。
圖2 X路步進(jìn)電機(jī)接口電路Fig.2 X-axis of stepper motor interface circuit.
圖3 步進(jìn)電機(jī)接口板實(shí)物圖Fig.3 PCB of stepper motor interface board.
(1) 輸入限位信號(hào)接口設(shè)計(jì)。輸入限位信號(hào)包括限位信號(hào) LIMITX+、LIMITX-~LIMITE+、LIMITE-,檢測(cè)到限位信號(hào)后,限位信號(hào)觸發(fā),立即停止相應(yīng)電機(jī)的運(yùn)動(dòng);限位消除,電機(jī)才能在該方向上繼續(xù)運(yùn)動(dòng)。
FPGA模塊的主要功能是利用XC3S400的I/O端口設(shè)計(jì)電機(jī)控制信號(hào)的輸入輸出、光柵尺信號(hào)的輸入以及外圍的擴(kuò)展輸入輸出。還可通過(guò)JTAG接口編程對(duì)I/O進(jìn)行重配置,增加了系統(tǒng)的靈活性。
(3) 光柵尺信號(hào)接口設(shè)計(jì)。光柵尺信號(hào)提供三對(duì)差分信號(hào)A+、A–、B+、B–、Z+、Z–作為反饋,三對(duì)信號(hào)需經(jīng)差分電路轉(zhuǎn)換為單路信號(hào)A、B、Z。差分電路由 26LS32構(gòu)成,將輸入的一對(duì)極性相反的光柵尺反饋信號(hào)轉(zhuǎn)換為單極性的方波信號(hào)。其中A、B兩路信號(hào)為正交脈沖信號(hào),Z路信號(hào)每轉(zhuǎn)產(chǎn)生一個(gè)低電平脈沖,用于回零時(shí)的定位控制。
經(jīng)比較選用:①水功能區(qū)水質(zhì)達(dá)標(biāo)率;②城市污水處理率;③水土流失治理率。通過(guò)這3項(xiàng)指標(biāo)反映區(qū)域?qū)λ|(zhì)、水生態(tài)保護(hù)和修復(fù)方面所取得的成效。
FPGA內(nèi)部邏輯功能主要完成控制信號(hào)的轉(zhuǎn)發(fā),與S3C2440的接口連接如圖4所示。FPGA中的狀態(tài)/命令寄存器用于對(duì) FPGA內(nèi)部交換表進(jìn)行控制操作;設(shè)置兩個(gè)FIFO分別用作FPGA與ARM間數(shù)據(jù)傳輸?shù)妮斎肱c輸出緩沖;一個(gè)用作 FIFO數(shù)據(jù)寄存器,用于讀取 FIFO存儲(chǔ)器的數(shù)據(jù),一個(gè)用作控制寄存器。S3C2440提供了 16位寬數(shù)據(jù)總線DATA[0:15]和8位寬地址總線ADDR[0:7],并采用4組控制信號(hào)進(jìn)行控制數(shù)據(jù)傳輸:nGCS2為片選使能控制信號(hào),即選擇BANK2,nOE為使能信號(hào);nWE為寫(xiě)數(shù)據(jù)信號(hào),nRD為讀信號(hào),nINT0為FPGA對(duì)ARM的中斷信號(hào)。該控制信號(hào)須由GPIO控制寄存器單獨(dú)設(shè)定。由于S3C2440的總線時(shí)鐘頻率為100 MHZ,總線操作周期很短,F(xiàn)PGA可通過(guò)控制ARM9的nWAIT引腳延長(zhǎng)ARM總線操作周期[5]。
圖4 S3C2440與XC3S400的接口連接Fig.4 Interface connection between S3C2440 and XC3S400.
步進(jìn)電機(jī)接口板中X路控制電路見(jiàn)圖2,其余7路與X路類(lèi)同;接口板印刷電路板實(shí)物見(jiàn)圖3。
束流截面測(cè)量系統(tǒng)硬件實(shí)物如圖5,步進(jìn)電機(jī)接口板位于正中,接口板上方小板是FPGA實(shí)驗(yàn)板,接口板左邊是ARM實(shí)驗(yàn)板,機(jī)箱兩側(cè)是電源,機(jī)箱下部是步進(jìn)電機(jī)驅(qū)動(dòng)器;FPGA與步進(jìn)電機(jī)接口板通過(guò)總線插槽連接,F(xiàn)PGA與ARM間的數(shù)據(jù)通信接口通過(guò)外接總線連接。圖中接口板各器件焊接及接口連接全部手工實(shí)現(xiàn),檢測(cè)并保證了開(kāi)發(fā)板中各功能模塊的信號(hào)完整性。
幾個(gè)月下來(lái),媼婦譜的萬(wàn)千種變局,師徒四人閉門(mén)苦研,都已經(jīng)爛熟于心,這飛來(lái)的棋局,果然是玄之又玄,打開(kāi)了圍棋的眾妙之門(mén),有時(shí)候他們連夜打譜,聽(tīng)著夜雨打著窗外的新荷,不知東方之既白,這種夢(mèng)幻般的體會(huì),也是從前沒(méi)有過(guò)的,星雨常想,比較起畫(huà)畫(huà)、彈琴、書(shū)法,也許圍棋才是我的真愛(ài)?這樣一閃念,林師父、蘇師父、顏師父的影像便在她眼前一一浮現(xiàn),按下葫蘆浮起瓢,讓她自己都覺(jué)得內(nèi)疚起來(lái)。
圖5 束流截面測(cè)量系統(tǒng)硬件實(shí)物圖Fig.5 Photo of the prototype beam profile diagnostic system.
推薦理由:1.十三五重點(diǎn)圖書(shū),國(guó)家出版基金資助項(xiàng)目 2.主編系中科院院士,參與編寫(xiě)的人員均為國(guó)內(nèi)該領(lǐng)域成果比較突出的學(xué)者,圖書(shū)原創(chuàng)性高,內(nèi)容權(quán)威,包括很多發(fā)表在Science,Nature等國(guó)際一流期刊上的研究成果。3.代表了我國(guó)近年來(lái)在電催化納米材料科學(xué)和技術(shù)研究中的最新進(jìn)展。
基體元素信號(hào)值遠(yuǎn)遠(yuǎn)高于其空白值,且基體元素信號(hào)值的穩(wěn)定性也是影響測(cè)定結(jié)果穩(wěn)定性的主要因素,故實(shí)驗(yàn)選擇63Cu的信號(hào)強(qiáng)度為考核對(duì)象。在表1中其他條件參數(shù)不變的情況下,采用純銅光譜標(biāo)準(zhǔn)樣品T02逐級(jí)優(yōu)化了激光剝蝕系統(tǒng)的激光能量、剝蝕孔徑、掃描速率以及載氣流速4個(gè)影響激光剝蝕固體進(jìn)樣產(chǎn)生瞬時(shí)信號(hào)的關(guān)鍵參數(shù),使63Cu的信號(hào)強(qiáng)度穩(wěn)定并達(dá)到最大值[11]。
FPGA控制模塊軟件設(shè)計(jì)控制邏輯如圖6所示。FPGA編程需實(shí)現(xiàn)FIFO邏輯控制、時(shí)鐘發(fā)生器、步進(jìn)電機(jī)控制和光柵尺反饋信號(hào)處理。
本方案中ARM芯片采用韓國(guó)Samsung公司的ARM9系列處理器S3C2440,F(xiàn)PGA芯片采用美國(guó)Xilinx公司的Spartan 3系列的XC3S400-4PQ208。
圖6 FPGA模塊控制邏輯Fig.6 Control logic of the FPGA module.
“微型探究”策略引導(dǎo):提升學(xué)生的數(shù)學(xué)抽象能力是課堂探究教學(xué)的中心環(huán)節(jié),因此在課堂中教師要設(shè)計(jì)富有思考性的“微型探究”活動(dòng),引導(dǎo)學(xué)生經(jīng)歷一個(gè)從“形”到“數(shù)”的認(rèn)識(shí)過(guò)程,也就是要經(jīng)歷從幾何直觀到理性認(rèn)識(shí)的過(guò)程,使學(xué)生在探索、體驗(yàn)和感悟中促成思考方法的不斷優(yōu)化,提升數(shù)學(xué)抽象能力,催生學(xué)習(xí)的智慧.
時(shí)鐘發(fā)生器產(chǎn)生FIFO讀寫(xiě)時(shí)鐘信號(hào),F(xiàn)IFO通過(guò)寫(xiě)時(shí)鐘信號(hào)將數(shù)據(jù)讀入,F(xiàn)IFO數(shù)據(jù)半滿時(shí)(存入4096個(gè)bit)產(chǎn)生半滿中斷信號(hào),通知ARM讀取數(shù)據(jù)。
步進(jìn)電機(jī)閉環(huán)控制通過(guò)接收ARM發(fā)送的脈沖控制信號(hào),使用Verilog HDL編程實(shí)現(xiàn)步進(jìn)電機(jī)的邏輯控制功能。光柵尺反饋信號(hào)將反饋的數(shù)據(jù)信號(hào)存入FIFO中,待ARM進(jìn)行讀取。FPGA模塊中FIFO功能測(cè)試使用邏輯分析儀及ModelSim仿真觀察程序波形,可實(shí)時(shí)獲取和調(diào)試信號(hào)邏輯。
嵌入式Linux系統(tǒng)采用2.6.24的內(nèi)核版本,系統(tǒng)移植主要使用U-boot實(shí)現(xiàn),文件系統(tǒng)的燒寫(xiě)和程序配置參照 ARM 開(kāi)發(fā)板的在線文檔實(shí)現(xiàn)。FPGA設(shè)備驅(qū)動(dòng)開(kāi)發(fā)采用通用的編程方案,使FPGA驅(qū)動(dòng)程序不限于固定的FPGA芯片。FPGA設(shè)備在Linux系統(tǒng)中屬字符設(shè)備,Linux將所有字符設(shè)備都作為文件進(jìn)行操作,對(duì)FPGA設(shè)備完成初始化后,系統(tǒng)編程需實(shí)現(xiàn)的操作函數(shù)接口封裝在 file_operations結(jié)構(gòu)體中,接口封裝主要函數(shù)包括對(duì)文件的基本操作如 read()、close()、read()、write()等,根據(jù) FPGA與ARM的連接邏輯對(duì)模塊函數(shù)進(jìn)行定制,通過(guò)改寫(xiě)ioctl()函數(shù)功能,實(shí)現(xiàn)對(duì)FPGA設(shè)備的控制。FPGA設(shè)備驅(qū)動(dòng)程序整體調(diào)用過(guò)程如圖7。
圖7 FPGA設(shè)備驅(qū)動(dòng)數(shù)據(jù)流圖Fig.7 Dataflow of FPGA device driver.
FPGA驅(qū)動(dòng)程序的主要功能是:對(duì)FPGA設(shè)備進(jìn)行初始化和釋放操作;把控制信息從內(nèi)核傳到FPGA以及從FPGA讀取數(shù)據(jù);讀取用戶區(qū)間應(yīng)用程序的數(shù)據(jù),傳給FPGA設(shè)備文件;回送應(yīng)用程序請(qǐng)求的數(shù)據(jù)、檢測(cè)和處理FPGA使用時(shí)出現(xiàn)的中斷請(qǐng)求和數(shù)據(jù)處理。Linux通用中斷程序的流程是在應(yīng)用程序向Linux申請(qǐng)了中斷通道后,系統(tǒng)會(huì)響應(yīng)外部中斷IRQ_EINT0,進(jìn)入中斷處理程序。中斷處理接受各中斷接收的信息反饋給設(shè)備,并根據(jù)服務(wù)的中斷類(lèi)型進(jìn)行數(shù)據(jù)處理。FPGA設(shè)備驅(qū)動(dòng)需準(zhǔn)確快速實(shí)現(xiàn)數(shù)據(jù)的讀寫(xiě)操作和阻塞操作,實(shí)現(xiàn) ARM和FPGA的全雙工數(shù)據(jù)通信。驅(qū)動(dòng)程序編寫(xiě)后,需在FPGA端對(duì)上行和下行FIFO環(huán)回。
FPGA設(shè)備的編程通過(guò)Verilog HDL語(yǔ)言完成,波形仿真結(jié)果通過(guò)Modelsim分析,RTL電路圖由Synplify生成,圖8為FIFO模塊的波形仿真圖。ARM 端嵌入式平臺(tái)下測(cè)試用的圖形界面用 Qtopia編程實(shí)現(xiàn),圖9為ARM與FPGA通信控制界面圖。
圖8 FPGA光柵尺信號(hào)仿真波形圖Fig.8 Simulation wave of FPGA’s encoder signals.
圖9 ARM與FPGA通信控制界面Fig.9 ARM embedded system control GUI.
實(shí)驗(yàn)室環(huán)境下硬件測(cè)試系統(tǒng)的編碼器回饋頻率最高可達(dá)12 MHz,步進(jìn)輸出頻率最高達(dá)3 MHz (脈沖及方向),可實(shí)現(xiàn)光柵尺回饋、原點(diǎn)復(fù)歸、正負(fù)極限控制、支持1–8軸電機(jī)控制,單軸控制下配合驅(qū)動(dòng)細(xì)分控制器的定位精度為 2 μm,與 DMC-21x3運(yùn)動(dòng)控制卡的定位精度相差1 μm。
搭建了ARM和FPGA運(yùn)動(dòng)控制平臺(tái)后,控制系統(tǒng)的擴(kuò)展性得到提高,實(shí)現(xiàn)了預(yù)想中的要求。后續(xù)的開(kāi)發(fā)工作包括在Linux中完善步進(jìn)電機(jī)控制的GUI開(kāi)發(fā)及EPICS環(huán)境的移植,進(jìn)一步改進(jìn)FPGA的控制邏輯,提高步進(jìn)電機(jī)控制安全性和定位精度。
ARM和FPGA架構(gòu)的束流截面測(cè)量系統(tǒng)進(jìn)展順利,對(duì)單個(gè)步進(jìn)電機(jī)控制可達(dá)到2 μm的定位精度,有效實(shí)現(xiàn)了單個(gè)步進(jìn)電機(jī)的閉環(huán)控制??紤]到FEL隧道中同時(shí)操作多個(gè)電機(jī)的需求,后期開(kāi)發(fā)需進(jìn)一步完善系統(tǒng)功能,在進(jìn)行現(xiàn)場(chǎng)在線測(cè)試后,爭(zhēng)取替代現(xiàn)有隧道中的電機(jī)控制系統(tǒng),從而提高FEL裝置數(shù)據(jù)采集可靠性和擴(kuò)展性,并改善束流測(cè)量的效率和準(zhǔn)確率。
1 ZHAO Zhentang. Design study for the sduv-fel facility[R].Proceedings of APAC, Gyeongju, Korea, 2004: 161–163
2 Takano S, Masaki M. OTR based monitor of injection beam for top-up operation of the spring-8[R]. Proceedings of the DIPAC, 2005: 72–74
3 Galil Motion Control Inc. DMC-21x2/21x3 Manual[Z].Rocklin, California, US, 2008
4 Instrumentation Technologies Company. Libera electron specification 1.91[Z]. 2007
5 劉 源, 朱善安. 基于ARM9和CPLD的嵌入式工業(yè)控制系統(tǒng)[J]. 機(jī)電工程, 2007, 24(1): 39–49 LIU Yuan, ZHU Shanan. The embedded industry controlling system based on ARM9 and CPLD[J]. Mech Electr Eng Mag, 2007, 24(1): 39–49