<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í)現

多功能旋轉式操作面板的設計與實(shí)現

作者: 時(shí)間:2016-12-20 來(lái)源:網(wǎng)絡(luò ) 收藏
0引言

隨著(zhù)模擬技術(shù)的不斷發(fā)展,各類(lèi)模擬器應用于軍用和民用許多領(lǐng)域,在人才培養、樣機研制等方面起到了重要作用,發(fā)揮出了重大的經(jīng)濟效益和社會(huì )效益。在實(shí)踐中,由于經(jīng)常會(huì )為同一系列的不同型號裝備、設備研制多套模擬器,從而導致造價(jià)高、存放空間利用率低等問(wèn)題。研制適用于特定領(lǐng)域的通用模擬器是解決這些問(wèn)題的很好思路。從裝備發(fā)展、模擬訓練、人才培養等方面分析了通用模擬器研制的必要性,并進(jìn)行了可行性分析。設計了通用搜索雷達模擬器和衛星測控通用模擬器。

本文作者在進(jìn)行某型艦艇電子裝備通用模擬器設計研制過(guò)程中發(fā)現,同一系列不同型號裝備的整體結構和外觀(guān)布局大體相同,主要區別在于局部操作元器件不同。為了實(shí)現模擬器的通用化,本文設計并實(shí)現了一種基于步進(jìn)電機自動(dòng)控制的多功能旋轉式操作面板。

1旋轉式操作面板硬件設計

1.1組成結構

旋轉式操作面板由元器件三面體、控制板、步進(jìn)電機組件、旋轉體主軸、上位機組成。由控制板向步進(jìn)電機組件發(fā)送控制指令,步進(jìn)電機組件通過(guò)旋轉體主軸帶動(dòng)元器件三面體實(shí)現操作面板的旋轉。工作流程如下:

(1)上位機軟件下發(fā)旋轉切換指令給控制板,使其發(fā)送步進(jìn)脈沖信號和方向電平信號給步進(jìn)電機組件。

(2)步進(jìn)電機組件收到信號后,旋轉元器件三面體至合適位置,結束旋轉操作。

(3)用戶(hù)操作元器件三面體上的元件,操作結果上傳至上位機軟件,上位機軟件進(jìn)行相應處理。

1.2元器件三面體設計

在某型艦艇電子裝備通用模擬器中,元器件三面體能夠實(shí)現三種不同類(lèi)型的界面布局結構(見(jiàn)圖1)。元器件三面體的三個(gè)面分別記為A面、B面、C面。A面元件為五個(gè)按鍵;B面元件分別為兩個(gè)指示燈、一個(gè)蜂鳴器、一個(gè)按鍵和三個(gè)旋鈕;C面元件為四個(gè)旋鈕。



將元器件三面體上的元件信號通過(guò)數據線(xiàn)引至控制板,并實(shí)現與上位機的通信。為避免旋轉過(guò)程中數據線(xiàn)出現纏繞,選取某個(gè)操作面為基準操作面,其他兩個(gè)面采用往復雙向旋轉復位方式運行工作。

1.3控制板設計

旋轉式面板控制板由主控制器、電源電路、CAN通信電路、驅動(dòng)電機轉動(dòng)電路、元器件通信電路組成(見(jiàn)圖2)。主控制器接收上位機指令,轉動(dòng)元器件三面體至合適的平面位置。電源電路實(shí)現將12V轉換為5V,再將5V電壓轉換為3.3V供給給主控制器。CAN通信電路主要由CAN總線(xiàn)接口及CAN收發(fā)器組成,連接上位機并接收CAN通信指令。驅動(dòng)電機轉動(dòng)電路主要完成發(fā)送步進(jìn)脈沖信號和方向電平信號至電機,驅動(dòng)電機轉動(dòng),使其帶動(dòng)元器件三面體轉動(dòng)。元器件通信電路實(shí)現元器件與上位機通信。



2通信協(xié)議設計

為實(shí)現上位機軟件與控制板軟件的通信,需要設計通信協(xié)議格式。通信指令分為兩類(lèi):

(1)上位機向控制板發(fā)送元器件三面體切換指令。

(2)控制板向上位機發(fā)送操作面板的元器件狀態(tài)指令。

通信協(xié)議格式見(jiàn)表1.



3軟件設計

3.1下位機軟件設計

下位機軟件主要實(shí)現接收上位機指令驅動(dòng)電機轉動(dòng)元器件三面體、掃描元器件操作狀態(tài)等功能。

3.1.1接收指令切換旋轉面板

判斷是否接收到指令,當接收到指令時(shí)轉Step2,否則繼續等待;設置步進(jìn)脈沖信號和方向電平信號;將面板切換至合適的位置。


3.1.2掃描元器件狀態(tài)

啟動(dòng)定時(shí)器,定時(shí)掃描元器件狀態(tài);掃描元器件狀態(tài)是否發(fā)生變化,當發(fā)生變化時(shí)發(fā)送給上位機程序,否則繼續定時(shí)掃描元器件狀態(tài)。

3.2上位機軟件設計

上位機軟件采用面向對象技術(shù),設計的重點(diǎn)是上位機通信類(lèi)。CAN通信接口采用千目電子的USB-CAN轉換器,該產(chǎn)品附帶支持二次開(kāi)發(fā)的動(dòng)態(tài)庫。

利用VC++實(shí)現上位機通信類(lèi)的編程,該類(lèi)的功能主要是下發(fā)旋轉式操作面板切換方案、接收元器件狀態(tài)。該類(lèi)主要包括設備初始化方法(InitCan)、數據發(fā)送方法(SendData)、數據接收方法(RecvData)。

InitCan方法

InitCan方法完成連接并打開(kāi)CAN設備,輸入參數是CAN設備號、波特率,輸出值為布爾類(lèi)型,標識CAN設備是否打開(kāi)。

處理過(guò)程:

加載收發(fā)指令動(dòng)態(tài)庫;

調用動(dòng)態(tài)庫中的Init_can函數連接并打開(kāi)CAN設備。

SendData方法

SendData完成下發(fā)指令功能,輸入參數是顯示指令,輸出值為布爾類(lèi)型,標識發(fā)送是否成功。處理過(guò)程:

設置要發(fā)送的指令;

調用動(dòng)態(tài)庫中的Can_send函數發(fā)送指令。

RecvData方法

RecvData完成接收指令和解析指令的功能。處理過(guò)程:

調用動(dòng)態(tài)庫中的Can_receive函數接收指令;

根據通信協(xié)議進(jìn)行解析,符合協(xié)議則處理,否則不處理。

4結束語(yǔ)

本文設計并實(shí)現了一種基于步進(jìn)電機自動(dòng)控制的多功能旋轉式操作面板,并應用于某型艦艇電子裝備通用模擬器的研制,較好地解決了同一系列不同型號裝備操作面板的模擬問(wèn)題。該設計方案同樣適用于其他多功能機電設備的設計,可以為解決操作面板可用面積不足時(shí)的元器件布設問(wè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>