?!∮拢钿h濤,代月幫,段富海,王亞杰(大連理工大學(xué)機(jī)械工程學(xué)院,遼寧大連 116024)
?
面向伺服電機(jī)的STM32單片機(jī)控制系統(tǒng)設(shè)計(jì)**國(guó)家自然科學(xué)基金項(xiàng)目(編號(hào):51275068);航空科學(xué)基金項(xiàng)目(編號(hào):20130863);中央高?;究蒲袠I(yè)務(wù)費(fèi)(編號(hào):DUT15LK21)
桑勇,李鋒濤,代月幫,段富海,王亞杰
(大連理工大學(xué)機(jī)械工程學(xué)院,遼寧大連116024)
摘要:介紹了一種基于STM32F103ZET6單片機(jī)的交流伺服電機(jī)位置、速度和轉(zhuǎn)矩控制方案,完成了控制系統(tǒng)軟硬件設(shè)計(jì)、電機(jī)調(diào)試參數(shù)設(shè)置和伺服電機(jī)控制結(jié)構(gòu)圖等方面的工作。人機(jī)接口(HMI)采用LabVIEW圖形化編程語言設(shè)計(jì),交互性強(qiáng),界面友好。與傳統(tǒng)的單片機(jī)控制方案相比,該控制系統(tǒng)具有經(jīng)濟(jì)性好,處理速度快,實(shí)時(shí)性好,集成度高和抗干擾性強(qiáng)等優(yōu)點(diǎn),能較好地實(shí)現(xiàn)交流伺服電機(jī)的精確位置定位及勻速運(yùn)轉(zhuǎn)控制。
關(guān)鍵詞:STM32;交流伺服電機(jī);位置控制;速度控制;轉(zhuǎn)矩控制
伺服電機(jī)是一種在伺服系統(tǒng)中控制機(jī)械設(shè)備運(yùn)轉(zhuǎn)的控制電機(jī),用來實(shí)現(xiàn)位置、速度、加速度和轉(zhuǎn)矩等的精確控制。伺服電機(jī)可分為直流伺服電機(jī)和交流伺服電機(jī)兩大類,而由于交流伺服電機(jī)具有體積小,慣量低,速度高,響應(yīng)快,轉(zhuǎn)矩大,無電刷和換向器,散熱好等優(yōu)點(diǎn),已經(jīng)廣泛應(yīng)用于自動(dòng)控制系統(tǒng)和自動(dòng)檢測(cè)系統(tǒng)中[1]。德國(guó)柏林工業(yè)大學(xué)電子研究所的Dietrich H.Naunin和Hans-Christian Reuss教授[2]提出的數(shù)字伺服驅(qū)動(dòng)控制系統(tǒng)促進(jìn)了伺服驅(qū)動(dòng)器技術(shù)向高速動(dòng)態(tài)響應(yīng)和高集成度的方向發(fā)展。微電子、集成電路技術(shù)、大功率高性能半導(dǎo)體器件和控制理論與技術(shù)的飛速發(fā)展,又使得PLC和單片機(jī)等微控制器技術(shù)在數(shù)字伺服系統(tǒng)中得以廣泛運(yùn)用。單片機(jī)因其經(jīng)濟(jì)性好,可靠性高,處理能力強(qiáng),低壓低功耗,系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,易于實(shí)現(xiàn)模塊化,使用方便等優(yōu)點(diǎn),從而廣泛用于對(duì)伺服電機(jī)控制器的控制,伺服驅(qū)動(dòng)器接收單片機(jī)發(fā)出的脈沖指令和模擬信號(hào)等指令,進(jìn)而控制伺服電機(jī)的運(yùn)轉(zhuǎn)狀態(tài)以滿足不同場(chǎng)合的需要[3]。伺服電機(jī)用作執(zhí)行元件,可把所收到的電信號(hào)轉(zhuǎn)換成電動(dòng)機(jī)軸上的角位移或角速度輸出[4],因此可較方便的運(yùn)用具有邏輯控制能力的單片機(jī)或PLC等實(shí)現(xiàn)對(duì)伺服電機(jī)的控制。目前用單片機(jī)控制伺服電機(jī)的方案有很多,如華中科技大學(xué)蔡志祥,沈陽(yáng)航空工業(yè)學(xué)院孫克梅等人提出的基于AT89C51單片機(jī)的伺服電機(jī)控制方案[5-6],南京郵電大學(xué)黃之然以及長(zhǎng)春理工大學(xué)李紅偉等人的基于STC12C5A60S2單片機(jī)的伺服控制方案[7-8],還有燕山大學(xué)張立麗等人提出的PIC18F452單片機(jī)的控制方案[9]。以上普通單片機(jī)雖能實(shí)現(xiàn)相關(guān)控制要求,但其內(nèi)部集成模塊少,外圍擴(kuò)展電路復(fù)雜,控制成本高,處理速度慢,抗干擾能力弱,而PLC成本又相對(duì)較高。針對(duì)上述問題,提出采用意法半導(dǎo)體公司推出的ARM Cortex-M3為內(nèi)核的32位微控制器STM32F103ZET6及其內(nèi)置高速高性能外設(shè)實(shí)現(xiàn)對(duì)交流伺服電機(jī)的控制。STM32系列單片機(jī)實(shí)際上是一種高級(jí)單片機(jī),集成度高,經(jīng)濟(jì)性好,處理速度快,功耗低,使用方便,抗干擾能力強(qiáng)等特點(diǎn),可實(shí)現(xiàn)伺服電機(jī)的準(zhǔn)確平穩(wěn)控制。
本系統(tǒng)選用臺(tái)灣士林交流伺服電機(jī),采用意法半導(dǎo)體公司推出的STM32F103ZET6為主控芯片,實(shí)現(xiàn)對(duì)伺服電機(jī)控制器的連接控制。伺服電機(jī)內(nèi)部結(jié)構(gòu)由定子、轉(zhuǎn)子、編碼器和外殼等組成。定子上的U/V/W三相電在伺服驅(qū)動(dòng)器的控制下產(chǎn)生旋轉(zhuǎn)的電磁場(chǎng),轉(zhuǎn)子是一個(gè)永磁體,在旋轉(zhuǎn)磁場(chǎng)作用下,轉(zhuǎn)子和磁場(chǎng)同步旋轉(zhuǎn)。同時(shí)電機(jī)尾部的編碼器反饋信號(hào)給伺服驅(qū)動(dòng)器,驅(qū)動(dòng)器對(duì)目標(biāo)值和反饋值進(jìn)行比較,產(chǎn)生偏差信號(hào)進(jìn)而快速調(diào)控電機(jī)的運(yùn)轉(zhuǎn)。本文提出的基于STM32的伺服電機(jī)控制體系結(jié)構(gòu)框圖如圖1所示。
通過STM32F103ZET6單片機(jī)控制伺服驅(qū)動(dòng)器實(shí)現(xiàn)對(duì)伺服電機(jī)的控制,由獨(dú)立鍵盤解碼可實(shí)現(xiàn)對(duì)伺服電機(jī)的啟動(dòng)和停止。伺服電機(jī)的控制方式從外到內(nèi)分別為位置控制,速度控制和轉(zhuǎn)矩控制。位置控制方面,由STM32F103ZET6單片機(jī)輸出兩路脈沖信號(hào),然后送入伺服驅(qū)動(dòng)器控制電機(jī),由伺服電機(jī)里的編碼器產(chǎn)生的反饋信號(hào)送入伺服驅(qū)動(dòng)器,根據(jù)反饋值和目標(biāo)值的比較,調(diào)整伺服電機(jī)轉(zhuǎn)動(dòng)的角度,實(shí)現(xiàn)伺服驅(qū)動(dòng)器對(duì)伺服電機(jī)的閉環(huán)控制。位置控制精度取決于光電編碼器每轉(zhuǎn)產(chǎn)生的脈沖數(shù)控制,即伺服電機(jī)的精度是由編碼器的線數(shù)決定。速度控制方面,士林伺服電機(jī)有兩種速度輸入命令模式:一種是類比輸入,另一種是暫存器輸入,本系統(tǒng)采用類比輸入模式,外部單片機(jī)發(fā)出速度指令信號(hào),經(jīng)DA轉(zhuǎn)換后形成模擬量電壓信號(hào)實(shí)現(xiàn)對(duì)伺服電機(jī)的轉(zhuǎn)速的控制,10 V時(shí)電機(jī)速度最大,0 V時(shí)候最小,由速度環(huán)編碼器的反饋實(shí)現(xiàn)閉環(huán)控制。轉(zhuǎn)矩控制方面,經(jīng)單片機(jī)發(fā)出轉(zhuǎn)矩控制指令經(jīng)DA轉(zhuǎn)換后送入伺服驅(qū)動(dòng)器CN1接線端,伺服驅(qū)動(dòng)器依靠?jī)?nèi)部電流環(huán)實(shí)現(xiàn)閉環(huán)控制。編碼器分為絕對(duì)式光電編碼器和增量式光電編碼器,本系統(tǒng)采用的是2 500 ppr (10 000解析度)的增量式光電編碼器。一般來說,增量式光電編碼器輸出A、B兩相互差90°的脈沖信號(hào)(即所謂的兩組正交輸出信號(hào)),從而可方便地判斷出旋轉(zhuǎn)方向。同時(shí)還有用作參考零位的Z相標(biāo)志(指示)脈沖信號(hào),碼盤每旋轉(zhuǎn)一周,只發(fā)出一個(gè)標(biāo)志信號(hào)。具有原理簡(jiǎn)單,壽命長(zhǎng),分辨率高,抗干擾性強(qiáng),可靠性高等優(yōu)點(diǎn)。
圖1 控制系統(tǒng)體系結(jié)構(gòu)框圖
伺服系統(tǒng)一般采用電流環(huán),速度環(huán)和位置環(huán)的三環(huán)控制結(jié)構(gòu),因?yàn)檫@樣可以獲得較好的動(dòng)態(tài)跟蹤性能和抗負(fù)載干擾能力,其中電流環(huán)是矢量控制的核心,用來抑制電流擾動(dòng),保證系統(tǒng)的穩(wěn)定性;速度環(huán)和位置環(huán)用來抑制速度波動(dòng),實(shí)現(xiàn)系統(tǒng)準(zhǔn)確定位。伺服電機(jī)矢量控制系統(tǒng)結(jié)構(gòu)[10]如圖2所示。
電流環(huán)是伺服系統(tǒng)的最內(nèi)環(huán),決定著系統(tǒng)響應(yīng)速度和環(huán)內(nèi)抗干擾能力。電流環(huán)的組成包括伺服電機(jī)電機(jī)繞組、逆變器、矢量控制器、電流控制器及電流檢測(cè)等環(huán)節(jié),其目標(biāo)在于使得伺服電機(jī)繞組中的電流信號(hào)準(zhǔn)確迅速地跟隨電流指令。對(duì)電流環(huán)的控制過程分析,電流環(huán)控制結(jié)構(gòu)如圖3所示。
圖2 伺服電機(jī)矢量控制系統(tǒng)結(jié)構(gòu)圖
圖3 電流環(huán)的控制結(jié)構(gòu)圖
其中Ki和Ti分別為電流環(huán)的比例增益和電流環(huán)積分時(shí)間常數(shù),Kpwmd和Tpwmd分別為逆變器放大系數(shù)和逆變器時(shí)間常數(shù),Lα和Rα分別是電機(jī)繞組電感和電阻,Kii為電流檢測(cè)反饋增益。
速度環(huán)建立在電流環(huán)之上,三環(huán)控制結(jié)構(gòu)中的次內(nèi)環(huán),其作用是保證電機(jī)實(shí)際轉(zhuǎn)速和速度設(shè)定一致,盡可能消除負(fù)載對(duì)電機(jī)轉(zhuǎn)速的干擾。速度環(huán)由電機(jī)轉(zhuǎn)子、電流閉環(huán)、速度控制器和速度反饋模塊等環(huán)節(jié)組成,是實(shí)現(xiàn)動(dòng)態(tài)跟蹤的重要環(huán)節(jié),速度環(huán)控制結(jié)構(gòu)如圖4所示。
其中Ks和Ts分別是速度控制器比例增益和速度控制器積分時(shí)間常數(shù),Js和Bs分別為電機(jī)轉(zhuǎn)子及負(fù)載折合到電機(jī)軸上的總轉(zhuǎn)動(dòng)慣量和負(fù)載折合摩擦系數(shù),Kλ=KpwmdKiRαTi,Kt為轉(zhuǎn)矩常數(shù),Kss為速度檢測(cè)反饋增益。
圖4 速度環(huán)的控制結(jié)構(gòu)圖
位置環(huán)是三環(huán)控制中的最外環(huán),是整個(gè)伺服系統(tǒng)穩(wěn)定、高精度運(yùn)行的重要環(huán)節(jié)。通過設(shè)定的目標(biāo)位置與來自編碼器反饋的實(shí)際位置相比較,產(chǎn)生偏差后通過位置調(diào)節(jié)器產(chǎn)生速度指令。在位置伺服中一般避免出現(xiàn)超調(diào)和振蕩,位置環(huán)通常避免采用積分控制器。另外為改善伺服系統(tǒng)位置環(huán)的動(dòng)態(tài)響應(yīng),可以增加復(fù)合前饋比例調(diào)節(jié)器作為位置控制器,這樣位置環(huán)校正成為典型的I型系統(tǒng)[11]。位置環(huán)控制結(jié)構(gòu)如圖5所示。
圖5中Gff(s)是前饋環(huán)節(jié)的傳遞函數(shù),Kp是位置環(huán)比例增益,Kλ和Tλ分別是速度環(huán)閉環(huán)等效比例增益和速度環(huán)閉環(huán)等效慣性時(shí)間常數(shù),Kpp是位置檢測(cè)反饋增益。
位置環(huán)作為伺服控制系統(tǒng)的最外環(huán),相比內(nèi)部的電流環(huán)和速度環(huán)來說有相對(duì)長(zhǎng)的控制周期,因此位置控制器除了可以于伺服驅(qū)動(dòng)單元中構(gòu)建,還可以通過上位控制器來實(shí)現(xiàn),用具有更強(qiáng)數(shù)據(jù)處理能力的上位控制器如STM32、DSP等實(shí)現(xiàn)更加先進(jìn)復(fù)雜優(yōu)等的控制算法和路徑規(guī)劃。由上述分別建立起了三環(huán)串級(jí)控制結(jié)構(gòu)圖,進(jìn)而可分析其數(shù)學(xué)模型,為順利完成伺服控制系統(tǒng)參數(shù)自整定奠定了基礎(chǔ)。
圖5 位置環(huán)的控制結(jié)構(gòu)圖
3.1單片機(jī)引腳電平轉(zhuǎn)換電路設(shè)計(jì)
控制系統(tǒng)的核心部件選用STM32系列的STM32F103ZET6微控制器,主頻可達(dá)72 MHz,片上集成64 kB的SRAM,512 kB的FLASH,2個(gè)基本定時(shí)器,4個(gè)通用定時(shí)器,2個(gè)高級(jí)定時(shí)器,3個(gè)SPI,2個(gè)I2C,5個(gè)串口,1個(gè)USB,1個(gè)CAN,3個(gè)12位的ADC,1個(gè)12位的DAC,1個(gè)SDIO接口,1個(gè)FSMC接口以及112個(gè)通用I/O口引腳。此芯片引腳電平為3.3 V而伺服電機(jī)信號(hào)電平為5 V,所以控制過程中需要加上信號(hào)電平轉(zhuǎn)換電路。圖6為所設(shè)計(jì)的雙向電平轉(zhuǎn)換電路圖,該電路設(shè)計(jì)思路簡(jiǎn)單,實(shí)用方便,僅需3個(gè)電阻外加一個(gè)MOS管可以實(shí)現(xiàn)3.3 V和5 V之間的雙向電平轉(zhuǎn)換。
圖6 3.3 V和5 V電平轉(zhuǎn)換電路
S1端接STM32F103ZET6芯片的GPIO管腳(3.3 V電平信號(hào)),另一端S2接5 V電平信號(hào),通過S2端接口實(shí)現(xiàn)對(duì)伺服電機(jī)驅(qū)動(dòng)器的連接控制。STM32F103ZET6單片機(jī)的PD0和PD15引腳輸出兩路脈沖序列控制電機(jī)轉(zhuǎn)速和轉(zhuǎn)向。通過獨(dú)立鍵盤啟動(dòng)鍵P1(PC0)和停止鍵P2(PC1)實(shí)現(xiàn)對(duì)伺服電機(jī)的啟動(dòng)和停止。
3.2JATG接口電路設(shè)計(jì)
JATG接口主要實(shí)現(xiàn)向STM32芯片燒寫程序,并可在線仿真調(diào)試,進(jìn)而可以更加方便快捷的完成電機(jī)控制算法的調(diào)試。其接口電路如圖7所示。
3.3串口通信電路設(shè)計(jì)
通信接口是現(xiàn)代設(shè)備系統(tǒng)的重要外部接口,同時(shí)也是軟件開發(fā)重要的調(diào)試手段,實(shí)現(xiàn)微控制器STM32與PC機(jī)之間的數(shù)據(jù)傳輸和信息處理。本系統(tǒng)采用RS232串口模塊實(shí)現(xiàn)與上位機(jī)PC之間的串口通信。電腦的COM口是標(biāo)準(zhǔn)RS-232接口,它的高電平定義為-12 V,而低電平定義為+12 V,故單片機(jī)的串口必須經(jīng)過電平轉(zhuǎn)換才可以和標(biāo)準(zhǔn)RS-232通信,微控制器引腳電平是3.3 V的,3.3 V的轉(zhuǎn)換芯片一般是MAX3232或SP3232,而MAX3232價(jià)格相對(duì)較高,故選用SP3232電平轉(zhuǎn)換芯片。RS232串口電路如圖8所示。
圖7 JTAG接口電路
圖8 RS232串口電路
3.4伺服驅(qū)動(dòng)器硬件連接
伺服電機(jī)選用的是臺(tái)灣士林的SMA-L040R30A型交流伺服電機(jī),額定輸出功率為400 W,內(nèi)置10 000解析度的增量式光電編碼器。伺服驅(qū)動(dòng)器選用的是與伺服電機(jī)配套的SDB系列的交流伺服驅(qū)動(dòng)器SDB-040A2。位置控制模式下,伺服驅(qū)動(dòng)器接收單片機(jī)發(fā)出的位置信號(hào)指令,輸入的脈沖串經(jīng)過電子齒輪分倍頻后,在偏壓計(jì)數(shù)器中與光電編碼器反饋回來的脈沖數(shù)比較進(jìn)而形成偏差信號(hào)。位置偏差信號(hào)經(jīng)位置反饋控制器調(diào)解后形成速度指令信號(hào)。速度指令信號(hào)與速度反饋信號(hào)比較后,形成偏差指令信號(hào),經(jīng)速度環(huán)比例積分器調(diào)解后,產(chǎn)生電流指令信號(hào),在電流環(huán)中經(jīng)矢量變換,從SPWM中輸出轉(zhuǎn)矩電流,控制電機(jī)運(yùn)轉(zhuǎn)[7]。至此完成了從最外環(huán)的位置控制到最內(nèi)環(huán)的轉(zhuǎn)矩控制整個(gè)過程。
圖9 位置控制模式下電路連接圖
如圖9所示,位置控制模式下,驅(qū)動(dòng)器指令輸入方式選擇以差動(dòng)脈沖指令輸入,驅(qū)動(dòng)器I/O連接器CN1上的引腳CN1-31/16作為外部位置控制信號(hào)的輸入端,可以接收單片機(jī)微控制器經(jīng)差動(dòng)驅(qū)動(dòng)器發(fā)送過來的脈沖控制指令。7/8COM+數(shù)位電源都接外部直流電源的24 V正極;9/24/SG為數(shù)位電源地,3DI1數(shù)位輸入1,21/DI7為數(shù)位輸入7,22/DI8為數(shù)位輸入8,23/EMG為外部緊急停止,32/PP及17/NP都接24 V的負(fù)極;單片機(jī)輸出的兩路脈沖信號(hào)分別接31/PG和16/NG輸入脈沖波列。這樣就部分完成位置控制模式下的基本連線。
如圖9所示,速度控制方面,士林伺服電機(jī)速度命令輸入有兩種方式,本系統(tǒng)選擇外界類比速度指令輸入,即經(jīng)由外界電壓來操控電機(jī)的轉(zhuǎn)速。伺服電機(jī)轉(zhuǎn)速的大小和所輸入的模擬量信號(hào)有關(guān),所輸入的模擬量信號(hào)是-10 V~+10 V之間,10 V即為電機(jī)轉(zhuǎn)速的100%,0 V為電機(jī)轉(zhuǎn)速的0%,電機(jī)的內(nèi)部速度選擇可由SP1和SP2的高低電平信號(hào)組合決定,正反轉(zhuǎn)可由正轉(zhuǎn)啟動(dòng)ST1和逆轉(zhuǎn)啟動(dòng)ST2的高低電平信號(hào)組合及模擬電壓的正負(fù)共同決定。速度處理的平滑處理方面可由速度的加/減速時(shí)間常數(shù)STA/STB和S型加減速時(shí)間常數(shù)STC來改善。
轉(zhuǎn)矩控制模式與速度控制模式類似,也屬外部類比信號(hào)輸入。轉(zhuǎn)矩控制常用在需要扭力控制的場(chǎng)合,比如繞線機(jī)、印刷機(jī)和射出成型機(jī)等。轉(zhuǎn)矩模式是由外部類比電壓±10 V作為轉(zhuǎn)矩命令,經(jīng)AD轉(zhuǎn)換后,以參數(shù)下達(dá)類比命令轉(zhuǎn)矩最大輸出和轉(zhuǎn)矩限制漂移量等命令,即可實(shí)現(xiàn)預(yù)期的轉(zhuǎn)矩和速度。若參數(shù)PC13設(shè)定為100則電壓輸入為10 V時(shí),其轉(zhuǎn)矩為最大轉(zhuǎn)矩的100%;輸入電壓為5 V時(shí),則轉(zhuǎn)矩為最大轉(zhuǎn)矩的50%。至于轉(zhuǎn)矩命令漂移量和濾波常數(shù)分別由PC27和PC19來設(shè)定。
3.5伺服驅(qū)動(dòng)器相關(guān)參數(shù)的設(shè)置
士林的驅(qū)動(dòng)器根據(jù)安全性和使用頻度的考慮下,SDB-040A2伺服驅(qū)動(dòng)器的參數(shù)可區(qū)分為基本參數(shù)、增益、濾波參數(shù)、擴(kuò)展參數(shù)和輸入輸出設(shè)定參數(shù),在出廠狀態(tài)下用戶可以修改基本參數(shù),不能修改擴(kuò)展參數(shù)。如有必要調(diào)整參數(shù)讀寫權(quán)限時(shí),可以修改參數(shù)PA42的設(shè)定值,以便更改擴(kuò)展參數(shù)的值。本伺服系統(tǒng)以位置控制方式為例,通過對(duì)參數(shù)的設(shè)置和調(diào)整,用戶既可改變伺服系統(tǒng)的功能和性質(zhì),同時(shí)又可觀察伺服電機(jī)的運(yùn)行狀態(tài)。為保證系統(tǒng)按既定方式運(yùn)行,需設(shè)置參數(shù)如下:
PA01:設(shè)為“0000”,即控制模式選擇位置控制模式,指令由外部信號(hào)控制;
PA02:設(shè)為“0002h”,即設(shè)置自動(dòng)調(diào)諧模式1;
PA03:設(shè)為“0005h”,即自動(dòng)調(diào)諧應(yīng)答性響應(yīng)設(shè)置為中應(yīng)答性;
PA06:設(shè)為“1”,即設(shè)置電子齒輪比分子為1;當(dāng)需要其他齒輪比分子時(shí)可通過參數(shù)PC32,PC33,PC34來設(shè)置;
PA07:設(shè)為“1”,即設(shè)置電子齒輪比分母為1;
PA13:設(shè)為“0020”,即設(shè)置正反轉(zhuǎn)脈沖串,正邏輯,AB相脈沖波列,最高脈沖頻率為200 kpps;
PB04:設(shè)為“3”,即設(shè)置位置命令濾波時(shí)間常數(shù),可使得電機(jī)遇到較大的位置命令時(shí)運(yùn)轉(zhuǎn)的更加平順。
其他參數(shù)暫時(shí)為缺省設(shè)置。
3.6系統(tǒng)軟件設(shè)計(jì)
針對(duì)STM32的這類高級(jí)單片機(jī),ST公司推出了官方固件庫(kù),固件庫(kù)把MCU中的寄存器的底層操作都封裝起來,提供了一整套接口(API)供開發(fā)者調(diào)用,這樣大大縮短了開發(fā)周期。本系統(tǒng)基于RVMDK開發(fā)平臺(tái),充分利用標(biāo)準(zhǔn)外設(shè)固件庫(kù),較方便的進(jìn)行了軟件的設(shè)計(jì),其中包括ADC初始化,系統(tǒng)時(shí)鐘初始化,串口初始化等環(huán)節(jié)。主程序流程圖如圖10所示。
圖10 主程序流程圖
本控制系統(tǒng)上位機(jī)(PC端)主要完成管理、顯示等工作,下位機(jī)(單片機(jī))主要完成控制等功能,他們之間的通信由RS232串口實(shí)現(xiàn),以下附上串口通訊部分程序代碼如下:
void uart_init(u32 bound)
{
GPIO_InitTypeDef GPIO_InitStructure;
USART_InitTypeDef USART_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB2PeriphClockC?md(RCC_APB2Periph_USART1
|RCC_APB2Periph_GPIOA,ENABLE);
USART_DeInit(USART1);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; // PA.9
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode= GPIO_Mode_AF_PP;
......
USART_InitStructure.USART_Mode= USART_Mode_Rx
|USART_Mode_Tx;//收發(fā)模式
USART_Init(USART1,&USART_InitStruc?ture); //初
始化串口
USART_ITConfig(USART1,USART_IT_RXNE,
ENABLE); //開啟中斷
USART_Cmd(USART1,ENABLE); //使能串口}
LabVIEW是一種編程簡(jiǎn)單,調(diào)試容易,庫(kù)函數(shù)豐富的圖形化編程語言,也稱G語言。采用LabVIEW軟件開發(fā)平臺(tái)可方便的進(jìn)行電機(jī)控制上位機(jī)人機(jī)交互界面的設(shè)計(jì),交互性強(qiáng),界面良好,開發(fā)周期短,可實(shí)現(xiàn)交流伺服電機(jī)的啟動(dòng)和停止,電機(jī)位置和速度的控制,數(shù)據(jù)的顯示、存儲(chǔ)和恢復(fù)等功能。圖11所示為設(shè)計(jì)的LabVIEW人機(jī)交互界面。
在進(jìn)行實(shí)驗(yàn)之前需對(duì)電機(jī)進(jìn)行前期點(diǎn)動(dòng)(JOG)運(yùn)轉(zhuǎn)調(diào)試,由參數(shù)PC04設(shè)定JOG速度命令,PC01設(shè)定速度加速時(shí)間常數(shù),PC02設(shè)定速度減速時(shí)間,回轉(zhuǎn)速度初期設(shè)定值為300 r/min,加減速時(shí)間常數(shù)設(shè)定為200。測(cè)試定位運(yùn)轉(zhuǎn)時(shí),通過士林通訊軟件選擇定位運(yùn)轉(zhuǎn)測(cè)試選項(xiàng),其初始值設(shè)定范圍見表1所示。
圖11 LabVIEW人機(jī)交互界面
表1 測(cè)試定位運(yùn)轉(zhuǎn)初始值設(shè)定及其范圍
手動(dòng)模式調(diào)整增益方面,在位置與速度模式下,頻寬的選擇與機(jī)臺(tái)的剛性及環(huán)境有極大的影響,對(duì)于需求高精度的機(jī)臺(tái)就必需設(shè)定高頻率的系統(tǒng)響應(yīng),但設(shè)定的響應(yīng)越高,機(jī)臺(tái)易引起共振。因此,需要高響應(yīng)需求的場(chǎng)合就必需使用高剛性的機(jī)臺(tái)來避免機(jī)臺(tái)的共振。相關(guān)位置與速度控制場(chǎng)合設(shè)定參數(shù)如下:由PB03設(shè)定共振抑制低通濾波NLP為0,由PB05設(shè)定位置前饋增益值FFC為0,由PB07設(shè)定位置回路增益值PG1為35 rad/s,由PB08設(shè)定速度回路增益VG1為817 rad/s,由PB09設(shè)定速度積分增益值VIC設(shè)置為48 ms,由PB10設(shè)定速度前饋增益值為0。
位置控制模式實(shí)驗(yàn)起初所用輸入信號(hào)模式為開集極脈沖指令輸入,但實(shí)驗(yàn)調(diào)試過程中發(fā)現(xiàn)此種輸入模式存在所受外界干擾大,輸出脈沖數(shù)不均勻,穩(wěn)定性差等問題,故最終選擇現(xiàn)在所用的差動(dòng)脈沖指令輸入模式。從單片機(jī)輸出兩路脈沖序列信號(hào),經(jīng)RVMDK軟件仿真得到相位差為90度的A、B相兩路脈沖串序列,可由方波脈沖的輸入頻率改變轉(zhuǎn)速的大小,脈沖串序列圖如圖12所示。
圖12 位置控制脈沖序列圖
速度控制方面,當(dāng)外部類比速度命令輸入為0時(shí)電機(jī)可能存在offset,導(dǎo)致電機(jī)仍緩慢轉(zhuǎn)動(dòng),所以需進(jìn)入電機(jī)診斷模式后選擇類比輸入自動(dòng)off?set功能,自動(dòng)調(diào)整電壓偏移量。手動(dòng)模式下正確設(shè)定慣量比參數(shù)是充分發(fā)揮機(jī)械及伺服系統(tǒng)最佳效能的前提,在高速高精度伺服系統(tǒng)上表現(xiàn)尤為突出。傳動(dòng)慣量對(duì)伺服系統(tǒng)的精度、穩(wěn)定性和動(dòng)態(tài)響應(yīng)都有較大影響,故有必要進(jìn)行電機(jī)慣量估測(cè)分析的運(yùn)轉(zhuǎn)調(diào)試。調(diào)試過程如下:通過士林通訊軟件選擇“慣量估測(cè)分析”選項(xiàng)卡,按下“自動(dòng)偵測(cè)慣量比”選項(xiàng),若無報(bào)警再按“啟動(dòng)伺服按鈕”此時(shí)電機(jī)已激磁,然后設(shè)定加減速常數(shù)為200,JOG速度為300后,按下“設(shè)定”按鈕,再按“啟動(dòng)”按鈕,至此開始進(jìn)行慣量估測(cè)分析運(yùn)轉(zhuǎn)。驅(qū)動(dòng)器自動(dòng)估算目前的負(fù)載慣量比與頻寬,當(dāng)相關(guān)參數(shù)計(jì)算完畢之后,需關(guān)掉“自動(dòng)偵測(cè)慣量比”,方可寫入?yún)?shù)。
圖13 速度控制模擬量三角波信號(hào)圖
由單片機(jī)輸出速度指令信號(hào)經(jīng)DA轉(zhuǎn)換之后送入伺服驅(qū)動(dòng)器。根據(jù)速度模擬量信號(hào)實(shí)現(xiàn)伺服電機(jī)轉(zhuǎn)速的閉環(huán)控制。速度模擬量信號(hào)接CN1端子的VC端,10 V時(shí)候速度為額定速度的100%,0 V時(shí)候是額定速度的0%即速度為0。如圖13為輸入的三角波模擬量信號(hào)。
本文基于STM32F103ZET6微控制器及其內(nèi)部集成的ADC,DAC和RS232串口通信等模塊,利用自身所帶的標(biāo)準(zhǔn)固件庫(kù)函數(shù),大大縮短開發(fā)周期,與傳統(tǒng)的單片機(jī)和PLC控制方案相比,本系統(tǒng)的外圍硬件電路設(shè)計(jì)簡(jiǎn)單,成本低,實(shí)時(shí)性強(qiáng),處理速度快,運(yùn)行可靠,實(shí)現(xiàn)了良好的靜態(tài)精度和動(dòng)態(tài)性能,滿足伺服電機(jī)控制系統(tǒng)的控制要求,具有一定的實(shí)用價(jià)值。
參考文獻(xiàn):
[1]許建國(guó).電機(jī)與控制[M].武漢:武漢測(cè)繪科技大學(xué)出版社,1998.
[2]Dietrich H.Naunin & Hans-Christian Reuss(1990). Synchronous Servo-Drive:A Compact Solution of Con?trol problems by Means of a Single-Chip Microcomputer. IEEE TRANSACTIONS ON INDUSTRY APPLICATION. VOL.26.NO.3,MAY/JUNE 1990,408-414.
[3]盧建剛,陳小飆. MinasA4系列交流伺服電機(jī)的PLC控制[J].微計(jì)算機(jī)息,2008(25):91-92.
[4]趙磊,王哈力,何緒鋒,等.基于單片機(jī)的交流伺服電機(jī)轉(zhuǎn)速控制系統(tǒng)研究[J].現(xiàn)代電子技術(shù),2009(16):196-198.
[5]蔡志祥,劉冬生,曾曉雁.基于單片機(jī)的交流伺服電機(jī)控制系統(tǒng)[J].機(jī)械與電子,2005(05):28-30.
[6]孫克梅,滕金玉,張曉新,等.交流伺服電機(jī)的單片機(jī)控制及其應(yīng)用[J].沈陽(yáng)航空工業(yè)學(xué)院學(xué)報(bào),2003(02):50-52.
[7]黃之然,劉爽,張強(qiáng).基于單片機(jī)的伺服電機(jī)控制系統(tǒng)的研究[J].無線互聯(lián)科技,2012(12):104-105.
[8]李紅偉,胡濤,徐熙平,等.基于單片機(jī)的伺服電機(jī)控制系統(tǒng)的研究[J].長(zhǎng)春理工大學(xué)學(xué)報(bào):自然科學(xué)版,2012(01):116-118.
[9]張立麗,李亮,史小華.基于PIC芯片嵌入式電機(jī)控制器的研究[J].現(xiàn)代電子技術(shù),2009(09):164-167.
[10]丁信忠.基于工業(yè)以太網(wǎng)的總線型交流伺服系統(tǒng)關(guān)鍵技術(shù)研究[D].濟(jì)南:山東大學(xué),2012.
[11]劉輝.交流伺服系統(tǒng)及參數(shù)辨識(shí)算法研究[D].南京:南京航空航天大學(xué),2005.
(編輯:向飛)
PTC LiveWorx中國(guó)2015年度大會(huì):智能互聯(lián)助推物聯(lián)網(wǎng)轉(zhuǎn)型,實(shí)現(xiàn)數(shù)字與實(shí)體世界的融合
2015年11月3日,美國(guó)PTC公司(納斯達(dá)克:PTC)在北京成功舉辦了PTC LiveWorx中國(guó)2015大會(huì)。本次大會(huì)立足于產(chǎn)品開發(fā)、設(shè)計(jì)、服務(wù)與物聯(lián)網(wǎng)領(lǐng)域,分享并討論了PTC最新的公司戰(zhàn)略以及如何幫助客戶實(shí)現(xiàn)數(shù)字與實(shí)體世界的融合,進(jìn)而推進(jìn)業(yè)務(wù)轉(zhuǎn)型等議題。此外,PTC與合作伙伴展示了諸多成功案例讓與會(huì)者深入了解最新物聯(lián)網(wǎng)技術(shù)與PTC核心產(chǎn)品相結(jié)合所產(chǎn)生的巨大潛力,為國(guó)內(nèi)制造業(yè)轉(zhuǎn)型及物聯(lián)網(wǎng)技術(shù)的深入應(yīng)用和發(fā)展帶來極具意義的參考價(jià)值。本次大會(huì)吸引了1100多位觀眾參加,其中包括來自各個(gè)行業(yè)的產(chǎn)品開發(fā)人員、服務(wù)領(lǐng)域?qū)<?,以及物?lián)網(wǎng)專業(yè)人士等。
面對(duì)物聯(lián)網(wǎng)發(fā)展的新浪潮,PTC技術(shù)平臺(tái)市場(chǎng)營(yíng)銷執(zhí)行副總裁Charlie Ungashick在主題演講中表示,全球制造業(yè)如今正經(jīng)歷著巨大變革。以前制造型企業(yè)一直處于把數(shù)字世界和實(shí)體世界分離的局面,現(xiàn)在制造業(yè)廠商正逐步通過物聯(lián)網(wǎng)將兩個(gè)世界進(jìn)行融合。PTC所專注的就是搭建這樣一個(gè)橋梁,通過PTC的解決方案幫助制造商重新改進(jìn)業(yè)務(wù)流程,布局智能互聯(lián)產(chǎn)品的開發(fā)和創(chuàng)新,抓住物聯(lián)網(wǎng)發(fā)展機(jī)遇,在物聯(lián)網(wǎng)時(shí)代贏得競(jìng)爭(zhēng)優(yōu)勢(shì)。
在活動(dòng)現(xiàn)場(chǎng),PTC展示了其增強(qiáng)現(xiàn)實(shí)技術(shù)的新應(yīng)用,通過一輛智能自行車詮釋了PTC數(shù)字化映射(Digi?tal Twin)技術(shù)。該技術(shù)是將CAD設(shè)計(jì)軟件和ThingWorx物聯(lián)網(wǎng)平臺(tái)相結(jié)合的革新性突破,真正實(shí)現(xiàn)了數(shù)字世界與實(shí)體世界的融合。數(shù)字化映射(Digital Twin)通過將收集到的實(shí)體的幾何結(jié)構(gòu)、特性、參數(shù)等信息,向用戶展示包括實(shí)體的數(shù)字模型、材料清單、服務(wù)數(shù)據(jù)、使用手冊(cè),以及實(shí)體在不同情境中的行為反應(yīng)等一系列物理性能。在此過程中,實(shí)體可以自動(dòng)接收和發(fā)送數(shù)據(jù),并可自發(fā)地進(jìn)行數(shù)據(jù)分析。由此,用戶便可以真正有效管理產(chǎn)品的生命周期。
(來源:PTC公司)
The STM32 SCM Control System Design on Servo Motor Oriented
SANG Yong,LI Feng-tao,DAI Yue-bang,DUAN Fu-hai,WANG Ya-jie
(Mechanical Engineering School,Dalian University of Technology,Dalian 116024,China)
Abstract:The paper introduces a position,speed and torque control scheme of the ac servo motor based on the STM32F103ZET6 micro-controller. Software and hardware design of the control system,settings of debug parameters and control charts of the servo motor are completed. Human-machine interface (HMI) is designed by the LabVIEW graphical programming language. It has a friendly interface and strong interactions. Compared with the control schemes of traditional single chip microcomputer,the control system has advantages of good economy,fast processing speed,good real-timing,high integration and strong anti-interference performance etc. It can realize the accurate location and speed control of the ac servo motor well.
Key words:STM32;AC servo motor;position control;speed control;torque control
作者簡(jiǎn)介:第一桑勇,男,1979年生,山東泰安人,博士后,副教授。研究領(lǐng)域:機(jī)電液一體化。已發(fā)表論文20篇。
收稿日期:2015-05-26
DOI:10. 3969 / j. issn. 1009-9492. 2015. 11. 019
中圖分類號(hào):TP368.1
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-9492 ( 2015 ) 11-0065-08