<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 基于VC++的模擬舵機系統設計

基于VC++的模擬舵機系統設計

作者: 時(shí)間:2016-10-16 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:在無(wú)人機半物理仿真實(shí)驗中,為了節約實(shí)驗成本,提出用系統代替真實(shí)的方法?;?a class="contentlabel" href="http://dyxdggzs.com/news/listbylabel/label/VC">VC++設計了系統。在半物理仿真系統中連入舵機,并用該系統模擬副翼、升降舵、油門(mén)的舵機。通過(guò)實(shí)驗驗證了該模擬舵機系統的有效性。實(shí)驗結果表明,該模擬舵機系統具有實(shí)時(shí)性好,可模擬多種舵機的特點(diǎn)。
關(guān)鍵詞:模擬舵機;多媒體定時(shí)器;PCL-836;PCL-812;PCL-726

0 引言
無(wú)人機飛行控制仿真主要包括數字仿真和半物理仿真。半物理仿真將系統部分實(shí)物引入仿真回路,盡可能真實(shí)模擬現場(chǎng)情況,比數字仿真更能有效驗證飛行控制系統的可靠性,尤其在其在初期試飛調參以及后期控制策略改進(jìn)階段應用廣泛。
做無(wú)人機的半物理仿真時(shí),需要使用真實(shí)舵機,而舵機價(jià)格比較昂貴,且多次實(shí)驗時(shí)存在損壞的風(fēng)險,無(wú)形中增加了實(shí)驗成本。本文根據舵機在飛行控制系統中的作用及特點(diǎn),基于++設計模擬舵機;該模擬舵機由綜合記錄計算機和若干板卡構成,運行于綜合記錄計算機中;代替實(shí)現真實(shí)舵機的功能,節約了實(shí)驗成本。

1 模擬舵機硬件設計
模擬舵機系統,首先要能模擬舵機在半物理仿真中的功能;其次要不影響半物理仿真接入真實(shí)舵機。這個(gè)是通過(guò)PCLD-785B(繼電器輸出板)來(lái)選擇的,當DO不輸出任何值時(shí),Ci和NCi是導通的,當DO輸出時(shí),Ci和NOi導通(i=0,1,2,…,9)。
系統硬件設計如圖1所示,為了簡(jiǎn)潔,省去PCL-880接線(xiàn)板。

本文引用地址:http://dyxdggzs.com/article/201610/308218.htm

b.JPG


圖1中的PCLD-782B是光電隔離板,為了隔離PCLD-785B帶來(lái)的噪聲和提高電壓(飛控盒輸出電壓是3.3 V,提高到TTL電平)。而PCL-836(頻率采集卡)和PCL-726(D/A輸出卡),PCL-812(A/D采集卡)和位于綜合記錄計算機內,在++中的操作方法如圖2所示。

c.JPG



2 舵機函數關(guān)系的輸入
為了仿真多種舵機的需要,舵機函數關(guān)系應該可調;同時(shí)系統要滿(mǎn)足自動(dòng)獲取接在圖1仿真舵機上舵機的舵機函數。系統用PCL-836發(fā)出PWM波,PCL-726采集反饋電壓。程序界面如圖3所示。

a.JPG


圖中k,b為V=kT+b中的系數,V代表反饋電壓,T代表脈寬(單位:ms)。

3 模擬舵機軟件設計
3.1 PWM波采集方法
對PWM的采集是程序的難點(diǎn),這里使用PCL-836的事件計數功能來(lái)實(shí)現對PWM的測量。PCL-836共有6路計數器,其中CLK5用來(lái)產(chǎn)生時(shí)鐘信號。在PWM的下降沿時(shí)去讀計數器的值,然后根據時(shí)鐘的頻率算出PWM高電平的時(shí)間。檢測PWM下降沿的常見(jiàn)的方法是使用中斷和查詢(xún)。在PWM每次下降沿時(shí)觸發(fā)中斷,在中斷程序里去讀計數器的值。但是PCL-836只支持一個(gè)外接中斷,并且是上升沿觸發(fā)中斷,而整個(gè)仿真需要4個(gè)舵機,在目前的硬件條件下并不能直接實(shí)現,需要一定的輔助電路,如非門(mén)等。其次用查詢(xún)的方法,用一個(gè)線(xiàn)程來(lái)讀DI,在下降沿時(shí)去讀計數器的值。但這樣CPU的占用很高,影響系統的整體性能。所以不使用查詢(xún)和中斷的方法。為了能夠檢測PWM下降沿,并考慮現實(shí)性,決定用1 ms定時(shí)器來(lái)實(shí)現。如果上次讀到高定平,而這次讀到低電平,就認為是下降沿。雖然有不定的延遲,但是延遲小于1 ms,同時(shí)可以得到正確的值,而且系統占用要遠遠低于查詢(xún)方法。
3.2 使用多媒體定時(shí)器采集PWM波
微軟提供了精確定時(shí)器的底層API,支持能夠提供高精度的定時(shí)器服務(wù),利用多媒體定時(shí)器可以精確地讀出系統的當前時(shí)間,并在很精確的時(shí)間間隔內處理事件,可以到1 ms的精度。多媒體定時(shí)器的回調函數的程序流程圖如圖4所示。

d.JPG


用多媒體定時(shí)器采集PWM的方法帶來(lái)的不定延遲,加上Windows系統的實(shí)時(shí)性差帶來(lái)的延遲,使得模擬舵機系統實(shí)時(shí)性變差。但是飛控盒發(fā)出的PWM波幾乎是同時(shí)發(fā)出,即上升沿在時(shí)間上是一致的。所以可以用中斷加查詢(xún)的方法來(lái)檢測,用一路PWM做中斷源,每次中斷的時(shí)候去查詢(xún),最終檢測到下降沿。
3.3 中斷加查詢(xún)采集PWM波
PCL-836支持一路外部中斷,上升沿觸發(fā)。首先使用DRV_EnableEvent函數使能中斷,開(kāi)始中斷線(xiàn)程,在中斷線(xiàn)程里用DRV_CheckEvent函數檢測中斷。中斷線(xiàn)程流程圖如圖5所示。

e.JPG


使用中斷加查詢(xún)的方法采集PWM,實(shí)時(shí)性比較好,系統占用高于定時(shí)器方法,但是低于查詢(xún)方法。

4 仿真分析
在半物理仿真系統中連人該模擬舵機,系統模擬副翼、升降舵、油門(mén)三個(gè)舵機。使用該系統采集飛控盒發(fā)出的PWM,并反饋電壓給模型機。經(jīng)仿真采集到各舵機的PWM曲線(xiàn)如圖6~圖8,可知該系統實(shí)現具有實(shí)時(shí)性好,可模擬多種舵機的特點(diǎn)。

f.JPG

g.JPG



5 結語(yǔ)
本文基于VC++設計的模擬舵機系統,實(shí)現了無(wú)人機飛行控制半物理仿真中真實(shí)舵機的功能,一定程度上降低了實(shí)驗成本。該系統功能全面,設計靈活,可實(shí)現多種類(lèi)型舵機,是一種行之有效的仿真方法。



關(guān)鍵詞: VC 模擬 舵機 系統設計

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>