《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于USB移動(dòng)存儲(chǔ)的鋼絲繩探傷報(bào)警系統(tǒng)設(shè)計(jì)
基于USB移動(dòng)存儲(chǔ)的鋼絲繩探傷報(bào)警系統(tǒng)設(shè)計(jì)
摘要: 在鋼絲繩探傷檢測(cè)中,要實(shí)現(xiàn)檢測(cè)傳感器到存儲(chǔ)器的數(shù)據(jù)交換。USB移動(dòng)存儲(chǔ)器具有攜帶方便、操作快捷、成本低廉等優(yōu)點(diǎn)。隨著其技術(shù)的發(fā)展及廣泛應(yīng)用,如何實(shí)現(xiàn)使用單片機(jī)控制來完成移動(dòng)存儲(chǔ)這一過程成為了工控領(lǐng)域研究的熱點(diǎn)。
Abstract:
Key words :

1引言
  
在鋼絲繩探傷" title="探傷">探傷檢測(cè)中,要實(shí)現(xiàn)檢測(cè)傳感器到存儲(chǔ)器的數(shù)據(jù)交換。USB移動(dòng)存儲(chǔ)" title="USB移動(dòng)存儲(chǔ)">USB移動(dòng)存儲(chǔ)器具有攜帶方便、操作快捷、成本低廉等優(yōu)點(diǎn)。隨著其技術(shù)的發(fā)展及廣泛應(yīng)用,如何實(shí)現(xiàn)使用單片機(jī)控制來完成移動(dòng)存儲(chǔ)這一過程成為了工控領(lǐng)域研究的熱點(diǎn)。
  
2USB功能模塊簡(jiǎn)介
  
2.1模塊概述
  
USB[1]是—種查詢(Polling)總線,由主控制器啟動(dòng)所有的數(shù)據(jù)傳輸。USB上所掛連的外設(shè)通過由主機(jī)調(diào)度的(Host-Scheduled)和基于令牌的(Token-Based)協(xié)議來共享USB帶寬。目前,絕大多數(shù)Host功能角色被集成在各種類型的PC機(jī)(或以上層次機(jī)器)上。各種各樣的基于USB的移動(dòng)設(shè)備,包括USB移動(dòng)存儲(chǔ)器、帶USB接口的數(shù)碼相機(jī)等都集成USBSlave功能角色。這樣,就導(dǎo)致這些作為USBSlave的USB接口的數(shù)字設(shè)備無法應(yīng)用于嵌入式系統(tǒng)中。解決這一問題的根本辦法就是在需要使用USB設(shè)備的嵌入式系統(tǒng)中集成USBHost功能模塊,使之具有與USBSlave設(shè)備進(jìn)行數(shù)據(jù)傳輸?shù)哪芰?。而MemMaster[2]模塊就具有這種功能。
  
MemMaster作為USB系統(tǒng)中的Host設(shè)備,帶有一個(gè)RootHUB,可供用戶接入作為Slave的USB移動(dòng)存儲(chǔ)器。該MemMaster模塊遵守USB1.1協(xié)議規(guī)范,支持所有基于USB的移動(dòng)存儲(chǔ)器,支持FAT12、FAT16文件系統(tǒng)。MemMaster模塊可以模塊的方式,通過總線集成到用戶的數(shù)據(jù)采集等系統(tǒng)中,以提供用戶將獲得的數(shù)據(jù)通過該模塊以文件的形式保存在移動(dòng)存儲(chǔ)器中,以便需要時(shí)在PC機(jī)中進(jìn)行處理。
  
MemMaster在集成到用戶系統(tǒng)中后,表現(xiàn)為用戶系統(tǒng)的一個(gè)外部雙端口RAM" title="RAM">RAM。用戶系統(tǒng)通過向該外部RAM的指定區(qū)域?qū)懭朊詈拖鄳?yīng)的數(shù)據(jù),來控制MemMaster模塊的操作,并且從指定區(qū)域讀出響應(yīng)和相應(yīng)的數(shù)據(jù)來獲得MemMaster模塊提供的服務(wù)。通過這樣的方式,雙方實(shí)現(xiàn)協(xié)議交互。
  
2.2硬件配置
  
MemMaster支持USB1.1標(biāo)準(zhǔn),最大寫入速率達(dá)100KB/s(與測(cè)試環(huán)境有關(guān)),輸入電壓5V,工作電流100mA(不包括USB移動(dòng)存儲(chǔ)器)。INTR引腳作為從RAM到單片機(jī)的中斷信號(hào),BUSYR作為RAM的工作信號(hào),SEMR作為同步信號(hào),CER作為片選信號(hào),其他引腳在此不做詳述。
  
2.3接口使用
  
