亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種數(shù)字伺服驅(qū)動的多元電機控制系統(tǒng)設(shè)計

        2013-09-10 08:33:36王廣龍陳建輝喬中濤
        自動化儀表 2013年2期
        關(guān)鍵詞:驅(qū)動程序驅(qū)動器控制算法

        董 宇 王廣龍 陳建輝 喬中濤

        (軍械工程學(xué)院導(dǎo)彈工程系,河北 石家莊 050003)

        0 引言

        伺服系統(tǒng)也稱隨動系統(tǒng),屬于自動控制系統(tǒng)中的一種。伺服控制技術(shù)應(yīng)用廣泛,其不僅能完成轉(zhuǎn)動控制、直線運動控制,而且能依靠多套伺服系統(tǒng)的配合完成復(fù)雜的空間曲線運動的控制[1-2]。

        早期的伺服驅(qū)動器多屬于模擬伺服,處理器運算速度的增長為數(shù)字伺服驅(qū)動器的出現(xiàn)奠定了基礎(chǔ)。具有數(shù)字輸入與輸出接口的數(shù)字伺服驅(qū)動器具有體積小、質(zhì)量輕等特點。采用數(shù)字伺服驅(qū)動器進行編程,僅需設(shè)計上層軟件就能實現(xiàn)復(fù)雜功能,體現(xiàn)出極大的優(yōu)越性[3-4]。目前,國內(nèi)大多數(shù)電機控制系統(tǒng)采用嵌入式系統(tǒng)進行設(shè)計,成本相對較低,但運算能力較弱,無法實現(xiàn)多元(自由度)大運算量計算及復(fù)雜算法[5-6]。

        本控制系統(tǒng)采用高性能的工控機作為核心控制模塊,并基于Linux操作系統(tǒng)進行控制軟件的開發(fā),軟件編程更靈活,魯棒性更好,控制算法優(yōu)化易于實現(xiàn),系統(tǒng)性能得到大大改善。

        1 控制系統(tǒng)硬件結(jié)構(gòu)

        本控制系統(tǒng)包括核心控制、USBcan和伺服驅(qū)動三個模塊,如圖1所示。其中核心控制模塊包括工控機及其外部I/O設(shè)備;USBcan模塊的核心部分為USBcan轉(zhuǎn)換器;伺服驅(qū)動模塊包括數(shù)字伺服驅(qū)動器和執(zhí)行電機。

        圖1 系統(tǒng)硬件結(jié)構(gòu)Fig.1 Hardware structure of the system

        1.1 核心控制模塊

        核心控制模塊以工控機PCM9362D為核心。PCM9362D工控機采用+12 V電源供電,功耗只有10 W左右,其集成了USB、CF存儲器接口等外部接口,具有很高的集成度。該工控機支持Windows、Linux等多種操作系統(tǒng),系統(tǒng)可安裝在CF卡中,無需硬盤的支持,這有效提高了系統(tǒng)的可靠性和穩(wěn)定性。PCM9362D工控機采用的雙核Intel微功耗處理器,能有效保證其高速運算的能力,可運行復(fù)雜的控制算法,為控制系統(tǒng)軟件開發(fā)提供了高性能的硬件平臺。

        1.2 USBcan 模塊

        USBcan模塊采用Kvaser公司的USBcan Professional轉(zhuǎn)換器,實現(xiàn)USB到雙端口CAN的數(shù)據(jù)接口和數(shù)據(jù)交換。該模塊可通過USB中的電源供電,無需外加電源;支持Linux下的驅(qū)動模塊自動加載,可同時支持CAN2.0A、CAN2.0B協(xié)議。其工作過程為:內(nèi)部處理器接收核心控制模塊發(fā)送的控制指令,并將接收到的數(shù)據(jù)根據(jù)CAN協(xié)議封裝打包,經(jīng)CAN總線發(fā)送給伺服驅(qū)動模塊,以驅(qū)動執(zhí)行電機;同時接收來自電機的反饋信息,并上傳給核心控制模塊。

        USBcan模塊的驅(qū)動程序中包含通道設(shè)置、波特率設(shè)置、初始化、數(shù)據(jù)讀寫等多個API函數(shù),可在應(yīng)用程序中直接調(diào)用,為軟件開發(fā)提供了方便,提高了軟件的可移植性。該模塊通過CAN接口可擴展多路CAN總線終端設(shè)備,為編程控制多元執(zhí)行電機創(chuàng)造了條件。

        1.3 伺服驅(qū)動模塊

        伺服驅(qū)動模塊的核心部分為Elmo公司的WHI系列數(shù)字伺服驅(qū)動器,其結(jié)構(gòu)如圖2所示。WHI伺服驅(qū)動器同時支持CAN總線及RS-232通信接口,可在角度、位置、速度和力矩控制多模式之間任意切換。該伺服驅(qū)動器的微處理器具有內(nèi)置的驅(qū)動程序,能執(zhí)行內(nèi)置的腳本;可以根據(jù)電機狀態(tài)自動調(diào)整伺服電機的工作參數(shù);根據(jù)控制指令運行相應(yīng)的操作,直到核心控制模塊發(fā)送改變其運行狀態(tài)的指令。

        圖2 數(shù)字伺服驅(qū)動器結(jié)構(gòu)圖Fig.2 Structure of the digital servo driver

        2 控制系統(tǒng)算法設(shè)計

        WHI數(shù)字伺服驅(qū)動器中封裝了SP(速度設(shè)置)、MP[N](運動參數(shù)設(shè)置)、LD(程序加載)等完整的硬件控制命令。在優(yōu)化底層硬件驅(qū)動程序的基礎(chǔ)上,本系統(tǒng)的軟件設(shè)計著重于上層控制系統(tǒng)軟件的實現(xiàn),其中控制算法的設(shè)計是上層控制系統(tǒng)設(shè)計的關(guān)鍵部分。

        2.1 變速積分PID控制算法

        PID控制是一種線性控制方法,其在連續(xù)時間域中的表達式如下[7]:

        式中:Kp、Ti、Td分別為模擬控制器的比例增益、積分時間和微分時間常數(shù);e(t)為控制偏差;u0為系統(tǒng)穩(wěn)態(tài)工作時的控制器輸出,即偏差e=0時的輸出。

        對式(1)進行離散化處理之后,得到PID控制器的數(shù)字算法如式(2)所示:

        式中:u(k)為采樣時刻t=kT時的計算機輸出;Ki為積分常數(shù);Kd為微分系數(shù)[8-9]。

        系統(tǒng)對積分項的要求是:系統(tǒng)偏差大時,積分作用減弱以至全無;而在小偏差時則應(yīng)加強。因此,引入變速積分PID控制算法。其基本思想為:設(shè)法改變積分項的累加速度,使其與偏差大小相對應(yīng),偏差越大,積分越慢,反之則越快。為此,設(shè)置系數(shù)f[e(k)],它是e(k)的函數(shù)。當|e(k)|增大時,f減小,反之增大,則得到變速積分PID積分項表達式如下:

        將式(3)代入式(2),最終得到變速積分PID算法的完整形式,即:

        變速積分PID控制算法可以完全消除積分飽和現(xiàn)象,大大減少了超調(diào)量,從而使得系統(tǒng)更加穩(wěn)定[10]。另外,本系統(tǒng)在設(shè)計時對PID輸出設(shè)置了上下限幅值,避免了因輸出過大造成的系統(tǒng)不穩(wěn)定,進一步增強了系統(tǒng)的魯棒性。

        2.2 電機速度控制算法

        本控制系統(tǒng)所采用的數(shù)字伺服驅(qū)動器提供了對電機加速度和最大速度等參數(shù)的編程控制,其內(nèi)部的控制機制能保證其在頻繁啟停、頻率發(fā)生突變的高速運轉(zhuǎn)過程中不會發(fā)生堵轉(zhuǎn)和失步現(xiàn)象。

        在控制軟件中,需要保證通過軟件設(shè)置的速度值與電機實際轉(zhuǎn)速保持一致[11],這就需要設(shè)計速度控制算法進行速度控制。電機速度控制算法流程如圖3所示。

        圖3 速度控制算法流程圖Fig.3 Flowchart of the speed control algorithm

        2.3 電機角度控制算法

        在數(shù)字伺服驅(qū)動器中,對電機轉(zhuǎn)動位置的設(shè)定是采用設(shè)定下一運動將到達的相對位置的方式進行的,這使得對電機的轉(zhuǎn)動控制不夠直觀明了。因此,在上層軟件中,將電機下一運動將到達的相對位置換算成電機將轉(zhuǎn)動的角度值,其換算關(guān)系為:

        式中:Pr為電機下一運動將到達的相對位置;Pa為電機轉(zhuǎn)動的角度值;Gr為齒輪齒數(shù)比;Ec為編碼器轉(zhuǎn)數(shù)。在軟件控制時,只需設(shè)置角度值Pa即可使電機轉(zhuǎn)過相應(yīng)角度。

        3 控制系統(tǒng)軟件實現(xiàn)

        控制系統(tǒng)軟件采用Linux Ubuntu10.04+Kedit程序編輯器作為其開發(fā)環(huán)境,根據(jù)面向?qū)ο笏枷脒M行編程,以命令行的方式運行。在系統(tǒng)軟件運行前需首先加載硬件驅(qū)動程序,然后通過CAN總線控制器使能CAN總線。在初始化電機和WHI伺服驅(qū)動器之后,即可驅(qū)動多元電機運行。

        3.1 硬件驅(qū)動程序加載

        在進行系統(tǒng)軟件編程之前,首先需要保證硬件正常工作。Linux系統(tǒng)本身對一些使用較為普遍的硬件提供了相應(yīng)的驅(qū)動程序,本部分的主要工作為驅(qū)動USBcan轉(zhuǎn)換器。

        USBcan轉(zhuǎn)換器針對Linux系統(tǒng)定制了驅(qū)動程序,可通過 make、make install命令編譯、安裝,但由于Ubuntu對Linux內(nèi)核做了修改,在對USB設(shè)備進行識別時,導(dǎo)致驅(qū)動程序無法加載,因此需要修改USBcan驅(qū)動中的ProductID。驅(qū)動程序安裝完成后,即可啟動加載驅(qū)動程序。

        3.2 CAN 總線控制

        本系統(tǒng)采用單獨的子程序?qū)AN總線控制器進行操作,其程序流程如圖4所示。

        圖4 CAN總線控制流程圖Fig.4 Control flowchart of CAN bus

        首先,調(diào)用canInitializeLibrary()方法初始化CAN總線控制器驅(qū)動程序;然后讀取當前處于活動狀態(tài)的CAN通道號。對應(yīng)每一個處于活動狀態(tài)的CAN通道都對應(yīng)一個句柄handle,該值若小于0,則說明打開失敗,進入錯誤處理程序;否則開啟操作人員選擇的CAN通道。使用canSetBusParams()方法設(shè)置好CAN通道的相關(guān)參數(shù),即可打開CAN總線進行讀寫操作[12]。

        3.3 伺服驅(qū)動器/電機初始化

        本文在初始化數(shù)字伺服驅(qū)動器時,首先通過InitialDriverMode()方法設(shè)置數(shù)字伺服驅(qū)動器的采樣時間,并設(shè)置驅(qū)動電機的相關(guān)運動參數(shù),如位置參考點、位置控制器的采樣次數(shù)以及定時數(shù)據(jù)等。然后調(diào)用FillInMotionBuffer()方法清空數(shù)字伺服驅(qū)動器的數(shù)據(jù)存儲器,這其中包括用于存儲時間、位置、速度陣列的QTⅠ、QPⅠ、QVⅠ數(shù)組。最后調(diào)用 ResetDriverWithData()方法啟動歸位進程,重置數(shù)字伺服驅(qū)動器的位置寄存器。

        對電機的初始化操作主要是為電機的相關(guān)數(shù)據(jù)賦初值,包括對各個電機所對應(yīng)的CAN節(jié)點號的設(shè)置、各個電機的齒輪齒數(shù)比和編碼器轉(zhuǎn)數(shù)的設(shè)置等。

        3.4 驅(qū)動多元電機

        對于多元電機的控制,本文采用循環(huán)控制的方法,其流程如圖5所示。所有電機既可以根據(jù)程序預(yù)先設(shè)定好的自動運行模式運動,也可以通過人工輸入運動控制參數(shù)的方式運動。

        目前,本控制系統(tǒng)實現(xiàn)的自動運行模式包括兩種方式,即按默認速度連續(xù)運動和按預(yù)先設(shè)定好的時間、速度、位置陣列運動。程序中對電機的控制方式包括旋轉(zhuǎn)角度控制、轉(zhuǎn)速控制、運動模式切換等。在電機運動的過程中,采用變速積分PID控制算法實時檢測運動誤差并進行誤差補償[13-16]。

        圖5 多元電機控制流程圖Fig.5 Flowchart of the multi-motor control

        4 控制系統(tǒng)數(shù)據(jù)分析

        根據(jù)數(shù)字伺服驅(qū)動器的要求,輸入20組角度值,通過對數(shù)字伺服驅(qū)動器的PX指令加載,得到電機的實際轉(zhuǎn)動角度反饋數(shù)據(jù)如表1所示。根據(jù)表1繪制得到的數(shù)據(jù)分析曲線如圖6所示。

        表1 角度測試試驗數(shù)據(jù)Tab.1 Experimental data of angle test

        圖6 數(shù)據(jù)分析曲線Fig.6 Curve of data analysis

        由表1可見,單個電機的控制誤差不超過1°。由圖6可以看出,該曲線具有良好的線性度,控制系統(tǒng)運轉(zhuǎn)穩(wěn)定。

        5 結(jié)束語

        本文設(shè)計并實現(xiàn)了一種基于數(shù)字伺服驅(qū)動器的多元電機控制系統(tǒng)。該系統(tǒng)采用面向?qū)ο蟮乃枷刖幊?,具有良好的人機交互性,相關(guān)控制算法的設(shè)計使得本系統(tǒng)的電機控制高效穩(wěn)定。經(jīng)試驗驗證,系統(tǒng)魯棒性較好、可靠性較高、靈敏度高、誤差小,CAN總線可掛接多個總線設(shè)備。本控制系統(tǒng)可用于機器人、數(shù)控機床等多種應(yīng)用環(huán)境,具有較高的實用價值和良好的擴展性。

        [1]黃會生,樊利民.基于Elmo數(shù)字伺服控制器的機載吊艙陀螺穩(wěn)定平臺設(shè)計[J].電子設(shè)計工程,2010,10(18):64 -66.

        [2] Yang Wenlei,Jang Tingbiao.Hardware design of digital AC servo system based on DSP2812[C]//2010 International Conference on Intelligent Computing and Integrated Systems,2010:337 -340.

        [3]林青松,姚玉菲,王軍曉.新型伺服控制系統(tǒng)的建模仿真與分析[J].電子技術(shù)應(yīng)用,2010,36(12):135 -140.

        [4] Chen Nanhu,Li Zexiang.A sensorless speed control strategy for a lowcost full-closed-loop servo driver system[C]//7th World Congress on Intelligent Control and Automation,2008:5616 -5621.

        [5]吳紅星,錢海榮,劉瑩,等.永磁直線同步電機控制技術(shù)綜述[J].微電機,2011,44(7):76 -80.

        [6]高梅,王忠慶.基于DSP的交流伺服電機控制系統(tǒng)的研究[J].機械工程與自動化,2009(5):149-150.

        [7]于曉敏,于曉坤,耿蕊.PID控制器參數(shù)優(yōu)化算法的仿真研究[J].計算機仿真,2011,28(7):212 -215.

        [8]王秀君,胡協(xié)和.一種改進的單神經(jīng)元PID控制策略[J].浙江大學(xué)學(xué)報,2011,45(8):1498 -1501.

        [9]黃友銳,曲立國.PID控制器參數(shù)整定與實現(xiàn)[M].北京:科學(xué)出版社,2010:10-12.

        [10]盧志剛,吳杰.數(shù)字伺服控制系統(tǒng)與設(shè)計[M].北京:機械工業(yè)出版社,2007:312-315.

        [11]Boussak M.Implementation and experimental investigation of sensorless speed control with initial rotor position estimation for interior PM synchronous motor drive[J].IEEE Transactions on Power Electronics,2005,20(6):1413 -1422.

        [12]劉宇,張義民.CAN總線數(shù)據(jù)傳輸可靠性分析[J].機械科學(xué)與技術(shù),2011,30(6):888 -891.

        [13]王維平,張磊,李同華.基于DSP無軸承永磁同步電機控制系統(tǒng)設(shè)計[J].電力電子技術(shù),2011,45(6):55 -57.

        [14]阮見.多功能智能移動機器人控制系統(tǒng)設(shè)計與分析[D].南京:南京理工大學(xué),2008.

        [15]鐘新華,蔡自興,鄒小兵.移動機器人運動控制系統(tǒng)設(shè)計及控制算法研究[J].華中科技大學(xué)學(xué)報:自然科學(xué)版,2004(s1).

        [16]邱寄帆,王海春,唐斌,等.通用智能機器人分布式控制系統(tǒng)的設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2006(8):71-73.

        猜你喜歡
        驅(qū)動程序驅(qū)動器控制算法
        藏起驅(qū)動器號確保數(shù)據(jù)安全
        電腦愛好者(2020年6期)2020-05-26 09:27:33
        基于ARM+FPGA的模塊化同步控制算法研究
        壓電陶瓷驅(qū)動器的遲滯特性
        一種優(yōu)化的基于ARM Cortex-M3電池組均衡控制算法應(yīng)用
        SiC基和Si基永磁同步電動機驅(qū)動器的比較
        新型低電壓大變形微驅(qū)動器數(shù)值求解及仿真
        計算物理(2014年2期)2014-03-11 17:01:41
        一種非圓旋轉(zhuǎn)工件支撐裝置控制算法
        DI材橫向厚差自動控制算法及其應(yīng)用
        上海金屬(2013年4期)2013-12-20 07:57:17
        驅(qū)動程序更新與推薦
        驅(qū)動程序更新與推薦
        中文字幕第一页亚洲观看| 特黄熟妇丰满人妻无码| 亚洲中文字幕在线精品2021| 少妇激情一区二区三区| 亚洲av本道一本二本三区| 精品一级一片内射播放| 国产果冻豆传媒麻婆精东| 国产亚洲2021成人乱码| 国产天堂网站麻豆| 百合av一区二区三区| 国产粉嫩高清| 久久久精品国产亚洲av网不卡| 亚洲精品国产综合久久| 久久精品国产清自在天天线| 少妇久久久久久被弄到高潮| 无码国产精品一区二区vr老人| 亚洲精品国产字幕久久vr| 大香蕉久久精品一区二区字幕| 国产精品麻豆一区二区三区| 欧美国产亚洲日韩在线二区| 人妻丝袜av中文系列先锋影音| 午夜丰满少妇性开放视频| 97性视频| 日韩高清av一区二区| 日本精品一级二区三级| 亚洲国产日韩欧美综合a| 国产亚洲av无码专区a∨麻豆 | 大香视频伊人精品75| 白丝美女被狂躁免费视频网站| 一区二区三区在线乱码| 亚洲最大中文字幕熟女| av免费不卡国产观看| 精品推荐国产精品店| 丝袜欧美视频首页在线| 久久伊人精品只有这里有| 电驱蚊液可以插一晚上吗| 麻豆精品久久久久久久99蜜桃| 天天天综合网| 一级一片内射在线播放| 精品国产一区二区三区色搞| 狠狠色婷婷久久综合频道日韩|