999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32的步進電機離散化S形曲線加減速控制方法

2018-01-18 18:02:36周團坤楊曉明
自動化與儀表 2017年6期

周團坤,張 瑩,楊曉明,張 尼,沈 坤

(西安西北有色地質(zhì)研究院有限公司,西安 710054)

步進電機的工作原理,是每接收一個電脈沖信號就按照設(shè)定的方向轉(zhuǎn)過一個固定的角度,可以通過控制電脈沖信號數(shù)量的方式來控制電機的角位移量,控制單位時間內(nèi)脈沖信號的數(shù)量來控制電機的速度[1]。但是在實際使用過程中,由于控制不合理,步進電機啟動和停止時會發(fā)生失步或過沖現(xiàn)象,因此電機啟動和停止時必須有一個加速和減速的過程。

常見的加減速算法有直線加減速、指數(shù)曲線加減速、S形曲線加減速等[2],這些算法各有特點。S形曲線加減速由于其加速度和速度曲線的連續(xù)性[3-4],能夠保證步進電機在運動過程中速度和加速度沒有突變,減小沖擊,提高步進電機的平穩(wěn)性,常被應(yīng)用于精確控制如數(shù)控系統(tǒng)、醫(yī)療器械和機器人系統(tǒng)等。

傳統(tǒng)的S形加減速曲線算法,需要控制器實時計算曲線得到電機的運行所需脈沖頻率,對控制器性能要求較高[5]。本文通過對S形加減速曲線進行離散化的方法,將電機運行加減速所需速度比值先行存進數(shù)組中,在控制電機運行以前即算出每一步所需的脈沖頻率,因此簡化了控制器的運算量。并且,采用了2個定時器的設(shè)計,一個定時器負責輸出脈沖,另一個定時器負責對脈沖計數(shù),從而達到精確控制步進電機的目的。

1 系統(tǒng)構(gòu)成

STM32F103RC是ST公司生產(chǎn)的一款使用ARM Cortex-M3 32位RISC內(nèi)核的高性能單片機。主時鐘頻率為72 MHz,片內(nèi)集成256 kB閃存和48 kB的 SRAM,STM32F103RC包含 2個 12位的 ADC、4個通用16位定時器、2個PWM定時器和2個普通16位定時器,還包含多種標準、先進的通訊接口。

STM32作為主控制器,通過Modbus通訊協(xié)議,接收上位機人機界面(HMI)的運動指令以及設(shè)定參數(shù),如位移、速度、方向等,使STM32按照設(shè)定的運動參數(shù)輸出相應(yīng)的控制脈沖至步進電機驅(qū)動器,繼而控制步進電機的運動狀態(tài)。Modbus協(xié)議功能完善、協(xié)議開放、使用簡單,已經(jīng)成為一種通用的工業(yè)標準[6]。系統(tǒng)中,使用Modbus協(xié)議中的RTU模式,人機界面(HMI)作為主機,可輸入方向、位移、速度、啟停等信息;STM32作為從機,接收HMI的指令與參數(shù),計算并輸出脈沖給步進電機驅(qū)動器從而控制步進電機。系統(tǒng)的構(gòu)成如圖1所示。

圖1 系統(tǒng)構(gòu)成Fig.1 System components

2 S形曲線加減速的離散化

S形加減速曲線是目前較新的運動控制算法[7],它是由被控對象在加減速階段的速度曲線呈S形而得來的。S形加減速曲線算法并不是一種固定的算法,其中l(wèi)ogistic函數(shù)的圖形是一個連續(xù)光滑的S形,同時是一個嚴格的遞增函數(shù),在線性和非線性之間顯示出很好的平衡[8]。在此,利用該函數(shù)得到0~1之間的一段S形曲線,以此作為各時刻速度的系數(shù),構(gòu)建步進電機的加減速曲線。其定義公式為