MemMaster通過雙端口RAM,直接通過總線與用戶的單片機(jī)系統(tǒng)相連。因此,就用戶單片機(jī)系統(tǒng)而言,MemMaster表現(xiàn)為一個(gè)外置的RAM,而該RAM中的部分區(qū)域不能使用、部分區(qū)域被用作協(xié)議命令和數(shù)據(jù)的交互,剩余的部分可以由用戶自行控制使用。在雙端口RAM中,區(qū)域分配如下:

0x0000-0xF8F區(qū)域已經(jīng)被系統(tǒng)占用;
0x5F80-0x5FBF共64字節(jié)用于存放系統(tǒng)命令;
0x5FC0-0x5FFF共64字節(jié)用于存放系統(tǒng)響應(yīng);
0x6000-0xDFFF共32768字節(jié)用于存放數(shù)據(jù)部分;
0xE000-0xFFFD為用戶系統(tǒng)可使用區(qū)域;
0xFFFE-0xFFFF兩個(gè)字節(jié)被用作系統(tǒng)協(xié)議交互指示,用戶不可用于數(shù)據(jù)存放。
  
用戶系統(tǒng)與MemMaster系統(tǒng)的協(xié)議交互命令包括2種類型:Command和Response。Command由用戶系統(tǒng)發(fā)往MemMaster系統(tǒng),而Response為相反方向,由MemMaster發(fā)往用戶系統(tǒng)。具體的實(shí)施在第四節(jié)中有介紹。
  
3系統(tǒng)設(shè)計(jì)
  
3.1系統(tǒng)工作原理
  
現(xiàn)在,鋼絲繩的應(yīng)用越來越廣泛,為了保護(hù)人身和財(cái)產(chǎn)安全,鋼絲繩探傷檢測(cè)儀器也隨之發(fā)展起來。目前,鋼絲繩探傷檢測(cè)多以PC機(jī)作為檢測(cè)數(shù)據(jù)的接收和存儲(chǔ)器件,但是這樣成本高、攜帶不方便。在此,運(yùn)用MemMaster模塊實(shí)現(xiàn)現(xiàn)場(chǎng)檢測(cè)數(shù)據(jù)存儲(chǔ)到移動(dòng)存儲(chǔ)器就克服了這些缺點(diǎn),提高了系統(tǒng)的性價(jià)比。系統(tǒng)的工作原理描述如下:檢測(cè)傳感器開始工作時(shí),輸出脈沖信號(hào)作為控制電路的同步信號(hào),同時(shí)檢測(cè)鋼絲繩的三路參數(shù)數(shù)據(jù)(模擬信號(hào))。當(dāng)控制電路獲得同步信號(hào)后,啟動(dòng)A/D轉(zhuǎn)換,取得轉(zhuǎn)換結(jié)果,系統(tǒng)對(duì)數(shù)據(jù)進(jìn)行處理后,判斷是否有斷絲發(fā)生,如果有則報(bào)警" title="報(bào)警">報(bào)警。同時(shí)把數(shù)據(jù)寫入移動(dòng)存儲(chǔ)器中在控制電路上電時(shí)就建好的文件中,以便將來分析處理。
  
3.2系統(tǒng)配置
  
在此,A/D轉(zhuǎn)化器件采用的是MAX186[3],MAXl86將8通道模擬開關(guān)、大帶寬跟蹤/保持電路、12位A/D轉(zhuǎn)換器和移位寄存器集成到一片20腳雙列直插芯片上,消除了傳輸誤差,提高了采樣精度和轉(zhuǎn)換精度。它體積小、轉(zhuǎn)換速度快、轉(zhuǎn)換精度高、功耗低、用5V單電源或V雙電源供電,模擬輸入可由軟件設(shè)置為單或雙極性和單端或差分兩種輸入轉(zhuǎn)換方式。它的SCLK引腳作為時(shí)鐘信號(hào)輸入,作為片選信號(hào)輸入,DIN作為串行信號(hào)輸入,DOUT作為串行信號(hào)輸出。

在系統(tǒng)上電時(shí),需要?jiǎng)?chuàng)建接收文件,文件的創(chuàng)建時(shí)間由DS1302[4]提供。DS1302是美國(guó)DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路,它可以對(duì)年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進(jìn)行同步通信,具有主電源/后備電源雙電源引腳,同時(shí)提供了對(duì)后備電源進(jìn)行涓細(xì)電流充電的能力。它的I/O引腳作為數(shù)據(jù)輸入輸出,作為復(fù)位信號(hào)輸入,SCLK作為時(shí)鐘信號(hào)輸入。

單片機(jī)采用的是華邦公司的W78E58B[5],它是8位單片機(jī),內(nèi)含32KBFlash/EEPROM,其引腳功能與8051系列單片機(jī)完全兼容。系統(tǒng)連接圖如圖1所示。
  
