牛國鋒,王啟元,常晉義,朱苗苗
(常熟理工學(xué)院 計算機(jī)科學(xué)與工程學(xué)院,江蘇 常熟 215500)
為響應(yīng)中國“低碳社會”建設(shè)大潮,倡導(dǎo)建設(shè)綠色智能社會的核心,研究瑞薩微控制器在全球領(lǐng)先的“綠色環(huán)保MCU”及其擴(kuò)展功能具有重要價值和意義。本設(shè)計采用瑞薩78KOR/KG3作為主控芯片,分別使用東芝TD62083AF和TA7774FG作為單極和雙極步進(jìn)電機(jī)驅(qū)動器,利用軟件編程,能夠設(shè)置多個占空比不同的脈沖,使得電機(jī)啟動、停止、正反轉(zhuǎn),轉(zhuǎn)速可以逐步增大或減小,且應(yīng)答性良好。在微控制器的控制下開關(guān)控制簡單易操作,穩(wěn)定性也極佳。由于步進(jìn)電機(jī)工作原理易學(xué)易用,成本較低,電機(jī)和驅(qū)動器不易損壞,非常適合于微控制器和單片機(jī)控制,因此,近年來在各行各業(yè)的控制設(shè)備中獲得了越來越廣泛的應(yīng)用。
步進(jìn)電機(jī)是數(shù)字控制電機(jī),將脈沖信號轉(zhuǎn)換成角位移,電機(jī)的轉(zhuǎn)速、停止的位置取決于脈沖信號的頻率和脈沖數(shù),而不受負(fù)載變化的影響,具有快速起動、停止和正反轉(zhuǎn)的應(yīng)答性良好,控制容易等優(yōu)點(diǎn)。在非超載狀態(tài)下,根據(jù)上述線性關(guān)系,再加上步進(jìn)電機(jī)只有周期性誤差而無累積誤差,因此步進(jìn)電機(jī)適用于單片機(jī)控制。步進(jìn)電機(jī)通過輸入脈沖信號進(jìn)行控制,即電機(jī)的總轉(zhuǎn)動角度由輸入脈沖總數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號頻率決定。步進(jìn)電機(jī)的驅(qū)動電路是根據(jù)單片機(jī)產(chǎn)生的控制信號進(jìn)行工作的,因此,單片機(jī)通過向步進(jìn)電機(jī)驅(qū)動電路發(fā)送控制信號就能實(shí)現(xiàn)對步進(jìn)電機(jī)的控制。
步進(jìn)電機(jī)控制系統(tǒng)主要由微控制器、鍵盤、LED、驅(qū)動馬達(dá)和PC等5個模塊組成[3]。其中PC模塊是軟件控制部分,該控制系統(tǒng)可實(shí)現(xiàn)的功能主要為:(1)通過鍵盤啟動/暫停步進(jìn)電機(jī)、設(shè)置步進(jìn)電機(jī)的轉(zhuǎn)速和改變步進(jìn)電機(jī)的轉(zhuǎn)向;(2)通過LED顯示燈顯示步進(jìn)的轉(zhuǎn)速和轉(zhuǎn)向等工作狀態(tài);(3)實(shí)現(xiàn)三相或四相步進(jìn)電機(jī)的控制;(4)通過PC軟件實(shí)現(xiàn)對步進(jìn)電機(jī)的控制(啟停、轉(zhuǎn)速和轉(zhuǎn)向等)。
目前,隨著人們環(huán)保意識的日益提高,消費(fèi)者越來越關(guān)注微控制器系統(tǒng)的節(jié)能性。為了擴(kuò)大在節(jié)能家電和電池供電系統(tǒng)等市場領(lǐng)域的應(yīng)用,瑞薩電子在新的MCU產(chǎn)品中加入了節(jié)能理念,推出高標(biāo)準(zhǔn)16位低功耗閃存微控制器產(chǎn)品78K0R系列[2],其具有低耗電量及高效能等特點(diǎn),因此其支持尺寸更小、功耗更低的系統(tǒng)且降低了系統(tǒng)總功耗。
本系統(tǒng)以瑞薩78KOR/KG3 uPD78F1166/A微控制器為控制核心,通過按鍵來控制電機(jī)轉(zhuǎn)速和方向,同時通過LED顯示燈實(shí)時顯示電機(jī)工作狀態(tài)。按照MCU I/O板上的接口功能,系統(tǒng)選用P7端口低5位作為按鍵控制口,P5端口高4位經(jīng)反相后連接步進(jìn)電機(jī)驅(qū)動芯片,低4位用作電機(jī)狀態(tài)指示燈。整個系統(tǒng)硬件結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)硬件結(jié)構(gòu)示意圖
步進(jìn)式電動機(jī)是由4個相互垂直安排的線圈組成的,這4個線圈圍繞著磁化轉(zhuǎn)動軸,在線圈通電后會產(chǎn)生激勵,這時將會吸引或者是排斥磁化軸,為了轉(zhuǎn)動步進(jìn)電動機(jī),線圈將會以引起它在一個方向或者另一個方向轉(zhuǎn)動的模式激勵。單極性(Unipolar)和雙極性(Bipolar)是步進(jìn)電機(jī)最常采用的兩種驅(qū)動架構(gòu)。本設(shè)計分別采用技術(shù)含量較高的高精密度集成電路東芝TD6238AFG和TA7774FG作為單極和雙極馬達(dá)驅(qū)動器,同時可實(shí)現(xiàn)單級和雙極驅(qū)動馬達(dá)控制。其驅(qū)動電路如圖2和圖3所示。
圖2 單極驅(qū)動電路圖
圖3 雙極驅(qū)動電路圖
步進(jìn)電機(jī)的勵磁方式[4]可分為全步勵磁及半步勵磁。其中全步勵磁又有1相勵磁及2相勵磁之分,而半步勵磁又稱 1-2相勵磁。步進(jìn)電機(jī)的控制等效電路,適 應(yīng) 控 制 A、B、、的 勵磁信號,即可控制步進(jìn)電機(jī)的轉(zhuǎn)動。每輸出一個脈沖信號,步進(jìn)電機(jī)只走一步。因此,依序不斷送出脈沖信號,即可使步進(jìn)電動機(jī)連續(xù)轉(zhuǎn)動。勵磁方式及電流波形圖如圖4所示。
圖4 勵磁方式及電流波形圖
(1)1 相勵磁法
在每一瞬間只有一個線圈導(dǎo)通。消耗電力小,精確度良好,但轉(zhuǎn)矩小,振動較大,每送出一個勵磁信號可走相同弧度。以1相勵磁法控制步進(jìn)電動機(jī)正轉(zhuǎn);若勵磁信號反向傳送,則步進(jìn)電動機(jī)反轉(zhuǎn)。
(2)2 相勵磁法
在每一瞬間會有兩個線圈同時導(dǎo)通。因其轉(zhuǎn)矩大,振動小,故為目前使用最多的勵磁方式,每送出一個勵磁信號可走相同弧度。
以2相勵磁方式控制步進(jìn)電動機(jī)正轉(zhuǎn);若勵磁信號反向傳送,則步進(jìn)電動機(jī)反轉(zhuǎn)。
(3)1-2 相勵磁法
1-2相勵磁法為1相與2相輪流交替導(dǎo)通。因分辨率提高,且運(yùn)轉(zhuǎn)平滑,每送出一個勵磁信號可走更小的弧度。以1-2相勵磁法控制步進(jìn)電動機(jī)正轉(zhuǎn);若勵磁信號反向傳送,則步進(jìn)電動機(jī)反轉(zhuǎn)。這種勵磁方式是一種更注重細(xì)節(jié)的控制實(shí)現(xiàn)方式,故廣泛被采用。
單極驅(qū)動步進(jìn)電機(jī)可用1相勵磁、2相勵磁和1-2相勵磁3種方法實(shí)現(xiàn),雙極驅(qū)動步進(jìn)電機(jī)只能用2相勵磁方法實(shí)現(xiàn)。
軟件采用瑞薩電子的新集成型開發(fā)環(huán)境CubeSuite,其為采用8位到32位架構(gòu)的微控制器提供了統(tǒng)一的支持[5]。在開發(fā)適用于MCU的軟件時,該產(chǎn)品將編譯器和與仿真器一起使用的調(diào)試器等所有的工具連接起來,使其可以在同一個主機(jī)上,完成所有的設(shè)計、編碼、評估、調(diào)試和驗證任務(wù)等功能。
CubeSuite針對每個要實(shí)現(xiàn)的目標(biāo)系統(tǒng)建立一個工程,在該工程下實(shí)現(xiàn)軟硬件對接和完成相應(yīng)功能編碼。首先打開CubeSuite軟件運(yùn)行環(huán)境,點(diǎn)擊“開始”菜單,在新建工程界面選擇點(diǎn)擊“建立新工程”,在“工程作成”界面里按照系統(tǒng)使用的硬件型號依次選擇MCU系列為78KOR,MCU型號為 uPD78F1166/A,保存的工程名以不帶漢字的日文、拼音字母和數(shù)字等標(biāo)識,最后選擇保存的路徑,然后點(diǎn)擊“作成”,此系統(tǒng)工程建立。工程建立后,該工程打開在當(dāng)前窗口,分為左右兩欄,左欄為樹形結(jié)構(gòu)硬件及接口選擇和編碼模塊選擇,右欄為接口詳細(xì)設(shè)置和編程主窗口。
首先在左欄的端子配置表中,對照硬件設(shè)計中所用到的端子號進(jìn)行端子名稱和輸入輸出配置。本設(shè)計按照所需的功能要求端口輸入輸出功能分別為:P50~P53端口對應(yīng) LED指示燈的 LED0~LED3輸出端口;P54~P57端口連接步進(jìn)電機(jī)驅(qū)動芯片輸入控制;P70~P74端口為KEY按鍵輸入控制端口。端口分配并設(shè)置完成后執(zhí)行端子生成,各個端子的輸入輸出就明確地顯示在端子配置圖中。
編碼設(shè)計工具是從編輯軟件進(jìn)入接口以后實(shí)現(xiàn)人機(jī)對話,對硬件的功能進(jìn)行軟設(shè)置,以達(dá)到功能啟用,同時也可系統(tǒng)生成基礎(chǔ)編碼。在編碼設(shè)計工具中分別對系統(tǒng)設(shè)置、外部接口、A/D轉(zhuǎn)換器、計時器進(jìn)行詳細(xì)設(shè)定,其他的外部總線、中斷、即時計數(shù)器設(shè)置、串行接口、D/A轉(zhuǎn)換器、蜂鳴器、Clock、DMA控制器等不需要設(shè)置的選擇不使用,進(jìn)行關(guān)閉,各個編碼工具相應(yīng)的設(shè)定如下。
(1)系統(tǒng)設(shè)置中選擇電源電壓為2.7 V≤VDD≤5.5 V,高速內(nèi)置振蕩時鐘周波數(shù)為8 MHz,CPU時鐘為4 000 kHz,端子選擇1線模式。
(2)外部端口設(shè)定中設(shè)置P50~P53端口為輸出端口;P54~P57端口連接步進(jìn)電機(jī)驅(qū)動芯片輸入控制;P70~P74端口為KEY按鍵輸入控制端口。
(3)A/D轉(zhuǎn)換器中設(shè)置動作為停止,選擇基準(zhǔn)電壓為4.4 V≤VDD≤5.5 V,A/D中斷許可優(yōu)先為低位。
(4)計時器通道開通通道0、通道 2和通道4這 3個通道,并設(shè)定了每個通道的中斷間隔時間。
硬件接口功能設(shè)定完成后要在相對應(yīng)的部分進(jìn)行C語言編碼,軟硬件結(jié)合實(shí)現(xiàn)系統(tǒng)功能。
微控制器上電后開始中斷初始化,并且設(shè)定寄存器及電機(jī)控制模型初值,此時電機(jī)不轉(zhuǎn)動,LED指示燈全部熄滅;若有鍵按下,則執(zhí)行中斷服務(wù)程序判別鍵值[6],根據(jù)鍵值來執(zhí)行相應(yīng)的子程序,通過控制器對控制臺的參數(shù)進(jìn)行采集,通過對采集的數(shù)據(jù)分析處理來改變控制模型及寄存器值以控制步進(jìn)電機(jī)的方向和速度,同時將相應(yīng)的信號輸入到驅(qū)動器中,再通過驅(qū)動器控制電機(jī)進(jìn)行正轉(zhuǎn)、反轉(zhuǎn)、加速和減速,根據(jù)LED指示燈信號閃爍顯示電機(jī)的工作狀態(tài)。
本文主要闡述了以節(jié)能環(huán)保型瑞薩MCU主控芯片為核心,結(jié)合東芝驅(qū)動能力強(qiáng)大電機(jī)驅(qū)動器TD6238AFG和TA7774FG,設(shè)計實(shí)現(xiàn)了一種步進(jìn)電機(jī)控制系統(tǒng),從而實(shí)現(xiàn)按鍵控制和調(diào)整步進(jìn)電機(jī)轉(zhuǎn)速及轉(zhuǎn)向;同時利用軟件編程能夠設(shè)置多個占空比不同的脈沖,使得電機(jī)轉(zhuǎn)速可以逐步增大或減??;并通過LED指示燈顯示電機(jī)的工作狀態(tài),便于觀察和識別。其人性化設(shè)計以及更優(yōu)性價比產(chǎn)品在市場上的投入使用,將為中國智能低碳社會的建設(shè)做出積極貢獻(xiàn)。
[1]孟武勝,李亮.基于AT89C52單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)設(shè)計[J].微電機(jī),2007(3):64-66.
[2]瑞薩電子.瑞薩 16位 R8C/TINY系列 MCU[J].世界電子元器件,2005(4):91-94.
[3]鄭寶瑞,陸仲達(dá).基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)的研制[J].齊齊哈爾大學(xué)學(xué)報,2010,26(4):46-49.
[4]王嘯東.基于單片機(jī)的步進(jìn)電機(jī)驅(qū)動方法研究[J].科學(xué)之友,2010(10):31-32.
[5]適用于微控制器的CubeSuite+集成型開發(fā)環(huán)境[J].電子制作,2011(7).
[6]牛甲,熊剛,郭東平.基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)設(shè)計與仿真[J].硅谷,2011(20):71.