式中:a為函數(shù)傾斜參數(shù),控制函數(shù)的斜率,a值越大曲線的線性部分斜率越大。當x取一組對稱數(shù)列,如-5,-4.9,…,0,…,4.9,5 時,a 分別取值1.0,2.0,3.0,對應(yīng)的曲線如圖2所示。可以看出,曲線均呈S形且中心對稱,開始增長緩慢,然后在某一范圍內(nèi)迅速增長,達到一定程度后,增長又緩慢下來,最終趨于一個穩(wěn)定值。這正好適合電機的加速軌跡,既符合了加速曲線的形態(tài),又可以快速進入目標速度。

圖2 具有不同傾斜參數(shù)a的logistic函數(shù)Fig.2 Logistic function with different cutting parameters

當選取a=1時,x值從-5開始,以0.1作為步進,到5結(jié)束,可以得到101個從0到1遞增的值,其圖形如圖2中a=1曲線所示。這樣,就把加速曲線離散化為101個點,相當于用100個臺階對曲線進行逼近,如此完成了對S形加減速曲線的離散化。離散化后各點對應(yīng)的線速度為

式中:vi為各點對應(yīng)的線速度;vp為目標線速度;xi為各點對應(yīng)的x值。

3 S形曲線加減速算法的具體實現(xiàn)過程

3.1 定時器設(shè)置

由于步進電機屬于開環(huán)控制系統(tǒng),沒有信號反饋,為了更精確控制步進電機,采用由2個定時器共同控制步進電機的設(shè)計思路,如圖3所示。

圖3 定時器設(shè)置Fig.3 Timer setting

2個定時器分別稱為定時器P和定時器C。定時器P的作用是發(fā)出脈沖至與門Y輸入端YP,定時器C以定時器P的脈沖為時鐘源進行計數(shù),并輸出控制與門輸入端YC,步進電機運行時定時器C恒輸出高電平值與門YC端。與門輸出端直接連接驅(qū)動器,驅(qū)動步進電機。當定時器C計數(shù)值達到設(shè)定值時,進入定時器C中斷,在中斷中設(shè)置與門輸入端YC為低電平,阻斷與門輸出,然后關(guān)閉定時器P和定時器C。

3.2 S形曲線加減速的具體實現(xiàn)

3.2.1 定時器初始化

先選取高級定時器或者通用定時器作為定時器P,在此選取通用定時器3即TIM3為定時器P,設(shè)置定時器P工作于PWM模式2,使用系統(tǒng)時鐘源72 MHz,預(yù)分頻器設(shè)為71,允許自動重裝載預(yù)裝載,占空比設(shè)置為50%,設(shè)置完成后關(guān)閉定時器P。計算定時器輸出PWM頻率公式為

式中:SYSclk為72 MHz;PSC為 71;當ARR取值范圍為0~65535時,TIM3輸出脈沖頻率范圍為16 Hz~1 MHz,基本滿足步進電機的需求。

然后,選取可以與定時器P搭配的定時器作為定時器C,設(shè)置定時器C時鐘源為定時器P的輸出。允許定時器C溢出中斷,設(shè)置完畢后關(guān)閉定時器C。

3.2.2 計算S形曲線加速各階段定時器裝載值

線速度與轉(zhuǎn)速的轉(zhuǎn)換公式為

式中:v為線速度;n為轉(zhuǎn)速;d為電機轉(zhuǎn)軸的直徑。根據(jù)式(4),人機界面HMI輸入的線速度,可以轉(zhuǎn)換為

式中:vp為設(shè)定的線速度。步進電機轉(zhuǎn)速公式為

可以得出步進電機轉(zhuǎn)速為

式中:f為步進電機接收到的脈沖頻率;θ為步進電機細分后的固有步距角。根據(jù)式(3),可以得出相應(yīng)線速度下的TIM3自動重裝寄存器值為

綜合式(5)、式(7)、式(8)可以得出相應(yīng)的線速度下,TIM3自動重裝值寄存器值為

然后建立一個數(shù)組TIM3_ARR[101],則根據(jù)式(2)可知:

式中:xi從-5開始,以0.1作為步進,到5結(jié)束。

最后,設(shè)人機界面輸入的線位移為S,則完成線

位移所需的脈沖數(shù)為

這樣,就得到了加速各階段TIM3自動重裝寄存器的值,以及完成位移所需的總脈沖數(shù)。

3.2.3 S形曲線加減速過程