4軟件設(shè)計(jì)
  
為了使各部分硬件電路按一定順序進(jìn)行工作,在單片機(jī)的程序存儲(chǔ)器中固化了用C51編寫的應(yīng)用程序,包括系統(tǒng)初始化程序、時(shí)間參數(shù)獲取程序、文件創(chuàng)建程序、A/D轉(zhuǎn)換程序、報(bào)警分析程序、數(shù)據(jù)寫入程序。軟件采用模塊化設(shè)計(jì)方式,將各個(gè)功能分成獨(dú)立的模塊。其中,A/D轉(zhuǎn)換程序放在中斷程序中。程序流程圖如圖2所示。
  
4.1報(bào)警算法分析
  
鋼絲繩斷絲檢測(cè)信號(hào)為疊加于噪聲背景上的局部區(qū)域的異常信號(hào)。為了能夠?qū)嘟z進(jìn)行報(bào)警,首先應(yīng)從檢測(cè)信號(hào)中將它分離出來。根據(jù)報(bào)警的實(shí)時(shí)處理要求,提取斷絲檢測(cè)信號(hào)的方法應(yīng)簡(jiǎn)潔,花費(fèi)的運(yùn)算時(shí)間短,占據(jù)的內(nèi)存空間小。下面給出一種峰峰值超限法。
  
峰峰值超限法利用局部異常信號(hào)波形的峰谷差值特征進(jìn)行斷絲檢測(cè)信號(hào)的提取。從信號(hào)波形來看,檢測(cè)信號(hào)是由大量的局部波峰和波谷構(gòu)成的,在檢測(cè)信號(hào)的每一微小的局部均將存在著一個(gè)完整的峰谷波形信號(hào)。峰峰值定義為某一局部峰谷波形信號(hào)的峰值與谷值之差的絕對(duì)值,當(dāng)某一局部峰谷波形信號(hào)的峰峰值超過門限時(shí),則認(rèn)為是局部異常波形信號(hào)。在基于聚磁的鋼絲繩斷絲檢測(cè)中,檢測(cè)信號(hào)波形是一個(gè)完整的局部峰谷波形,這是由斷絲斷口漏磁場(chǎng)的分布決定的,且當(dāng)選擇好聚磁器的結(jié)構(gòu)和檢測(cè)元件的布置位置時(shí),斷絲檢測(cè)信號(hào)將是單一的正峰信號(hào),且信號(hào)的峰峰值比鄰近的信號(hào)波形大得多,因此很容易用峰峰值超限法提取。
  
設(shè)vn,n=0,1,2,3,4,為5個(gè)連續(xù)的局部極值點(diǎn),在程序中我們判斷:當(dāng)((v[1]-v[2])>3*(v[1]-v[0]))&&((v[3]-v[2])>3*(v[3]-v[4]))&&(v[0]-v[2]>26)&&(v[4]-v[2]>26)時(shí),報(bào)警。
  
4.2USB數(shù)據(jù)存儲(chǔ)程序設(shè)計(jì)
  
在接口使用中已經(jīng)介紹了用戶系統(tǒng)與MemMaster系統(tǒng)的協(xié)議交互命令包括2種類型:Command和Response,下面就來具體說明一下Command/Response消息。

     Command/Response消息用于在用戶系統(tǒng)或MemMaster系統(tǒng)將要發(fā)出的Command或Response及相應(yīng)數(shù)據(jù)準(zhǔn)備好后,通過對(duì)方(MemMaster或用戶系統(tǒng))Command或Response已經(jīng)準(zhǔn)備完畢,可以開始執(zhí)行的消息。該消息通過向雙口RAM的0xFFFE或0xFFFF地址寫/讀數(shù)據(jù)來完成。該消息通過中斷方式來實(shí)現(xiàn),即:對(duì)用戶系統(tǒng)而言,當(dāng)向0xFFFE寫入數(shù)據(jù)時(shí),即為通知MemMaster有命令待執(zhí)行。當(dāng)系統(tǒng)進(jìn)入中斷程序確定時(shí),說明MemMaster端已經(jīng)完成了命令,并將響應(yīng)準(zhǔn)備好,可以進(jìn)入下一步操作。這時(shí),從0xFFFF即清除了該中斷。目前系統(tǒng)定義,向0xFFFE寫入和從0xFFFF讀出的值都是0x01。參考代碼如下[6]:
