基于FPGA的織機(jī)遠(yuǎn)程監(jiān)測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要: 選用FPGA來控制織機(jī)監(jiān)測系統(tǒng)的外圍電路,以Altera公司的Cyclone EP1C12Q240作為核心芯片,EPCS4作為系統(tǒng)的配置芯片,在SoPC上集成了軟核CPU、鎖相環(huán)、存儲器、I/O接口及可編程邏輯,并在Quartus II和Nios II IDE平臺上運(yùn)行。通過在某紡織廠現(xiàn)場系統(tǒng)調(diào)試,實(shí)現(xiàn)了對織機(jī)的實(shí)時(shí)監(jiān)測,達(dá)到了預(yù)期的目的。
關(guān)鍵詞: 織機(jī);監(jiān)測系統(tǒng);FPGA;數(shù)據(jù)采集;SoPC
紡織業(yè)是勞動密集程度高、對外依存度較高的產(chǎn)業(yè),它對我國國民經(jīng)濟(jì)建設(shè)發(fā)揮著不可替代的支柱性作用。紡織企業(yè)生產(chǎn)車間的特點(diǎn)是多機(jī)生產(chǎn),少則幾十臺,多則幾百臺織機(jī),因此,織機(jī)監(jiān)測系統(tǒng)具有不容忽視的意義。本設(shè)計(jì)針對某紡織廠目前的織機(jī)監(jiān)測現(xiàn)狀進(jìn)行了改進(jìn),該廠目前采用單片機(jī)控制外圍電路,然而單片機(jī)的時(shí)鐘頻率較低,很難滿足高速數(shù)據(jù)采集的需求。經(jīng)分析研究,若選用DSP來控制外圍電路,可以實(shí)現(xiàn)高速數(shù)據(jù)采集,但成本頗高。因此,采用FPGA作為主控芯片,應(yīng)用Nios II處理器控制外圍電路,在滿足高速數(shù)據(jù)采集和處理的同時(shí),有利于系統(tǒng)的不斷升級。
1 系統(tǒng)總體設(shè)計(jì)
織機(jī)的遠(yuǎn)程監(jiān)測主要完成基本功能和輔助功能?;竟δ馨棛C(jī)主要工作狀態(tài)參數(shù)的監(jiān)測;輔助功能主要由上位機(jī)完成,包括友好美觀的人機(jī)界面、記錄每班的生產(chǎn)效率和織機(jī)各種狀態(tài)下的動態(tài)變化、能夠供管理員或用戶隨時(shí)查詢及打印報(bào)表。
系統(tǒng)工作過程為:上電后,首先對FPGA的主控模塊進(jìn)行初始化,F(xiàn)PGA的主控模塊采集織機(jī)的各種狀態(tài)數(shù)據(jù)并進(jìn)行處理。在這一過程中,織機(jī)自帶的顯示屏?xí)磿r(shí)顯示各工藝參數(shù)。當(dāng)上位機(jī)向CAN總線發(fā)送讀取每個(gè)節(jié)點(diǎn)織機(jī)狀態(tài)參數(shù)的命令后,F(xiàn)PGA的主控模塊將織機(jī)機(jī)臺號、引緯率、產(chǎn)量及停機(jī)時(shí)數(shù)等主要工作參數(shù)寫入CAN控制器的發(fā)送緩沖區(qū)內(nèi),啟動發(fā)送命令傳送給上位機(jī)進(jìn)行相應(yīng)處理??傮w系統(tǒng)結(jié)構(gòu)如圖1所示。
2 系統(tǒng)硬件設(shè)計(jì)
FPGA的主控系統(tǒng)實(shí)際是一個(gè)基于Nios II處理器的SoPC系統(tǒng),主要完成數(shù)據(jù)采集工作,包括織機(jī)的產(chǎn)量、運(yùn)轉(zhuǎn)率、引緯率和停機(jī)時(shí)數(shù)等。其硬件平臺主要以Altera公司的Cyclone系列EP1C12Q240 FPGA為核心芯片,由系統(tǒng)存儲設(shè)備SDRAM和Flash、系統(tǒng)時(shí)鐘、串行配置芯片、I/O口、FPGA配制接口組成等。系統(tǒng)硬件結(jié)構(gòu)如圖2所示。其中,F(xiàn)lash存儲器采用4 MB的Am291V320D;SDRAM采用HY57V283220T;串行配置芯片采用Altera的EPCS4;具有JTAG接口和AS接口,通過AS接口直接對EPCS4器件進(jìn)行快速編程;采用有源晶體振蕩電路產(chǎn)生50 MHz的系統(tǒng)時(shí)鐘;電源有5 V、3.3 V和1.5 V。
2.1 外部存儲器
2.1.1 Flash電路
在FPGA器件實(shí)現(xiàn)的Nios II嵌入式處理器可以使用Flash存儲器作為通用只讀存儲器和大容量非易失性存儲器,用戶可以將基于Nios II嵌入式處理器的應(yīng)用程序通過編程器燒寫到Flash中,在程序運(yùn)行前將Flash中的代碼復(fù)制到其他速度更快的非易失性存儲器SDRAM中,然后執(zhí)行。
本系統(tǒng)選用的Flash是Am291v320,它是1 M×16 bit的CMOS工藝的Flash存儲器,采用48腳TSOP封裝,其工作電壓為3.3 V。Flash存儲電路如圖3所示,其中10腳、11腳、13腳和24腳均接有4.7 k?贅上拉電阻,因此Am291v320不采用字節(jié)方式。
2.1.2 SDRAM接口電路
在SoPC系統(tǒng)實(shí)際應(yīng)用中,由于FPGA片內(nèi)的RAM容量一般不能滿足需要,都需要外接SDRAM。SDRAM成本低、容量大,但需要實(shí)現(xiàn)刷新操作、行列管理、不同延時(shí)和命令序列等邏輯。SDRAM的操作都是由時(shí)鐘作為同步,可以理解為一個(gè)電容,總是傾向于放電,為了避免數(shù)據(jù)丟失,必須定時(shí)刷新。因此,要在系統(tǒng)中使用SDRAM,就要求微處理器具有刷新控制邏輯,或在系統(tǒng)中另外加入刷新控制邏輯電路。
本系統(tǒng)中選用的SDRAM是HY57V283220T,存儲容量為1 M×32 bit×4 Banks,4個(gè)Bank間可以通過Bank地址來選擇,其工作電壓為3.3 V。一個(gè)片鎖相環(huán)常被用于SDRAM控制器核與SDRAM芯片之間的時(shí)鐘相位調(diào)整。SDRAM接口電路如圖4所示。
2.2 串行通信接口