S形曲線加減速通常有2種情況,一種是3段式,包括加速階段、勻速階段及最后的減速階段,如圖4(a)所示;另一種是2段式,包括加速階段和減速階段,如圖 4(b)所示。

圖4 兩種S形曲線Fig.4 Two S-curves

這2種S形曲線的區(qū)別在于其勻速階段,因此在控制時應(yīng)區(qū)別對待。在控制器接收到HMI發(fā)送的線速度和線位移值后,可以根據(jù)式(10)得出各加速階段的定時器自動重裝寄存器值,根據(jù)式(11)得到所需的總脈沖數(shù)。然后,根據(jù)實際情況設(shè)置加速階段所需總時間T,則加速階段每段分配到的時間為。

整個軟件執(zhí)行過程如下:

過程1定時器P開始以加速第1階段的自動重裝寄存器值TIM3_ARR[0]啟動,開始輸出脈沖信號至驅(qū)動器從而驅(qū)動步進電機以加速第1階段的速度運行,并且定時器C開始計數(shù);

過程2經(jīng)過時間t后,先檢查定時器C統(tǒng)計到的脈沖數(shù)是否超過總脈沖數(shù)的1/2,如果已經(jīng)超過則表明本次加減速曲線為2段式曲線,然后轉(zhuǎn)到過程5;如果沒有超出,則將定時器P的自動重裝寄存器按順序依次重裝載,然后重復(fù)過程2;

過程3當定時器P自動重裝寄存器值裝載到TIM3_ARR[100]時,即表示整個加速階段完成,此時讀取定時器C統(tǒng)計到的脈沖數(shù)Pac。由于加速階段和減速階段是一個對稱的結(jié)構(gòu),因此勻速階段的脈沖數(shù)Pun應(yīng)為Pun=Pall-2Pac。定時器C清零,開始重新計數(shù),并設(shè)置計數(shù)目標為Pun,即勻速階段完成后定時器C溢出進入中斷;

過程4進入定時器C溢出中斷,此時勻速階段已完成,準備開始進入減速階段,定時器P自動重裝寄存器值設(shè)為TIM3_ARR[99],定時器C清零,并將計數(shù)目標設(shè)為Pac,溢出則說明減速階段完成;

過程5經(jīng)過時間t后,將定時器P的自動重裝寄存器值按降序依次裝載,然后重復(fù)過程5;

過程6進入定時器C溢出中斷或者定時器P自動重裝寄存器已裝載至最低位,首先將定時器C輸出至與門的YC設(shè)為低電平,阻斷驅(qū)動器接收脈沖,然后將定時器P、定時器C關(guān)閉。整個S形曲線加減速完成。

軟件流程如圖5所示。

4 試驗驗證

圖5 軟件流程Fig.5 Software flow chart

為了驗證步進電機的實際運行速度變化是否符合S曲線,采用光電式脈沖編碼器配合上位機軟件示波器作為測試系統(tǒng)。設(shè)置步進電機線速度為120 mm/s,線位移為280 mm,步進電機型號為42BYGH101混合式步進電機,步距角1.8°,驅(qū)動器細分數(shù)設(shè)為16細分,電機軸轉(zhuǎn)子直徑為6 mm。實測的速度曲線截屏如圖6所示,其中橫坐標軸為時間,縱坐標軸為電機線速度。由圖可見,加減速過程曲線S形特征明顯,曲線中間部分為勻速過程,速度保持在120 mm/s。驗證結(jié)果表明,符合試驗預(yù)期,該S形曲線離散化,能夠使步進電機快速平滑地按照S形曲線完成加/減速過程。

圖6 S形曲線加減速離散化驗證Fig.6 S-curve acceleration and deceleration discretization verification

5 結(jié)語

在步進電機的加減速過程中,S形曲線是常用的一種較為精確的算法,啟動和停止時都比較平穩(wěn),可以根據(jù)不同的電機性能調(diào)整速度的變化率。本文在常用的S形曲線的基礎(chǔ)上提出了一種離散化的解決方法,簡化了S形曲線復(fù)雜的計算,并且通過雙定時器的應(yīng)用,提高了電機控制的精度。試驗證明,通過該方法STM32控制器很好地驅(qū)動步進電機,完成S形曲線加/減速過程,解決了步進電機失步、堵轉(zhuǎn)等問題。目前方法已應(yīng)用于步進電機實際控制工作中。

