<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 最新生物芯片掃描儀位置檢測(cè)系統(tǒng)設(shè)計(jì),含硬件、軟件、仿真結(jié)果

          最新生物芯片掃描儀位置檢測(cè)系統(tǒng)設(shè)計(jì),含硬件、軟件、仿真結(jié)果

          作者: 時(shí)間:2015-08-17 來源:網(wǎng)絡(luò) 收藏

            引言

          本文引用地址:http://www.ex-cimer.com/article/278832.htm

            是20世紀(jì)末隨“人類基因組計(jì)劃”的研究和發(fā)展而產(chǎn)生的一項(xiàng)高新技術(shù),是人們高效地大規(guī)模獲取生物信息的有效手段。目前大部分采用熒光染料標(biāo)記待測(cè)樣品分子。掃描儀用激光激發(fā)熒光染料,通過對(duì)激發(fā)點(diǎn)的成像,檢測(cè)一個(gè)點(diǎn);結(jié)合生物芯片X-Y二維精密掃描臺(tái)上移動(dòng),實(shí)現(xiàn)對(duì)整片的掃描。X-Y二維掃描臺(tái)的位置檢測(cè)精度直接影響著掃描分辨率——生物芯片掃描儀性能的關(guān)鍵參數(shù)?;趥鹘y(tǒng)的數(shù)字電路的生物芯片掃描儀中X-Y二維掃描臺(tái)的位置檢測(cè)電路存在計(jì)數(shù)誤差和誤清零問題,本文以基于設(shè)計(jì)的位置檢測(cè)電路來解決。以芯片代替?zhèn)鹘y(tǒng)的數(shù)字電路,不僅可提高系統(tǒng)的集成度和可靠性,而且最高工作頻率已超過200MHz,通過硬件描述語言對(duì)FPGA編程,電路設(shè)計(jì)更加靈活,為生物芯片掃描儀進(jìn)一步提高掃描速度和掃描分辨率留了更大的裕量。

            1、X-Y二維掃描臺(tái)位置檢測(cè)原理

            X-Y二維掃描臺(tái)X向、Y向位置檢測(cè)元件采用開式光柵,50線/mm,由專用細(xì)分尺10細(xì)分后,測(cè)量分辨為2μm.開式光柵直接利用光電轉(zhuǎn)換原理輸出三相方波A、B、Z相。A、B相方波相位差90°(如圖1、2所示),Z相用于基準(zhǔn)點(diǎn)定位,其邏輯電平都為5V.當(dāng)A相方波超前B相方波90°時(shí),表示位移方向?yàn)檎较?,如圖1所示;當(dāng)A相方波滯后B相方波90°時(shí),表示位移方向?yàn)榉捶较?,如圖2所示。掃描臺(tái)X向、Y向每位移2μm,光柵發(fā)出一個(gè)周期的方波。

            

           

            因此,X-Y二維掃描臺(tái)的位置檢測(cè)首先要解決對(duì)光柵信號(hào)的辨向問題,辨別出X、Y向的位移方向;其次,為保證生物芯片掃描在最高掃描分辨率為5μm時(shí)仍有較高掃描質(zhì)量,X、Y方向位置檢測(cè)精度應(yīng)高于2μm,以減少掃描臺(tái)的定位誤差,因此要對(duì)光柵信號(hào)進(jìn)一步細(xì)分;此外,還要完成將光柵信號(hào)轉(zhuǎn)換成控制器能讀取的位置數(shù)據(jù),當(dāng)X向、Y向位移方向?yàn)檎龝r(shí),此位置數(shù)據(jù)遞增;當(dāng)X向、Y向位移方向?yàn)樨?fù)時(shí),此位置數(shù)遞減,并要保證實(shí)時(shí)的準(zhǔn)確可靠的提供X、Y向的位置數(shù)據(jù),作為控制器(如單片機(jī)、DSP)精確定位X-Y二維掃描臺(tái)位置的依據(jù)。

            原有的生物芯片掃描儀中X-Y二維掃描臺(tái)的一個(gè)方向的位置檢測(cè)采用4倍頻專用集成電路QA740210對(duì)光柵信號(hào)進(jìn)行辨向、細(xì)分,用4片4位二進(jìn)制74LS193計(jì)數(shù)器級(jí)聯(lián)實(shí)現(xiàn)對(duì)細(xì)分后的光柵信號(hào)16位計(jì)數(shù),計(jì)數(shù)值(即位置數(shù)據(jù))通過2片8位74LS245緩沖器輸出至控制器。這樣,X、Y兩個(gè)方向的位置檢測(cè)電路多達(dá)14片芯片,占用大量的PCB空間,布線復(fù)雜,板上信號(hào)間的串?dāng)_易引起計(jì)數(shù)誤差和誤清零現(xiàn)象,影響掃描臺(tái)的精確定位。若只用一片F(xiàn)PGA實(shí)現(xiàn)位置檢測(cè)電路,輸入為光柵信號(hào),輸出即為位置數(shù)據(jù),直接送入控制器,避免PCB板間信號(hào)串?dāng)_,就能有效消除計(jì)數(shù)誤差和誤清零現(xiàn)象。

            2、X-Y二維掃描臺(tái)位置檢測(cè)的FPGA設(shè)計(jì)方案

            選用Spartan-II系列FPGA(XC2S15-5VQ100)作為X-Y二維掃描臺(tái)的位置檢測(cè)電路,并行的對(duì)X、Y兩路光柵信號(hào)的進(jìn)行辨向、細(xì)分、計(jì)數(shù),并提供與控制器的接口,實(shí)時(shí)可靠的將X、Y向位置數(shù)據(jù)傳送給控制器。

            FPGA內(nèi)部模塊劃分如圖3所示:從X向光柵來的A、B兩相方波信號(hào)XA,XB由X向辨向細(xì)分電路辨向細(xì)分后,輸出兩路脈沖信號(hào)XCU、XCD,16位計(jì)數(shù)模塊分別對(duì)這兩路脈沖信號(hào)進(jìn)行計(jì)數(shù),并將兩計(jì)數(shù)值XUPCNT、XDOWNCNT相減,其差作為X向的16位位置數(shù)據(jù)XCNT.接口電路對(duì)3位地址信號(hào)ADDR譯碼,通過XCLR、YCLR對(duì)X、Y計(jì)數(shù)器分別清零,并選通X向或Y向位置數(shù)據(jù)輸出到控制器。

            對(duì)Y向同樣如此。本論文只以X向說明之。

            2.1、辨向細(xì)分設(shè)計(jì)

            由圖1和圖2可知,當(dāng)光柵正向移動(dòng)時(shí),A相、B相的電平邏輯表現(xiàn)為“00”→“10”→“11”→“01”→“00”序列;當(dāng)光柵反向移動(dòng)時(shí),A相、B相的電平邏輯表現(xiàn)為“00”→“01”→“11”→“10”→“00”序列。因此,只要能辨別出這兩種序列,就能實(shí)現(xiàn)辨向。

            

           

            引入外部頻率為10MHz的時(shí)鐘源,利用這個(gè)時(shí)鐘的上升沿同時(shí)對(duì)A相、B相信號(hào)采樣,作為當(dāng)前XA、XB值,以二維向量AB_new記之,AB_new通過一級(jí)觸發(fā)器后,記為AB_old,AB_new和AB_old都跟隨A相、B相方波信號(hào)變化而變化,只是AB_old要滯后AB_new一個(gè)采樣時(shí)鐘周期。這樣,就可以將AB_old和AB_new進(jìn)行比較:當(dāng)AB_old為“00”時(shí),若AB_new為“10”,即A相超B相前90°,XCU輸出一個(gè)負(fù)脈沖,XCD保持為高電平不變;若AB_new為“01”,即A相滯后B相90°,XCD輸出一個(gè)負(fù)脈沖,XCU保持為高電平不變。X向光柵信號(hào)變化一個(gè)周期,如果A相超B相90°(位移方向?yàn)檎?,XCU就會(huì)輸出四個(gè)負(fù)脈沖,如果A相滯后B相90°(位移方向?yàn)樨?fù)),XCD就會(huì)輸出四個(gè)負(fù)脈沖,同時(shí)實(shí)現(xiàn)了辨向與細(xì)分功能。

            2.2、可逆計(jì)數(shù)器設(shè)計(jì)

            用兩個(gè)16位二進(jìn)制計(jì)數(shù)器對(duì)兩路脈沖信號(hào)XCU、XCD分別計(jì)數(shù),然后用一個(gè)16位減法器對(duì)此兩個(gè)計(jì)數(shù)器的計(jì)數(shù)值作差,被減數(shù)為XCU的計(jì)數(shù)值XUPCNT,減數(shù)為對(duì)XCD的計(jì)數(shù)值XDOWNCNT,其差作為X向的位置數(shù)據(jù)XCNT.這樣,XCU有計(jì)數(shù)脈沖時(shí),XCNT就會(huì)增加,而XCD有計(jì)數(shù)脈沖時(shí),XCNT就會(huì)減小,實(shí)現(xiàn)了可逆計(jì)數(shù)。結(jié)合前面的辨向細(xì)分電路,使X向的位置數(shù)據(jù)在正向位移時(shí)增加,反向位移時(shí)減少。位置數(shù)據(jù)的變化真實(shí)反映了位移情況。

            2.3、接口電路設(shè)計(jì)

            接口電路是控制器實(shí)時(shí)可靠讀取X向、Y向的位置數(shù)據(jù)或清零的接口。接口電路由譯碼電路、輸出三態(tài)緩沖器組成。接口電路與控制器的16位數(shù)據(jù)線CNT用于FPGA向控制器傳送位置數(shù)據(jù),控制器的3位地址線ADDR作為譯碼電路的輸入:能分別輸出X、Y向位置數(shù)據(jù),以及分別對(duì)X、Y向計(jì)數(shù)器清零。譯碼電路可使X向、Y向位置數(shù)據(jù)復(fù)用16位數(shù)據(jù)線,高效的利用控制器的端口資源;對(duì)3位地址信號(hào)譯碼產(chǎn)生清零信號(hào),能有效地防止在只使用一根信號(hào)線時(shí)受干擾等原因而引起的誤清零現(xiàn)象。

            3、設(shè)計(jì)仿真和實(shí)現(xiàn)

            在ISE6.1i開發(fā)平臺(tái)上,用VHDL語言對(duì)辨向細(xì)分、計(jì)數(shù)、接口電路進(jìn)行編程實(shí)現(xiàn)。圖4是仿真波形。

            

           

            由圖4可看出,X、Y向可并行的對(duì)光柵信號(hào)辨向、細(xì)分、計(jì)數(shù),下面只以X向說明:辨向細(xì)分電路根據(jù)兩路正交的方波信號(hào)XA、XB的相位差分別在XCU,XCD上輸出頻率為XA、XB4倍的計(jì)數(shù)脈沖,實(shí)現(xiàn)了辨向細(xì)分;可逆計(jì)數(shù)器分別對(duì)XA、XB計(jì)數(shù),計(jì)數(shù)值的差XCNT隨X向的位移方向的變化增加或減少;當(dāng)控制器的地址譯碼信號(hào)ADDR為“101”時(shí),X向的位置數(shù)據(jù)XCNT輸出到16位數(shù)據(jù)線CNT;當(dāng)ADDR為“110”時(shí),F(xiàn)PGA將Y向的位置數(shù)據(jù)YCNT輸出到CNT;當(dāng)?shù)刂肪€ADDR為“001”時(shí),X向位置數(shù)據(jù)XCNT清零,CNT表現(xiàn)為高阻態(tài);當(dāng)ADDR為“010”時(shí),Y向位置數(shù)據(jù)YCNT清零,CNT表現(xiàn)為高阻態(tài);當(dāng)ADDR為其他任意值時(shí),CNT都表現(xiàn)為高阻態(tài),使控制器能向其他外設(shè)交換數(shù)據(jù)。將代碼下載到XC2S15-5VQ100后,用于生物芯片掃描儀中,準(zhǔn)確可靠的實(shí)現(xiàn)了位置檢測(cè)功能。

            4、結(jié)論

            用FPGA實(shí)現(xiàn)X-Y二維掃描臺(tái)的位置檢測(cè)電路,提高了系統(tǒng)的集成度,位置檢測(cè)快速可靠。并且,F(xiàn)PGA工作頻率高、設(shè)計(jì)靈活,可減少生物芯片掃描儀進(jìn)一步提升掃描速度和掃描分辨率的開發(fā)時(shí)間和成本。

          pic相關(guān)文章:pic是什么


          塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理
          三維掃描儀相關(guān)文章:三維掃描儀原理


          關(guān)鍵詞: 生物芯片 FPGA

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();