#define DPRAMRInt ((char*)0xFFFF)
#define DPRAMLInt ((char*)0xFFFE)
#define SEND_SYSCMD *DPRAMLInt = 0x01
void service_int1() interrupt 0 /*外部中斷0*/
{
 bRecvResp = *DPRAMRInt;
}
下面給出文件創(chuàng)建函數(shù)來說明用戶系統(tǒng)與MemMaster系統(tǒng)是如何實(shí)現(xiàn)Command消息傳送的(Response消息類似)。
void CreateFile(unsigned char nm)           /*nm用于判斷文件是否存在*/
{
CreateFileCmdPkg* crCmdPkg;
/* CreateFileCmdPkg為創(chuàng)建命令包,包括創(chuàng)建命令的各個(gè)屬性*/
    crCmdPkg=(CreateFileCmdPkg*)Command;
MemSet((char*)crCmdPkg,0,64);
MemSet(crCmdPkg->FileName,0x20,8);
crCmdPkg->CommandCode=SYS_CREATE_FILE;
/* SYS_CREATE_FILE為創(chuàng)建命令碼*/
    crCmdPkg->FileName[0]=’T’;

crCmdPkg->FileName[1]='A'+nm;
/* FileName為文件名*/
 crCmdPkg->ExtensionName[0]='S';
 crCmdPkg->ExtensionName[1]='H';
 crCmdPkg->ExtensionName[2]='J';
    /* ExtensionName為后綴名*/
 crCmdPkg->FileAttr=0x20;
 crCmdPkg->CreateTime[0]=min;
 crCmdPkg->CreateTime[1]=hour;
    /* CreateTime為創(chuàng)建時(shí)間*/
 crCmdPkg->CreateDate[0]=date;
 crCmdPkg->CreateDate[1]=year;
    /* CreateDate為創(chuàng)建日期*/
    /* min、hour、date、year是由DS1302提供的數(shù)據(jù)計(jì)算而得*/
 crCmdPkg->Option=0x00;
 bRecvResp = 0;
 SEND_SYSCMD;                             /*發(fā)送Command消息*/
 cs_ram=1;                                /*取消雙口RAM片選*/
 Delayms(10);
 while(!bRecvResp);                       /*判斷雙口RAM是否收到消息*/
 cs_ram=0;                                /*片選*/
}
    5  實(shí)驗(yàn)結(jié)果分析
     鋼絲繩檢測(cè)系統(tǒng)是通過對(duì)被測(cè)鋼絲繩進(jìn)行磁化,用敏感元件檢測(cè)鋼絲繩斷絲處的泄漏磁場(chǎng),以此判斷有無斷絲,再通過計(jì)算機(jī)以及相應(yīng)的軟件,對(duì)此漏磁場(chǎng)的波形進(jìn)行分析,進(jìn)一步判斷斷絲的數(shù)量,并通過光電編碼器確定相應(yīng)斷絲的位置。在實(shí)驗(yàn)中選取一根 24(6 7)結(jié)構(gòu)的鋼絲繩樣繩,并在指定位置做出斷絲,實(shí)驗(yàn)分兩組,每組50次,用該套系統(tǒng)進(jìn)行測(cè)定,實(shí)驗(yàn)分析結(jié)果如表1所示。

 

    通過表1(負(fù)號(hào)表示漏判,正號(hào)表示錯(cuò)判)的分析計(jì)算表明:當(dāng)要求無錯(cuò)判時(shí)(錯(cuò)檢斷絲根數(shù)為0),斷絲定量準(zhǔn)判率為95%;當(dāng)允許錯(cuò)判1根時(shí)(錯(cuò)檢斷絲根數(shù)為-1,0,1),斷絲定量準(zhǔn)判率為100%,因此,符合工況要求。同時(shí),報(bào)警系統(tǒng)" title="報(bào)警系統(tǒng)">報(bào)警系統(tǒng)也對(duì)斷絲進(jìn)行了實(shí)時(shí)報(bào)警。
6  結(jié)論
   鋼絲繩檢測(cè)系統(tǒng)要求的檢測(cè)速度為每秒0~2000個(gè)數(shù)據(jù),本套裝置完全可以勝任,同時(shí)保證了測(cè)量的精度。該裝置可以按指定的格式存入數(shù)據(jù),并且動(dòng)態(tài)的檢測(cè)移動(dòng)存儲(chǔ)器中是否有同名的文件,并自動(dòng)添加文件,可以在無人工干預(yù)的情況下實(shí)現(xiàn)多次檢測(cè),使用起來極為方便。同時(shí),報(bào)警系統(tǒng)可以對(duì)斷絲進(jìn)行實(shí)時(shí)報(bào)警,方便了實(shí)時(shí)處理。
該裝置把USB標(biāo)準(zhǔn)應(yīng)用到了鋼絲繩檢測(cè)體系中去,適應(yīng)了計(jì)算機(jī)的發(fā)展潮流,具有攜帶方便、操作快捷、成本低廉、存儲(chǔ)容量大等優(yōu)點(diǎn),效果良好,應(yīng)用前景廣闊。

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