基于FPGA電火花加工脈沖電源的設(shè)計(jì)
0引 言
本文引用地址:http://butianyuan.cn/article/85842.htm數(shù)控電火花(electrical discharge machining,EDM)機(jī)床是一種實(shí)現(xiàn)工件精密加工的特種加工工具。早期的電火花成型加工機(jī)床的脈沖電源電路是用分立元件組成,或者是用單片機(jī)來(lái)實(shí)現(xiàn)。分立元件電路設(shè)計(jì)復(fù)雜,電路調(diào)試?yán)щy,基于單片機(jī)或者是32位的嵌入式CPU的脈沖電源性能有了很大的提高,也具有了很高的智能性,但對(duì)于不同的處理器,其移植性不太好,而且如果硬件電路一旦完成就不能進(jìn)行更改與升級(jí)。而采用現(xiàn)場(chǎng)可編程門陣列FPGA在很好的繼承單片機(jī)或者是嵌入式CPU設(shè)計(jì)的電源的優(yōu)點(diǎn)的同時(shí),還擁有一些新的特點(diǎn)。本文提出的方案采用的是Altera公司的cylone II芯片,將Altera提供的NIOS II處理器配置到芯片上,并在NIOS II中加入用戶自己用HDL語(yǔ)言編寫的可以產(chǎn)生PWM的用戶IP模塊后就可以產(chǎn)生參數(shù)化的脈沖波,即提出了一種新型的智能脈沖電源。
1脈沖電源的原理設(shè)計(jì)
數(shù)控機(jī)床的脈沖電源電路主要由脈沖發(fā)生器,隔離放大電路,直流電源電路,功率放大電路,開(kāi)關(guān)電路5部分。放電脈沖的產(chǎn)生過(guò)程如下,首先是脈沖發(fā)生器產(chǎn)生高頻參數(shù)化的脈沖信號(hào),經(jīng)過(guò)光耦的隔離后,由功率推動(dòng)電路進(jìn)行功率放大,從而控制高頻開(kāi)關(guān)管的通斷。高頻開(kāi)關(guān)管的另一端接的是直流電源,該直流電經(jīng)過(guò)開(kāi)關(guān)管的通斷而產(chǎn)生高頻的放電加工脈沖電源。其核心部分即是脈沖發(fā)生器的設(shè)計(jì)。
2嵌入式脈沖發(fā)生器的設(shè)計(jì)
只有設(shè)計(jì)出了高頻率的、參數(shù)化的脈沖發(fā)生器,脈沖加工電源的精度、參數(shù)化才可以實(shí)現(xiàn)。該電源系統(tǒng)中采用的是性價(jià)比較好的Altera公司的Cyclone II序列的FPGA芯片EP2C8Q208C7。其邏輯資源足夠?qū)崿F(xiàn)系統(tǒng)的功能。
2.1嵌入式系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)中使用的是一種軟核式的Nios II處理器,并選擇其類型為Nios/f型。Nios II處理器是Altera的第二代FPGA嵌入式處理器,其性能超過(guò)200DMIPS。嵌入式CPU定制的過(guò)程是在Quartus II中實(shí)現(xiàn)的。Quartus II是Altera提供的FPGA/CPLD開(kāi)發(fā)集成環(huán)境,它可以完成系統(tǒng)的設(shè)計(jì)與仿真。整個(gè)設(shè)計(jì)過(guò)程是:圖形或HDL編譯、分析與綜合(analysis&synthesis)、適配器件(filter)、仿真、編程文件匯編(assembler)、下載配置到FPGA。 該系統(tǒng)中除了采用NIOS II和一些常用的外設(shè)IP,還有一個(gè)用戶IP。用戶IP用于產(chǎn)生PWM的模塊pulse_generator是用VHDL編寫狀態(tài)機(jī)來(lái)實(shí)現(xiàn)的。其中一個(gè)模塊用狀態(tài)機(jī)實(shí)現(xiàn)3種狀態(tài):分別空閑、脈寬和脈間。并由時(shí)鐘輸入、狀態(tài)控制信號(hào)以及計(jì)數(shù)器狀態(tài)來(lái)確定3種狀態(tài)之間的轉(zhuǎn)換,一般情況是在系統(tǒng)啟動(dòng)后,由空閑狀態(tài)進(jìn)入脈寬狀態(tài)后便會(huì)在脈寬、脈間2種狀態(tài)之間切換,實(shí)現(xiàn)連續(xù)的PWM。Pulse_generatot的另一個(gè)模塊就是Pulse_generator與Avalon總線的接口,通過(guò)該接口,可以讀寫Pulse_generator模塊中個(gè)寄存器的狀態(tài),控制PWM脈寬與脈間的大小。在HDL編寫好用戶模塊后,用Quartus進(jìn)行編譯綜合正確后,可以進(jìn)行下一步的寄存器頭文件<device_name>_regs.h以及C函數(shù)的編寫,在該文件的中定義的是用戶模塊的訪問(wèn)方法,提供了硬件與軟件的接口。最后將HDL文件、寄存器文件、驅(qū)動(dòng)程序在SOPC Builder中將其集成成為一個(gè)完整的、具有Avalon總線接口的用戶IP。將用戶IP與Altera的IP結(jié)合起來(lái)就可以生成硬件的脈沖發(fā)生器,它的結(jié)構(gòu)如圖1中所示。
構(gòu)成過(guò)程是在SOPC Builder中添加NIOS II、pulse_generator、uart_jatg等模塊,然后在SOPCBuilder中g(shù)enerate生成自定制的NIOS II內(nèi)核,并在工程文件.bdf文件中加入前面生成的NIOSII內(nèi)核、系統(tǒng)時(shí)鐘引腳、延時(shí)復(fù)位、PLL等模塊,并將PWM的輸出引腳指定到FPGA的I/O口,編譯綜合后就會(huì)生成硬件系統(tǒng)描述的.ptf文件。以上硬件電路全部在FPGA芯片中實(shí)現(xiàn),對(duì)用戶是不可見(jiàn)的,所以其保密性好,用戶外部可見(jiàn)的僅僅是電路的I/O。由于硬件電路是用HDL實(shí)現(xiàn)的,因此可以進(jìn)行系統(tǒng)升級(jí)。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論