張 凱,龔莉莉,葛武健
(南京信息工程大學(xué)信息與控制學(xué)院,南京210044)
在進行實際超聲檢測時,多通道超聲檢測相對單通道超聲檢測有更優(yōu)良的性能,但多通道的探傷儀價格昂貴[1],為了提高性價比,本文設(shè)計了一種通道組合選通器,詳細介紹了其控制電路和程序設(shè)計方法。
超聲換能器陣列中各陣元時而作為發(fā)射陣元,時而作為接收陣元,需要不定時地進行通道組合選通,并且根據(jù)不同的檢測算法,對陣列中各陣元的控制不是固定不變的。因此,建立一套能夠以任意控制組合的形式對陣列中各個陣元進行靈活控制的系統(tǒng)顯得十分有必要。
如圖1所示,陣列中有N個陣元,所有陣元通過通道組合器,既與激勵通道相連又與采集通道相連,每個陣元連接在通道組合器一個選通端的公共端,通過選通控制模塊控制各個選通器的選通狀態(tài)。通道控制模塊的總控制狀態(tài)由整個通道組合選通器中各個選通器不同的選通狀態(tài)組合而已。例如,某個時刻,檢測算法要求1號陣元作為激勵陣元,3號陣元作為采集陣元,則1號陣元的選通狀態(tài)為選通通道1,3號陣元的選通狀態(tài)為選通通道2,其他陣元的選通狀態(tài)都懸空。
圖1 通道組合選通器功能示意圖
通道組合選通器控制系統(tǒng)由MCU微處理器、串入并出譯碼器、功率放大器、固態(tài)繼電器等模塊組成,系統(tǒng)控制指令接口為串口,系統(tǒng)結(jié)構(gòu)如圖2所示。
圖2 通道組合選通器結(jié)構(gòu)圖
為實現(xiàn)通道組合選通的動態(tài)調(diào)用,必須將計算機的控制指令實時發(fā)送至控制器,本文采用串口為通訊接口,下位機控制器以MCU微處理器為核心,負責上位機指令接收、指令解析以及譯碼器數(shù)據(jù)輸入。譯碼器輸出的直流信號經(jīng)功率放大器放大輸入至固態(tài)繼電器的線圈輸入控制端,控制固態(tài)繼電器的執(zhí)行吸合動作以選通通道。
簡單地講,通道選通動作實際上相當于開關(guān)動作,為了實現(xiàn)自動化的目的,需要這樣一種可程控開關(guān)作為通道組合選通器的選通執(zhí)行部件,繼電器是一種典型的低功率信號控制高功率信號通斷的器件,固態(tài)繼電器由于體積小、無觸點[2]等優(yōu)點被更多地引用到集成電路等電路中,本文選擇的固態(tài)繼電器是天波HJR 4102 D 12VDC S Z繼電器,其性能參數(shù)為:
線圈 額定電壓12 V,額定電流30 mA,最大吸合電壓9 V,最小釋放電壓1.2 V。
觸點 最大轉(zhuǎn)換電壓240 V,最大轉(zhuǎn)換電流5 A,最大轉(zhuǎn)換功率360 W。
例如:教師可以直接就近在教學(xué)樓附近選擇空地,將學(xué)生分成四個大組,讓學(xué)生來進行跳繩運動,必要的時候還可以進行比賽,為學(xué)生的體育課間活動增添樂趣。教師還可以要求學(xué)生不斷地創(chuàng)新,不斷地探索新的跳法,以此來引發(fā)學(xué)生思考,鍛煉學(xué)生的思考能力,讓學(xué)生積極主動地參與進來,培養(yǎng)學(xué)生對體育大課間活動的興趣,突出跳繩運動的多樣性,讓所有學(xué)生都參與進來,讓每一個學(xué)生都健康地成長。
在輸出選通端,由于本檢測系統(tǒng)的功率主要分配在超聲信號發(fā)射時,即激勵通道上,激勵脈沖電壓達200 V,根據(jù)本固態(tài)繼電器的參數(shù),其觸點最大轉(zhuǎn)換電壓為240 V,同時本檢測系統(tǒng)的觸點轉(zhuǎn)換功率未超出本繼電器的最大轉(zhuǎn)換功率,選擇本繼電器能滿足系統(tǒng)要求。
本超聲檢測系統(tǒng)要求各個陣元輪流作為發(fā)射端和接收端,即對每個陣元傳感器,某個時刻只能有一個發(fā)射陣元和一個接收陣元。本文將發(fā)射通道和接收通道分開控制,發(fā)射控制時,當某個陣元被激活用于發(fā)射超聲波時,其他陣元中僅有一個與發(fā)射陣元不同的陣元接收信號,剩余陣元全部要處于懸空狀態(tài)。本通道組合選通器的繼電器與陣元連接原理如圖3所示。
圖3 固態(tài)繼電器集與陣元陣列連接原理圖
若陣元N作為發(fā)射陣元,則繼電器RN'執(zhí)行吸合動作選通常開觸點,同時繼電器RN保持常閉狀態(tài),由此,陣元N一端接激勵信號,另一端接地,構(gòu)成回路。設(shè)此時的接收陣元為陣元M,則繼電器RM執(zhí)行吸合動作選通常開觸點,同時繼電器RM'保持常閉狀態(tài),陣元M的采集回路也被激活。而與剩余陣元相連的全部繼電器(包括發(fā)射端和采集端)則全部保持常閉狀態(tài),此時這些陣元相當于兩極都接地而被禁用,由此達到了選通的目的。
在繼電器線圈控制端,查表可知,由于繼電器的線圈控制電流相對較大,一般TTL信號不能驅(qū)動繼電器執(zhí)行選通動作。本文是通過單片機加譯碼器的形式輸出穩(wěn)壓控制信號,信號的電壓范圍在3.5 V至5 V之間,輸出電流亦較小,不可能驅(qū)動本繼電器執(zhí)行選通動作,故本文增加了功率放大芯片電路解決這一問題。
本文選用芯片是 ULN2003,它的特點是高耐壓,由大電流復(fù)合晶體管陣列即7個硅NPN復(fù)合晶體管組成。它的內(nèi)部集成了一個消線圈反電動勢的二極管,可用來驅(qū)動繼電器。其引腳功能如下:
引腳1到引腳7為脈沖輸入端,每個輸入端口對應(yīng)一個信號輸出端。引腳8接地。引腳9是內(nèi)部7個續(xù)流二極管負極的公共端,各二極管的正極分別接各達林頓管的集電極。引腳10到16為脈沖信號輸出端,分別對應(yīng)7腳到1腳的信號輸入端。
如圖4為本文使用ULN2003驅(qū)動繼電器的示意圖,輸入端輸入邏輯電平信號。由于ULN2003是反邏輯輸出的,且ULN2003輸出低電平時驅(qū)動能力比輸出高電平的驅(qū)動能力更強,故采用如圖4所示的連接方法,根據(jù)繼電器控制線圈正向電流方向,將ULN2003的輸出端連接至繼電器的線圈受流端,施流端連接至電源正極。
圖4 ULN2003驅(qū)動繼電器示意圖
當在ULN2003的輸入端輸入邏輯高電平時,對應(yīng)的ULN2003輸出端輸出低電平,此時,繼電器線圈兩端有電勢差,有電流流過,繼電器工作,執(zhí)行選通動作,閉合常開觸點,反之繼電器不吸合。
由于需要控制的選通通道較多,需要大量的穩(wěn)壓輸出信號作為控制信號,單純通過單片機的數(shù)據(jù)I/O口來進行穩(wěn)壓輸出的話,極大的浪費了寶貴的I/O口資源,本系統(tǒng)通過對串入并出譯碼芯片的運用,74HC595是帶有鎖存器功能及移位寄存器的串入并出譯碼芯片,74HC595具有8 bit移位寄存器和一個存儲器,三態(tài)輸出功能,每一片74HC595可以擴展8路穩(wěn)壓輸出[3],利用單片機的單個數(shù)據(jù)輸出端串行寫入控制地址,通過譯碼器譯碼將串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)后輸出,同時,由于74HC595芯片具有鎖存功能,即上一次寫入的數(shù)據(jù)在新數(shù)據(jù)沒有寫入前,將一直保持上一次的穩(wěn)壓輸出,在這種方式下,單片機的3個數(shù)據(jù)口可以控制8路穩(wěn)壓輸出。
在圖5中,若要求output 0~output 7輸出邏輯位為“11111111”的電平,則只需要控制單片機通過p0.0口向DS輸入“ff”即可,而當有多個74HC595并聯(lián)時,單片機只需要向各個數(shù)據(jù)口依次寫入控制指令就能完成對多個74HC595芯片的輸出控制,而單片機通過串口讀取的控制指令是多個控制指令連接而成的字符串,需要經(jīng)過解析并與各個芯片相對應(yīng)后再寫入芯片中。
圖5 74HC595受控連接圖
與下位機通信是利用串口[4],其中PC機與單片機串口通訊的硬件連接圖如圖6所示,在進行簡單通訊時,不需要按照串口標準連接所有串口引腳,在沒有復(fù)雜控制信號的情況下,一般只需要3個引腳即可,主要有接收引腳(RXD),發(fā)送引腳(TXD)和地引腳(GND),有這3個引腳即可實現(xiàn)全雙工異步通信,而且通信雙方連接時需要注意,RXD和TXD必須要交叉連接才能正確發(fā)送和接收串口數(shù)據(jù)。
圖6 PC與單片機串口硬件連接圖
為了在上位機實現(xiàn)對通道組合選通器的控制,需要在上位機上編寫一套驅(qū)動軟件,通過軟件面板或者軟件接口方便地對本系統(tǒng)進行控制。本文編寫的控制軟件整體功能結(jié)構(gòu)如圖7所示。
圖7 通道組合選通器軟件功能圖
本軟件上位機分為指令產(chǎn)生模塊程序和串口傳送模塊程序,下位機則由串口接收程序和指令解析程序以及指令寫入芯片程序組成。在軟件頂層,程序控制接口用于接收系統(tǒng)控制參數(shù)。而由于本系統(tǒng)每次產(chǎn)生新指令時都會覆蓋上一次指令的執(zhí)行結(jié)果,故本系統(tǒng)不需要初始化以及反饋系統(tǒng)狀態(tài)的操作。
本通道組合選通器系統(tǒng)上位機軟件采用虛擬儀器語言LabVIEW[5]進行設(shè)計,通過預(yù)留控制編程接口,方便其他軟件傳遞控制參數(shù)。如圖8所示為根據(jù)收發(fā)通道產(chǎn)生選通控制命令的程序框圖。本文設(shè)計的通道組合選通器可以選通16發(fā)射通道選1及16采集通道選1的操作,在用戶或者程序指定好發(fā)射通道及采集通道后,程序?qū)⑦x通結(jié)果(二進制數(shù)組)通過轉(zhuǎn)換成十六進制數(shù),同時由于LabVIEW串口傳數(shù)據(jù)只支持字符串,再將十六進制數(shù)轉(zhuǎn)換為字符串之后輸出目標控制指令。
圖8 選通控制命令的產(chǎn)生框圖
將該程序封裝成子程序,并預(yù)留發(fā)射通道和采集通道號作為接口,可以方便地供其他程序調(diào)用,根據(jù)不同的通道選通要求產(chǎn)生不同的目標控制指令,實現(xiàn)程序的模塊化動態(tài)調(diào)用。
上位機軟件是通過LabVIEW操作串口,主要通過NI提供的VISA驅(qū)動函數(shù)[6],VISA是NI公司開發(fā)的與各種儀器進行通訊的驅(qū)動程序,并提供應(yīng)用編程接口,它不受系統(tǒng)平臺,總線等環(huán)境限制,能夠操縱的總線包括 RS232、RS485、GPIB、USB、WAN、PXI等常用標準的總線,由于VISA封裝了大量自底向上的I/O接口控制函數(shù)為統(tǒng)一接口,在NI主推的虛擬儀器平臺LabVIEW中調(diào)用VISA函數(shù)集顯得比較簡單,同時在創(chuàng)建復(fù)雜系統(tǒng)時功能非常強大。在LabVIEW中,通過VISA讀取和寫入串口時,由于LabVIEW編譯系統(tǒng)環(huán)境只接受字符串格式的數(shù)據(jù),所有控制指令必須都轉(zhuǎn)換成字符串才能進行串口傳輸,如圖9所示,為LabVIEW發(fā)送字符串至串口的程序框圖。
單片機通過串口中斷接收上位機數(shù)據(jù),單片機讀取串口數(shù)據(jù)的流程圖如圖10所示。
通過該中斷子程序,單片機將從串口緩沖區(qū)中,一個字節(jié)一個字節(jié)地讀取其中的字符,每次中斷子程序只讀一個字符即結(jié)束本次中斷,為保證一次指令的完整性,以字符“$”作為指令的起始標志符,字符“*”作為指令結(jié)束標志符。又由于單個74HC595的寫入指令為兩個十六進制字符組成,故多個芯片的總控制指令也為偶數(shù),通過該方法進行簡單的指令位數(shù)查錯后,正確的指令經(jīng)字符串至十六進制數(shù)的轉(zhuǎn)換。
單片機通過各個數(shù)據(jù)口將以上處理好的十六進制數(shù)據(jù)寫入到各個74HC595芯片的DS端口,即可以控制芯片的Q0~Q7輸出端的電平狀態(tài)。
圖9 LabVIEW通過VISA向串口寫數(shù)據(jù)框
圖10 單片機中斷接收上位機數(shù)據(jù)
至此,多通道組合選通器的通訊模塊、控制處理模塊、驅(qū)動和執(zhí)行模塊等軟硬件已設(shè)計完成,并且預(yù)留了控制程序接口,用戶或者程序可以通過程序接口輸入發(fā)射通道(號)和采集通道(號)即可實現(xiàn)通道的切換操作。圖11為多通道組合選通器用戶控制界面。
圖11 多通道選通選通器用戶控制面板
本文通過串口通信、單片機及串入并出芯片的組合,設(shè)計了擁有大量端口的數(shù)字信號穩(wěn)定輸出的數(shù)字信號輸出設(shè)備,并利用該設(shè)備的數(shù)字輸出,控制設(shè)計的通道組合選通器進行通道選通,通過在上位機編寫了驅(qū)動軟件,使該選通系統(tǒng)的具有程控性。本選通系統(tǒng)可以兼顧發(fā)射和采集,同時,由于該系統(tǒng)較低的硬件成本,在多通道的超聲檢測采集系統(tǒng)中有較高的實用價值。
[1]寧彩林,張吉堂,王彪,等.超聲檢測中單通道變多通道信號切換控制[J].控制系統(tǒng),2007,23(3):61-62
[2]楊龍,于濱紅.固態(tài)繼電器在89C51單片機控制系統(tǒng)中的應(yīng)用[J].電測與儀表,1999,36(5):52-53
[3]鐵勇,劉躍平,李樹華.基于單片機控制的多功能LED顯示系統(tǒng)的設(shè)計及實現(xiàn)[J].內(nèi)蒙古大學(xué)學(xué)報,2005,36(6):686-687
[4]張來斌,楊曉偉,李樹華.顯示測試系統(tǒng)數(shù)字I/O口控制的設(shè)計與實現(xiàn)[J].電子器件,2004,27(4):741-742
[5]沈小燕,林玉池,付魯華,等.LabVIEW實現(xiàn)光纖光柵傳感解調(diào)[J].傳感技術(shù)學(xué)報,2008,21(1):61-63
[6]陳誠,李言武,葛立峰.基于LabVIEW的單片機串口通信設(shè)計[J].現(xiàn)代計算機,2009(1).
[7]王月姣,朱家駒.固態(tài)繼電器在單片機測控系統(tǒng)中的應(yīng)用[J].中南民族大學(xué)學(xué)報,2005,24(1):52-53
[8]呂向鋒,高洪林,馬亮,等.基于 LabVIEW串口通信的研究[J].理論與方法,2009,28(12):28-29