国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種機載pwm信號轉(zhuǎn)換裝置與方法

      文檔序號:7546498閱讀:224來源:國知局
      一種機載pwm信號轉(zhuǎn)換裝置與方法
      【專利摘要】本發(fā)明提供了一種機載PWM信號轉(zhuǎn)換裝置與方法,利用粗計數(shù)和精計數(shù)結(jié)合的方法提高采樣和生成PWM信號的精度;利用具有雙郵箱的DPRAM進行數(shù)據(jù)通信,提高飛控單元與PWM端的數(shù)據(jù)交換的快速性、穩(wěn)定性和可靠性。該裝置在FPGA中實現(xiàn),可適用于不同型號的遙控器和不同類型的無人機,以及實現(xiàn)多任務(wù)擴展。
      【專利說明】一種機載PWM信號轉(zhuǎn)換裝置與方法

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及無人機及其飛控【技術(shù)領(lǐng)域】,具體來說是一種用于無人機自動駕駛儀的機載PWM信號轉(zhuǎn)換裝置與方法。

      【背景技術(shù)】
      [0002]無人機在軍事上的用途,從過去的情報、監(jiān)視和偵察裝備變成為攜帶導彈直接對地面目標進行攻擊的武器。在交通監(jiān)控、航拍測繪、災情偵查、大氣監(jiān)測等民用和科學研究領(lǐng)域也發(fā)揮著重要的作用。無論從國防建設(shè),還是社會發(fā)展方面考慮,生產(chǎn)、研發(fā)、裝備無人機已成為國際上的重要發(fā)展趨勢。就無人機研制方面,美國和以色列走在世界的前列。其中在美軍和以軍服役的“全球鷹”和“蒼鷺”代表著全球最先進的無人機。無人機的先進性一定程度取決于飛控系統(tǒng)的設(shè)計。目前,國外成熟的無人機飛控,包括羅斯的STA3X
      究機構(gòu)的wePilot2000、加拿大MicroPilot公司的MP2128、美國Cloudcap公司的PiccoloII等。國內(nèi)商品飛控有零度智控的YS09、普洛特的UP30、北京航空航天大學的iFly40、成都縱橫的AP-300等??傮w上,國內(nèi)無人機飛控與國外成熟飛控相比,還存在一定差距。因此,無人機飛控的研究具有重要的意義。
      [0003]舵機是無人機飛行的執(zhí)行機構(gòu),控制信號是周期固定脈寬可變的PWM信號。舵機用PWM信號,可由遙控接收機輸出,也可通過飛控單元產(chǎn)生,具有遙控/自駕功能的無人機飛控,需要機載PWM信號轉(zhuǎn)換裝置,完成以下任務(wù)(I)采樣遙控接收機輸出PWM信號的周期和脈寬,獲取不同型號遙控器的PWM周期,作為產(chǎn)生自駕PWM的周期,以及獲取各舵機中立位置的脈寬,作為飛控算法的參考變量;(2)將飛控算法輸出的各舵機控制量,生成自駕PWM控制舵機;(3)實現(xiàn)遙控/自駕切換。目前,大多數(shù)飛控系統(tǒng)使用STM32等單片機實現(xiàn)機載PWM信號轉(zhuǎn)換裝置,存在各功能任務(wù)串行完成、實時性差、PWM采樣和生成PWM精度低、靈活性差、不易擴展等缺點。FPGA具有并行化處理、實時性強、易于靈活擴展等優(yōu)勢,因此,它能在無人機飛控中發(fā)揮重要作用。目前,也有少量無人機飛控運用到FPGA,但它們局限于用作簡單的片選邏輯和接口處理,沒能深入研究,如何提高機載PWM信號轉(zhuǎn)換裝置的遙控PWM采樣和生成自駕PWM的精度,提高數(shù)據(jù)接口穩(wěn)定性、快速性和可靠性。
      [0004]綜上所述,現(xiàn)有機載PWM信號轉(zhuǎn)換裝置存在任務(wù)串行完成、實時性差、PWM采樣和生成PWM精度低、靈活性差、不易擴展等缺點,以及數(shù)據(jù)接口穩(wěn)定性、快速性和可靠性低等問題。


      【發(fā)明內(nèi)容】

      [0005]針對以上問題,本發(fā)明的目的在于提供一種機載PWM信號轉(zhuǎn)換裝置與方法,實現(xiàn)對遙控PWM的并行化高精度采樣和生成高精度的自駕PWM ;利用具有雙郵箱的DPRAM作為數(shù)據(jù)傳輸接口,提高數(shù)據(jù)傳輸?shù)姆€(wěn)定性、快速性和可靠性。
      [0006]本發(fā)明的
      【發(fā)明內(nèi)容】
      如下:
      [0007]一種機載PWM信號轉(zhuǎn)換裝置,包括晶振、總線驅(qū)動1、FPGA芯片、總線驅(qū)動2、和微處理器,F(xiàn)PGA芯片作為信號轉(zhuǎn)換裝置核心元件,分別與晶振、總線驅(qū)動1、總線驅(qū)動2、微處理器連接,所述FPGA芯片上包括PLL倍頻單元、時鐘分頻單元、PWM脈寬采樣單元5、遙控/自駕信號切換使能單元、遙控/自駕信號切換單元、PWM周期采樣單元、PWM脈寬采樣單元
      1、PWM脈寬采樣單元2、PWM脈寬采樣單元3、PWM脈寬采樣單元4、PWM脈寬采樣單元6、PWM信號產(chǎn)生單元1、PWM信號產(chǎn)生單元2、PWM信號產(chǎn)生單元3、PWM信號產(chǎn)生單元4、PWM信號產(chǎn)生單元6、DPRAM PWM端邏輯控制單元、DPRAM、DPRAM郵箱邏輯單元、單穩(wěn)態(tài)觸發(fā)器1、單穩(wěn)態(tài)觸發(fā)器2、單穩(wěn)態(tài)觸發(fā)器3、單穩(wěn)態(tài)觸發(fā)器4、DPRAM飛控端邏輯控制單元、SPI接口邏輯單元;
      [0008]所述PLL倍頻單元,將晶振輸出時鐘,進行倍頻,用作全局時鐘,為整個FPGA提供時鐘源;所述時鐘分頻單元,輸出分頻時鐘,為用到計數(shù)器的邏輯單元提供計數(shù)時鐘;
      [0009]所述PWM周期采樣單元,用于采樣遙控接收機輸出經(jīng)總線驅(qū)動I的遙控PWM信號周期,輸出粗精度和細精度的兩種周期值;所述PWM脈寬采樣單元1、PWM脈寬采樣單元2、PWM脈寬采樣單元3、PWM脈寬采樣單元4、PWM脈寬采樣單元5和PWM脈寬采樣單元6,用于采樣遙控接收機輸出經(jīng)總線驅(qū)動I的六路PWM信號脈寬,每個單元輸出粗精度和細精度的兩種脈寬值;PWM脈寬采樣單元5,采樣第5通道PWM信號的脈寬,通過遙控/自駕切換使能單元,輸出切換使能,經(jīng)遙控/自駕信號切換單元選擇遙控接收機輸出經(jīng)總線驅(qū)動的遙控PWM信號或經(jīng)PWM信號產(chǎn)生單元X產(chǎn)生的自駕PWM信號作為舵機控制信號,其中,X = 1,2,3,4,6,經(jīng)總線驅(qū)動2控制副翼舵機、升降舵機、油門舵機、方向舵機和任務(wù)舵機;
      [0010]所述PWM信號產(chǎn)生單元1、PWM信號產(chǎn)生單元2、PWM信號產(chǎn)生單元3、PWM信號產(chǎn)生單元4和PWM信號產(chǎn)生單元6,用于產(chǎn)生控制舵機的自駕PWM信號,輸出到遙控/自駕信號切換單元;
      [0011]所述DPRAM PWM端邏輯控制單元,連接DPRAM的PWM端,將采集到的遙控PWM周期值和脈寬值存儲到DPRAM中,以及將DPRAM中存有的PWM信號產(chǎn)生單元所需的自駕PWM周期值和脈寬值輸出到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ;
      [0012]所述DPRAM,分為三個邏輯區(qū)域,邏輯區(qū)域I用于存儲郵箱通信內(nèi)容,邏輯區(qū)域II用于存儲采樣到的遙控PWM周期值和脈寬值;邏輯區(qū)域III用于存儲產(chǎn)生自駕P麗所需的周期值和脈寬值;DPRAM郵箱邏輯單元,用于產(chǎn)生郵箱中斷信號經(jīng)單穩(wěn)態(tài)觸發(fā)器1、單穩(wěn)態(tài)觸發(fā)器2、單穩(wěn)態(tài)觸發(fā)器3和單穩(wěn)態(tài)觸發(fā)器4,輸出給DPRAM PWM端邏輯控制單元和微處理器;
      [0013]所述DPRAM飛控端邏輯控制單元,控制讀取DPRAM中存有的遙控PWM周期值和脈寬值到微處理器的飛控單元,以及控制將飛控單元經(jīng)算法運算后得到的PWM信號產(chǎn)生單元所用的自駕PWM周期值和脈寬值存儲到DPRAM中;
      [0014]所述SPI接口邏輯單元,用作SPI總線信號處理,將SPI串行數(shù)據(jù)和DPRAM飛控邏輯控制單元的并行數(shù)據(jù)進行相互轉(zhuǎn)換。
      [0015]一種使用所述的機載PWM信號轉(zhuǎn)換裝置的方法,所述的微處理器從DPRAM中讀取采樣到的遙控PWM周期和脈寬,以及向DPRAM中更新產(chǎn)生自駕PWM所用的周期和脈寬,包括上電自檢和主中斷兩部分,具體步驟為:
      [0016]上電自檢查部分:
      [0017]步驟201:開始;
      [0018]步驟202:判斷采樣到的遙控PWM周期是否更新,即INT_F1中斷是否產(chǎn)生,如果產(chǎn)生,即INT_F1 == 1,則跳到步驟203,否則繼續(xù)回到步驟202 ;
      [0019]步驟203:從DPRAM邏輯區(qū)域II讀取采樣到的遙控PWM周期;
      [0020]步驟204:判斷周期是否在18?23ms之間,如果是,進入步驟205,否則回到步驟202 ;
      [0021]步驟205:該周期作為產(chǎn)生自駕PWM所用的周期,寫到DPRAM邏輯區(qū)域III ;
      [0022]步驟206:寫郵箱地址1,產(chǎn)生中斷INT_P1,通知DPRAM PWM端讀取產(chǎn)生自駕PWM所用的周期;
      [0023]步驟207:讀郵箱地址1,清中斷INT_F1,完成周期更新,進入主中斷部分;
      [0024]主中斷部分:
      [0025]步驟208:判斷采樣到的遙控PWM脈寬是否更新,即INT_F2中斷是否產(chǎn)生,如果產(chǎn)生,即INT_F2 == 1,則跳到步驟209,否則繼續(xù)回到步驟208 ;
      [0026]步驟209:從DPRAM邏輯區(qū)域II讀取采樣到的遙控PWM脈寬;
      [0027]步驟210:向DPRAM邏輯區(qū)域III更新產(chǎn)生自駕PWM所用的脈寬;
      [0028]步驟211:寫郵箱地址2,產(chǎn)生中斷INT_P2,通知DPRAM PWM端讀取產(chǎn)生自駕PWM所用的脈寬;
      [0029]步驟212:讀郵箱地址2,清中斷INT_F2完成脈寬更新,跳到步驟208,進入下一中斷周期。
      [0030]一種使用所述的機載PWM信號轉(zhuǎn)換裝置的方法,所述的DPRAM PWM端邏輯控制單元向DPRAM中更新采樣到的遙控PWM周期和脈寬,以及讀取DPRAM中產(chǎn)生自駕PWM所用的周期和脈寬;具體狀態(tài)躍遷關(guān)系為:
      [0031]狀態(tài)301:空閑狀態(tài),在PWMl上升沿,躍遷到狀態(tài)302 ;
      [0032]狀態(tài)302:寫遙控PWM周期狀態(tài),向DPRAM邏輯區(qū)域II更新采樣到的遙控P麗周期;自然躍遷到狀態(tài)303;
      [0033]狀態(tài)303:產(chǎn)生中斷INT_F1,通知微處理器,已經(jīng)更新遙控PWM周期,可以讀?。蛔匀卉S遷到狀態(tài)304 ;
      [0034]狀態(tài)304:等待讀取產(chǎn)生自駕PWM所用數(shù)據(jù)狀態(tài);如果PWMl上升沿到來且周期更新成功標志為0,躍遷到狀態(tài)302 ;如果INT_P1高電平,躍遷到狀態(tài)305 ;如果INT_P2高電平,躍遷到狀態(tài)308;
      [0035]狀態(tài)305:讀取產(chǎn)生自駕PWM所用的周期狀態(tài),從DPRAM邏輯區(qū)域III讀取產(chǎn)生自駕PWM所用的周期到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ;自然躍遷到狀態(tài)306 ;
      [0036]狀態(tài)306:周期更新成功標志置I狀態(tài),表明周期已成功更新;自然躍遷到狀態(tài)307 ;
      [0037]狀態(tài)307:清中斷INT_P1狀態(tài),準備接收下次中斷;自然躍遷到狀態(tài)304 ;
      [0038]狀態(tài)308:讀取產(chǎn)生自駕PWM所用的脈寬狀態(tài),從DPRAM邏輯區(qū)域III讀取產(chǎn)生自駕PWM所用的周期到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ;自然躍遷到狀態(tài)309 ;
      [0039]狀態(tài)309:寫遙控PWM脈寬狀態(tài),將采樣到的遙控PWM脈寬數(shù)據(jù)寫入到DPRAM邏輯區(qū)域II;自然躍遷到狀態(tài)310;
      [0040]狀態(tài)310:產(chǎn)生中斷INT_F2狀態(tài),通知微處理器,已經(jīng)更新遙控PWM脈寬,可以讀取;自然躍遷到狀態(tài)311;
      [0041]狀態(tài)311:清中斷INT_P2狀態(tài),準備接收下次中斷;自然躍遷到狀態(tài)304 ;
      [0042]一種使用所述的機載PWM信號轉(zhuǎn)換裝置的方法,其特征在于,所述的微處理器通過SPI接口邏輯單元向DPRAM飛控端邏輯控制單元發(fā)送的16位數(shù)據(jù)種類,包含命令和有效數(shù)據(jù)其中,有效數(shù)據(jù)是產(chǎn)生自駕PWM所用的周期和脈寬,命令包括命令標識域、片選域、讀寫使能域、基地址域和數(shù)據(jù)長度域;
      [0043]所述命令標識域,bitl5和bitl4,若是11,表明是命令;
      [0044]所述片選域,bitl3,若是1,則DPRAM飛控端片選有效;
      [0045]所述讀寫使能域,bitl2,若是1,代表微處理器向DPRAM寫數(shù)據(jù),若是0,代表微處理器讀取DPRAM數(shù)據(jù);
      [0046]所述基地址域,bitll?bit6,代表讀數(shù)據(jù)或?qū)憯?shù)據(jù)的起始地址;
      [0047]所述數(shù)據(jù)長度域,bit5?bitO,代表讀數(shù)據(jù)或?qū)憯?shù)據(jù)的數(shù)據(jù)長度。
      [0048]本發(fā)明的有益技術(shù)效果在于:
      [0049](I)將周期采樣和脈寬采樣分模塊實現(xiàn),易于在上電自檢時,獲得不同型號遙控器PWM的周期,并以此作為自駕PWM的周期,從而提高機載PWM信號轉(zhuǎn)換裝置的通用性。
      [0050](2) PWM周期采樣單元和PWM脈寬采樣單元,均對PWM信號進行粗計數(shù)和精計數(shù),提高遙控PWM信號采樣精度,通過PLL倍頻單元將精計數(shù)的計數(shù)時鐘提高到10MHz,從而使得測量精度達到10ns。同樣,PWM信號產(chǎn)生單元也使用粗計數(shù)和精計數(shù)結(jié)合的方法,使產(chǎn)生的自駕PWM精度也達到10ns。
      [0051](3)利用DPRAM作為數(shù)據(jù)傳輸接口,不需要像FIFO頻繁的判斷標志位,從而提高數(shù)據(jù)傳輸速率;將DPRAM進行邏輯分區(qū),不同分區(qū)讀寫數(shù)據(jù)方向不同,避免DPRAM兩端產(chǎn)生讀寫沖突,從而提高數(shù)據(jù)傳輸?shù)姆€(wěn)定性和可靠性;雙郵箱的通信機制,使得DPRAM兩端可以在硬件中斷情況下完成數(shù)據(jù)交換,而不需再判斷郵箱內(nèi)容,從而提高了數(shù)據(jù)傳輸?shù)乃俣取?br> [0052](4)遙控/自駕切換在FPGA中完成,不需要向飛控單元發(fā)送切換命令,從而使得在無人機飛行過程中,遇到緊急情況,可迅速切回遙控狀態(tài),提高飛行安全性。
      [0053](5)機載PWM信號轉(zhuǎn)換裝置使用SPI總線與飛控單元通信,可將數(shù)據(jù)通信速率提高到40MHz,也節(jié)省CPU的1引腳。
      [0054](6)利用FPGA,分模塊實現(xiàn)各功能,可根據(jù)不同的系統(tǒng)需求,靈活的擴展和裁剪功能模塊,以此適應(yīng)固定翼、多旋翼和自旋翼等無人機需求,以及拍照、傘降、投放等任務(wù)需求。

      【專利附圖】

      【附圖說明】
      [0055]圖1是本發(fā)明的機載PWM信號轉(zhuǎn)換裝置功能結(jié)構(gòu)圖;
      [0056]圖2是本發(fā)明的微處理器控制流程圖;
      [0057]圖3是本發(fā)明的DPRAM PWM端邏輯控制單元狀態(tài)躍遷圖;
      [0058]圖4是本發(fā)明的微處理器命令格式;

      【具體實施方式】
      [0059]下面結(jié)合附圖對本發(fā)明的具體實施作進一步的說明。
      [0060]如圖1所示,一種機載PWM信號轉(zhuǎn)換裝置,包括晶振1、總線驅(qū)動I (3)、FPGA芯片4、總線驅(qū)動2(5)和微處理器6,F(xiàn)PGA芯片4作為信號轉(zhuǎn)換裝置核心元件,分別與晶振1、總線驅(qū)動I (3)、總線驅(qū)動2 (5)、微處理器6連接,所述FPGA芯片4上包括PLL倍頻單元401、時鐘分頻單元402、PWM脈寬采樣單元5(403)、遙控/自駕信號切換使能單元404、遙控/自駕信號切換單元405、PWM周期采樣單元406、PWM脈寬采樣單元1(407)、PWM脈寬采樣單元2(408)、PWM脈寬采樣單元3 (409)、PWM脈寬采樣單元4 (410)、PWM脈寬采樣單元6 (411)、PWM信號產(chǎn)生單元I (412)、PWM信號產(chǎn)生單元2 (413)、PWM信號產(chǎn)生單元3 (414)、PWM信號產(chǎn)生單元4 (415)、?麗信號產(chǎn)生單元6(416) ,DPRAM PWM端邏輯控制單元417、DPRAM418、DPRAM郵箱邏輯單元419、單穩(wěn)態(tài)觸發(fā)器I (420)、單穩(wěn)態(tài)觸發(fā)器2(421)、單穩(wěn)態(tài)觸發(fā)器3 (422)、單穩(wěn)態(tài)觸發(fā)器4 (423)、DPRAM飛控端邏輯控制單元424、SPI接口邏輯單元425 ;
      [0061]所述PLL倍頻單元401,將晶振I輸出時鐘,進行倍頻,用作全局時鐘,為整個FPGA提供時鐘源;所述時鐘分頻單元402,輸出分頻時鐘,為用到計數(shù)器的邏輯單元提供計數(shù)時鐘;
      [0062]所述PWM周期采樣單元406,用于采樣遙控接收機2輸出經(jīng)總線驅(qū)動1(3)的遙控PWM信號周期,輸出粗精度和細精度的兩種周期值;所述PWM脈寬采樣單元I (407)、PWM脈寬采樣單元2 (408)、PWM脈寬采樣單元3 (409)、PWM脈寬采樣單元4 (410)、PWM脈寬采樣單元5(403)和PWM脈寬采樣單元6(411),用于采樣遙控接收機2輸出經(jīng)總線驅(qū)動1(3)的六路PWM信號脈寬,每個單元輸出粗精度和細精度的兩種脈寬值;PWM脈寬采樣單元5 (403),采樣第5通道PWM信號的脈寬,通過遙控/自駕切換使能單元404,輸出切換使能,經(jīng)遙控/自駕信號切換單元405選擇遙控接收機2輸出經(jīng)總線驅(qū)動的遙控PWM信號或經(jīng)PWM信號產(chǎn)生單元X產(chǎn)生的自駕PWM信號作為舵機控制信號,其中,X = 1,2,3,4,6,經(jīng)總線驅(qū)動2(5)控制副翼舵機、升降舵機、油門舵機、方向舵機和任務(wù)舵機;
      [0063]所述PWM信號產(chǎn)生單元1(412)、PWM信號產(chǎn)生單元2(413)、PWM信號產(chǎn)生單元3 (414)、PWM信號產(chǎn)生單元4 (415)和PWM信號產(chǎn)生單元6 (416),用于產(chǎn)生控制舵機的自駕PWM信號,輸出到遙控/自駕信號切換單元405 ;
      [0064]所述DPRAM PWM端邏輯控制單元417,連接DPRAM418的PWM端,將采集到的遙控PWM周期值和脈寬值存儲到DPRAM418中,以及將DPRAM418中存有的PWM信號產(chǎn)生單元所需的自駕PWM周期值和脈寬值輸出到PWM信號產(chǎn)生單元x,其中,x = 1,2,3,4,6 ;
      [0065]所述DPRAM418,分為三個邏輯區(qū)域,邏輯區(qū)域I用于存儲郵箱通信內(nèi)容,邏輯區(qū)域II用于存儲采樣到的遙控PWM周期值和脈寬值;邏輯區(qū)域III用于存儲產(chǎn)生自駕PWM所需的周期值和脈寬值;DPRAM郵箱邏輯單元419,用于產(chǎn)生郵箱中斷信號經(jīng)單穩(wěn)態(tài)觸發(fā)器I (420)、單穩(wěn)態(tài)觸發(fā)器2 (421)、單穩(wěn)態(tài)觸發(fā)器3 (422)和單穩(wěn)態(tài)觸發(fā)器4 (423),輸出給DPRAMPWM端邏輯控制單元和微處理器6 ;
      [0066]所述DPRAM飛控端邏輯控制單元424,控制讀取DPRAM418中存有的遙控PWM周期值和脈寬值到微處理器6的飛控單元,以及控制將飛控單元經(jīng)算法運算后得到的PWM信號產(chǎn)生單元所用的自駕PWM周期值和脈寬值存儲到DPRAM418中;
      [0067]所述SPI接口邏輯單元425,用作SPI總線信號處理,將SPI串行數(shù)據(jù)和DPRAM飛控邏輯控制單元的并行數(shù)據(jù)進行相互轉(zhuǎn)換。
      [0068]如圖2所示,一種使用所述的機載PWM信號轉(zhuǎn)換裝置的方法,所述的微處理器6從DPRAM418中讀取采樣到的遙控PWM周期和脈寬,以及向DPRAM418中更新產(chǎn)生自駕PWM所用的周期和脈寬,包括上電自檢和主中斷兩部分,具體步驟為:
      [0069]上電自檢部分:
      [0070]步驟201:開始;
      [0071]步驟202:判斷采樣到的遙控PWM周期是否更新,即INT_F1中斷是否產(chǎn)生,如果產(chǎn)生,即INT_F1 == 1,則跳到步驟203,否則繼續(xù)回到步驟202 ;
      [0072]步驟203:從DPRAM邏輯區(qū)域II讀取采樣到的遙控PWM周期;
      [0073]步驟204:判斷周期是否在18?23ms之間,如果是,進入步驟205,否則回到步驟202 ;
      [0074]步驟205:該周期作為產(chǎn)生自駕PWM所用的周期,寫到DPRAM邏輯區(qū)域III ;
      [0075]步驟206:寫郵箱地址1,產(chǎn)生中斷INT_P1,通知DPRAM PWM端讀取產(chǎn)生自駕PWM所用的周期;
      [0076]步驟207:讀郵箱地址1,清中斷INT_F1,完成周期更新,進入主中斷部分;
      [0077]主中斷部分:
      [0078]步驟208:判斷采樣到的遙控PWM脈寬是否更新,即INT_F2中斷是否產(chǎn)生,如果產(chǎn)生,即INT_F2 == 1,則跳到步驟209,否則繼續(xù)回到步驟208 ;
      [0079]步驟209:從DPRAM邏輯區(qū)域II讀取采樣到的遙控PWM脈寬;
      [0080]步驟210:向DPRAM邏輯區(qū)域III更新產(chǎn)生自駕PWM所用的脈寬;
      [0081]步驟211:寫郵箱地址2,產(chǎn)生中斷INT_P2,通知DPRAM PWM端讀取產(chǎn)生自駕PWM所用的脈寬;
      [0082]步驟212:讀郵箱地址2,清中斷INT_F2完成脈寬更新,跳到步驟208,進入下一中斷周期。
      [0083]如圖3所示,一種使用所述的機載PWM信號轉(zhuǎn)換裝置的方法,所述的DPRAM PWM端邏輯控制單元417向DPRAM418中更新采樣到的遙控PWM周期和脈寬,以及讀取DPRAM418中產(chǎn)生自駕PWM所用的周期和脈寬;具體狀態(tài)躍遷關(guān)系為:
      [0084]狀態(tài)301:空閑狀態(tài),在PWMl上升沿,躍遷到狀態(tài)302 ;
      [0085]狀態(tài)302:寫遙控PWM周期狀態(tài),向DPRAM邏輯區(qū)域II更新采樣到的遙控PWM周期;自然躍遷到狀態(tài)303;
      [0086]狀態(tài)303:產(chǎn)生中斷INT_F1,通知微處理器6,已經(jīng)更新遙控PWM周期,可以讀??;自然躍遷到狀態(tài)304;
      [0087]狀態(tài)304:等待讀取產(chǎn)生自駕PWM所用數(shù)據(jù)狀態(tài);如果PWMl上升沿到來且周期更新成功標志為0,躍遷到狀態(tài)302 ;如果INT_P1高電平,躍遷到狀態(tài)305 ;如果INT_P2高電平,躍遷到狀態(tài)308;
      [0088]狀態(tài)305:讀取產(chǎn)生自駕PWM所用的周期狀態(tài),從DPRAM418邏輯區(qū)域III讀取產(chǎn)生自駕PWM所用的周期到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ;自然躍遷到狀態(tài)306 ;
      [0089]狀態(tài)306:周期更新成功標志置I狀態(tài),表明周期已成功更新;自然躍遷到狀態(tài)307 ;
      [0090]狀態(tài)307:清中斷INT_P1狀態(tài),準備接收下次中斷;自然躍遷到狀態(tài)304 ;
      [0091]狀態(tài)308:讀取產(chǎn)生自駕PWM所用的脈寬狀態(tài),從DPRAM418邏輯區(qū)域III讀取產(chǎn)生自駕PWM所用的周期到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ;自然躍遷到狀態(tài)309 ;
      [0092]狀態(tài)309:寫遙控PWM脈寬狀態(tài),將采樣到的遙控PWM脈寬數(shù)據(jù)寫入到DPRAM邏輯區(qū)域II;自然躍遷到狀態(tài)310;
      [0093]狀態(tài)310:產(chǎn)生中斷INT_F2狀態(tài),通知微處理器6,已經(jīng)更新遙控PWM脈寬,可以讀??;自然躍遷到狀態(tài)311;
      [0094]狀態(tài)311:清中斷INT_P2狀態(tài),準備接收下次中斷;自然躍遷到狀態(tài)304 ;
      [0095]如圖4所示,一種使用所述的機載PWM信號轉(zhuǎn)換裝置的方法,其特征在于,所述的微處理器6通過SPI接口邏輯單元425向DPRAM飛控端邏輯控制單元424發(fā)送的16位數(shù)據(jù)種類,包含命令和有效數(shù)據(jù),其中,有效數(shù)據(jù)是產(chǎn)生自駕PWM所用的周期和脈寬,命令包括命令標識域、片選域、讀寫使能域、基地址域和數(shù)據(jù)長度域;
      [0096]所述命令標識域,bitl5和bitl4,若是11,表明是命令;
      [0097]所述片選域,bitl3,若是1,則DPRAM418飛控端片選有效;
      [0098]所述讀寫使能域,bitl2,若是1,代表微處理器6向DPRAM418寫數(shù)據(jù),若是0,代表微處理器6讀取DPRAM418數(shù)據(jù);
      [0099]所述基地址域,bitll?bit6,代表讀數(shù)據(jù)或?qū)憯?shù)據(jù)的起始地址;
      [0100]所述數(shù)據(jù)長度域,bit5?bitO,代表讀數(shù)據(jù)或?qū)憯?shù)據(jù)的數(shù)據(jù)長度。
      [0101]最后說明的是本發(fā)明的一種機載PWM信號轉(zhuǎn)換裝置與方法不局限于上述實施例,還可以做出各種修改、變換和變形。因此,說明書和附圖應(yīng)被認為是說明性的而非限制性的。凡是依據(jù)本發(fā)明的技術(shù)方案進行修改、修飾或等同變化,而不脫離本發(fā)明技術(shù)方案的思想和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當中。
      【權(quán)利要求】
      1.一種機載PWM信號轉(zhuǎn)換裝置,包括晶振(I)、總線驅(qū)動I (3)、FPGA芯片(4)、總線驅(qū)動2(5)和微處理器(6),F(xiàn)PGA芯片(4)作為信號轉(zhuǎn)換裝置核心元件,分別與晶振(I)、總線驅(qū)動I (3)、總線驅(qū)動2 (5)、微處理器(6)連接,其特征在于,所述FPGA芯片(4)內(nèi)包括PLL倍頻單元(401)、時鐘分頻單元(402)、PWM脈寬采樣單元5 (403)、遙控/自駕信號切換使能單元(404)、遙控/自駕信號切換單元(405)、PWM周期采樣單元(406)、PWM脈寬采樣單元I (407)、PWM脈寬采樣單元2 (408)、PWM脈寬采樣單元3 (409)、PWM脈寬采樣單元4 (410)、PWM脈寬采樣單元6 (411)、PWM信號產(chǎn)生單元I (412)、PWM信號產(chǎn)生單元2 (413)、PWM信號產(chǎn)生單元3 (414)、PWM信號產(chǎn)生單元4 (415)、PWM信號產(chǎn)生單元6 (416)、DPRAM PWM端邏輯控制單元(417)、DPRAM (418)、DPRAM郵箱邏輯單元(419)、單穩(wěn)態(tài)觸發(fā)器I (420)、單穩(wěn)態(tài)觸發(fā)器2(421)、單穩(wěn)態(tài)觸發(fā)器3(422)、單穩(wěn)態(tài)觸發(fā)器4(423)、DPRAM飛控端邏輯控制單元(424)、SPI接口邏輯單元(425); 所述PLL倍頻單元(401),將晶振(I)輸出時鐘,進行倍頻,用作全局時鐘,為整個FPGA提供時鐘源;所述時鐘分頻單元(402),輸出分頻時鐘,為用到計數(shù)器的邏輯單元提供計數(shù)時鐘; 所述PWM周期采樣單元(406),用于采樣遙控接收機(2)輸出經(jīng)總線驅(qū)動1(3)的遙控PWM信號周期,輸出粗精度和細精度的兩種周期值;所述PWM脈寬采樣單元1(407)、PWM脈寬采樣單元2 (408)、PWM脈寬采樣單元3 (409)、PWM脈寬采樣單元4 (410)、PWM脈寬采樣單元5 (403)和PWM脈寬采樣單元6(411),用于采樣遙控接收機(2)輸出經(jīng)總線驅(qū)動I (3)的六路PWM信號脈寬,每個單元輸出粗精度和細精度的兩種脈寬值;PWM脈寬采樣單元5 (403),采樣第5通道PWM信號的脈寬,通過遙控/自駕切換使能單元(404),輸出切換使能,經(jīng)遙控/自駕信號切換單元(405)選擇遙控接收機(2)輸出經(jīng)總線驅(qū)動的遙控PWM信號或經(jīng)PWM信號產(chǎn)生單元X產(chǎn)生的自駕PWM信號作為舵機控制信號,其中,X = 1,2,3,4,6,經(jīng)總線驅(qū)動2(5)控制副翼舵機、升降舵機、油門舵機、方向舵機和任務(wù)舵機; 所述PWM信號產(chǎn)生單元I (412) ,PWM信號產(chǎn)生單元2 (413) ,PWM信號產(chǎn)生單元3 (414)、PWM信號產(chǎn)生單元4(415)和PWM信號產(chǎn)生單元6(416),用于產(chǎn)生控制舵機的自駕PWM信號,輸出到遙控/自駕信號切換單元(405); 所述DPRAM PWM端邏輯控制單元(417),連接DPRAM (418)的PWM端,將采集到的遙控PWM周期值和脈寬值存儲到DPRAM(418)中,以及將DPRAM(418)中存有的PWM信號產(chǎn)生單元所需的自駕PWM周期值和脈寬值輸出到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ; 所述DPRAM(418),分為三個邏輯區(qū)域,邏輯區(qū)域I用于存儲郵箱通信內(nèi)容,邏輯區(qū)域II用于存儲采樣到的遙控PWM周期值和脈寬值;邏輯區(qū)域III用于存儲產(chǎn)生自駕PWM所需的周期值和脈寬值;DPRAM郵箱邏輯單元(419),用于產(chǎn)生郵箱中斷信號,經(jīng)單穩(wěn)態(tài)觸發(fā)器I(420)、單穩(wěn)態(tài)觸發(fā)器2 (421)、單穩(wěn)態(tài)觸發(fā)器3 (422)和單穩(wěn)態(tài)觸發(fā)器4 (423),輸出給DPRAMPWM端邏輯控制單元和微處理器(6); 所述DPRAM飛控端邏輯控制單元(424),控制讀取DPRAM (418)中存有的遙控PWM周期值和脈寬值到微處理器出)的飛控單元,以及控制將飛控單元經(jīng)算法運算后得到的PWM信號產(chǎn)生單元所用的自駕PWM周期值和脈寬值存儲到DPRAM(418)中; 所述SPI接口邏輯單元(425),用作SPI總線信號處理,將SPI串行數(shù)據(jù)和DPRAM飛控邏輯控制單元的并行數(shù)據(jù)進行相互轉(zhuǎn)換。
      2.一種使用權(quán)利要求1所述的機載PWM信號轉(zhuǎn)換裝置的方法,其特征在于,所述的微處理器(6)從DPRAM(418)中讀取采樣到的遙控PWM周期和脈寬,以及向DPRAM(418)中更新產(chǎn)生自駕PWM所用的周期和脈寬,包括上電自檢和主中斷兩部分,具體步驟為: 上電自檢部分: 步驟201:開始; 步驟202:判斷采樣到的遙控PWM周期是否更新,即INT_F1中斷是否產(chǎn)生,如果產(chǎn)生,即INT_F1 == 1,則跳到步驟203,否則繼續(xù)回到步驟202 ; 步驟203:從DPRAM邏輯區(qū)域II讀取采樣到的遙控PWM周期; 步驟204:判斷周期是否在18?23ms之間,如果是,進入步驟205,否則回到步驟202 ; 步驟205:該周期作為產(chǎn)生自駕PWM所用的周期,寫到DPRAM邏輯區(qū)域III ; 步驟206:寫郵箱地址1,產(chǎn)生中斷INT_P1,通知DPRAM PWM端讀取產(chǎn)生自駕PWM所用的周期; 步驟207:讀郵箱地址1,清中斷INT_F1,完成周期更新,進入主中斷部分; 主中斷部分: 步驟208:判斷采樣到的遙控PWM脈寬是否更新,即INT_F2中斷是否產(chǎn)生,如果產(chǎn)生,即INT_F2 == 1,則跳到步驟209,否則繼續(xù)回到步驟208 ; 步驟209:從DPRAM邏輯區(qū)域II讀取采樣到的遙控PWM脈寬; 步驟210:向DPRAM邏輯區(qū)域III更新產(chǎn)生自駕PWM所用的脈寬; 步驟211:寫郵箱地址2,產(chǎn)生中斷INT_P2,通知DPRAM PWM端讀取產(chǎn)生自駕PWM所用的脈寬; 步驟212:讀郵箱地址2,清中斷INT_F2完成脈寬更新,跳到步驟208,進入下一中斷周期。
      3.一種使用權(quán)利要求1所述的機載PWM信號轉(zhuǎn)換裝置的方法,其特征在于,所述的DPRAM PWM端邏輯控制單元(417)向DPRAM(418)中更新采樣到的遙控PWM周期和脈寬,以及讀取DPRAM (418)中產(chǎn)生自駕PWM所用的周期和脈寬;具體狀態(tài)躍遷關(guān)系為: 狀態(tài)301:空閑狀態(tài),在PWMl上升沿,躍遷到狀態(tài)302 ; 狀態(tài)302:寫遙控PWM周期狀態(tài),向DPRAM邏輯區(qū)域II更新采樣到的遙控PWM周期;自然躍遷到狀態(tài)303 ; 狀態(tài)303:產(chǎn)生中斷INT_F1,通知微處理器(6),已經(jīng)更新遙控PWM周期,可以讀??;自然躍遷到狀態(tài)304 ; 狀態(tài)304:等待讀取產(chǎn)生自駕PWM所用數(shù)據(jù)狀態(tài);如果PWMl上升沿到來且周期更新成功標志為0,躍遷到狀態(tài)302 ;如果INT_P1高電平,躍遷到狀態(tài)305 ;如果INT_P2高電平,躍遷到狀態(tài)308 ; 狀態(tài)305:讀取產(chǎn)生自駕PWM所用的周期狀態(tài),從DPRAM(418)邏輯區(qū)域III讀取產(chǎn)生自駕PWM所用的周期到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ;自然躍遷到狀態(tài)306 ;狀態(tài)306:周期更新成功標志置I狀態(tài),表明周期已成功更新;自然躍遷到狀態(tài)307 ;狀態(tài)307:清中斷INT_P1狀態(tài),準備接收下次中斷;自然躍遷到狀態(tài)304 ; 狀態(tài)308:讀取產(chǎn)生自駕PWM所用的脈寬狀態(tài),從DPRAM(418)邏輯區(qū)域III讀取產(chǎn)生自駕PWM所用的周期到PWM信號產(chǎn)生單元X,其中,X = 1,2,3,4,6 ;自然躍遷到狀態(tài)309 ; 狀態(tài)309:寫遙控PWM脈寬狀態(tài),將采樣到的遙控PWM脈寬數(shù)據(jù)寫入到DPRAM邏輯區(qū)域II;自然躍遷到狀態(tài)310 ; 狀態(tài)310:產(chǎn)生中斷INT_F2狀態(tài),通知微處理器¢),已經(jīng)更新遙控PWM脈寬,可以讀取;自然躍遷到狀態(tài)311; 狀態(tài)311:清中斷INT_P2狀態(tài),準備接收下次中斷;自然躍遷到狀態(tài)304。
      4.一種使用權(quán)利要求1所述的機載PWM信號轉(zhuǎn)換裝置的方法,其特征在于,所述的微處理器(6)通過SPI接口邏輯單元(425)向DPRAM飛控端邏輯控制單元(424)發(fā)送的16位數(shù)據(jù)種類,包含命令和有效數(shù)據(jù),其中,有效數(shù)據(jù)是產(chǎn)生自駕PWM所用的周期和脈寬,命令包括命令標識域、片選域、讀寫使能域、基地址域和數(shù)據(jù)長度域; 所述命令標識域,bitl5和bitl4,若是11,表明是命令; 所述片選域,bitl3,若是1,則DPRAM (418)飛控端片選有效; 所述讀寫使能域,bitl2,若是1,代表微處理器(6)向DPRAM(418)寫數(shù)據(jù),若是0,代表微處理器(6)讀取DPRAM (418)數(shù)據(jù); 所述基地址域,bitll?bit6,代表讀數(shù)據(jù)或?qū)憯?shù)據(jù)的起始地址; 所述數(shù)據(jù)長度域,bit5?bitO,代表讀數(shù)據(jù)或?qū)憯?shù)據(jù)的數(shù)據(jù)長度。
      【文檔編號】H03K7/08GK104300943SQ201410413652
      【公開日】2015年1月21日 申請日期:2014年8月21日 優(yōu)先權(quán)日:2014年8月21日
      【發(fā)明者】丑武勝, 黃海明 申請人:丑武勝, 黃海明
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1