張 成,王學(xué)梅,丘東元,張 波
(華南理工大學(xué) 電力學(xué)院,廣東 廣州 510640)
電鍍是對材料表面進(jìn)行裝飾、防護(hù)以及獲得某些特殊性能的一種表面工程技術(shù),電鍍電源是電鍍設(shè)備中的核心部分,其性能對電鍍質(zhì)量有直接影響。隨著人們對電鍍產(chǎn)品質(zhì)量的要求越來越高,某些電鍍工藝對電鍍電源的輸出波形有著特殊的要求,如反向電流、正向大電流沖擊、階梯升高電流等[1]。而目前使用的電鍍電源只能輸出單向脈沖或雙脈沖,且存在電鍍加工時(shí)間長、鍍層厚度均勻性差、鍍層容易出現(xiàn)缺陷以及存在較大內(nèi)應(yīng)力等缺點(diǎn)[2],不能滿足現(xiàn)代電鍍工藝對電源輸出波形的特殊要求。
為此,需要電鍍電源能夠輸出多種波形,并具有以下功能:(1)可以輸出正負(fù)周期的換向脈沖;(2)輸出脈沖的頻率、寬度、幅值、正反向交替時(shí)間和持續(xù)時(shí)間在一定范圍內(nèi)連續(xù)可調(diào);(3)采用微機(jī)控制技術(shù),可以通過程序設(shè)置工藝流程,按照工藝要求準(zhǔn)確地輸出所需電流,滿足不同的電鍍工藝需要??梢姡慌_多波形輸出電鍍電源可以實(shí)現(xiàn)以前需要多臺單脈沖或雙脈沖電源才能完成的工藝流程[3~6]。
多波形脈沖電鍍電源可以輸出如圖1所示的各種波形,它可以根據(jù)需要輸出不同的電鍍脈沖,滿足不同的電鍍工藝要求,具體表現(xiàn)在脈沖電流的幅值、頻率、占空比及正負(fù)換向時(shí)間可以在一定范圍的連續(xù)獨(dú)立調(diào)節(jié)[7]。
圖1 多波形脈沖電鍍電源的輸出波形
圖2 多波形脈沖電鍍電源的工作原理框圖
多波形脈沖電鍍電源的工作原理框圖如圖2所示。其中:主電路由正負(fù)向可調(diào)直流電源和兩個(gè)斬波器組成。兩個(gè)斬波器工作于互補(bǔ)狀態(tài),斬波器的驅(qū)動(dòng)信號由脈沖波形發(fā)生器和有限狀態(tài)自動(dòng)機(jī)等模塊產(chǎn)生,它能夠調(diào)節(jié)正向和反向輸出波形的頻率、占空比;正負(fù)向直流電源可以調(diào)節(jié)正負(fù)向輸出脈沖的幅值。
有限狀態(tài)自動(dòng)機(jī)是一種具有離散輸入和輸出,可用于描述有限個(gè)狀態(tài)以及在這些狀態(tài)之間的轉(zhuǎn)移和動(dòng)作等行為的數(shù)學(xué)模型。一個(gè)確定的有限狀態(tài)自動(dòng)機(jī)M是一個(gè)五元組:
式中:S是一個(gè)有限集合,每個(gè)元素稱為一個(gè)狀態(tài);X是一個(gè)有窮字母表,每個(gè)元素稱為一個(gè)輸入字符;f是轉(zhuǎn)移函數(shù),是一個(gè)從S×X至S的映射,f(S0,a)=S1意味著:當(dāng)現(xiàn)行狀態(tài)為S0,輸入字符a時(shí),將轉(zhuǎn)換到下一個(gè)狀態(tài)S1,故把S1稱為S0的一個(gè)后繼狀態(tài);S0是唯一的一個(gè)初始狀態(tài);Z是一個(gè)終止?fàn)顟B(tài)[8]。
有限狀態(tài)自動(dòng)機(jī)的狀態(tài)轉(zhuǎn)移關(guān)系可以用狀態(tài)轉(zhuǎn)移圖來描述。下面以一個(gè)檢測二進(jìn)制序列中具有奇數(shù)還是偶數(shù)個(gè)0的狀態(tài)機(jī)為例進(jìn)行說明。如圖3所示,圖中S1表示偶數(shù)個(gè)0狀態(tài),S2表示奇數(shù)個(gè)0狀態(tài)。當(dāng)輸入一個(gè)二進(jìn)制數(shù)時(shí),如果第一位為0,狀態(tài)機(jī)則從S1狀態(tài)跳到S2狀態(tài),若為1,則保持在S1狀態(tài)。照此規(guī)則依次檢測該二進(jìn)制數(shù)的每一位,如果倒數(shù)第二位在S2狀態(tài),且檢測到最后一位輸入為0,則跳到S1狀態(tài),說明該二進(jìn)制數(shù)有偶數(shù)個(gè)0,若檢測到輸入為1,則保持在S2狀態(tài),說明該二進(jìn)制數(shù)有奇數(shù)個(gè)0。對照(1)式,S1、S2是有限狀態(tài)集合S中的兩個(gè)元素;0、1 則是 S1、S2之間轉(zhuǎn)換的條件;f代表著映射關(guān)系如圖3所示;初始狀態(tài)S0即為S1;終止?fàn)顟B(tài)Z將由該二進(jìn)制數(shù)中的0的奇偶個(gè)數(shù)確定。
為了描述程序設(shè)計(jì)的方便,我們對狀態(tài)和條件進(jìn)行編碼。假設(shè)狀態(tài)用q表示,條件用x表示。狀態(tài)qi的編碼方法比較簡單:對于所有可能的狀態(tài),分配給它們一個(gè)唯一確定的編號。在圖3所示的有限狀態(tài)機(jī)中,存在奇數(shù)、偶數(shù)兩種狀態(tài),分別用q1、q2表示。條件xi的編碼方法比較復(fù)雜:一般采用將條件字xi分為多個(gè)字段xB1、xB2,每個(gè)字段占用一定的二進(jìn)制位數(shù),不同的字段表示不同的條件類型,例如xB1表示運(yùn)行狀態(tài)編碼,xB2表示操作命令編碼。在圖3所示的有限狀態(tài)機(jī)中,轉(zhuǎn)移條件可由一位運(yùn)行狀態(tài)編碼和兩位二進(jìn)制命令編碼組成,用D2D1D0表示。初始化時(shí),x0=000,在q1使得運(yùn)行狀態(tài)編碼為1,即xi的最高位為1,從而可以按照工作命令編碼轉(zhuǎn)移到 q1、q2。 x1~x4條件編碼分別為 100、101、110、111,如圖4所示。依據(jù)狀態(tài)轉(zhuǎn)移關(guān)系和轉(zhuǎn)移條件,一個(gè)非常復(fù)雜的程序,就變成了一個(gè)依據(jù)條件編碼內(nèi)容進(jìn)行轉(zhuǎn)移的多分支的結(jié)構(gòu),可以很容易的用匯編語言或C語言實(shí)現(xiàn)[9~11]。
圖3 有限狀態(tài)機(jī)模型
圖4 有限狀態(tài)機(jī)程序模型
有限狀態(tài)機(jī)原理和方法可以應(yīng)用于計(jì)算機(jī)控制系統(tǒng)的程序設(shè)計(jì)。計(jì)算機(jī)控制系統(tǒng)的程序是由有限個(gè)功能模塊組成,每個(gè)功能模塊作為一個(gè)狀態(tài)用qi表示,有限個(gè)狀態(tài)qi就構(gòu)成了M的狀態(tài)集合S;將發(fā)生轉(zhuǎn)移的兩個(gè)狀態(tài)之間用一條有向弧線連接起來,并在該弧線上標(biāo)注轉(zhuǎn)移條件xk,就得到狀態(tài)轉(zhuǎn)移圖,全部xk就構(gòu)成了M的輸入集合X;并對狀態(tài)和轉(zhuǎn)移條件進(jìn)行編碼,就獲得了具有編碼的狀態(tài)轉(zhuǎn)移圖。依據(jù)這個(gè)狀態(tài)轉(zhuǎn)移圖,可以方便的進(jìn)行程序設(shè)計(jì)。
利用狀態(tài)機(jī)原理描述程序的轉(zhuǎn)移關(guān)系比流程圖更加簡潔﹑直觀,而且包含了更多的信息。依據(jù)狀態(tài)轉(zhuǎn)移關(guān)系和轉(zhuǎn)移條件,一個(gè)非常復(fù)雜的程序,就變成了一個(gè)依據(jù)條件編碼內(nèi)容進(jìn)行轉(zhuǎn)移的多分支程序結(jié)構(gòu),使程序結(jié)構(gòu)簡單、清晰,便于實(shí)現(xiàn),同時(shí)使得程序的調(diào)試、功能的修改與擴(kuò)充更加容易,極大地提高軟件的靈活性和可擴(kuò)展性,避免重復(fù)開發(fā)。當(dāng)程序比較復(fù)雜,狀態(tài)和條件數(shù)比較多時(shí),可以使用分級的多級狀態(tài)機(jī)結(jié)構(gòu),即每一級就是一個(gè)簡單的狀態(tài)機(jī)[12-15]。
圖5是一種典型電鍍電源的輸出波形。電鍍過程如下:在起鍍階段,先以“對稱交流”進(jìn)行,電流值為直流電鍍時(shí)的一半,持續(xù)工作5 min至t0時(shí)刻;然后將“對稱交流”轉(zhuǎn)換至“不對稱交流1”,持續(xù)工作5 min至t1時(shí)刻;再轉(zhuǎn)換至“不對稱交流2”,持續(xù)工作10 min到t2時(shí)刻,接著轉(zhuǎn)換至 “不對稱交流3”(三種不對稱交流的反向脈沖幅值逐漸降低),持續(xù)工作2 min至t3時(shí)刻,由此得到一層結(jié)合程度較高的初始鍍層;最后將“不對稱交流”轉(zhuǎn)換到“周期換向輸出”,持續(xù)工作10 min至t4時(shí)刻,使鍍層以很快的速度增厚,直到滿足尺寸為止[1]。
本系統(tǒng)的控制過程由有限個(gè)子功能構(gòu)成,這些子功能之間的轉(zhuǎn)移條件是有限的,并且系統(tǒng)在任一時(shí)刻總是處于某一確定的狀態(tài)上,所以,系統(tǒng)具有狀態(tài)機(jī)的特征,可以用有限狀態(tài)機(jī)理論來描述。下面就用有限狀態(tài)機(jī)理論對該波形進(jìn)行分析和控制。
設(shè)多波形輸出電鍍電源控制系統(tǒng)的有限狀態(tài)自動(dòng)機(jī)對應(yīng)的S為6個(gè)工作狀態(tài)的集合:對稱交流狀態(tài)(S0)、不對稱交流狀態(tài)1(S1)、不對稱交流狀態(tài)2(S2)、不對稱交流狀態(tài)3(S3)、周期換向狀態(tài)(S4)、截止?fàn)顟B(tài) (S5);X為6個(gè)輸入事件的集合:初始化、t0時(shí)刻、t1時(shí)刻、t2時(shí)刻、t3時(shí)刻、t4時(shí)刻,如圖 6 所示。
該控制系統(tǒng)包括以下功能子程序:初始化子程序、對稱交流子程序、不對稱交流1子程序、不對稱交流2子程序、不對稱交流3子程序,周期換向子程序、結(jié)束子程序,分別用狀態(tài)qi表示;轉(zhuǎn)移條件xi由一位當(dāng)前程序執(zhí)行狀態(tài)編碼和三位二進(jìn)制操作命令編碼組成,即D3D2D1D0。初始化時(shí),x0=0000。其它轉(zhuǎn)移條件的編碼分別為:1000、1001、1010、1011、1100、1101、1110,如圖 7 所示。
圖6 狀態(tài)轉(zhuǎn)移圖
圖7 程序轉(zhuǎn)移圖
Matlab/Stateflow是有限狀態(tài)自動(dòng)機(jī)的圖形化工具,它可以用于解決復(fù)雜的邏輯問題,用戶可以通過圖形化工具實(shí)現(xiàn)在不同狀態(tài)之間的轉(zhuǎn)換。Stateflow可以直接嵌入到Simulink仿真模型中,并且在仿真的初始化階段,Simulink會把Stateflow繪制的邏輯圖形通過編譯程序轉(zhuǎn)換成C語言,使二者有機(jī)地結(jié)合在一起。
對于上述電鍍電源的輸出波形,主要由對稱交流方波、不對稱交流方波1、不對稱交流方波2、不對稱交流方波3、周期換向脈沖、截止脈沖六種波形組成, 分別用狀態(tài)機(jī)輸出的數(shù)字 1、2、3、4、5、6 表示。利用Stateflow仿真輸出的數(shù)值1~6,控制多端口開關(guān)的輸入端(控制端),使得上述的各種驅(qū)動(dòng)脈沖波形按一定的邏輯順序在不同的時(shí)刻輸出,然后加在主電路中的開關(guān)器件門極端,從而有效控制整個(gè)電路的正常工作。圖8為狀態(tài)機(jī),即上述六種狀態(tài)之間的狀態(tài)轉(zhuǎn)移圖,在輸入的時(shí)刻脈沖觸發(fā)下,六種波形依次轉(zhuǎn)換;圖9為狀態(tài)機(jī)的輸出,通過輸出的數(shù)值1~6控制多端口開關(guān)的使能端,從而可以確定每種波形之間的輪換時(shí)間;圖10為該控制系統(tǒng)最后的輸出波形。可以看出,仿真得到的波形和上述工藝所需要的波形完全吻合,表明了該控制系統(tǒng)的有效性。
圖8 狀態(tài)機(jī)
圖9 狀態(tài)機(jī)輸出
本文提出一種基于有限狀態(tài)自動(dòng)機(jī)的電鍍電源多波形輸出方法,并用Matlab中的Stateflow對該控制系統(tǒng)進(jìn)行仿真,得到預(yù)先假定的輸出波形。仿真證明:利用該控制系統(tǒng),可以得到高效、柔性、多特性的電鍍電源,即實(shí)現(xiàn)多種波形脈沖的輸出,通過對它們進(jìn)行一定的組合,可以完成各種復(fù)雜的工藝流程。同時(shí),該控制系統(tǒng)還可以進(jìn)行推廣,適用于電解、焊接等其它需要多特性輸出的電源。此外,由于該多波形脈沖電鍍電源的脈沖頻率、占空比以及幅度能夠連續(xù)調(diào)節(jié),因此,非常適合工藝技術(shù)人員用來探索不同工藝條件下的最佳工藝參數(shù),為工藝技術(shù)人員進(jìn)行工藝研究創(chuàng)造了有利條件。
[1]馮立明.電鍍工藝與設(shè)備[M].北京:化學(xué)工業(yè)出版社,2005:347-365.
[2]杜剛,袁文山,賀洪江.多波形脈沖電鍍電源控制器的研究[J].微計(jì)算機(jī)信息,2009,25(41):79-80.
[3]陳妍妍,王明彥,高忠波,賁洪奇.多波形脈沖電鍍電源控制系統(tǒng)的研究[J].電鍍與環(huán)保,2004,24(3):30-32.
[4]Jen Tsung Luo,Wen Bing Lin,Laurence Shang.The effect of pulse-reverse plating time on blind micro via filling[J].IEEE International Conference on Microsystems,Packaging,Assembly&Circuits Technology,2008,395-398.
[5]Xinxin Yang,Huiqin Ling,Dongyan Ding.Through-silicon via filling process using pulse reversal plating[J].IEEE International Conference on Electronic Packaging Technology&High Density Packaging,2009:91-95.
[6]文亞鳳.大容量智能化高速換向脈沖電鍍電源的研究[J].電鍍與環(huán)保,2000,20(5):30-33.
[7]Danijel VonEina,Janez Nastran.Current source for pulse plating with high di/dt and low ripple in steady state[J].IEEE International Symposium on Industrial Electronics Proceedings,1999:753-756.
[8]GU Xiang,QIU Jianlin.Formal description of networks protocols using RASIE specification language[J].IEEE International Conference on Network Computing and Information Security,2011:185-188.
[9]M Zhigulin,N Yevtushenko,S Maag,A Cavalli.FSM-based test derivation strategies for systems with time-outs[J].International Conference on Quality Software,2011:141-149.
[10]蔣存波,王聰,劉麗,鐘凡.基于AT89C52的液體卸料控制器的研究[J].制造業(yè)自動(dòng)化,2009,31(2):86-91.
[11]黃志強(qiáng),蘇穎.有限自動(dòng)機(jī)在自動(dòng)控制軟件設(shè)計(jì)中的應(yīng)用[J].華北電力大學(xué)學(xué)報(bào),2002,29(1):49-51.
[12]鄧志洪,張治國.有限狀態(tài)程序模型及其應(yīng)用[J].五邑大學(xué)學(xué)報(bào),2001,15(4):66-70.
[13]陳小琴,蔣存波,金紅.狀態(tài)機(jī)原理在控制程序設(shè)計(jì)中的應(yīng)用[J].制造業(yè)自動(dòng)化,2007,29(10):57-60.
[14]XUE Senlin.Multi-behaviors finite state machine[J].IEEE Youth Conference on Information,Computing and Telecommunication,2009:201-203.
[15]Alberto Alvarez-Alvarez,Gracian Trivino,Oscar Cordon.Body posture recognition by means of a genetic fuzzy finite state machine[J].IEEE International Workshop on Genetic and Evolutionary Fuzzy Systems,2011:60-65.