基于 XC866 的步進電機閥門控制系統(tǒng)
據(jù)MC Ivaine公司最近出版的《世界市場報告》,世界工業(yè)閥門市場將由2010年的440億美元,增長到2015年的520億美元。閥門市場的快速增長,對閥門控制技術(shù)提出了更高的要求。通常情況下,閥門用手動調(diào)節(jié),然而在某些比較惡劣環(huán)境條件下,手動調(diào)節(jié)就顯得不太合適。在某些應(yīng)用場合,對閥門的控制不僅僅是簡單的開關(guān)控制,還涉及到開度控制以及流量等各種關(guān)系控制。這就需要我們設(shè)計一種智能型的自動閥門控制系統(tǒng)。鑒于步進電機具有控制簡便、定位準(zhǔn)確等特點,因此非常適合于單片機控制。近年來,利用步進電機對閥門控制的技術(shù)已經(jīng)應(yīng)用到各個領(lǐng)域。為此,我們設(shè)計了一種利用XC866單片機控制步進電機,來調(diào)控閥門開關(guān)角度的裝置。
步進電機工作特性
步進電機一般分為永磁式(PM)、反應(yīng)式(VR)和混合式(HB)三種類型。目前,二相混合式步進電機的應(yīng)用最為廣泛。本設(shè)計采用的正是二相四線步進電機,步距角為1.8°,不細分。步進電動機基本原理與普通的永磁同步電動機是相通的,它是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負載變化的影響,即給電機加一個脈沖信號,電機則轉(zhuǎn)過一個步距角,而步進電機的驅(qū)動電路是根據(jù)單片機產(chǎn)生的控制信號進行工作。二相步進電機的內(nèi)部結(jié)構(gòu)如圖1所示。
圖1 二相步進電機的內(nèi)部結(jié)構(gòu)
由圖1可知,該步進電動機有A和B兩相繞組,由于感應(yīng)子式步進電動機的特殊性。當(dāng)在A、B兩相繞組中通以對稱的正旋交流電時,將產(chǎn)生圓形旋轉(zhuǎn)磁場,而如果按照的順序依次對繞組通以確定幅值的直流電,將產(chǎn)生4步一循環(huán)的步進旋轉(zhuǎn)定子磁場,步進角度為90°。為了充分利用電動機容量.增大輸出力距,二相步進電動機整步運行通常采用的通電順序。此時步進電機正轉(zhuǎn),當(dāng)通電順序反轉(zhuǎn)時,步進電機反轉(zhuǎn)。
設(shè)計方案
這里,利用英飛凌XC866單片機和外圍芯片組成的控制系統(tǒng)代替脈沖發(fā)生器和脈沖分配器,用軟件的方法控制單片機產(chǎn)生脈沖。設(shè)計一個閥門控制電壓采樣電路,用一個0~2.5V的電壓控制閥門的開關(guān)程度,0V時閥門關(guān)閉,2.5V時閥門完全打開。單片機通過定時器產(chǎn)生中斷對電壓進行采樣,經(jīng)A/D轉(zhuǎn)換后與前一次的數(shù)值做差。若差值超過允許的波動范圍,則單片機會根據(jù)差值的正、負號確定電機的轉(zhuǎn)向,通過計算得出相應(yīng)的脈沖數(shù);再發(fā)送脈沖,驅(qū)動步進電機的相應(yīng)轉(zhuǎn)動,增大或減小閥門的開度。若電壓的差值在允許的波動范圍內(nèi),則單片機不發(fā)送脈沖,閥門靜止不動。
1 主控芯片XC866簡介
XC866單片機是英飛凌公司推出的8位微控制器XC800系列的第一款產(chǎn)品,它具有處理能力強、運行速度快、安全性能突出、片上資源豐富、工程開發(fā)方便快捷等優(yōu)點,性價比非常突出。它的輸入/輸出口(I/O 口)可由3.3V 或5.0V 供電;內(nèi)核需2.5V 供電。主要特性包括:用來產(chǎn)生脈寬調(diào)制信號、帶有電機控制專用模式的捕獲/比較單元(CCU6);具有如自動掃描和結(jié)果累加(用于抗混迭濾波或結(jié)果平均)等特性。
XC866內(nèi)部集成了高性能的8051內(nèi)核以及功能強大的外設(shè),對于熟悉51單片機的用戶,可以在較短的時間內(nèi)熟悉其性能,并利用其豐富的外設(shè)實現(xiàn)各種相對復(fù)雜的應(yīng)用。
2硬件設(shè)計重點
① 步進電機驅(qū)動電路
在本設(shè)計中,我們選用了三洋公司(SANYO)電機驅(qū)動芯片LB1836M(見圖2)。
圖2 步進電機驅(qū)動電路
LB1836M是低飽和雙通道雙向電機低電壓驅(qū)動器件,引腳INl、IN2、IN3和IN4是步進脈沖的輸入端。
OUT1、OUT2、OUT3、OUT4為步進脈沖的輸出端,分別與步進電機電機對B、A、/B、/A相連接。LBl836M輸入端的四個步進脈沖可由單片機的P3.1、P3.0、P3.3、P3.2四路PWM通道產(chǎn)生。四個I/O口輸出的相位關(guān)系為P3.0與P3.2反相,P3.1與P3.3反相,P3.0與P3.1相差π/2。
② 閥門控制電壓采樣電路
由于本設(shè)計中采用了一個0~2.5V的電壓信號調(diào)控閥門的打開程度,單片機利用定時器中斷對電壓進行采樣,然后傳送到ADC模塊再進行控制。電壓采樣電路如圖3所示。
圖3 電壓采樣電路
電壓信號由Input端輸入經(jīng)過電阻分壓,然后通過一個電壓跟隨器,這時1點電壓與3點電壓相同;然后,將信號傳送到XC866的P2.4端口,再送到ADC模塊進行電壓采集。VAREF引腳為XC866的ADC參考電壓介入口,VAGND為ADC接地。參考電壓為2.5V,用LM4040的穩(wěn)壓二極管將電壓穩(wěn)定在2.5V,電容的設(shè)計是用來減少干擾。
③ 軟件設(shè)計
本設(shè)計中步進電機的控制脈沖信號,是由軟件編程控制XC866產(chǎn)生的,用C語言編寫。軟件的主要流程是:系統(tǒng)啟動后,首先進行單片機和外圍器件的初始化,I/O口進行置位,設(shè)置定時器。定時器產(chǎn)生中斷,對目標(biāo)電壓值進行采樣,與當(dāng)前位置的電壓分別經(jīng)過A/D轉(zhuǎn)換(參考電壓為2.5V),再進行比較,求出二者的差及符號。當(dāng)差值在允許的誤差范圍內(nèi),步進電機不動;當(dāng)差值超出允許誤差范圍時,從XC866的四個I/O口輸出所需數(shù)量的脈沖信號,控制電機轉(zhuǎn)動。為防止在A/D轉(zhuǎn)換中出現(xiàn)的誤差及步進電機本身的誤差的存在,造成電機振蕩。因此,在程序設(shè)計時,規(guī)定一定的誤差范圍。