基于單片機(jī)及CPLD的B超檢測(cè)工裝設(shè)計(jì)
中電網(wǎng) 劉長(zhǎng)君 幸坤濤
摘要: 超聲在人體內(nèi)傳播,由于人體各種組織有聲學(xué)的特性差異,超聲波在兩種不同組織界面處會(huì)產(chǎn)生反射、折射,、散射、繞射、衰減以及聲源與接收器相對(duì)運(yùn)動(dòng)產(chǎn)生多普勒頻移等物理特性,。應(yīng)用不同類(lèi)型的超聲診斷儀,采用各種掃查方法,,接收這些反射,、散射信號(hào),顯示各種組織及其病變的形態(tài),,結(jié)合病理學(xué),、臨床醫(yī)學(xué),觀察、分析,、總結(jié)不同的反射規(guī)律,,從而對(duì)病變部位、性質(zhì)和功能障礙程度作出診斷,。B超是超聲診斷儀中的一種顯示模式,。
Abstract:
Key words :
超聲在人體內(nèi)傳播,,由于人體各種組織有聲學(xué)的特性差異,,超聲波在兩種不同組織界面處會(huì)產(chǎn)生反射、折射,、散射、繞射,、衰減以及聲源與接收器相對(duì)運(yùn)動(dòng)產(chǎn)生多普勒頻移等物理特性。應(yīng)用不同類(lèi)型的超聲診斷儀,,采用各種掃查方法,接收這些反射,、散射信號(hào),,顯示各種組織及其病變的形態(tài),結(jié)合病理學(xué),、臨床醫(yī)學(xué),,觀察、分析,、總結(jié)不同的反射規(guī)律,,從而對(duì)病變部位、性質(zhì)和功能障礙程度作出診斷,。B超是超聲診斷儀中的一種顯示模式,。
B超工作過(guò)程為:當(dāng)探頭獲得激勵(lì)脈沖后發(fā)射超聲波(同時(shí)探頭受聚焦延遲電路控制,實(shí)現(xiàn)聲波的聲學(xué)聚焦),,經(jīng)過(guò)一段時(shí)間延遲后再由探頭接收反射回的回聲信號(hào),,經(jīng)過(guò)濾波、對(duì)數(shù)放大等信號(hào)處理,。然后由DSC電路進(jìn)行數(shù)字變換形成數(shù)字信號(hào),,在CPU控制下進(jìn)一步進(jìn)行圖像處理,再同圖像形成電路和測(cè)量電路一起合成視頻信號(hào)送給顯示器,,形成我們所熟悉的B超圖像,,也稱二維黑白超聲圖像。
由于B超中為了增強(qiáng)圖像分辨率,,通道都比較多,大多是16,、24,、48、64甚至更多通道,。這些通道電子元器件完全一樣,要求各通道的一致性要好,,在裝整機(jī)前,,最好有測(cè)試手段和方法,對(duì)所有通道能進(jìn)行測(cè)試,,以去除器件本身和焊接電路板中出現(xiàn)的問(wèn)題,,基于此目的,本人設(shè)計(jì)了B超檢測(cè)工裝,。
工裝設(shè)計(jì)需求
本工裝設(shè)計(jì)要求為24通道,、探頭為96陣元的B超板AFE9624進(jìn)行測(cè)試,AFE9624包含高壓發(fā)射電路,、繼電器切換,、高壓模擬開(kāi)關(guān)切換、前放電路和VGA電路,。
發(fā)射工裝要求
高壓發(fā)射電路,、高壓模擬開(kāi)關(guān)電路、繼電器切換電路測(cè)試,,這幾者必須同時(shí)進(jìn)行檢測(cè),要設(shè)計(jì)發(fā)射工裝板,、繼電器控制測(cè)試電路,、高壓模擬控制電路、探頭接口高壓波形測(cè)量電路,。具體包括:高壓發(fā)射電路工裝(簡(jiǎn)稱發(fā)射工裝),,1~24通道的發(fā)射驅(qū)動(dòng)及切換電路;高壓模擬開(kāi)關(guān)控制電路工裝(簡(jiǎn)稱開(kāi)關(guān)工裝),,控制任何一個(gè)通道的開(kāi)通或者關(guān)斷,,實(shí)際使用時(shí)只控制某一個(gè)通道的開(kāi)通,其他的通道關(guān)斷,,相應(yīng)地發(fā)射控制也只開(kāi)通對(duì)應(yīng)的一路,,其他的驅(qū)動(dòng)設(shè)置為無(wú)效,;繼電器控制測(cè)試工裝(簡(jiǎn)稱繼電器工裝),提供繼電器組開(kāi)通或關(guān)斷的控制信號(hào),;探頭接口的波形測(cè)量電路工裝(簡(jiǎn)稱探頭波形工裝),,包含96~1的切換電路,使得得到發(fā)射的陣元位置波形可以切換到示波器顯示測(cè)量出來(lái),。
接收工裝要求
VGA測(cè)試:VGA測(cè)試主要驗(yàn)證放大電路的功能和準(zhǔn)確性,,需要提供給每一路VGA模擬輸入信號(hào),并通過(guò)示波器檢測(cè),。通過(guò)探頭接口可以將測(cè)試信號(hào)施加進(jìn)去,,但是必須要對(duì)高壓模擬開(kāi)關(guān)進(jìn)行相應(yīng)控制,使得每一路VGA獲得準(zhǔn)確的輸入,。具體包括:波形發(fā)生器工裝,,提供96路的模擬正弦波形,頻率3.5MHz,,幅度P-P 在1V~1.2V,,可實(shí)現(xiàn)負(fù)載短路保護(hù),允許有幾十歐姆的輸出阻抗,;高壓模擬開(kāi)關(guān)控制及VGA增益控制工裝(簡(jiǎn)稱開(kāi)關(guān)增益工裝),,提供AFE9624上高壓模擬開(kāi)關(guān)電路的控制信號(hào),并提供VGA的增益控制信號(hào),,增益控制信號(hào)可以是鋸齒波,,幅度值最低應(yīng)大于0.2V,最大值應(yīng)不大于2.5V,,鋸齒波周期為50µs,。
硬件電路設(shè)計(jì)
圖1所示為發(fā)射、接收工裝設(shè)計(jì)電路中主控部分原理圖,。其中,,發(fā)射部分原理圖見(jiàn)圖2,接收部分原理圖見(jiàn)圖3,。需要注意的是,,發(fā)射和接收有一部分電路是共用的。這3個(gè)電路主要包括Atmel公司用于控制自動(dòng)檢測(cè)的微處理器AT89S52,,用數(shù)碼管前2位顯示探頭00或01,,即PROBE A或PROBE B。數(shù)碼管后2位顯示1~96,,即1~96通道,。Altera公司的CPLD(EPM7064)用于產(chǎn)生周期20ms、脈寬330ns的2個(gè)方向相反,、有死區(qū)時(shí)間的脈沖,,用于發(fā)射通道的發(fā)射波形,。工裝板用了18個(gè)8通道高壓開(kāi)關(guān)HV20220,其中6個(gè)用于控制雙1~24通道數(shù)字開(kāi)關(guān)切換電路,,其余的12個(gè)用于探頭96個(gè)陣元選1的切換,。發(fā)射和接收的控制回路基本一樣,需要改變的是2個(gè)雙刀雙擲開(kāi)關(guān)S1,、S2的撥動(dòng)方向,,接收工裝的發(fā)射波形是正弦波,由函數(shù)發(fā)生器芯片MAX038產(chǎn)生,。本設(shè)計(jì)留有單片機(jī)AT89S52與上位機(jī)的通訊接口,,可以通過(guò)上位機(jī)編程,利用圖形界面控制本工裝,,只需軟件編程即可,。本文采用上電自動(dòng)檢測(cè)和手工檢測(cè)這兩種模式,沒(méi)有使用上位機(jī)控制模式,。

