《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的煙支檢測(cè)系統(tǒng)的設(shè)計(jì)
基于FPGA的煙支檢測(cè)系統(tǒng)的設(shè)計(jì)
電子元器件應(yīng)用
董 斌,,陳 瑞,左 季,,王光耀 西安電子科技大學(xué)
摘要: 為了實(shí)現(xiàn)煙支剔除的自動(dòng)化程度,,減少人為干預(yù)量和提高剔除精度,,文中給出了采用FPGA硬件編程方法將數(shù)據(jù)采集部件采集到的煙支數(shù)據(jù)經(jīng)A/D轉(zhuǎn)換后送入FPGA,然后根據(jù)一定的判決算法輸出控制信號(hào),,以用于控制剔除閥動(dòng)作,,同時(shí)將數(shù)據(jù)通過(guò)計(jì)算機(jī)串口讀入上位機(jī),以此實(shí)現(xiàn)機(jī)械剔除控制和顯示實(shí)現(xiàn)方法,。
關(guān)鍵詞: FPGA 煙支檢測(cè) CycloneII EP3C16Q
Abstract:
Key words :

摘要:為了實(shí)現(xiàn)煙支剔除的自動(dòng)化程度,,減少人為干預(yù)量和提高剔除精度,文中給出了采用FPGA" title="FPGA">FPGA硬件編程方法將數(shù)據(jù)采集部件采集到的煙支數(shù)據(jù)經(jīng)A/D轉(zhuǎn)換后送入FPGA,,然后根據(jù)一定的判決算法輸出控制信號(hào),,以用于控制剔除閥動(dòng)作,同時(shí)將數(shù)據(jù)通過(guò)計(jì)算機(jī)串口讀入上位機(jī),,以此實(shí)現(xiàn)機(jī)械剔除控制和顯示實(shí)現(xiàn)方法,。
關(guān)鍵詞:FPGA;煙支檢測(cè)" title="煙支檢測(cè)">煙支檢測(cè);數(shù)據(jù)處理,;問(wèn)題煙,;剔除

0 引言
    煙支在生產(chǎn)過(guò)程中,由于多種因素的影響,,可能會(huì)使成品煙的煙絲填充不均勻,,煙支的某節(jié)煙絲過(guò)少或過(guò)多,從而出現(xiàn)空頭煙,、超重?zé)煛⒊p煙,。本系統(tǒng)采用可編程器件控制煙支檢測(cè),,該方法較其他單獨(dú)硬件設(shè)計(jì)具有可重用性高,編程方便,,設(shè)計(jì)成本低,,開(kāi)發(fā)周期短,控制靈活,,剔除率高等優(yōu)點(diǎn),;再者,現(xiàn)在的煙支剔除大部分都是人工挑選,,故存在工人工作量大,,挑選不干凈等問(wèn)題,而該系統(tǒng)可使問(wèn)題煙的判別,、剔除工作自動(dòng)進(jìn)行,,可對(duì)問(wèn)題煙進(jìn)行挑選,并能夠剔除問(wèn)題煙,。

1 硬件設(shè)計(jì)
    煙支檢測(cè)系統(tǒng)是用于檢測(cè)煙支某些參數(shù)(如空頭煙,、重量、密度等)的一個(gè)系統(tǒng),,該系統(tǒng)一般可由數(shù)據(jù)采集(傳感器)部件,、數(shù)據(jù)處理部件、數(shù)據(jù)顯示部件,、機(jī)械控制部件等幾個(gè)部分構(gòu)成,。其系統(tǒng)框圖如圖1所示。

