摘 要: 介紹了一種利用ticle/index.aspx?id=24114">DSP對(duì)電阻焊焊接電流進(jìn)行在線檢測(cè)的系統(tǒng),主要包括硬件設(shè)計(jì)、電流檢測(cè)軟件、LCD和按鍵軟件設(shè)計(jì)。本系統(tǒng)通過(guò)溫度和初值補(bǔ)償設(shè)計(jì),提高了檢測(cè)準(zhǔn)確度。試驗(yàn)結(jié)果表明,系統(tǒng)最大檢測(cè)誤差為0.67%。
關(guān)鍵詞: 電流檢測(cè);DSP;溫度補(bǔ)償
電阻焊是一種將電網(wǎng)的能量經(jīng)轉(zhuǎn)換后直接對(duì)工件進(jìn)行熔合的高自動(dòng)化程度的焊接方法。它廣泛地應(yīng)用于汽車、航空及航天等行業(yè)。隨著電阻焊應(yīng)用領(lǐng)域的不斷擴(kuò)展及深入,對(duì)焊接質(zhì)量也提出了越來(lái)越高的要求[1]。
要對(duì)焊接質(zhì)量進(jìn)行精確控制的關(guān)鍵是焊接電流及其狀態(tài)電流參數(shù)的在線檢測(cè)。目前國(guó)內(nèi)外測(cè)量電阻焊焊接電流有效值的方法有兩大類,即模擬法和數(shù)字法。其中數(shù)字法中的逐點(diǎn)積分法檢測(cè)精度高,得到了廣泛的應(yīng)用[2]。該方法會(huì)占用大量的CPU時(shí)間[3],隨著計(jì)算機(jī)技術(shù)的發(fā)展,各種高速高性能處理芯片不斷出現(xiàn),因此本文設(shè)計(jì)了基于DSP的電流檢測(cè)系統(tǒng),它可以實(shí)現(xiàn)電流的快速準(zhǔn)確檢測(cè)。
1 系統(tǒng)硬件設(shè)計(jì)
電流檢測(cè)系統(tǒng)硬件結(jié)構(gòu)如圖1,本系統(tǒng)中采用了美國(guó)德州儀器公司(TI)的TMS320LF2812 DSP作為主控芯片,該處理器是目前國(guó)際上最先進(jìn)、功能最強(qiáng)大的32位定點(diǎn)DSP芯片之一,它既具有數(shù)字信號(hào)的處理能力,又具有強(qiáng)大的事件管理能力和嵌入式控制能力。
檢測(cè)系統(tǒng)硬件由傳感器模塊、信號(hào)調(diào)理電路、A/D轉(zhuǎn)換電路、DSP模塊、鍵盤/LCD模塊組成。系統(tǒng)的信號(hào)處理電路包含兩個(gè)模塊。模塊1先對(duì)傳感信號(hào)進(jìn)行積分、信號(hào)調(diào)理后,通過(guò)微分和過(guò)零比較電路,用于電流信號(hào)的檢測(cè);模塊2將傳感器送來(lái)的信號(hào)進(jìn)行積分、信號(hào)調(diào)理后,送到12位A/D轉(zhuǎn)換器MAX191中,最后由DSP進(jìn)行逐點(diǎn)積分檢測(cè)計(jì)算,獲得電流的有效值,因此模塊2的主要作用是檢測(cè)和處理電流數(shù)值,計(jì)算的結(jié)果送到LCD液晶顯示屏顯示。
在本系統(tǒng)中,A/D轉(zhuǎn)換器的轉(zhuǎn)換位數(shù)、分辨率、轉(zhuǎn)換速度對(duì)檢測(cè)系統(tǒng)的系統(tǒng)精度很重要。以往用單片機(jī)利用逐點(diǎn)積分法進(jìn)行電阻焊焊接電流的檢測(cè)時(shí),模數(shù)轉(zhuǎn)換大多采用8位數(shù)字輸出的ADC0809模數(shù)轉(zhuǎn)換器,它的分辨率僅為0.390 6%,轉(zhuǎn)換時(shí)間約為100 μs,A/D轉(zhuǎn)換誤差和漏采誤差都較大,造成測(cè)量精度低。為了節(jié)約轉(zhuǎn)換時(shí)間、提高檢測(cè)精度,擬采用12位逐次逼近式A/D轉(zhuǎn)換器MAX191,它的分辨率為0.024 4%,其轉(zhuǎn)換時(shí)間為7.5 μs,比ADC0809快大約13倍。用它進(jìn)行模數(shù)轉(zhuǎn)換,可提高分辨率,減小A/D轉(zhuǎn)換誤差,同時(shí)可以通過(guò)增加A/D采樣次數(shù)來(lái)縮小采樣間隔,減少漏采誤差,可以保證高精度控制的要求。
系統(tǒng)采用霍爾傳感器進(jìn)行電流檢測(cè),霍爾傳感器可以檢測(cè)交直流電、電流瞬態(tài)峰值,可以隔離測(cè)量且可以應(yīng)用在通信電源、電化學(xué)、電源電池監(jiān)測(cè)、電焊機(jī)、電動(dòng)機(jī)監(jiān)測(cè)等場(chǎng)合[4-5],具有良好的通用性。但由于霍爾元件為磁感應(yīng)元件,容易受環(huán)境溫度影響,本系統(tǒng)通過(guò)在檢測(cè)電路中添加一個(gè)溫度傳感器(圖1)進(jìn)行溫度補(bǔ)償,系統(tǒng)在檢測(cè)前進(jìn)行標(biāo)定,通過(guò)測(cè)量環(huán)境溫度,得到不同溫度下霍爾元件的溫度特性,則在檢測(cè)時(shí),DSP就能夠根據(jù)不同的溫度進(jìn)行軟件補(bǔ)償,從而提高檢測(cè)準(zhǔn)確度。
2 系統(tǒng)軟件設(shè)計(jì)
2.1 電流檢測(cè)程序設(shè)計(jì)
由系統(tǒng)硬件設(shè)計(jì)可知,當(dāng)檢測(cè)系統(tǒng)的信號(hào)處理線路檢測(cè)到有電流信號(hào)的時(shí)候,會(huì)向DSP的INT1發(fā)送一個(gè)觸發(fā)信號(hào),使DSP產(chǎn)生中斷并調(diào)用中斷服務(wù)程序(如圖2)。中斷服務(wù)程序先使積分電路的13腳控制端為低電平,使積分線路進(jìn)行積分;將用于數(shù)據(jù)處理的寄存器清零;然后對(duì)A/D轉(zhuǎn)換器進(jìn)行數(shù)據(jù)采集;采集數(shù)據(jù)后進(jìn)行溫度補(bǔ)償和電流值計(jì)算;再判斷檢測(cè)電流是否小于5H,如果小于,則認(rèn)為電流此時(shí)為0,記錄去零電流值用于初值補(bǔ)償;如果不小于,則保存電流參數(shù)并繼續(xù)檢測(cè)。
由于焊機(jī)變壓器蓄能的影響,檢測(cè)電流值總表現(xiàn)為一定數(shù)字,因此在本系統(tǒng)中判斷實(shí)際電流為0是采用下限值的方式來(lái)進(jìn)行。當(dāng)電流采樣值小于某下限值時(shí),程序認(rèn)為實(shí)際電流為0,因此下限值的選擇顯得十分重要,下限值可以根據(jù)應(yīng)用的實(shí)際情況,通過(guò)鍵盤進(jìn)行設(shè)定。當(dāng)電流檢測(cè)結(jié)束時(shí),采集檢測(cè)數(shù)據(jù)作為檢測(cè)電路的去零電流值,系統(tǒng)再次檢測(cè)時(shí),把傳感檢測(cè)數(shù)據(jù)減去零電流值就可以進(jìn)行初值消除,提高了測(cè)量精度,由于系統(tǒng)采用了去零初值處理,下限值設(shè)置產(chǎn)生的誤差影響極小。
2.2 LCD顯示軟件設(shè)計(jì)
LCD顯示模塊主要用來(lái)顯示當(dāng)前的測(cè)量結(jié)果或人機(jī)交互界面,采用金鵬電子有限公司生產(chǎn)的OCM128128-2圖形點(diǎn)陣液晶顯示模塊,共8頁(yè)(64行)128列,分左右兩屏,每屏各64列,LCD顯示模塊的流程見圖3,其中的幾個(gè)典型函數(shù)定義如下:
void check_busy(void); //判斷液晶忙否函數(shù)
void send_cmd(Uint16 cmd); //向控制器寫指令
void send_dat(Uint16 dat); //向控制器寫數(shù)據(jù)
void lcd_initial(void); //初始化
void main_page(void); //各頁(yè)面的界面
void Set_Page_Address(Uint16 dat); //寫頁(yè)地址
void Set_Colume_Address(Uint16 dat); //寫列地址
void Display_char(Uint16 page,Uint16 colume,const Uint16*zifu); //顯示字符
void clear(void); //清屏程序
2.3 按鍵設(shè)置軟件設(shè)計(jì)
裝置的按鍵設(shè)置程序軟件采用中斷和查詢相結(jié)合的方法,如果有按鍵按下,便會(huì)產(chǎn)生中斷信號(hào),進(jìn)入中斷程序,然后查詢是哪些按鍵按下,進(jìn)入相應(yīng)的功能程序。為使按鍵可靠工作,采用延時(shí)去“抖動(dòng)”以防誤操作。按鍵設(shè)置的流程圖如圖4所示,其中的延時(shí)、讀鍵、選擇和設(shè)置的子函數(shù)定義如下:
void delaykey(uint t); //專門為按鍵設(shè)置的延時(shí)函數(shù)
void rdkey(void); //讀鍵子函數(shù)
void select(void); //選擇子函數(shù),用于參數(shù)顯示、翻頁(yè)設(shè)置
void set(void); //按鍵設(shè)置子函數(shù),控制參數(shù)類型以及下限設(shè)置
3 檢測(cè)系統(tǒng)試驗(yàn)
測(cè)試在SK3-Ⅱ微電腦電阻焊機(jī)上采用飛焊的形式進(jìn)行,參照檢測(cè)儀表為日本米亞基株式會(huì)社的MM-315A型焊接監(jiān)測(cè)儀。表1為檢測(cè)試驗(yàn)數(shù)據(jù)對(duì)照表。
由試驗(yàn)結(jié)果分析可知,本電流系統(tǒng)試驗(yàn)測(cè)得的焊接電流與用MM-315A型焊接監(jiān)測(cè)儀測(cè)得的焊接電流相比較,其電流值最大相對(duì)誤差為0.67%。
本文電流檢測(cè)系統(tǒng)采用DSP進(jìn)行數(shù)據(jù)采集、計(jì)算和顯示,它解決了以往電流檢測(cè)計(jì)算時(shí)間長(zhǎng)的問(wèn)題,它在檢測(cè)過(guò)程通過(guò)溫度傳感器進(jìn)行溫度的軟件補(bǔ)償,并進(jìn)行去零初值處理,使系統(tǒng)具有更高的檢測(cè)準(zhǔn)確度。焊接電流的檢測(cè)試驗(yàn)中,將本系統(tǒng)與日本米亞基株式會(huì)社的MM-315A型焊接監(jiān)測(cè)儀進(jìn)行對(duì)比測(cè)試,結(jié)果表明,兩種儀器的最大檢測(cè)誤差為0.67%。
參考文獻(xiàn)
[1] 王笑川,艾雍宜.微機(jī)控制的各種阻焊質(zhì)量監(jiān)控器的基本原理及方法[J].電焊機(jī),1994(5):13-19.
[2] 徐明,郭育.用8098單片機(jī)測(cè)量非正弦點(diǎn)焊焊接電流有效值[J].焊接技術(shù),1995(3):12-14.
[3] 葉廷東,鐘日鋒,解生冕.基于逐點(diǎn)積分的點(diǎn)焊焊接電流檢測(cè)的研究[J].焊接,2007(8):41-44.
[4] 王香婷,蘇曉龍.基于霍爾傳感器的電流檢測(cè)系統(tǒng)[J].工礦自動(dòng)化,2008(4):74-76.
[5] 尹倫海,梁清華,陳雙橋.基于電熱轉(zhuǎn)換的電流檢測(cè)方法[J].遼寧工業(yè)大學(xué)學(xué)報(bào),2008(6):156-159.