圖1 發(fā)射,、接收工裝設(shè)計(jì)電路中主控部分原理圖
發(fā)射和接收工裝都需要把發(fā)射波形或接收波形經(jīng)過(guò)控制后,,通過(guò)轉(zhuǎn)接線JP3~JP7及JP10和需要檢測(cè)的實(shí)際B超板相接,,來(lái)檢測(cè)B超板(圖1~圖3中未給出JP3~JP7及JP10連接線的插座)。
發(fā)射工裝設(shè)計(jì)
圖1中,,U1(7400)與非門(mén)電路和12MHz晶振組成晶體振蕩器,,給EPM7064的全局時(shí)鐘端43腳提供時(shí)鐘信號(hào)。EPM7064的21腳和25腳輸出周期20ms,、脈寬330ns,、帶660ns死區(qū)時(shí)間的2個(gè)方向相反的脈沖信號(hào),經(jīng)同向放大器U21(74F07)驅(qū)動(dòng)后得到IPA和INB,,加到雙刀雙擲開(kāi)關(guān)S1上(在圖2中,,S1此時(shí)需撥到發(fā)射位置)。IPA經(jīng)S1加到U3,、U4,、U5這3個(gè)高壓開(kāi)關(guān)HV20220上,3個(gè)高壓開(kāi)關(guān)的所有輸出都接在了一起,,而且這3個(gè)高壓開(kāi)關(guān)接成菊花瓣形式,,即下一個(gè)開(kāi)關(guān)的數(shù)據(jù)輸入端DIN,接前一個(gè)開(kāi)關(guān)的數(shù)據(jù)輸出端DOUT,。在微處理器AT89S52的控制下,,給出SDATA1, SCLK1, SLD1,RESET1切換電路的串行控制信號(hào),使3個(gè)高壓開(kāi)關(guān)的輸入端依次和自己的輸出端閉合,,如U3的7腳和8腳,,此時(shí),,IPA信號(hào)送給了IP001。但需注意的是,,在同一時(shí)間,,3個(gè)高壓開(kāi)關(guān)的24個(gè)通道只有一個(gè)是可以閉合的,其余的都斷開(kāi),。INB的過(guò)程和IPA的過(guò)程完全一樣,,在IP001得到IPA信號(hào)的同時(shí),IN001也得到了INB信號(hào),。IP001~IP024依次得到IPA信號(hào),,IN001~IN024則依次得到INB信號(hào)。IP001~IP024和IN001~IN024通過(guò)轉(zhuǎn)接頭JP3 ,、JP4 送到B超的AFE9624板上,。在AFE9624板上經(jīng)過(guò)MD1211驅(qū)動(dòng),驅(qū)動(dòng)內(nèi)置場(chǎng)效應(yīng)管芯片C6320,,得到工裝發(fā)出的兩個(gè)帶死區(qū)時(shí)間,、方向相反并經(jīng)MD1211放大后合成的波形。再經(jīng)過(guò)AFE9624板上的12個(gè)高壓開(kāi)關(guān)HV20220切換,,根據(jù)繼電器切換選擇探頭A或探頭B輸出,。在微處理器AT89S52的控制下,給繼電器組開(kāi)通或關(guān)斷信號(hào)SRELAY:SRELAY=0時(shí),,探頭A開(kāi),;SRELAY=1時(shí),探頭B開(kāi)通,。同時(shí)又發(fā)出SDATA2,SCLK2,SLD2,RESET2串行控制信號(hào),,通過(guò)JP10轉(zhuǎn)接線去控制AFE9624板上高壓模擬開(kāi)關(guān)HV20220。經(jīng)過(guò)AFE9624板放大控制的信號(hào),,再通過(guò)轉(zhuǎn)接線JP5,、JP6、JP7送到工裝板上12個(gè)高壓開(kāi)關(guān)U12~U20上(在圖3中,,只給出了U18~U20),,最后通過(guò)雙刀雙擲開(kāi)關(guān)S2(此時(shí)應(yīng)該撥到發(fā)射位置),接在J3端的示波器就能看到需要的合成波形,。U12~U20在微處理器AT89S52的控制下,,給出SDATA3, SCLK3, SLD3,RESET3串行控制信號(hào),達(dá)到96選1的目的,。