a.JPG


    其中數(shù)據(jù)采集部件是系統(tǒng)與被檢測(cè)參數(shù)最直接接觸的部分,,它是整個(gè)系統(tǒng)的數(shù)據(jù)來(lái)源,。后期處理是否跟實(shí)際一致,直接跟它相關(guān),。一般對(duì)應(yīng)不同的物理量,,應(yīng)選擇不同的傳感器,如空頭煙檢測(cè)可選擇光電探頭或電容式探頭,重量控制可選擇重量傳感器,,密度控制則應(yīng)選擇密度傳感器,。
    數(shù)據(jù)處理部件是整個(gè)系統(tǒng)的核心,傳感器采集的數(shù)據(jù)主要送往該部件進(jìn)行處理,。它一般可由A/D采樣板,,差分傳輸板,F(xiàn)PGA處理主板組成,。傳感器一般得到的數(shù)據(jù)是模擬量,,故應(yīng)將數(shù)據(jù)送到數(shù)字處理系統(tǒng)進(jìn)行處理,以將其轉(zhuǎn)化成數(shù)字量來(lái)進(jìn)行后期處理,。為了保證傳輸?shù)恼_性和可靠性,,在A/D采樣板送出數(shù)據(jù)到系統(tǒng)主板之間應(yīng)使用雙絞線差分傳輸。系統(tǒng)主板主要是以FPGA為核心的控制板,,可實(shí)現(xiàn)數(shù)據(jù)處理(剔除)算法,,并為后面的機(jī)械部分提供控制信號(hào)以及將采集和運(yùn)算數(shù)據(jù)送到顯示器進(jìn)行顯示,從而滿足系統(tǒng)設(shè)計(jì)的要求,。
    數(shù)據(jù)顯示部件也稱為人機(jī)交互接口,,該部件是整個(gè)系統(tǒng)的最直觀的表現(xiàn)。它是用戶跟系統(tǒng)進(jìn)行交互的主要部分,,用戶可以在其上面選擇一些閾值和處理方法等參數(shù),,也可以控制系統(tǒng)的啟動(dòng)和停止。同時(shí),,系統(tǒng)再將一些重要數(shù)據(jù)顯示出來(lái),,使用戶能夠直觀得出該系統(tǒng)的工作狀況等參數(shù)。
    機(jī)械控制部件是整個(gè)系統(tǒng)動(dòng)作的執(zhí)行者,,因?yàn)橄到y(tǒng)板內(nèi)部都是弱電,,不能驅(qū)動(dòng)機(jī)械部件動(dòng)作,故在其中間需加驅(qū)動(dòng)電路,,以使其能夠正常工作,。其工作主要是當(dāng)數(shù)據(jù)處理部件根據(jù)一定的判決算法得到某煙為問(wèn)題煙時(shí),對(duì)這些問(wèn)題煙進(jìn)行剔除,。從而使系統(tǒng)能夠自動(dòng)的檢測(cè)出問(wèn)題煙并控制剔除動(dòng)作,,減少人工的干預(yù)量,達(dá)到自動(dòng)化的目標(biāo),。



2 器件選型
2.1 數(shù)據(jù)采集部件(探頭)的選擇
    數(shù)據(jù)采集部件一般位于整個(gè)系統(tǒng)的最前端,,它的選型對(duì)系統(tǒng)的穩(wěn)定性、可行性有很大影響,,本系統(tǒng)選擇光電傳感器作為探頭來(lái)對(duì)煙支的數(shù)據(jù)進(jìn)行采集,,它的靈敏度直接與剔除率有關(guān),。為了讓剔除效果達(dá)到最好,探頭靈敏度必須調(diào)整到合適的設(shè)置值,。
    靈敏度包括靜態(tài)靈敏度和動(dòng)態(tài)靈敏度兩種,,靜態(tài)靈敏度主要是在靜態(tài)情況下探頭的光反射強(qiáng)度與探頭距煙頭的距離、日光,、煙頭密度及探頭電壓等之間的關(guān)系,;動(dòng)態(tài)靈敏度是動(dòng)態(tài)情況下的性能指標(biāo)。本系統(tǒng)是讓探頭工作在不同的靈敏度下分析剔除率和誤剔率,,從而選定剔除性能最好的靈敏度器件,。動(dòng)態(tài)靈敏度的另一個(gè)影響因素為動(dòng)態(tài)位置誤差,即在采樣時(shí)間內(nèi),,由輪盤(與軸編碼器同步)轉(zhuǎn)動(dòng)造成的位置變化所引起的探頭誤差,,這里主要從位置誤差和探頭作用距離上比較,圖2所示是動(dòng)態(tài)位置誤差示意圖,。

b.JPG


    在圖2中,,R表示推煙板曲軸的輪盤半徑,,一次采樣過(guò)程的起點(diǎn)為p1,,結(jié)束位置為p2,該段持續(xù)時(shí)間內(nèi)的曲軸誤差為δr,,其中:
    c.JPG
    若所選A/D采樣速率為50kHz,,采樣周期為2×15-5s,那么,,按每分鐘400轉(zhuǎn)計(jì)算,,一次采樣時(shí)間內(nèi)的輪盤轉(zhuǎn)動(dòng)弧度為:
    c.JPG
    取采樣10次的平均,其位置誤差不到4μm,。而根據(jù)探頭的位置響應(yīng)曲線,,探頭的最佳檢測(cè)距離在離煙2~3.5mm處,2mm>>4μm,,所以,,理想情況下由動(dòng)態(tài)位置引起的誤差可忽略不計(jì)。
    根據(jù)以上分析,,本設(shè)計(jì)選用韓國(guó)KODENSHI公司的SG-2BC傳感器,。
