1 SS I協(xié)議規(guī)范及總體設(shè)計
1. 1 SS I協(xié)議規(guī)范
SSI通訊協(xié)議是一種串行通信協(xié)議 ,其中 SSI全稱為同步串行接口 ( Synchronous Serial interface) 。 SSI傳輸過程中 , 有24 /25 /26 3種編碼模式。 SSI 信號包括差分同步時鐘信號CLOCK +、CLOCK - ,差分?jǐn)?shù)據(jù)信號 DATA +、DATA - , 電源VCC與地 GND[ 1 ]。通過差分方式傳輸碼值提高了抗干擾的能力 ,接線簡單 ,增加了系統(tǒng)控制的可靠性。SSI通信協(xié)議的雙方 ,一方發(fā)送時鐘信號 ,另一方在這個時鐘脈沖信號的控制下從有效位 (MSB )開始同步傳輸數(shù)據(jù)。其中 D0~Dn為數(shù)據(jù)信號 , T為一個時鐘信號周期的持續(xù)時間 ; Tm為單穩(wěn)觸發(fā)時間 , Tp為數(shù)據(jù)傳輸間隔 ,并且 Tp≥Tm; MSB為位 , LSB為位 [ 2 ]。
1. 2 總體設(shè)計
SSI - USB轉(zhuǎn)換器的設(shè)計主要包含 2部分 : (1)向下配置參數(shù)部分 ,即通過上位機(jī)界面對傳感器的相關(guān)參數(shù)進(jìn)行設(shè)定 ,設(shè)定好后通過 USB接口傳送給 SSI - USB轉(zhuǎn)換器 ,然后 SSI - USB轉(zhuǎn)換器再將接收到的配置參數(shù)信號轉(zhuǎn)化為 SSI信號傳送給磁致伸縮傳感器。 (2)上傳測量結(jié)果部分 ,即磁致伸縮傳感器將測量結(jié)果通過 SSI接口傳送給 SSI - USB轉(zhuǎn)換器 ,然后 SSI - USB轉(zhuǎn)換器再將其轉(zhuǎn)化為 USB信號傳送給上位機(jī)供分析計算。
2 硬件設(shè)計
SSI - USB轉(zhuǎn)換器的硬件電路部分主要包括 3部分 : (1)起主控作用的單片機(jī) ; (2)與磁致伸縮傳感器相連的 SSI接口電路 ; (3)與上位機(jī)相連的 USB接口電路。
2. 1 CPU及 SS I接口部分電路
設(shè)計中 CPU 采用的是 AVR 單片機(jī) AT2mega128, ATmega128是 8位系列單片機(jī)中配置的一款單片機(jī) ,應(yīng)用及其廣泛 [ 3 ] 。在 SSI接口部分電路的設(shè)計中采用差分平衡型收發(fā)器芯片 MAX490[ 4 ]將時鐘信號 SSI_CLK和數(shù)據(jù)信號 SSI_DATA分別轉(zhuǎn)化為符合 SSI通信協(xié)議規(guī)范的差分信號CLK + , CLK - , DATA + , DATA - 信號。為了保證數(shù)據(jù)的高速傳輸及傳輸?shù)目煽啃?,設(shè)計中采用高速光耦 6N137將 SSI_CLK和 SSI_DATA信號與單片機(jī)的 SSI_CLK1和 SSI_DATA1信號進(jìn)行隔離。并且 6N137對輸入信號具有整形的作用 ,輸入的方波信號經(jīng) 6N137輸出后 ,輸入信號原本波形較緩的上升沿和下降沿得到改善 [ 5 ]。
磁致伸縮傳感器的測量結(jié)果需要傳遞到上位機(jī)供用戶分析計算 ,且要求滿足一定的更新頻率如 3 m s、2 m s、1 m s、015 m s等。采用普通 I/O口模擬 SSI通信的方式 ,由于受到系統(tǒng)時鐘周期的限制無法達(dá)到如此高的更新頻率 ,故在設(shè)計上采用 SP I的主從通信 (即 SSI - USB轉(zhuǎn)換器作為主機(jī) ,磁致伸縮傳感器作為從機(jī) )代替 SSI通信 ,將 SCK腳和 M ISO腳引出來分別定義為SSI_CLK1和 SSI_DATA1。即 CPU作為主機(jī)發(fā)送時鐘信號 ,傳感器作為從機(jī)在時鐘脈沖的控制下向主機(jī)傳送數(shù)據(jù)信號。而配置參數(shù)的過程中因為對數(shù)據(jù)傳送速度沒有過高的要求 ,可以通過采用普通 I/O口模擬 SSI通信方式實現(xiàn)。同樣是 SCK腳和 M ISO腳 ,但是與上傳測量結(jié)果不同之處是此時 SCK腳作為數(shù)據(jù)輸出腳 , M ISO 腳作為時鐘輸入腳 ,同時將 M ISO 腳接到INT1腳 ,用于捕獲傳感器發(fā)送的時鐘信號。