[1]坂本正文.步進電機應(yīng)用技術(shù)[M].王自強,譯.北京:科學出版社,2015:1-14.

[2]崔潔,楊凱,肖雅靜,等.步進電機加減速曲線的算法研究[J].電子工業(yè)專用設(shè)備,2013,43(8):45-49.

[3]蔡錦達,石恩琪,儲茂兵.基于單片機的步進電機S形曲線調(diào)速控制[J].包裝工程,2007,28(7):77-78.

[4]唐小琦,何王勇,李勇波.一種預(yù)判插補時間的S形加減速插補算法[J].中國機械工程,2011,22(23):2794-2797.

[5]王勇,王偉,楊文濤.步進電機升降速曲線控制系統(tǒng)設(shè)計及其應(yīng)用[J].控制工程,2008,15(5):576-579.

[6]朱懿,蔣念平.Modbus協(xié)議在工業(yè)控制系統(tǒng)中的應(yīng)用[J].微計算機信息,2006,22(10):118-120.

[7]李曉菲,胡鴻.步進電機加減速控制規(guī)律[J].機電產(chǎn)品開發(fā)與創(chuàng)新,2006,19(1):122-123.

[8]陳愛國,黃文玲,楊紅紅.步進電機升降速曲線的研究[J].機電產(chǎn)品開發(fā)與創(chuàng)新,2003,16(2):47-49.

主站蜘蛛池模板: 欧美中文字幕在线二区| 99草精品视频| 国产全黄a一级毛片| 欧美a√在线| 美女免费精品高清毛片在线视| 国产99视频在线| 秋霞国产在线| 欧美在线导航| 波多野结衣二区| 99国产精品免费观看视频| 91麻豆精品国产高清在线| 国产 日韩 欧美 第二页| 国产农村1级毛片| 午夜精品久久久久久久无码软件| 三上悠亚在线精品二区| 一区二区午夜| 波多野结衣中文字幕久久| 欧美黑人欧美精品刺激| 亚洲伊人电影| jizz国产视频| 亚洲天堂日韩在线| 3344在线观看无码| 国产在线无码一区二区三区| 亚洲欧洲日韩综合色天使| 亚洲av无码专区久久蜜芽| 日韩精品一区二区深田咏美| 亚洲av无码人妻| 国产一级α片| 幺女国产一级毛片| 亚国产欧美在线人成| 精品国产女同疯狂摩擦2| 天堂成人av| 中文纯内无码H| 亚洲天堂网2014| 99re在线观看视频| 亚洲第一区欧美国产综合| а∨天堂一区中文字幕| 欧美激情视频二区| 天堂久久久久久中文字幕| 色综合日本| 亚洲一区二区在线无码| 在线欧美国产| 亚洲性影院| 91网在线| 在线观看无码a∨| 国产精品浪潮Av| 97成人在线观看| 成人午夜免费观看| 欧美a在线看| 日本人妻丰满熟妇区| 亚洲AV一二三区无码AV蜜桃| 国产精品页| 国产精品三级专区| 久久人妻xunleige无码| 亚洲欧美日韩另类在线一| 秋霞国产在线| 亚洲欧洲日产国码无码av喷潮| 亚洲欧美在线综合图区| 91口爆吞精国产对白第三集| 99视频全部免费| 免费一看一级毛片| 亚洲无码免费黄色网址| 日本欧美中文字幕精品亚洲| 一级一级一片免费| 国产福利拍拍拍| 欧美成人怡春院在线激情| 综合网天天| 久无码久无码av无码| 国产一区二区免费播放| 亚洲视频影院| 亚洲精品欧美重口| 午夜日b视频| 激情六月丁香婷婷| 青青草原偷拍视频| 一级成人欧美一区在线观看| 国产va在线观看免费| 丰满人妻中出白浆| 欧美日本在线播放| 狠狠色综合网| 九九热精品视频在线| 女人一级毛片| 日本黄色不卡视频|