2.2 A/D轉(zhuǎn)換器的選擇
    ADS7841E是德州儀器公司開(kāi)發(fā)的一塊4通道,12位,,帶串行接口的模數(shù)轉(zhuǎn)換芯片,,它是一塊低功耗、高速度,、高精確度的A/D采樣芯片,,電壓為2.7~5 V,,可達(dá)到200kHz的轉(zhuǎn)換速率。根據(jù)筆者對(duì)探頭的測(cè)試,,探頭檢測(cè)的最小變化為0.5V左右,,而A/D采樣的分辨率為3.3/212V≈8×10-4V,所以,,該AD采樣芯片完全可以滿足設(shè)計(jì)要求,。
2.3 FPGA的選擇
    該系統(tǒng)采用EP3C16Q" title="EP3C16Q">EP3C16Q型FPGA進(jìn)行控制邏輯編程。該器件是ALXERA公司生產(chǎn)的CycloneII" title="CycloneII">CycloneII系列高性能現(xiàn)場(chǎng)可編程門陣列,,而且具有豐富的邏輯資源,。EP3C16Q具有15408個(gè)邏輯單元、56個(gè)嵌入式乘法器和4個(gè)鎖相環(huán)(PLL),,其內(nèi)部的RAM容量為504Kbits,,系統(tǒng)頻率高達(dá)260MHz,而且穩(wěn)定性很高,。采用單片F(xiàn)PGA實(shí)現(xiàn)邏輯控制和數(shù)據(jù)處理功能可以簡(jiǎn)化電路設(shè)計(jì),,提高系統(tǒng)的可靠性并節(jié)約成本。設(shè)計(jì)時(shí),,只需一根下載電纜連接到目標(biāo)板上,,就可以多次重復(fù)編程,而且電路調(diào)試十分方便,。


3 軟件設(shè)計(jì)
    本系統(tǒng)的核心處理程序可采用QUARTUSII7.2軟件和Verilog HDL語(yǔ)言進(jìn)行編寫,,而上位機(jī)軟件則可采用Delphi7軟件進(jìn)行編寫,其核心部分是數(shù)據(jù)處理部件,,它主要由A/D采樣,、差分傳輸和FPGA數(shù)據(jù)處理部分構(gòu)成,為了使系統(tǒng)實(shí)現(xiàn)更加方便,,且便于控制,,選擇FPGA對(duì)剔除問(wèn)題煙的算法非常關(guān)鍵。圖3所示是整個(gè)系統(tǒng)的程序框圖,。

d.JPG


3.1 A/D采樣
    ADS7841E是一款4通道12位的A/D轉(zhuǎn)換芯片,,它是由時(shí)鐘控制的串行輸入芯片,芯片DIN中的A2,、A1,、A0位是通道選擇位,MODE位是12b-it/8bit轉(zhuǎn)換選擇位,,本設(shè)計(jì)選擇高精度的12bit轉(zhuǎn)換,,SGL/DIF位用于選擇是單端轉(zhuǎn)換還是差分轉(zhuǎn)換,本設(shè)計(jì)選擇單端轉(zhuǎn)換,。ADS7841E模塊的軟件設(shè)計(jì)原理圖如圖4所示,。

e.JPG


    圖4中,,clkin為系統(tǒng)時(shí)鐘,CH1~CH7為ADS7841E芯片的轉(zhuǎn)換結(jié)果并行輸出,,該數(shù)據(jù)可送往FPGA進(jìn)行判決處理,。
3.2 FPGA數(shù)據(jù)的處理
    在對(duì)FPGA數(shù)據(jù)進(jìn)行處理時(shí),可以采用均值剔除算法,。所謂均值剔除算法,,就是用一個(gè)樣本的當(dāng)前值與一個(gè)參考值相減,然后取絕對(duì)值,,如果結(jié)果超過(guò)某一門限,,就說(shuō)明其不符合要求,故可舍棄這個(gè)數(shù)據(jù),。假設(shè)隨機(jī)變量X具有數(shù)學(xué)期望μ和方差σ2,,那么,對(duì)于任意正數(shù)ε,,其不等式(6)成立:
    f1.jpg
    不等式(6)稱為切比雪夫不等式,,若令ε=3σ,則可得到:
    f.JPG
    其中,,μ為正態(tài)分布的期望,,σ為正態(tài)分布的均方差。由式(8)可知,,對(duì)于正態(tài)隨機(jī)變量來(lái)說(shuō),,它的值落在區(qū)間[μ-3σ,,μ+3σ]內(nèi)幾乎是必然的事件,,這就是3σ規(guī)則。
    由于均值剔除算法實(shí)現(xiàn)簡(jiǎn)單,,且剔除效率比較高,,因此,該系統(tǒng)選擇均值剔除算法作為實(shí)驗(yàn)算法來(lái)驗(yàn)證系統(tǒng)的可能性和穩(wěn)定性,。其判別模塊的原理圖如圖5所示,。