2. 2 USB接口電路
設(shè)計中利用 PD IUSBD12 芯片來實現(xiàn) USB 接口 , PD IUS2BD12是一款性價比很高的 USB器件 ,可與任何外部微控制器 /微處理器實現(xiàn)高速并行連接 (2M 字節(jié) / s) [ 6 ]。USB設(shè)備接口電路的硬件設(shè)計主要以 PD IUSBD12為中心 ,設(shè)計它與 USB物理接口及微控制器之間的連接 [ 7 ] 。
引腳 A0通過電阻和地連接 ,這樣微控制器可以向 PD IUS2BD12寫數(shù)據(jù)或向 PD IUSBD12讀取數(shù)據(jù)。PD IUSBD12的 GL _N接 LED,對其工作狀態(tài)進(jìn)行監(jiān)控 , LED在 USB被連接時會發(fā)光 ,在進(jìn)行數(shù)據(jù)傳輸時會閃爍。設(shè)計中 USB總線采用的是設(shè)備自供電 ,因此將 USB接口的 VBUS腳懸空。R7、R8 為串聯(lián)終端電阻。PD IUSBD12片內(nèi)集成了 6~8 MHz時鐘乘法 PLL,這樣就可以使用低成本的 6 MHz晶振 , E - M I也隨之降低。
3 軟件設(shè)計
在 SSI - USB轉(zhuǎn)換器的軟件設(shè)計部分 ,由于在上傳傳感器的測量結(jié)果的過程中要使用 SP I通信代替 SSI通信以實現(xiàn)高速傳輸?shù)哪康?,因此要對 SP I進(jìn)行初始化 ,此外也要對 I/O和 USB進(jìn)行初始化 ,即開機(jī)啟動時要對系統(tǒng)進(jìn)行初始化。初始化工作完成后就進(jìn)入 while循環(huán) ,為了保證計算機(jī)已經(jīng)完成對 SSI -USB轉(zhuǎn)換器的插入檢測和枚舉 ,利用定時器 0設(shè)置 6 s開機(jī)啟動延時 , 6 s延時只在開機(jī)啟動時執(zhí)行一次。延時時間到之后 ,不斷查詢上位機(jī)是否發(fā)送命令 ,若接收到命令再判斷是什么命令 ,然后去執(zhí)行相應(yīng)命令對應(yīng)的服務(wù)程序。
在通過上位機(jī)界面對傳感器進(jìn)行配置參數(shù)的過程中 ,使用INT1來捕獲傳感器發(fā)送的時鐘信號的上升沿 ,并在中斷服務(wù)程序中從有效位開始傳送數(shù)據(jù)。每次中斷 ,傳送一個數(shù)據(jù)有效位。其中的中斷服務(wù)程序如下 :
void Master_W rite ( )
{
if( IOSendData&0x80) Set_Data; / /發(fā)送數(shù)據(jù)的位
elseClear_Data;
IOSendData < < = 1; / /數(shù)據(jù)左移一位 ,將下一位要傳送的數(shù)據(jù)移至位
Int1Num + + ;
}
在上傳傳感器的測量結(jié)果的過程中 ,通過于進(jìn)一步展開板材在線檢測裝置的研制。
通過 USB總線實現(xiàn)了電磁超聲數(shù)據(jù)的采集 ,并與 LabW in2dows CV I設(shè)計的電磁超聲分析軟件靈活通信 ,能夠?qū)崟r地處理和顯示電磁超聲接收回波信號 ,能夠自動判別回波聲程、回波位置等 ,實現(xiàn)了鋁合金板材缺陷的自動檢測。
經(jīng)實驗驗證 ,基于電磁超聲導(dǎo)波的鋁合金板材缺陷自動檢測裝置能夠有效檢測 10 mm厚度鋁合金板材中長度 26 mm,深度 2 mm的裂紋缺陷 ,具有較高的檢測靈敏度。