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

        ?

        數(shù)據(jù)驅(qū)動型狀態(tài)機伺服控制系統(tǒng)的設計和實現(xiàn)

        2011-09-20 02:55:32李紹安李維嘉郎飛陽華中科技大學船舶與海洋工程學院輪機工程系湖北武漢430074
        電氣自動化 2011年6期
        關(guān)鍵詞:狀態(tài)機功能模塊驅(qū)動器

        李紹安 李維嘉 郎飛陽(華中科技大學 船舶與海洋工程學院輪機工程系,湖北 武漢 430074)

        0 引言

        電動缸相對于液壓缸,在響應頻率、設計周期、硬件成本和維修等方面有較大的優(yōu)勢[1],因此在實際運用中,十噸以下六自由度平臺的設計多采用電動缸作為驅(qū)動元件。伺服電機驅(qū)動器作為電動缸系統(tǒng)中的關(guān)鍵組成部分,近幾年以來得到了飛速的發(fā)展,其功率逐漸增大,模擬伺服逐漸發(fā)展到數(shù)字伺服,輸入方式由以前的模擬量發(fā)展到現(xiàn)在的數(shù)字通訊。由于PLC和FPGA的使用,伺服驅(qū)動器更加智能,逐漸簡化了控制的工作量,減少了控制開發(fā)的成本。

        隨著數(shù)字伺服驅(qū)動器的大量使用,對其控制代碼的設計及優(yōu)化成為六自由度控制系統(tǒng)中的重要組成部分。在實際工程項目中,根據(jù)平臺的功率以及總體成本,常選用不同品牌和型號的數(shù)字驅(qū)動器。由于不同的數(shù)字伺服驅(qū)動器在控制及通訊方式上存在差異,往往需要開發(fā)不同版本的控制軟件,給開發(fā)成本和后期維護帶來了巨大的困難。

        綜上所述,為減少開發(fā)成本,增加程序代碼復用程度,有必要開發(fā)一套通用的數(shù)字伺服驅(qū)動器管理程序,簡化驅(qū)動器控制的設計。讓設計人員能快速開發(fā)新的數(shù)字伺服驅(qū)動器的控制代碼,從而把主要精力投入到其他關(guān)鍵控制系統(tǒng)及算法的設計中。

        1 數(shù)據(jù)驅(qū)動狀態(tài)機設計方法

        考慮數(shù)字驅(qū)動伺服控制系統(tǒng)的復雜性,為了保證控制系統(tǒng)的可靠性和可維護性,可選用成熟的軟件設計模式。本文數(shù)字驅(qū)動伺服控制系統(tǒng)的結(jié)構(gòu)設計,以成熟的“狀態(tài)機設計模式”為依據(jù)[2]。“狀態(tài)機”設計模式通過實際控制對象的狀態(tài)描述和狀態(tài)遷移控制,能夠很好的簡化數(shù)字驅(qū)動伺服控制系統(tǒng)的復雜性。

        針對本控制系統(tǒng)可以控制多種不同品牌和型號的數(shù)字伺服驅(qū)動器,這里對“狀態(tài)機”設計模式進行了進一步優(yōu)化,引入配置數(shù)據(jù)庫,提出了“數(shù)據(jù)驅(qū)動狀態(tài)機”設計模式。如圖1所示。

        圖1 數(shù)據(jù)驅(qū)動狀態(tài)機“設計模式”

        “數(shù)字驅(qū)動狀態(tài)機”在傳統(tǒng)狀態(tài)機設計模式的基礎(chǔ)上添加了狀態(tài)管理類(StateManager)以及向配套的狀態(tài)數(shù)據(jù)庫(StateData-Base)。狀態(tài)管理類主要負責狀態(tài)的配置和管理狀態(tài)轉(zhuǎn)換。

        (1)引入命令方式(Command)[3],作為狀態(tài)改變的接口,及環(huán)境類(Context)采用命令方式改變當前狀態(tài)。環(huán)境類(Context)當接收外部指令時,向狀態(tài)管理類(StateManager)發(fā)送狀態(tài)改變命令,狀態(tài)管理類根據(jù)命令決定當前狀態(tài)(ConcreteState)。

        (2)允許一個命令產(chǎn)生一系列狀態(tài)變化。在實際控制系統(tǒng)中,控制對象的狀態(tài)常??梢詣澐譃槎鄠€子狀態(tài)。不同的狀態(tài)中包含多個相同的子狀態(tài)。因此,可以通過細分子狀態(tài),組合得到不同控制對象狀態(tài),達到節(jié)省開發(fā)時間的目的。

        (3)定義狀態(tài)類(State)的三個基本接口,分別為開始(begin),運行(run)和結(jié)束(end)。使所有的子狀態(tài)類(ConcreteS-tate),獨立完成初始化和結(jié)束代碼。保證子狀態(tài)類(ConcreteS-tate)之間無耦合,并且狀態(tài)管理類(StateManager)對子狀態(tài)(ConcreteState)的管理僅僅通過狀態(tài)類(State)提供的接口。減少類與類之間的耦合。

        (4)定義狀態(tài)轉(zhuǎn)換數(shù)據(jù)庫(StateDataBase),使狀態(tài)轉(zhuǎn)換顯式化。狀態(tài)數(shù)據(jù)庫(StateDataBase)定義了一系列指令以及該指令所對應的狀態(tài)轉(zhuǎn)換流程。

        2 數(shù)字驅(qū)動器控制軟件的結(jié)構(gòu)設計

        根據(jù)“數(shù)據(jù)驅(qū)動狀態(tài)機”設計模式所要求的設計過程,首先劃分數(shù)字驅(qū)動器控制系統(tǒng)的功能模塊,然后逐步設計各功能模塊的功能和狀態(tài),最后定義各功能模塊的狀態(tài)轉(zhuǎn)變過程和方法,從而確定數(shù)字驅(qū)動器控制軟件的總體結(jié)構(gòu)。具體設計方法如下:

        2.1 數(shù)字驅(qū)動器控制系統(tǒng)功能模塊劃分

        功能模塊劃分可按照如下原則

        (1)按照實際控制對象的物理種類來劃分大功能模塊,一個模塊只管理一類具有類似性質(zhì)的物理對象。

        (2)劃分的模塊可以定義清晰的接口。

        (3)模塊應具備可替換性及模塊間無耦合。

        (4)模塊的接口的定義在滿足基本功能的前提下,至少設計一個通用接口,方便快速添加新功能。

        (5)如果一個模塊用來管理多個類型性質(zhì)的物理對象,應設計對象管理子模塊和對象接口子模塊,以便將來添加新的物理對象。

        (6)模塊的功能應提供一定升級空間。

        根據(jù)以上原則,數(shù)字伺服驅(qū)動器控制過程可初步劃分成控制管理接口模塊、數(shù)字伺服驅(qū)動器功能模塊、通信模塊和驅(qū)動器四個部分組成,如圖2所示。

        圖2 功能模塊劃分

        其中控制接口模塊為電動缸控制系統(tǒng)提供各種功能接口。所有與驅(qū)動器的功能被封裝到控制接口模塊中。功能的具體實現(xiàn)向電動缸控制系統(tǒng)透明。驅(qū)動器功能模塊向控制接口模塊負責,提供驅(qū)動器包括參數(shù)設置、尋找零位、返回狀態(tài)等各種驅(qū)動器功能。功能的具體實現(xiàn)及控制驅(qū)動器的實際代碼向控制接口模塊透明。通訊模塊用來管理控制系統(tǒng)與驅(qū)動器之間的實際物理鏈路,包括數(shù)字通訊及IO接口等。

        2.2 驅(qū)動器功能模塊設計

        (1)驅(qū)動器功能分析

        對于不同型號,不同品牌的數(shù)字伺服驅(qū)動器,雖然它們在通訊方式和控制方法上存在著不同,但相對于電動缸伺服系統(tǒng)[4],它們所實現(xiàn)的功能基本一致,僅僅是具體實現(xiàn)的方法存在差異。比如,對于電動缸伺服系統(tǒng),數(shù)字伺服驅(qū)動器實現(xiàn)的基本功能有:

        ①位置控制

        ②找零位(HOME)

        ③零位設置

        ④極限位處理

        ⑤手動控制

        ⑥故障報警

        ⑦故障復位

        ⑧控制參數(shù)設置

        ⑨狀態(tài)數(shù)據(jù)獲取

        數(shù)字伺服驅(qū)動器控制流程如圖3所示。

        圖3中,控制程序首先根據(jù)數(shù)字伺服驅(qū)動器的種類從配置數(shù)據(jù)庫中讀取相關(guān)配置信息(“配置管理”),并根據(jù)配置信息初始化驅(qū)動器控制量(“初始參數(shù)設置”),如速度增益、加速度增益、最大速度和最大加速度等信息,在初始參數(shù)設置完成后,向控制類實時反饋驅(qū)動器狀態(tài)信息(“狀態(tài)信息反饋”),并等待進一步指令;然后,根據(jù)控制類指令,驅(qū)動器分別執(zhí)行“手動控制”、“位置控制”和“找零位(HOME)”等功能,并且在每個控制周期中,對驅(qū)動器報警信息進行監(jiān)測,如果驅(qū)動器報警,根據(jù)報警內(nèi)容的不同,生成報警指令,使驅(qū)動器進入“報警處理”。

        (2)驅(qū)動器子狀態(tài)劃分

        根據(jù)驅(qū)動器功能分析,驅(qū)動器運行過程可劃分為如下子狀態(tài)

        ①初始參數(shù)設置狀態(tài)(InitDriverPara State)

        ②狀態(tài)信息反饋狀態(tài)(GetDriverState State)

        圖3 數(shù)字伺服器控制流程圖

        ③手動控制狀態(tài)(ManualCtrl State)

        ④位置控制狀態(tài)(PosCtrl State)

        ⑤找零位狀態(tài)(HomeCtrl State)

        ⑥停止狀態(tài)(Stop State)

        ⑦普通故障處理狀態(tài)(Fail1Manage State)

        ⑧緊急故障處理狀態(tài)(Fail2Manage State)

        其中,初始參數(shù)設置狀態(tài)(InitDriverPara State)負責設置驅(qū)動器控制參數(shù);狀態(tài)信息反饋狀態(tài)(GetDriverState State)負責讀取驅(qū)動器狀態(tài)參數(shù)包括故障報警信號,由于它每個控制周期中都必須執(zhí)行,屬于典型的復合子狀態(tài);手動控制狀態(tài)(ManualCtrl State)、位置控制狀態(tài)(PosCtrl State)和找零位狀態(tài)(HomeCtrl State)實現(xiàn)電機三種實際控制功能。;通故障處理狀態(tài)(Fail1Manage State)和緊急故障處理狀態(tài)(Fail2Manage State)負責管理不同級別下的故障處理過程;停止狀態(tài)(Stop State)表示驅(qū)動器未使能時的特殊狀態(tài),在實際控制過程中由于未完成任何控制,可以把它等同于狀態(tài)信息反饋狀態(tài)(GetDriverState State)。

        (3)驅(qū)動器狀態(tài)轉(zhuǎn)換的設計

        根據(jù)驅(qū)動器功能分析,驅(qū)動器在以下幾種指令下狀態(tài)發(fā)生改變

        ①驅(qū)動器初始化命令(InitCmd)

        ②手動控制命令(ManualCtrlCmd)

        ③位置控制命令(PosCtrlCmd)

        ④找零位命令(HomeCtrlCmd)

        ⑤普通故障命令(Fail1Cmd)

        ⑥緊急故障命令(Fail2Cmd)

        ⑦停止命令(StopCmd)

        驅(qū)動器的狀態(tài)發(fā)送改變分為兩類,一類是控制系統(tǒng)通過向驅(qū)動器管理類(MotorDriver)發(fā)送命令改變驅(qū)動器狀態(tài)。另一類是,驅(qū)動器管理類(MotorDriver)根據(jù)驅(qū)動器執(zhí)行過程或故障直接改變驅(qū)動器狀態(tài)。當改變狀態(tài)的唯一途徑是發(fā)送上述指令。

        (4)驅(qū)動器狀態(tài)轉(zhuǎn)換命令的優(yōu)先級設計

        ①根據(jù)命令的緊急程度,驅(qū)動器狀態(tài)轉(zhuǎn)換命令的優(yōu)先級分為四個級別。

        緊急故障命令(Fail2Cmd)具備最高優(yōu)先級(priority 0),及無論驅(qū)動器處于何種狀態(tài),緊急故障命令(Fail2Cmd)和立即得到相應。例如,驅(qū)動器管理類(MotorDriver)檢測到驅(qū)動器輸入三相電源缺相時,應立即發(fā)送緊急故障命令(Fail2Cmd),關(guān)閉驅(qū)動器使能,閉合電機剎車,使電動缸保持當前位置。

        ②普通故障命令(Fail1Cmd)具備優(yōu)先級(priority 1)。例如,驅(qū)動器管理類(MotorDriver)檢測到驅(qū)動器溫度超過標準時,應立即普通故障命令(Fail1Cmd),使電動缸緩慢運行到初始零位,關(guān)閉驅(qū)動器使能,閉合電機剎車。

        ③驅(qū)動器初始化命令(InitCmd)、手動控制命令(ManualCtrl-Cmd)和停止命令(StopCmd)具備優(yōu)先級(priority 2)。

        ④找零位命令(HomeCtrlCmd)和位置控制命令(PosCtrlC-md)具備優(yōu)先級(priority 3)。

        ⑤由于手動控制命令(ManualCtrlCmd)和停止命令(StopC-md)常運用于電動缸的人工控制,既當驅(qū)動器在位置控制時,用于人為干預電動缸的運行。因此,它們的優(yōu)先級要高于找零位命令(HomeCtrlCmd)和位置控制命令(PosCtrlCmd)。

        (5)數(shù)據(jù)驅(qū)動狀態(tài)機設計

        根據(jù)上述的驅(qū)動器狀態(tài)劃分和狀態(tài)轉(zhuǎn)換設計,數(shù)字驅(qū)動模塊設計如圖4所示。

        圖4 數(shù)字伺服智控制流程圖

        3 結(jié)束語

        本文針對數(shù)字驅(qū)動控制系統(tǒng)的開發(fā),采用數(shù)據(jù)驅(qū)動狀態(tài)機設計模式,設計控制系統(tǒng)的軟件結(jié)構(gòu),以適應不同品牌和型號數(shù)字驅(qū)動器的功能控制。以簡化開發(fā)團隊在使用數(shù)字驅(qū)動器項目中的開發(fā)過程,并且進一步提高開發(fā)工作的效率和軟件產(chǎn)品質(zhì)量,使軟件系統(tǒng)具有良好的穩(wěn)定性和擴充性。此數(shù)字驅(qū)動控制系統(tǒng)已在“模型軍用直升機六自由度飛行模擬器”和“中國科技館宇宙飛船模擬器”等項目的控制系統(tǒng)中得到了應用,并取得了良好的效果。

        [1] D.Stewart.A Platform with Six Degrees of Freedom.Proc.Inst.Mech.Eng[C].1965 -66,180(15):371 -386.

        [2] Peter Cad.Object- oriented patterns.Communications of the ACM[J].1992,35(9):152-159.

        猜你喜歡
        狀態(tài)機功能模塊驅(qū)動器
        藏起驅(qū)動器號確保數(shù)據(jù)安全
        電腦愛好者(2020年6期)2020-05-26 09:27:33
        基于有限狀態(tài)機的交會對接飛行任務規(guī)劃方法
        基于ASP.NET標準的采購管理系統(tǒng)研究
        軟件導刊(2016年9期)2016-11-07 21:35:42
        壓電陶瓷驅(qū)動器的遲滯特性
        輸電線路附著物測算系統(tǒng)測算功能模塊的研究
        M市石油裝備公服平臺網(wǎng)站主要功能模塊設計與實現(xiàn)
        石油知識(2016年2期)2016-02-28 16:20:16
        功能模塊的設計與應用研究
        SiC基和Si基永磁同步電動機驅(qū)動器的比較
        新型低電壓大變形微驅(qū)動器數(shù)值求解及仿真
        計算物理(2014年2期)2014-03-11 17:01:41
        FPGA設計中狀態(tài)機安全性研究
        黑龍江科學(2011年2期)2011-03-14 00:39:36
        综合亚洲二区三区四区在线| 亚洲中文字幕无码中文字| 天天天天躁天天爱天天碰| 亚洲学生妹高清av| 久久成人永久免费播放| 麻豆av一区二区天堂| 美女性色av一区二区三区| 亚洲综合极品美女av| 九九久久精品无码专区| 免费毛片性天堂| 国产午夜在线观看视频| 91偷拍与自偷拍亚洲精品86| 欧美嫩交一区二区三区| av香港经典三级级 在线| 秋霞日韩一区二区三区在线观看| 亚洲中文字幕一区高清在线| 久久久久久夜精品精品免费啦| 人妻夜夜爽天天爽一区 | 日本少妇被爽到高潮的免费| 国产精品黄色在线观看| 亚洲国产成人精品无码区在线播放 | 国产va免费精品观看| 久久99久久99精品观看| 国产黑丝美女办公室激情啪啪| 狠狠色欧美亚洲狠狠色www| 玩中年熟妇让你爽视频| 91久久精品国产91久久| 午夜精品一区二区三区av免费| 国产精品蝌蚪九色av综合网| 国产伦精品一区二区三区| 人妻人妻少妇在线系列| 天涯成人国产亚洲精品一区av| 国产精品成人免费视频一区| 国产一线二线三线女| 337p日本欧洲亚洲大胆色噜噜| 中文字幕文字幕一区二区 | 激情综合五月| 国产又色又爽无遮挡免费| 久久精品国产亚洲AⅤ无码剧情| 东北熟妇露脸25分钟| 国产如狼似虎富婆找强壮黑人|