圖2 發(fā)射,、接收工裝設(shè)計(jì)電路中發(fā)射部分原理圖
接收工裝設(shè)計(jì)
圖3中,U25(MAX038)是函數(shù)發(fā)生器產(chǎn)生芯片,,其3腳A0,、4腳A1是輸出波形選擇端,,輸出波形的選擇由邏輯地址引腳A0和A1的組合來(lái)決定:A1A0=10或11時(shí),輸出正弦波,;A1A0=00時(shí),,輸出方波;A1A0=01時(shí)輸出三角波,。波形切換可在0.3μs內(nèi)完成,,但輸出波形有0.5μs的延遲時(shí)間。MAX038的19腳是波形輸出端,,本設(shè)計(jì)輸出正弦波,,頻率為3.5MHz,幅度P-P 在1V左右,。此正弦波通過(guò)雙刀雙擲開(kāi)關(guān)S2(此時(shí)應(yīng)該撥到接收位置),,在微處理器AT89S52的控制下,給出SDATA3, SCLK3, SLD3,RESET3串行控制信號(hào),,控制U12~U20,,將此正弦波切換到(96選1)探頭上,即PA0~PA95分別得到此正弦波,,通過(guò)轉(zhuǎn)接線JP5,、JP6、JP7送到AFE9624板,。根據(jù)轉(zhuǎn)接線JP5,、JP6,、JP7接到該探頭,,和微處理器用繼電器控制其工作。正弦波經(jīng)過(guò)12個(gè)高壓開(kāi)關(guān)HV20220(和發(fā)射時(shí)是同一組高壓開(kāi)關(guān)),,經(jīng)過(guò)發(fā)射,、接收隔離電路得到接收信號(hào)(這里是我們工裝給出的正弦波),再通過(guò)AFE9624板上的前放電路放大,,通過(guò)工裝上轉(zhuǎn)接線JP3,、JP4送到圖2中發(fā)射工裝上的U3~U5的IP001~IP024端和U6~U8的IN001~IN024端。同樣在微處理器AT89S52的控制下,,高壓開(kāi)關(guān)輪流導(dǎo)通,,此時(shí)高壓開(kāi)關(guān)的另一端IP和IN得到正弦波,經(jīng)過(guò)雙刀雙擲開(kāi)關(guān)S1(S1此時(shí)需撥到接收位置),。在J1接雙蹤示波器就能看到差分的2個(gè)正弦波,。三極管Q5發(fā)射極輸出TGC增益控制信號(hào),通過(guò)轉(zhuǎn)接線JP10送到AFE9624板上的前放電路的增益控制端,,控制接收信號(hào)的幅度,。

