基于51單片機的新型步進(jìn)電機運動(dòng)控制器
1 引言
數控技術(shù)是一種采用計算機對機械加工過(guò)程中各種控制信息進(jìn)行數字化運算處理,并通過(guò)高性能的驅動(dòng)單元對機械執行構件進(jìn)行自動(dòng)化控制的高新技術(shù)?,F代機械加工業(yè)逐步向柔性化、集成化、智能化方向發(fā)展,因此新一代數控技術(shù)就必需強調具有開(kāi)放式、智能化、網(wǎng)絡(luò )化的特征[1]。本文采用新型微處理器、高性能集成電路,研究開(kāi)發(fā)智能步進(jìn)電機控制卡。
2 系統總體結構設計
通過(guò)對步進(jìn)電機控制器關(guān)鍵技術(shù)進(jìn)行分析、研究和比較,并綜合國內外運動(dòng)控制器產(chǎn)品智能化、集成化、開(kāi)放化的發(fā)展趨勢,我們提出的步進(jìn)電機運動(dòng)控制器總體結構如圖1所示。
圖1 系統總體結構
3 系統硬件電路設計
3.1 脈沖分頻電路設計
本系統的主要控制對象為步進(jìn)電機。步進(jìn)電機是一種將電脈沖轉化為角位移的執行機構,因此產(chǎn)生符合系統要求的步進(jìn)電機驅動(dòng)脈沖為整個(gè)系統設計中的關(guān)鍵。本系統的脈沖分頻電路由圖2所示。整個(gè)電路采用3片8254來(lái)產(chǎn)生X,Y,Z三個(gè)軸的驅動(dòng)脈沖信號,鑒于Y,Z軸的電路與X軸相同,因此圖中只表示了X軸脈沖數輸出的電路原理。
Inte18254是可編程定時(shí)/計數器,片內包含3個(gè)獨立通道,每個(gè)通道均為功能相同的16位計數器,每個(gè)計數器的工作方式和計數長(cháng)度分別由軟件編程選擇。8254是8253的改進(jìn)型,操作方式及引腳與8253完全相同。8253計數頻率為2.6MHz,8254的計數頻率則更高,可達到6MHz。本系統選擇8254作為脈沖分頻電路的主控芯片。
圖2 脈沖分頻電路圖
3.2 RS-232通信接口電路設計
在單片機系統的通信中,RS-232和RS-485標準總線(xiàn)應用最為成熟。為了使運動(dòng)控制器的適用范圍更加廣泛,配合PC的現有接口,我們選用RS-232標準總線(xiàn)來(lái)實(shí)現控制器和PC的通信,其接口電路如圖3所示。在圖3中,選用MAX232作為系統的通信接口芯片。MAX232是MAXIM公司生產(chǎn)的低功耗、單電源雙RS-232發(fā)送/接收發(fā)器,適用于各種EIA-232E和V.28/V.24的通信接口。MAX232芯片可以把輸入的+5V電源變換成RS-232輸出電平所需的±10V電壓,所以采用此芯片接口的串行通信系統只要單一的+5V電源就可以。
圖3 通信接口電路
MAX232外圍需要4個(gè)電解電容C1,C2,C3,C4是內部電源轉換所需電容,其取值均為0.1μF/25V。C44為0.1μF的去耦電容。MAX232的引腳T1IN,T2IN,R1OUT,R2OUT為接TTL/CMOS電平的引腳。
引腳T1OUT,T2OUT,R1IN,R2IN為接RS-232C電平的引腳。因此TTL/CMOS電平的T1IN,T2IN引腳應接MCS-51的串行發(fā)送引腳TXD;R1OUT,R2OUT應接MCS-51的串行接收引腳RxD。與之對應的RS-232C電平的T1OUT,T2OUT應接PC機的接收端RD;R1IN,R2IN應接PC機的發(fā)送端。
3.3 D/A轉換與V/I轉換電路設計
本運動(dòng)控制器需要對電主軸的轉速進(jìn)行控制,對電主軸的控制通過(guò)其驅動(dòng)器來(lái)實(shí)現。電主軸驅動(dòng)器根據輸入的電壓或電流的大小來(lái)確定主軸的轉速,因此系統需要輸出0~5V的電壓或0~20mA的電流,必須將系統處理過(guò)的數字量經(jīng)D/A轉換變成模擬量輸出。本控制器的D/A轉換主要由DAC0832芯片實(shí)現。DAC0832是8位微處理器兼容型數/模轉換器芯片,是DAC0830系列的一種。DAC0832與微機接口方便,可以充分利用微處理器的控制能力實(shí)現對D/A轉換的控制,因此在實(shí)際中得到了廣泛的應用。
不同的電主軸驅動(dòng)器對輸入的信號有不同的要求,有的需要0~5V的電壓信號,有的需要0~20mV的電流信號,因此我們同樣設計了V/I轉換電路,使系統具備了電流信號的輸出,增強了系統的適應性。
3.4 開(kāi)關(guān)信號輸入電路設計
在步進(jìn)電機運動(dòng)過(guò)程中,常采用機械式開(kāi)關(guān)和光電開(kāi)關(guān)構成開(kāi)關(guān)信號輸入回路,通過(guò)開(kāi)關(guān)的閉合或斷開(kāi),以電平的形式反映步進(jìn)電機的工況。這包括X,Y,Z軸限位;加工過(guò)程中對刀,X,Y,Z軸電機的回零操作等等[2-3]。
由于開(kāi)關(guān)的機械式設計,觸點(diǎn)閉合或斷開(kāi)時(shí)伴有機械抖動(dòng),會(huì )使輸出信號波形出現振蕩。若將該信號輸入到微控制器的計數器中,會(huì )造成錯誤的計數而導致系統控制混亂。開(kāi)關(guān)量的輸入干擾是系統設計中客觀(guān)存在的問(wèn)題。因此在獲得開(kāi)關(guān)信號后,我們必須對開(kāi)關(guān)信號進(jìn)行處理,使其成為單片機可以識別的數字信號后才能做出相應的反應。系統共提供了12路的開(kāi)關(guān)信號接口,限位開(kāi)關(guān)信號處理如圖4所示。
圖4 限位開(kāi)關(guān)信號處理電路原理圖
在開(kāi)關(guān)信號輸入CPU之前,首先用電容對其進(jìn)行濾波,抑制信號中的高頻分量。TPL光耦隔離實(shí)現了光電開(kāi)關(guān)、限位開(kāi)關(guān)信號和控制器之間的電平轉換,并實(shí)現了兩個(gè)不同回路間的隔離,保證了控制器電路不受來(lái)自開(kāi)關(guān)信號電路的干擾。
3.5 硬件抗干擾技術(shù)
為了克服可能發(fā)生的各種干擾,保證系統能夠可靠的運行,現有的抗干擾技術(shù)在硬件方面采取如下措施[4]:
?、僖种齐娫锤蓴_。傳導干擾通常由交流電源端引入系統內部。為了抑制這種干擾,系統通常在交流進(jìn)線(xiàn)端串接入低通LC濾波器。這種方法在實(shí)際中己經(jīng)取得明顯效果,但為了抑制電源浪涌電壓的沖擊,系統還必須在電源線(xiàn)之間及電源線(xiàn)對地之間分別裝壓敏電阻。
?、谝种苽鬏斁€(xiàn)干擾。對于系統中傳輸距離較長(cháng)的線(xiàn)路通常選用屏蔽電纜來(lái)實(shí)現系統各部分的連接,以達到抗干擾的目的。在一些應用環(huán)境比較惡劣的系統中,為了進(jìn)一步抑制干擾,可采用光電隔離方式將系統控制部分與I/O口部分分開(kāi),并采用雙電源供電。
?、郾M量減小干擾造成的影響。通常的做法有:1)增加硬件看門(mén)狗電路。2)增加電壓監測電路。3)選擇抗干擾能力較強的單片機系列。4)盡可能使用單片機的內部程序存儲器和內部數據存儲器而不使用外部總線(xiàn)連接這些器件。5)協(xié)調好電路中不同類(lèi)型IC的電平匹配。6)數據總線(xiàn)和控制總線(xiàn)間形成板與板連接時(shí),應加總線(xiàn)驅動(dòng)器。
4 系統軟件設計
系統的主程序由消息循環(huán)和初始化程序構成,其流程如圖5所示。在系統的主程序中,初始化程序的功能是在系統復位后完成單片機各個(gè)特殊功能寄存器的設置、各數據區的初始化、外部硬件設備的設置等操作;系統的消息循環(huán)則用來(lái)實(shí)現消息合法性的判斷及消息處理功能模塊的調用。
圖5 系統主程序流程圖
為了能夠對消息的合法性進(jìn)行判斷,我們?yōu)橄⒔M中的每個(gè)消息定義了對應的合法性判斷標識位。如果某消息所對應的合法性判斷標識位為“1”,則表示該消息是合法的消息,系統應該調用相應的消息處理功能模塊對消息進(jìn)行處理;為“0”則表示該消息是非法的消息,系統應該忽略該消息。為了實(shí)現“看門(mén)狗”功能,我們還在消息循環(huán)中加入了喂狗輸出操作。值得注意的是,在系統的串行通信處理模塊中,根據接收到的數據進(jìn)行判斷是自動(dòng)加工,或是手動(dòng)加工,還是參數設置,分別對消息序列中的標志位進(jìn)行置位,以保證主程序能夠正確實(shí)現各處理模塊的調用。
5 本文創(chuàng )新點(diǎn)
本系統采用MCS51系列單片機對數據進(jìn)行處理及對運動(dòng)狀態(tài)進(jìn)行控制,由8254可編程定時(shí)/計數器實(shí)現脈沖的分頻輸出,保證了運動(dòng)控制的實(shí)時(shí)性要求。為了使運動(dòng)控制器能夠在惡劣的環(huán)境下可靠地工作,我們采用X5045集成芯片為主要器件構成低成本、高可靠性的抗干擾電路,實(shí)現對步進(jìn)電機運動(dòng)控制卡的自動(dòng)保護。系統投入使用以來(lái),產(chǎn)生直接經(jīng)濟效益50余萬(wàn)元。
光電開(kāi)關(guān)相關(guān)文章:光電開(kāi)關(guān)原理
評論