g.JPG


    圖5中,clkin為系統(tǒng)時(shí)鐘,,enclk為系統(tǒng)同步時(shí)鐘,,control為控制信號(hào)輸出。將該控制信號(hào)送往驅(qū)動(dòng)板,,即可控制機(jī)械部件以剔除問(wèn)題煙,,datain為前端A/D采樣輸出的數(shù)據(jù)。
3.3 系統(tǒng)原理實(shí)現(xiàn)
    FPGA程序中還應(yīng)包括A/D采樣控制,、算法判決,、問(wèn)題煙檢出后的剔除信號(hào)產(chǎn)生以及上位機(jī)的顯示等功能,。
    整個(gè)系統(tǒng)的同步由軸編碼器控制,軸編碼器的轉(zhuǎn)速與正常卷煙機(jī)的速度一致,,也就是說(shuō),,煙條的下落速度越快,軸編碼器的轉(zhuǎn)速越快?,F(xiàn)在,,大部分煙機(jī)的速度可達(dá)400轉(zhuǎn)/秒,煙條下落一根,,軸編碼器轉(zhuǎn)一圈(360°),。其系統(tǒng)的整體軟件實(shí)現(xiàn)原理圖如圖6所示。
    圖6所示的整個(gè)系統(tǒng)包括A/D轉(zhuǎn)換模塊,、判決模塊和顯示模塊三部分,。其中clkin為系統(tǒng)時(shí)鐘,ain,,bin,,zin為軸編碼器的輸入信號(hào),輸出的脈沖enclk為整個(gè)系統(tǒng)的同步時(shí)鐘,,該時(shí)鐘由軸編碼器產(chǎn)生,。判決模塊中的主要輸出為均值(aver)、方差(variance),、剔除控制信號(hào)(co-ntrol),;顯示模塊主要將判決模塊輸出的數(shù)據(jù)通過(guò)串口送往上位機(jī)顯示,TxD為系統(tǒng)與上位機(jī)的接口,,用于傳輸系統(tǒng)所需顯示的數(shù)據(jù)和用戶需要控制的參數(shù),。

4 設(shè)計(jì)驗(yàn)證
    該煙支檢測(cè)系統(tǒng)的實(shí)驗(yàn)條件是常溫,F(xiàn)PGA主板為5V轉(zhuǎn)3.3V供電,,剔除控制板的電源電壓為24V,,模擬煙機(jī)的轉(zhuǎn)速為200轉(zhuǎn)/秒(該數(shù)據(jù)通過(guò)顯示器進(jìn)行顯示得出)。實(shí)驗(yàn)時(shí),,先在下煙道中放置一定數(shù)量的正常煙,,再放置一些問(wèn)題煙(如空頭煙),然后通過(guò)探頭采集數(shù)據(jù)并送往A/D采樣芯片,,再將得出的數(shù)字信號(hào)送到FPGA中進(jìn)行處理,,并計(jì)算出判決量,再根據(jù)一定的剔除算法判決出問(wèn)題煙,,然后產(chǎn)生一個(gè)剔除控制信號(hào)去控制煙機(jī)上的剔除裝置,,以將問(wèn)題煙剔除,同時(shí)將計(jì)算結(jié)果中一些必要的量,、剔除的煙支數(shù),、剔除率實(shí)時(shí)的顯示到上位機(jī),,以供用戶查看和了解煙機(jī)的運(yùn)轉(zhuǎn)狀況。

5 結(jié)束語(yǔ)
    通過(guò)對(duì)整個(gè)系統(tǒng)的大量實(shí)際測(cè)驗(yàn)可知,,該系統(tǒng)能夠很好的剔除問(wèn)題煙,,并把相關(guān)的數(shù)據(jù)傳到上位機(jī)進(jìn)行顯示,同時(shí)還可以跟用戶進(jìn)行交互,,剔除率可以達(dá)到70%左右,,可以達(dá)到設(shè)計(jì)參數(shù)要求,滿足工業(yè)生產(chǎn)實(shí)際需求,。
    本系統(tǒng)雖以煙支檢測(cè)為例,,但如更換前端的傳感器與后端的機(jī)械控制部件,對(duì)于其他物體的狀態(tài)監(jiān)測(cè)同樣適用,,也可以作為數(shù)據(jù)采集與處理的一個(gè)通用平臺(tái),,因而具有廣闊的應(yīng)用前景。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。