• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于STM 32的二維滑臺不規(guī)則軌跡精密控制

    2015-01-29 02:58:00陳炳超莊泉潔劉洪英
    電子設(shè)計工程 2015年13期
    關(guān)鍵詞:滑臺圓弧總線

    陳炳超,莊泉潔,劉洪英,房 娟

    (1.上海市華東師范大學(xué)多維度信息處理重點實驗室,上海 200241;2.捷普科技(上海)有限公司 上海 200241)

    在現(xiàn)代工業(yè)控制中步進(jìn)電機(jī)的控制是滑臺控制的執(zhí)行機(jī)構(gòu)。區(qū)別于其他控制電機(jī)的最大特點是,它是通過輸入脈沖信號來進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動角度由輸入脈沖數(shù)決定,而電機(jī)轉(zhuǎn)速由脈沖信號的頻率決定[1-3]。

    在很多情況下需要讓步進(jìn)電機(jī)控制滑臺運動非常精確的距離,且運行軌跡是不規(guī)則的,運行時速度需可調(diào)。本文首先介紹系統(tǒng)的硬件電路原理;分析了控制滑臺運行不規(guī)則軌跡的計算方法;在此基礎(chǔ)上提出了用定時器中斷的方法精確控制PWM數(shù)量;介紹了具體的軟件實現(xiàn)方法并分析了系統(tǒng)測試結(jié)果。

    1 系統(tǒng)硬件設(shè)計

    本論文基于機(jī)車牽引梁數(shù)控磨削設(shè)備的電控設(shè)計,此設(shè)備用來磨削一個帶弧線的六邊形物體,因此要求設(shè)計兩維滑臺的電控部分,以精密控制磨削頭的運行軌跡,經(jīng)分析此軌跡呈不規(guī)則路線。系統(tǒng)硬件框圖如圖1所示,本系統(tǒng)的主控芯片是STM32F407,該芯片主頻高達(dá)168 MHz,PWM定時器的頻率同樣可以達(dá)到168 MHz,在頻率要求較高的設(shè)計中有較顯著的優(yōu)勢。同時對于定時器中斷控制PWM數(shù)量可以防止中斷嵌套,且可以顯著減少中斷現(xiàn)場保護(hù)的開銷,且該芯片支持SPI、CAN、I2C 等多種協(xié)議。

    主機(jī)和從機(jī)分別用兩臺兩相步進(jìn)電機(jī)來帶動X軸和Y軸滑臺,步進(jìn)電機(jī)用M860驅(qū)動器來驅(qū)動。STM32主控板給驅(qū)動器發(fā)送PWM信號、方向和使能信號,驅(qū)動器經(jīng)過光耦隔離并細(xì)分后來驅(qū)動步進(jìn)電機(jī)。本系統(tǒng)主機(jī)和從機(jī)之間用CAN總線來進(jìn)行通信,CAN總線具有實時性強(qiáng)、傳輸距離較遠(yuǎn)、抗電磁干擾能力強(qiáng)、成本低等優(yōu)點[4]。主機(jī)和從機(jī)可以單獨運行,只有當(dāng)需要的時候采用CAN總線來進(jìn)行同步。主機(jī)設(shè)置PWM的頻率、滑臺位置等數(shù)據(jù)以及發(fā)送開始運行、停止運行等信號,從機(jī)通過CAN總線接收相關(guān)數(shù)據(jù)和指令。當(dāng)從機(jī)結(jié)束運行就會發(fā)送結(jié)束信號給主機(jī)。主機(jī)和從機(jī)之間通過CAN總線進(jìn)行同步。

    圖1 系統(tǒng)硬件框圖Fig.1 The system hardware block diagram

    2 系統(tǒng)軟件設(shè)計

    2.1 二維滑臺的運行模式

    以二維滑臺為研究對象,滑臺由步進(jìn)電機(jī)帶動,滑臺的運行模式中包含了二維滑臺的單獨運行和同時運行,假設(shè)滑臺的齒距為10 mm(步進(jìn)電機(jī)轉(zhuǎn)動一圈,滑臺前進(jìn)10 mm)。假設(shè)目標(biāo)滑臺前進(jìn)距離為L。驅(qū)動器細(xì)分倍數(shù)為、步進(jìn)電機(jī)總步數(shù)、PWM脈沖總個數(shù)為別為n、N、P[5]。 則

    為了便于計算,此次設(shè)計將驅(qū)動器細(xì)分倍數(shù)設(shè)為5,則

    即當(dāng)滑臺需要前進(jìn)距離為L mm時,則步進(jìn)電機(jī)總步數(shù)以及PWM脈沖總個數(shù)也應(yīng)該為100 L。

    圖2 二維滑臺不規(guī)則運動軌跡Fig.2 Irregular track of the two-dimensional ramp

    如圖2所示是二維滑臺的不規(guī)則運動軌跡,軌跡由直線、斜線、圓弧組成。各種軌跡實現(xiàn)方法如下:

    1)斜線軌跡

    由圖2可知,二維滑臺有同時運動和結(jié)束的過程,對于斜線部分X軸滑臺運距離為n1的過程中Y軸滑臺同時運行距離為n2。有公式2可知X軸滑臺和Y軸滑臺運行n1和n2的距離所需要的PWM的脈沖個數(shù)分別為P1、P2則有 P1=100n1,P2=100n2,以 X 軸為基準(zhǔn),則

    STM32定時器產(chǎn)生的PWM頻率由系統(tǒng)時鐘f、預(yù)分頻值M、計數(shù)周期T決定[3],系統(tǒng)時鐘f和和預(yù)分頻值M不變,以改變計數(shù)周期T來改變PWM的頻率。

    以X軸滑臺為基準(zhǔn),Tx、Ty分別為X和Y軸定時器計數(shù)周期,Vx、Vy分別為X軸和Y軸定時器頻率,則有

    因X軸和Y軸同時運行相同的時間,則有

    由公式(4)~(7)可得,Y軸定時器的計數(shù)周期Ty為

    2)單滑臺運動軌跡

    如圖2所示,對于距離為n3的部分,由于只需要在X軸方向上運動,由公式2可知需要的PWM數(shù)量為100n3,因此只需要設(shè)置X軸定時器的PWM頻率為固定值。并且計數(shù)100n3個PWM數(shù)量然后停止,軌跡在X軸方向上運動的距離就為n3。

    而對于距離為n4的部分,和n3部分唯一不同的地方就是此時只需在Y軸方向運動。因此只需要設(shè)置Y軸定時器的PWM頻率為固定值,并且計數(shù)100n4個PWM然后停止。

    3)圓弧軌跡

    而圓弧部分是以直線切割的方式實現(xiàn)的,圓弧角度為90度,D點是圓弧的中心點,圓弧半徑為55 mm。

    D點以上以X軸為基準(zhǔn),假設(shè)X軸定時器產(chǎn)生的PWM頻率為,每輸出100個PWM時Y軸定時器頻率變換一次。假設(shè)A點變換了n-1次PWM,而B點變換了n次PWM,則A點坐標(biāo)為(100(n-1),Ya),B點坐標(biāo)為(100n,Yb),圓弧半徑為R,則有

    由公式(9)和(10)可得,A點和B點在Y軸上的變化值為△y

    由公式(5)~(11)可得Y軸定時器的計數(shù)周期Ty為

    但是由于圓弧中點對應(yīng)的X軸的PWM數(shù)量往往不是100的倍數(shù),所以假設(shè)C點是離中點D最近的點,C點變換了m次PWM,則C點X軸坐標(biāo)為100m,D點X和Y軸的坐標(biāo)R都為,則有

    以X為基準(zhǔn)時最后變換的一步計數(shù)周期T為

    在D點以下以Y軸為基準(zhǔn),假設(shè)Y軸定時器產(chǎn)生的PWM頻率為Vy固定不變,每輸出100個PWM時X軸定時器頻率變換一次。假設(shè)E點變換了i-1次PWM,而F點變換了i次PWM,則E點坐標(biāo)為(X e,Y d-100(i-1)),F點坐標(biāo)為(X f,Y d-100i),圓弧半徑為 R,則有

    由式(16)和(17)可得,E點和F點在X軸上的變化值為

    由式(5)、(6)、(7)、(18)可得 X 軸定時器的計數(shù)周期 Tx 為

    通過式(8)、(1)1、(19),在程序的每一步中設(shè)置 Tx、Ty 的值來實現(xiàn)X、Y軸滑臺以所要求的軌跡運動。

    2.2 統(tǒng)軟件流程圖

    如圖3所示是系統(tǒng)軟件的流程圖,系統(tǒng)在初始化時為了防止意外的碰撞,需要尋找零點,尋找零點結(jié)束后進(jìn)行滑臺轉(zhuǎn)速、軌跡中每一步PWM數(shù)量的設(shè)置,并通過CAN總線將設(shè)置的數(shù)據(jù)發(fā)送給從機(jī)。設(shè)置完成后,當(dāng)主機(jī)檢測到物件過來的信號后,將開始運行的信號通過CAN總線發(fā)送給從機(jī),使主機(jī)與從機(jī)同時開始運行,當(dāng)從機(jī)運行完成后發(fā)送反饋信號給從機(jī),主從機(jī)同時停止運行。當(dāng)一次運行完成以后看情況確定是否需要重新設(shè)置參數(shù),如果需要重新設(shè)置則進(jìn)入滑臺運行軌跡參數(shù)設(shè)置狂態(tài),否則進(jìn)入等待運行狀態(tài)。

    圖3 系統(tǒng)軟件的流程圖Fig.3 Flow chart of system software

    在主從機(jī)運行過程中,由滑臺運行模式可知,滑臺是以不規(guī)則的軌跡運行的。因此根據(jù)滑臺的運行模式,在每一步運行之前需要計算滑臺運行的距離及兩個滑臺的PWM頻率。

    3 系統(tǒng)測試

    將該系統(tǒng)運用到實際的環(huán)境中,以垂直于地面放置的二維滑臺為研究對象,使滑臺以圖2中的軌跡運行。在設(shè)備運行的起始點做標(biāo)記,設(shè)置滑臺運行在90秒/圈,45秒/圈,30秒/圈三種速度下,并且分別運行10圈,15圈,20圈,25圈得到運行結(jié)束時與起始點的距離,如表1所示,同樣轉(zhuǎn)速時轉(zhuǎn)動圈數(shù)越多誤差越大;轉(zhuǎn)動相同圈數(shù)的情況下,滑臺轉(zhuǎn)速越高誤差也是越大。

    表1 系統(tǒng)誤差Tab.1 System error

    經(jīng)過實際分析得出,這些誤差是由兩方面造成的。一方面,由于滑臺是垂直于地面放置,滑臺在下降過程中難免會因為重力的作用而下降。另一方面,在定時器輸出PWM數(shù)量固定的情況下,由于在系統(tǒng)運動過程中需要改變經(jīng)常需要改變PWM的頻率,而改變一次PWM的頻率會有1個CLOCK的延遲。

    4 結(jié)束語

    本文介紹了用STM32控制滑臺運行不規(guī)則軌跡的計算方法,在此基礎(chǔ)上提出了用定時器中斷的方法精確控制PWM數(shù)量。通過精密控制X軸和Y軸的滑臺,使磨削頭能以直線、斜線和弧線的軌跡精確運動,達(dá)到成功磨削工件的目的。經(jīng)過實際的測試表明該系統(tǒng)工作穩(wěn)定,精確度較高。

    本次設(shè)計是二維的滑臺,但設(shè)計的思想和方法也可推廣到三維滑臺的控制設(shè)計。要想獲得更精確的步進(jìn)電機(jī)控制,可考慮使用DSP作為主控芯片,從而可以有更高的運算速度和控制精度[8-9]。本論文精確控制兩維滑臺運行軌跡的方法可推廣應(yīng)用到許多步進(jìn)電機(jī)控制的項目中,比如本實驗室另一個項目---顯微鏡電動載物臺的精密控制。

    [1]梁軍龍.基于STM32F407的永磁同步電機(jī)伺服控制器設(shè)計[J].山西電子技術(shù),2014(1):28-30.LIANG Jun-long.The Design on Servo Controller of Permanent Magnet Synchronous Motor Based on STM32F407[J].Shanxi Electronic Technology,2014(1):28-30.

    [2]劉慧英,范寶山.基于STM32的多步進(jìn)電機(jī)控制系統(tǒng)研究[J].測控技術(shù),2010,29(6):54-57.LIU Hui-ying,FAN Bao-shan.Study of Control System of Multiple Step Motors Based on STM32 [J].Measurement&Control Technology,2010,29(6):54-57.

    [3]李寧.基于MDK的STM32處理器開發(fā)應(yīng)用[M].北京:北京航空航天出版社,2008.

    [4]王永虹,徐煒,郝立平.STM32系列ARM Cortex_M3微控制器原理與實踐[M].北京:北京航空航天大學(xué)出版社,2008.

    [5]章歡.基于CAN總線的火災(zāi)報警系統(tǒng)的設(shè)計與實現(xiàn) [D].武漢:武漢理工大學(xué)信息工程學(xué)院,2008.

    [6]宋錦.步進(jìn)電機(jī)的單片機(jī)控制方法[J].武漢工程職業(yè)技術(shù)學(xué)院學(xué)報,2006,18(3):59-63.SONG Jin.Discussion on control of the step by step motor through single chip computer[J].Journal of University for Staff and Workers of Wuhan Iron and Steel(Group)Corporation,2006,18(3):59-63.

    [7]金元郁,李勇,李園園.基于FPGA的步進(jìn)電機(jī)控制器設(shè)計[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2007(3):70-71.JIN Yuan-yu,LI Yong,LI Yuan-yuan.Design of step motor controller based on FPGA[J].Microcontrollers&Embedded Systems,2007(3):70-71.

    [8]任明巖,孫金英.基于PIC16C621A和A3955的步進(jìn)電機(jī)驅(qū)動器設(shè)計[J].電子產(chǎn)品世界,2007,3(22):98-101.REN Ming-yan,SUN Jin-ying.Design of stepper motor driver based on PIC16C621A and A3955 [J]. Electronic Engineering&Product World,2007,3(22):98-101.

    [9]高琴,劉淑聰,彭宏偉.步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計及應(yīng)用[J].制造業(yè)自動化,2012,34(1):150-152.GAO Qin,LIU Shu-cong,PENG Hong-wei.Design and application of control system of stepper motor[J].Manufacturing Automation,2012,34(1):150-152.

    猜你喜歡
    滑臺圓弧總線
    某款汽車復(fù)合材料尾門的滑臺分析及優(yōu)化
    淺析圓弧段高大模板支撐體系設(shè)計與應(yīng)用
    基于改進(jìn)PID控制的機(jī)床滑臺運動位移跟蹤誤差研究①
    外圓弧面銑削刀具
    基于PCI Express總線的xHC與FPGA的直接通信
    機(jī)載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計
    多通道ARINC429總線檢查儀
    基于PLC的液壓動力滑臺控制系統(tǒng)改進(jìn)設(shè)計
    數(shù)控車削圓弧螺紋程序編制與加工
    等截面圓弧無鉸板拱技術(shù)狀況評價
    临朐县| 横峰县| 沧源| 长泰县| 海阳市| 平阴县| 博客| 习水县| 临夏县| 明水县| 鄂托克旗| 峨眉山市| 临海市| 策勒县| 田阳县| 田林县| 雅安市| 股票| 白朗县| 凤山县| 乐陵市| 门源| 大冶市| 汤阴县| 东乡县| 枣强县| 龙门县| 会东县| 江城| 庆阳市| 曲周县| 扬州市| 呼玛县| 虞城县| 云梦县| 石河子市| 金华市| 汝州市| 铜梁县| 四川省| 通海县|