圖3 發(fā)射,、接收工裝設(shè)計(jì)電路中接收部分原理圖
軟件設(shè)計(jì)
本工裝使用CPLD產(chǎn)生發(fā)射波形,使用微處理器AT89S52控制整個(gè)工裝板,,還給要測(cè)試的B超板(AFE9624)提供繼電器和高壓開(kāi)關(guān)的切換指令,。
發(fā)射波形的產(chǎn)生
周期20ms、脈寬330ns,、帶660ns死區(qū)時(shí)間的2個(gè)方向相反的脈沖信號(hào),,是用Verilog HDL語(yǔ)言編寫(xiě),由EPM7064的21腳和25腳輸出,。源碼如下:
module pwm(clock,pwm_out,pwm_out1);
input clock;
output pwm_out;
output pwm_out1;
reg [20:0] count;
reg pwm_reg;
reg pwm_reg1;
always @ (posedge clock)
begin
count=count+1;
if (count<4) //330ns脈寬
begin
pwm_reg=1;
pwm_reg1=1;
end
else if (count<12)//660ns死區(qū)時(shí)間
begin
pwm_reg=0;
pwm_reg1=1;
end
else if(count<21'd16) //330ns負(fù)脈沖
begin
pwm_reg=0;
pwm_reg1=0;
end
else if(count==21'd240000)//12M晶振,,12000000/240000=50Hz,即20毫秒
begin
ount=21'd000000;
pwm_reg=1;
pwm_reg1=1;
end
else
begin
pwm_reg=0;
pwm_reg1=1;
end
end
assign pwm_out=pwm_reg;
assign pwm_out1=pwm_reg1;
endmodule
微處理器AT89S52控制代碼
微處理器AT89S52外接3個(gè)輕觸開(kāi)關(guān)S3,、S4,、S5,S3接外中斷0,,用于繼電器控制,,上電默認(rèn)選擇探頭1(PROBE A),按下S3,,則選擇探頭2(PROBE B),,再次按下無(wú)效(防止帶電換探頭)。再重新上電,,才能選擇探頭1,。S4接外中斷1,上電默認(rèn)24個(gè)通道,、96陣元是每隔2s自動(dòng)檢測(cè)的,,若需要人工檢測(cè),則按下S4,,此時(shí),,每按一次S4,則檢測(cè)下一通道和陣元,。S5是復(fù)位開(kāi)關(guān),。根據(jù)硬件連接,設(shè)置如下:
uchar m="0";//用于96陣元的選擇
uchar n="0";//默認(rèn)選擇探頭1
uchar l="0";//用于24通道的選擇
uchar k;
sbit SDATA1= P1^0; //移位數(shù)據(jù)1
sbit SCLK1= P1^1; //移位時(shí)鐘1
sbit SLD1= P1^2; //移位鎖定
sbit RESET1=P1^3;//復(fù)位1
sbit SDATA3= P1^4; //移位數(shù)據(jù)3
sbit SCLK3= P1^5; //移位時(shí)鐘3
sbit SLD3= P1^6; //移位鎖定
sbit RESET3=P1^7;//復(fù)位3
sbit SDATA2= P0^0; //移位數(shù)據(jù)2
sbit SCLK2= P0^1; //移位時(shí)鐘2
sbit SLD2= P0^2; //移位鎖定
sbit RESET2=P0^3;//復(fù)位2
sbit SRELAY="P0"^4;//探頭繼電器選擇
定時(shí)器自動(dòng)檢測(cè)子程序
void serves_timer2() interrupt 5 using 0
{
EA=0;
TF2=0;
k=k+1;
if(k==40)//2秒
{ k="0";
m=m+1;
l=l+1;
if( m>96) m="1";
if (l>24) l="1";
DELAY1s( );
for (j=0;j<8;j++)
{
HV20220_1(l) ;
HV20220_2( m) ;
HV20220_3(m);
}
}
else{}
EA=1;
}
在本程序中,,if( m>96) m="1";if (l>24) l="1"; 即:96個(gè)陣元是對(duì)應(yīng)24個(gè)通道的,,在實(shí)際的B超工作過(guò)程中,一個(gè)通道工作的時(shí)候,,同時(shí)會(huì)有4個(gè)按一定規(guī)律排列的陣元在工作,。本工裝不僅獨(dú)立檢測(cè)24個(gè)通道的每個(gè)通道,同時(shí)還檢測(cè)96個(gè)陣元中的每一個(gè),因此,,檢測(cè)96個(gè)陣元,,24個(gè)通道運(yùn)行了4次。
輕觸開(kāi)關(guān)S4外中斷1子程序
void serves_int1() interrupt 2 using 2//外中斷1
{
EA=0;
TR2=0;//停止計(jì)數(shù)
m=m+1;
l=l+1;
if( m>96) m="1";
if (l>24) l="1";
DELAY1s( );
for (j=0;j<8;j++)
{
HV20220_1(l) ;
HV20220_2( m) ;
HV20220_3(m);
}
EA=1;
}
輕觸開(kāi)關(guān)S3外外中斷0子程序
void serves_int0() interrupt 0 using 0//外中斷0
{
EA=0;
n=1;//顯示01
SRELAY=1;//選擇探頭2
DELAY1s( );
EA=1;
}
工裝先檢測(cè)探頭1,,探頭1的96個(gè)陣元都檢測(cè)通過(guò)后,,斷電,將探頭轉(zhuǎn)接線放到探頭2的位置,;上電,,按下輕觸按鈕S3,此時(shí)數(shù)碼管前2位顯示01,,是選擇探頭2的標(biāo)志,。微處理器控制繼電器把所有通道都轉(zhuǎn)接到探頭2的測(cè)量上。
高壓開(kāi)關(guān)HV20220的驅(qū)動(dòng)函數(shù)
函數(shù)HV20220_1(uchar dd)的功能:打開(kāi)CPLD波形發(fā)生器(工裝)1選24的高壓開(kāi)關(guān),。
函數(shù)HV20220_2(uchar dd)的功能:打開(kāi)主系統(tǒng)板(AFE9624)上的高壓開(kāi)關(guān),。
函數(shù)HV20220_3(uchar dd)功能:打開(kāi)探頭上(工裝)來(lái)的96選1的高壓開(kāi)關(guān)。
以驅(qū)動(dòng)HV20220_1為例,,其它2個(gè)和此類(lèi)似,。
void HV20220_1(uchar dd)
{
uchar i;
SLD1=1;
for (i=0;i<96;i++) {
SCLK1=0;
data10=0;
SDATA1 = data10;
SCLK1=1;
_Nop( );
_Nop( );
}
for (i=0;iSCLK1=0;
if (i==0) data10=1;
else data10=0;
SDATA1 = data10;
SCLK1=1;
_Nop( );
_Nop( );
}
RESET1=0;
_Nop( );
_Nop( );
RESET1=1;
_Nop( );
_Nop( );
_Nop( );
_Nop( );
RESET1=0;
_Nop( );
_Nop( );
SLD1=0;
_Nop( );
_Nop( );
_Nop( );
_Nop( );
SLD1=1;
}
使用發(fā)射、接收工裝檢測(cè)B超通道
B超發(fā)射通道檢測(cè)
連接工裝和B超,,檢測(cè)裝置連接完畢后,,檢查開(kāi)關(guān)S1、S2位置在“發(fā)射”擋,,示波器接J3,。
1. AFE9624工裝板顯示屏全亮,3秒種之后,,重新顯示0000,。
2. 經(jīng)過(guò)2秒鐘后,機(jī)器自動(dòng)進(jìn)入檢測(cè)狀態(tài),,顯示屏顯示0001,,緊接著示波器顯示正負(fù)脈沖波形,,如圖4所示,,表示第1通道電路正常。

圖4 示波器顯示正負(fù)脈沖波形
3. 經(jīng)過(guò)2秒鐘,,再次自動(dòng)進(jìn)入檢測(cè)狀態(tài),,顯示屏顯示0002,緊接著示波器顯示正負(fù)脈沖波形,,表示第2通道電路正常,。
4. 繼續(xù)等待檢測(cè)裝置自動(dòng)重復(fù)上述過(guò)程,直到顯示器顯示0096,緊接著示波器顯示正負(fù)脈沖波形,,表示第96通道電路正常,。至此,確認(rèn)探頭1接口發(fā)射工作正常,。
5. 斷電,,將“探頭轉(zhuǎn)接板”插接到“主控系統(tǒng)探頭板”的探頭2上。在檢測(cè)裝置連接完畢后上電,,點(diǎn)擊工裝板上觸發(fā)開(kāi)關(guān)S3,,顯示屏顯示0100,然后重復(fù)上述2~4過(guò)程,,確認(rèn)探頭2接口發(fā)射工作正常,,此過(guò)程顯示屏顯示數(shù)字是0101~0196。
B超接收通道檢測(cè)
連接工裝和B超檢測(cè)裝置完畢后,,開(kāi)關(guān)S1,、S2位置在“接收”擋,示波器接J1,。按B超發(fā)射通道檢測(cè)中1~5的步驟進(jìn)行,,此時(shí)示波器顯示的波形是正弦波,如圖5所示,。

圖5 示波器顯示檢測(cè)波形
結(jié)束語(yǔ)
本文介紹了B超板AFE9624進(jìn)行全自動(dòng)檢測(cè)的工裝設(shè)計(jì),,經(jīng)檢測(cè),達(dá)到了設(shè)計(jì)要求,,可為其它廠家設(shè)計(jì)的B超檢測(cè)提供參考幫助,。按照本文思路,根據(jù)實(shí)際的B超接口,,只需設(shè)計(jì)好各種轉(zhuǎn)接板或轉(zhuǎn)接線,,就可以對(duì)B超板進(jìn)行全面的檢測(cè)。
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。