基于S7-200的步進(jìn)電機控制器設(shè)計
控制電路
本文引用地址:http://butianyuan.cn/article/108094.htm控制電路用于產(chǎn)生脈沖,以控制電機的速度和轉(zhuǎn)向[5]。本設(shè)計中采用SIMATIC S7-200 CPU-214 PLC[6]作為控制核心部件。S7-200PLC的CPU214有兩個脈沖輸出,可以用來產(chǎn)生控制步進(jìn)電機驅(qū)動器的脈沖,實現(xiàn)控制要求。S7-200CPU含有高速脈沖輸出功能,CPU脈沖輸出頻率達(dá)20KHz~100KHz,可以用來驅(qū)動步進(jìn)電機或伺服電機,并由電機直接驅(qū)動負(fù)載主軸旋轉(zhuǎn),完成控制工藝所要求的動作。
驅(qū)動電路
驅(qū)動電路由脈沖信號分配和功率細(xì)分驅(qū)動電路組成。根據(jù)控制器輸入的脈沖和方向信號,為步進(jìn)電機各繞組提供正確的通電順序,以及電機需要的高電壓、大電流;同時提供各種保護(hù)措施,如過流、過熱等保護(hù)[7]。功率驅(qū)動器將控制脈沖按照設(shè)定的模式轉(zhuǎn)換成步進(jìn)電機線圈的電流,產(chǎn)生旋轉(zhuǎn)磁場,使得轉(zhuǎn)子只能按固定的步數(shù)來改變它的位置[6]。連續(xù)的脈沖序列產(chǎn)生與其對應(yīng)同頻率的步序列。如果控制頻率足夠高,步進(jìn)電機的轉(zhuǎn)動可看作連續(xù)的轉(zhuǎn)動。
步進(jìn)電機
控制信號經(jīng)驅(qū)動器放大后驅(qū)動步進(jìn)電機,帶動負(fù)載[8]。用S7-200PLC Q0.0和Q0.1的輸出脈沖觸發(fā)步進(jìn)電機驅(qū)動器。當(dāng)輸入端I1.0發(fā)出“START”信號后,控制器將輸出固定數(shù)目的方波脈沖,使步進(jìn)電機按對應(yīng)的步數(shù)轉(zhuǎn)動;當(dāng)輸入端I1.1 發(fā)出“STOP”信號后,步進(jìn)電機停止轉(zhuǎn)動;接在輸入端I1.5的方向開關(guān)位置決定電機正轉(zhuǎn)或反轉(zhuǎn)。本設(shè)計采用帶有標(biāo)準(zhǔn)功率驅(qū)動器和相關(guān)連接電纜的步進(jìn)電機。
各組成模塊的選擇和功能
由于“額定電流可調(diào)的等角度恒力矩細(xì)分”驅(qū)動方法的實質(zhì)是恒流控制,其關(guān)鍵是電流的精確控制,本設(shè)計在器件選擇是同時兼顧以下各個條件:D/A轉(zhuǎn)換器輸出的電流值與期望值相當(dāng)接近,而且轉(zhuǎn)換速度要快;SPI口通信,頻率高達(dá)50 MHz,建立時間快,同時單電壓供電,連接簡單;檢測到的電流可正確地反映此時的相電流,采用的檢測方法為霍爾傳感器,該方法檢測準(zhǔn)確、干擾小、連接也較簡單;比較器分辨率高、轉(zhuǎn)換速度快;控制功率管開關(guān)的邏輯電路有很高的實時性,保證相電流在設(shè)定電流上下做很小的波動,避免了引起浪涌而干擾控制電路。
S7-200根據(jù)收到的脈沖信號進(jìn)行脈沖信號分配,確定各相通電順序,并與電流檢測模塊里的D觸發(fā)器相連。同時根據(jù)用戶設(shè)定的電流值和細(xì)分?jǐn)?shù)通過SPI口與A/D轉(zhuǎn)換器通信,得到設(shè)定的電流值(實際上是電流對應(yīng)的電壓值)。
A/D轉(zhuǎn)換器輸出的值為期望的電流對應(yīng)的電壓值,它必須與從功率模塊檢測得到的電流對應(yīng)的電壓值進(jìn)行比較,并把比較結(jié)果與電流檢測模塊里面的D觸發(fā)器相連。
電流檢測模塊主要由D觸發(fā)器進(jìn)行邏輯控制。該模塊與電流、細(xì)分設(shè)定的撥碼開關(guān)相連,把得到的值通過SPI口傳給單片機。以D觸發(fā)器為核心的控制邏輯,根據(jù)單片機的各相通電順序和比較器的比較結(jié)果確定各功率管的開關(guān)。功率驅(qū)動模塊直接與電機相連,驅(qū)動電機??刹捎?個MOS管IRF740構(gòu)成2個H橋雙極型驅(qū)動電路。
軟件設(shè)計
在程序的編制中,為使步進(jìn)電機換向時平滑過渡,避免產(chǎn)生錯步,應(yīng)在每一步中設(shè)置標(biāo)志位[3]。在正轉(zhuǎn)時,不僅給正轉(zhuǎn)標(biāo)志位賦值,也同時給反轉(zhuǎn)標(biāo)志位賦值;在反轉(zhuǎn)時也需做如此處理。這樣,當(dāng)步進(jìn)電機換向時,以上一次的位置作為起點反向運動,避免了電機換向時產(chǎn)生錯步[10]。步進(jìn)電機控制系統(tǒng)的軟件主要由主控程序、細(xì)分驅(qū)動程序、鍵處理程序、顯示數(shù)據(jù)處理及顯示驅(qū)動程序、通信監(jiān)控程序等部分組成。細(xì)分驅(qū)動主控制程序控制整個程序的流程,主要完成程序的初始化、參考點的設(shè)置和取消、定位控制和電機的停止/啟動等。初始化。在程序的第一個掃描周期,初始化重要參數(shù)。選擇旋轉(zhuǎn)方向和解除聯(lián)鎖。
設(shè)置和取消參考點。如果還沒有確定參考點,那么參考點曲線應(yīng)從按“START”按鈕(I1.0)開始。CPU有可能輸出最大數(shù)量的控制脈沖。在所需的參考點,按“設(shè)置/取消參考點”開關(guān)后,首先調(diào)用停止電機的子程序。然后,再把新的操作模式“定位控制激活”顯示在輸出端Q1.0。如果開關(guān)已激活,而且“定位控制”也被激活,則切換到“參考點曲線”,并取消“定位控制激活”(Q1.0=0)。此外,控制還為輸出最大數(shù)量的控制脈沖做準(zhǔn)備。當(dāng)再次激活開關(guān),便在兩個模式之間切換。如果此信號產(chǎn)生的同時電機在運轉(zhuǎn),那么電機就自動停止。
脈沖點火器相關(guān)文章:脈沖點火器原理
評論