利用8XC196MC波形發(fā)生器控制電機(jī)
O 引言
步進(jìn)電機(jī)可以對旋轉(zhuǎn)角度和轉(zhuǎn)動速度進(jìn)行高精度控制。步進(jìn)電機(jī)作為控制執(zhí)行元件,是機(jī)電一體化的關(guān)鍵產(chǎn)品之一,廣泛應(yīng)用在各種自動化控制系統(tǒng)和精密機(jī)械等領(lǐng)域。例如,在儀器儀表,機(jī)床設(shè)備以及計算機(jī)的外圍設(shè)備中(如打印機(jī)和繪圖儀等),凡需要對轉(zhuǎn)角進(jìn)行精確控制的情況下,使用步進(jìn)電機(jī)最為理想。隨著微電子和計算機(jī)技術(shù)的發(fā)展,步進(jìn)電機(jī)的需求量與日俱增,在各個國民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。
MCS-96系列16位單片機(jī)特別適用于各類自動控制系統(tǒng),如工業(yè)過程控制系統(tǒng),伺服系統(tǒng),分布式控制系統(tǒng),變頻調(diào)速電機(jī)控制系統(tǒng)等,還適用于一般的信號處理系統(tǒng)和高級智能儀器,以及高性能的計算機(jī)外部設(shè)備控制器和辦公自動化設(shè)備控制器。這些系統(tǒng)通常要求實(shí)時處理,實(shí)時控制。由于8XCl96MC單片機(jī)完善而卓越的性能,它必將在智能儀表、家用電器、計算機(jī)終端設(shè)備、汽車電子、人工智能、機(jī)器人、機(jī)電一體化以及傳統(tǒng)設(shè)備改造等廣泛的應(yīng)用領(lǐng)域中大顯身手,充分發(fā)揮其優(yōu)點(diǎn),因此,它具有良好的發(fā)展前景。
1 波形發(fā)生器
1.1 片內(nèi)波形發(fā)生器WFG概述
片內(nèi)波形發(fā)生器’WFG(Wave Form Generator)是8XCl96MC/MD獨(dú)具的特點(diǎn)之一。它有三個同步的PWM模塊,每個模塊包含一個相位比較寄存器、一個無信號時間(dead— time)發(fā)生器和一對可編程的輸出。WFG可以產(chǎn)生獨(dú)立的3對PWM波形,但它們有共同的載波頻率、無信號時間和操作方式。一旦啟動之后,WFG只要求 CP[J在改變PWM的占空比時加以干預(yù)。波形發(fā)生器的專用寄存器有雙向計數(shù)器’WG—COUNT、重裝載寄存器WG—RELOAD、相位比較緩沖寄存器 WG-RCOMPX、控制寄存器WG·C0N、輸出控制緩沖寄存器WG—OUT。用戶可以對WG—RELOAD寄存器進(jìn)行寫操作,而它的值周期地(取決于操作方式)裝到第2個寄存器中,用這個計數(shù)器比較寄存器與WG—COUNT比較。對第2個寄存器的裝載發(fā)生于WG-COUNT一1或WG—COUNT的值等于計數(shù)器比較寄存器的值時,與WFG的操作方式有關(guān)。若寫“O”到WG—RELOAD寄存器中,則當(dāng)該值裝入計數(shù)器中,它就停止計數(shù)。
1.2 波形發(fā)生器基本工作原理
波形發(fā)生器從功能上分3部分。時基發(fā)生器,相位驅(qū)動器通道和控制電路。時基發(fā)生器為PWM建立載波周期。該周期取決于WG—RELOAD寄存器的值和操作方式。時基發(fā)生器的核心是一個16位雙向計數(shù)器WG—COUNT,可工作于4種不同的方式,產(chǎn)生中心對準(zhǔn)或邊沿對準(zhǔn)的PWM,中心對準(zhǔn)的PWM波形所造成的諧波小,通常采用中心對準(zhǔn)方式。相位驅(qū)動通道決定PWM波形占空比。它有3個獨(dú)立的相位驅(qū)動通道,它們電路是一樣的,每個通道有一對可編程的輸出。每個相位通道包含一個可編程的無信號時間發(fā)生器,用來防止一對互補(bǔ)輸出在同一時刻都有效??刂撇糠职恍┯脕泶_定工作模式和其他配置信息的寄存器。一個可編程的保護(hù)電路可監(jiān)視。EXTINT輸入腳,若檢測到一次有效的事件,就產(chǎn)生一次中斷,禁止波形輸出。
時基發(fā)生器WG-COUNT的工作方式O、1在上電復(fù)位后WFG中所有寄存器的值為O。計數(shù)器停止工作,寫入到WG-REL0AD中的所有值在1/2狀態(tài)周期(一個晶振周期)后有效,首次寫入WG—RELOAD的值將傳送給WG—COUNT,若WG—CON寄存器中的允許計數(shù)位EC一1,開始減l計數(shù),至 0001H,等待一個狀態(tài)周期后再加1計數(shù),直至WG—COUNT中的值等于計數(shù)比較寄存器的值,此時完成一個載波周期。當(dāng)計數(shù)比較寄存器的值與WG— COUNT相等時,WG—RELOAD的內(nèi)容裝入WG—COUNT和計數(shù)比較寄存器;WG-COMPX(X一1,2,3)的內(nèi)容裝入相位比較寄存器;輸出緩沖寄存器的內(nèi)容裝入WG—OUT;在PI—PEND寄存器中把WG中斷標(biāo)志置1。在原來(或新)的值重新加載到WG—COUNT后,WG—COUNT開始新一個開關(guān)周期的計數(shù),循環(huán)往復(fù)?!疻G—COUNT的輸出數(shù)據(jù)與時間的關(guān)系是三角形。載波周期Ts=4×WG-RELOAD/Fxtal(μs); WG-RELOAD是16位的二進(jìn)制數(shù);Fxta是xtal引腳上的晶振頻率,不考慮無信號時間時;輸出“有效”的時間是ToutpuT=4×WG- COMP/Fxtal(μs),其中WC-COMP的值是16位,等于或小于WG-RELOAD,占空比=WG-COMP/WG-RELOAD× 100%。由此可見,改變WG-RELOAD的值,不僅會改變PWM的載波周期,而且也會改變PWM的占空比。只有在改變WG-RELOAD的同時,按比例改變WG-COMP,才可能在改變載波周期的同時不改變占空比。
工作方式0和1產(chǎn)生的都是中心對準(zhǔn)的PWM。在方式0中,每個載波周期產(chǎn)生一次中斷請求,產(chǎn)生于計數(shù)器三角波的峰頂(WG-COUT=WG- RELOAD),此時,波形發(fā)生器各緩沖器的值將重裝載到關(guān)聯(lián)寄存器中。方式2和3是邊沿對準(zhǔn)的PWM,計數(shù)器工作于向上計數(shù)方式,它計數(shù)器波形是鋸齒狀波形。
2 控制步進(jìn)電機(jī)原理
2.1 步進(jìn)電機(jī)控制工作原理
步進(jìn)電動機(jī)又稱脈沖電動機(jī),步進(jìn)電動機(jī)是一種將電脈沖信號變換成相應(yīng)的角位移或直線位移的機(jī)電執(zhí)行元件。每當(dāng)輸入一個脈沖,電動機(jī)就轉(zhuǎn)動一個角度前進(jìn)一步。因此,步進(jìn)電動機(jī)輸出的角位移與輸入的脈沖數(shù)成正比,相應(yīng)地轉(zhuǎn)速與脈沖頻率成正比。控制輸入脈沖的數(shù)量、頻率及電動機(jī)各相繞組的通電順序,就可以得到各種需要的運(yùn)行特性,電機(jī)的位置和速度由導(dǎo)電次數(shù) (脈沖數(shù))和頻率成一一對應(yīng)關(guān)系。而方向由導(dǎo)電順序決定。步進(jìn)電機(jī)有步距角(涉及到相數(shù))、靜轉(zhuǎn)矩、及電流三大要素組成。一旦三大要素確定,步進(jìn)電機(jī)的型號便確定下來了。步進(jìn)電機(jī)以相數(shù)可分為:二相電機(jī)、三相電機(jī)、四相電機(jī)、五相電機(jī)等。它們都廣泛運(yùn)用于數(shù)字控制系統(tǒng)中。
四相步進(jìn)電機(jī)控制電路如圖1,本方案使用了8XC196MC波形發(fā)生器的兩組輸出。它由輸入電路、微處理器、功放電路等構(gòu)成,控制驅(qū)動步進(jìn)電機(jī)的時序是半步距時序。一個調(diào)制周期控制八拍。它的控制時序是A-AB-B-BC-C-CD-D-DA-A(正轉(zhuǎn)),DA-D-CD-C-BC-B-BA-A-DA (反轉(zhuǎn))。
步距角:Qn=360°/8*轉(zhuǎn)子齒數(shù)=360°/8*50=0.9°(轉(zhuǎn)子齒數(shù)=50),則步進(jìn)電機(jī)轉(zhuǎn)一圈所需的步進(jìn)數(shù):360°/0.9°=400,根據(jù)輸入信息決定電機(jī)的轉(zhuǎn)動。
2.2 電源一頻率控制特性
電源一頻率控制特性(AMP)數(shù)據(jù)表的建立,由于所加的是直流信號,故可以認(rèn)為電流與電壓成正比,控制電流也就是控制電壓。當(dāng)調(diào)制頻率為0時,電流幅值最大,表格數(shù)據(jù)規(guī)化為65535(0FFFFH),調(diào)制頻率為400 Hz時,電流幅值數(shù)據(jù)為0,中間隔0.25 Hz取一個數(shù)據(jù)。最高調(diào)制頻率為200 Hz,故表格包含數(shù)據(jù)801項數(shù)據(jù),共占1 602字節(jié)。所以WG_COMP=AMP×WB_RELOAD/216.其中:WG_COMP是裝入相比較寄存器的值;AMP是由表格查得的電流幅值; WG-RELOAD是載波周期。
2.3 程序框圖
主程序初始化須設(shè)置允許CAPCOMP0(INT02)中斷,允許EXTINT(INT14)中斷,設(shè)置最小、最大調(diào)制頻率,設(shè)置初始電流幅值,設(shè)置PWM載波周期,設(shè)置初始PWM占空比,開中斷等。由輸入電路裝入調(diào)制頻率,比較調(diào)制頻率,并控制調(diào)制頻率的極限在初始設(shè)置最大到最小范圍內(nèi)。查表取出AMP表中的數(shù)據(jù),并計算再次節(jié)拍時間。CAPCOMP0中斷子程序?qū)﹄姍C(jī)的八拍轉(zhuǎn)動特性進(jìn)行控制輸出,并在中斷程序最后修改占空比和下一次中斷時間。
3 結(jié)束語
本文利用單片機(jī)技術(shù)控制電機(jī)轉(zhuǎn)動工作,使編程由復(fù)雜化走向簡單化。INTEL公司的8XC196MC 系列是專門為電機(jī)高速控制所設(shè)計的一種16位微控制器,其后綴MC正是英文“電機(jī)控制器”(Motor Controller)的字頭縮寫,已被廣泛用于電機(jī)的控制中。它具有性能高,功能全,用戶使用方便等特點(diǎn),尤其是高速的處理能力和對交流電的特殊應(yīng)用,因此它必將在我國的智能領(lǐng)域控制廣泛應(yīng)用,也將帶來可觀的經(jīng)濟(jì)效益。