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

        ?

        基于MATLAB的BD/GPS模擬器界面顯控軟件設(shè)

        2013-08-29 17:00:20李銀虎古泉穎
        大眾科技 2013年8期
        關(guān)鍵詞:界面設(shè)置設(shè)計(jì)

        李銀虎 王 帥 古泉穎

        (1.深圳市中冀聯(lián)合通訊技術(shù)有限公司,廣東 深圳 518057;2.桂林電子科技大學(xué)信息與通信學(xué)院,廣西 桂林 541004)

        MATLAB 是 matrix laboratory (矩陣實(shí)驗(yàn)室)的縮寫(xiě),是1984 年由美國(guó)Mathworks 公司推出的一套高性能的數(shù)值計(jì)算、工程應(yīng)用軟件,它將矩陣運(yùn)算、數(shù)值分析、圖形處理、編程技術(shù)結(jié)合在一起,為用戶提供了一個(gè)強(qiáng)有力的分析、計(jì)算和程序設(shè)計(jì)工具,非常適合用來(lái)編寫(xiě)大型工程計(jì)算、科學(xué)仿真程序代碼[1,2]。

        而MATLAB的圖形用戶界面(Graphical User Interface,GUI)功能可以方便用戶完成圖形化界面控制軟件,這種場(chǎng)合下的應(yīng)用,使MATLAB像VC,C#等軟件一樣,可以實(shí)現(xiàn)復(fù)雜而友好的人機(jī)交互。

        PC機(jī)的特點(diǎn)是具有較強(qiáng)的數(shù)據(jù)顯示、分析處理能力、很好的人機(jī)界面和大容量的存儲(chǔ)功能。本文以PC機(jī)為上位機(jī),設(shè)計(jì)基于MATLAB的顯控軟件,實(shí)現(xiàn)了與BD/GPS衛(wèi)星信號(hào)模擬器主機(jī)的通信。

        1 MATLAB圖形用戶界面(GUI)簡(jiǎn)介

        MATLAB早期以矩陣運(yùn)算為主,但隨著科學(xué)計(jì)算可視化的需求,MATLAB 在第4 版推出了句柄圖形,自此之后,MATLAB的圖形界面設(shè)計(jì)功能也日益完善。如今,MATLAB 已成為集數(shù)值計(jì)算、符號(hào)運(yùn)算和圖形處理功能為一身的科學(xué)計(jì)算語(yǔ)言,滿足了不同領(lǐng)域用戶的需求。

        從MATLAB 6.x版開(kāi)始,它的圖形用戶界面設(shè)計(jì)功能有了很大提高,利用它可以方便地實(shí)現(xiàn)圖形化窗口界面的交互方式。所謂圖形用戶界面,是指包含了各種圖形控制對(duì)象,如圖形窗口、菜單、對(duì)話框以及文本框等用戶界面,也稱為控件。利用這些用戶界面,用戶可以和計(jì)算機(jī)之間進(jìn)行信息交流,并通過(guò)編寫(xiě)控件的回調(diào)函數(shù)(Callback),完成特定的功能。

        在MATLAB 中創(chuàng)建圖形用戶界面有兩種方法[3,4]。一種是在 M 腳本文件和函數(shù)文件中直接利用句柄圖形指令建立各個(gè)控件對(duì)象并設(shè)置其屬性;另一種方法是利用 MATLAB 提供的圖形化界面設(shè)計(jì)向?qū)В℅UIDE)開(kāi)發(fā)環(huán)境。采用第一種方法建立用戶界面工作量大,控件屬性設(shè)置、修改繁瑣,一般需要設(shè)計(jì)者有豐富的經(jīng)驗(yàn)。而采用GUIDE 開(kāi)發(fā)環(huán)境進(jìn)行用戶界面設(shè)計(jì)操作方便、效率高,可以達(dá)到所見(jiàn)即所得的編程效果,利用這個(gè)開(kāi)發(fā)環(huán)境,可以在很短時(shí)間內(nèi)設(shè)計(jì)出一個(gè)GUI。

        從Matlab6.0版本開(kāi)始,Matlab軟件中增加了設(shè)備控制工具箱,提供了對(duì)RS一232通信標(biāo)準(zhǔn)的串口通信的支持,負(fù)責(zé)上下位機(jī)之間的通信。

        設(shè)備控制工具箱有如下特點(diǎn)[3]:

        (1)支持基于串行接口(RS-232、RS-422、RS-485)、GPIB總線(IEEE2488、HPIB標(biāo)準(zhǔn))、VISA總線的通信;

        (2)通信數(shù)據(jù)支持二進(jìn)制和文本(ASCII) 兩種方式,文本方式支持 SCPI ( standard commands for programmable instruments) 語(yǔ)言;

        (3)支持異步通信和同步通信;

        (4)支持基于事件驅(qū)動(dòng)的通信。

        從以上MATLAB設(shè)備控制工具箱的特點(diǎn)可以看到,MATLAB可以滿足實(shí)現(xiàn)串行通信的要求。

        2 設(shè)計(jì)方案

        (1)GUIDE設(shè)計(jì)向?qū)?。通過(guò)GUIDE設(shè)計(jì)一個(gè)完整的GUI ,需分為兩個(gè)階段完成[4]。

        第一個(gè)階段:圖形界面的結(jié)構(gòu)設(shè)計(jì)階段。利用設(shè)計(jì)向?qū)?gòu)造整個(gè)圖形界面的布局,合理設(shè)計(jì)菜單、安排控件位置等,并進(jìn)行必要的屬性設(shè)計(jì)。

        第二個(gè)階段:功能設(shè)計(jì)階段。為菜單、控件編寫(xiě)相應(yīng)的回調(diào)函數(shù)(Callback),具體實(shí)現(xiàn)界面的各種功能。

        首先,在MATLAB 的命令窗口輸入指令guide,或者通過(guò)菜單操作新建 GUI,然后選擇建立新的空白(Blank GUI(Default))的用戶界面選項(xiàng)時(shí),就會(huì)出現(xiàn)工作臺(tái)(LayoutEditor)界面,如圖1 所示。

        在其中可以拖放需要的控件并設(shè)置窗口和各個(gè)控件的屬性,雙擊控件,就可以打開(kāi)控件屬性編輯器,進(jìn)行控件屬性設(shè)置,如圖2所示。

        常用的屬性有:

        ①Tag 屬性的取值是一個(gè)字符串,用來(lái)標(biāo)記控件的名字,在進(jìn)行程序設(shè)計(jì)時(shí),可以利用該名字來(lái)指定控件,一般不必修改。

        ②String 屬性為該控件顯示的字符串,通過(guò)編輯文本框,用戶可以方便的輸入或修改已經(jīng)存在的字符串。

        其他還有字體設(shè)置,控件位置等等。在設(shè)計(jì)中,首先要根據(jù)需求,設(shè)計(jì)出總體方案,要考慮有幾個(gè)輸入?yún)?shù),用到幾個(gè)文本框控件(text)、幾個(gè)編輯框控件(edit),幾個(gè)按鈕(pushbutton)等等。并把各控件的位置用鼠標(biāo)拖動(dòng)、排列成一個(gè)合適的布局。

        圖1 圖形用戶界面設(shè)計(jì)向?qū)?/p>

        圖2 控件屬性編輯器

        (2)顯控軟件系統(tǒng)方案。軟件設(shè)計(jì)方案可劃分為三個(gè)階段:

        第一階段:在MATLAB/GUI軟件中創(chuàng)建用戶界面.根據(jù)用戶的需求,設(shè)置相應(yīng)的BD/GPS模擬器參數(shù)包括的星歷參數(shù),設(shè)定初始時(shí)間、速度、位置(經(jīng)度、緯度、高度)、用戶軌跡生成。衛(wèi)星的通道,通道參數(shù)等回顯信息。如圖3所示。

        圖3 GUI用戶輸入設(shè)計(jì)

        第二階段:MATLAB/GUI實(shí)現(xiàn)串口通信。通過(guò)GUI串口編程,將所定義的場(chǎng)景數(shù)據(jù)進(jìn)行打包,然后按照一定的通信協(xié)議送給BD/GPS衛(wèi)星信號(hào)模擬器主機(jī),BD/GPS衛(wèi)星信號(hào)模擬器主機(jī)實(shí)時(shí)地傳回各通道衛(wèi)星信號(hào)狀態(tài)信息。串口通信設(shè)計(jì)架構(gòu)如圖4所示。

        圖4 MATLAB與模擬器串口通信

        第三階段:數(shù)據(jù)顯示及分析。對(duì)用戶終端存儲(chǔ)的數(shù)據(jù)進(jìn)行分析、處理,并顯示測(cè)試結(jié)果,即對(duì)第二階段存儲(chǔ)的衛(wèi)星信號(hào)模擬器上傳給MATLAB數(shù)據(jù)和BD/GPS接收機(jī)數(shù)據(jù)進(jìn)行處理,根據(jù)顯示信息分析結(jié)果。

        第四階段:向下位機(jī)下發(fā)場(chǎng)景文件,實(shí)現(xiàn)主機(jī)啟動(dòng)。從官網(wǎng)下載星歷文件,用UltraEdit軟件將星歷文件按一定的數(shù)據(jù)格式和處理形成場(chǎng)景文件。然后通過(guò)MATLAB讀取文件下發(fā)給下位機(jī),實(shí)現(xiàn)主機(jī)的運(yùn)行,顯控軟件的任務(wù)就完成了。

        3 串口通信與界面設(shè)計(jì)

        本設(shè)計(jì)的通信端口模塊的主要完成場(chǎng)景文件和數(shù)據(jù)幀的傳送,包括選擇通信的端口, 設(shè)置端口的波特率、數(shù)據(jù)位、停止位和奇偶校驗(yàn)。例如BD/GPS模擬器和上位機(jī)之間通信的波特率為115200等設(shè)置[5,6]。

        本應(yīng)用軟件中使用了串口的收發(fā)功能, 發(fā)端是連接MATLAB上位機(jī)端口,下發(fā)場(chǎng)景文件;收端是連接衛(wèi)星信號(hào)模擬器后,向上位機(jī)傳送數(shù)據(jù)幀,其作用是軟件和硬件的橋梁。

        在用串口對(duì)象讀寫(xiě)數(shù)據(jù)前,必需先通過(guò)數(shù)據(jù)fopen將串口對(duì)象和設(shè)備相連。連接以后,一些屬性值是只是讀。如InputBufferSize及OutputBufferSize等,所以必須在使用fopen函數(shù)前設(shè)置好的。我們可以用一下的語(yǔ)句來(lái)測(cè)試或驗(yàn)證連接狀態(tài)。一旦串口對(duì)象和設(shè)備連接成功,就可以讀寫(xiě)數(shù)據(jù)系統(tǒng)界面。

        本設(shè)計(jì)采用中斷的方式,可以設(shè)置當(dāng)串口檢測(cè)到輸入緩存中到達(dá)了字符個(gè)數(shù)來(lái)觸發(fā)串口中斷,也可以設(shè)置時(shí)間來(lái)觸發(fā)串口中斷。首先對(duì)串口進(jìn)行初始化串口初始化配置串口對(duì)象屬性,判斷物理接口是否連接,然后等待中斷,在中斷回調(diào)函數(shù)處理數(shù)據(jù)對(duì)象[7]。

        圖5是設(shè)計(jì)的串口的端口設(shè)置模塊,圖6是完成的整個(gè)軟件運(yùn)行情況。

        圖5 通信端口設(shè)置模塊

        圖6 顯控系統(tǒng)主界面

        4 小結(jié)

        利用MATLAB 的圖形用戶界面(GUI)設(shè)計(jì)功能,可以開(kāi)發(fā)出很友好的交互式圖形界面,可以很快設(shè)計(jì)一個(gè)參數(shù)輸入界面,可以使數(shù)據(jù)處理快速、靈活、直觀、高效,可以迅速開(kāi)發(fā)出滿足各種需要的界面友好的數(shù)據(jù)處理軟件。本文設(shè)計(jì)的顯控軟件可以很好地與主機(jī)完成串口通信,實(shí)現(xiàn)對(duì)BD/GPS衛(wèi)星信號(hào)模擬器的控制與信息顯示。

        [1]陳懷琛.MATLAB及其在理工課程中的應(yīng)用指南[M].西安:西安電子科技大學(xué)出版社,2000.

        [2]張志涌.精通MATLAB6.5版[M].北京:北京航空航天大學(xué)出版社,2003.

        [3]焦勇,周喻虹.基于 MATLAB 的快速圖形化數(shù)據(jù)處理軟件設(shè)計(jì)[J].電子科技,2005,7:40-42.

        [4]余承依.基于MATLAB 數(shù)值計(jì)算的GUI 設(shè)計(jì)[J].漳州師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2004,17(4):38-40.

        [5]李彥,盧虎. 基于MATLAB的GUI技術(shù)在電子教學(xué)中的應(yīng)用[J].電氣電子教學(xué)學(xué)報(bào),2000,22(3):77-79

        [6]張立材.基于MATLAB環(huán)境的串行數(shù)據(jù)通信[J].微計(jì)算機(jī)信息,2004,20(3):100-101

        [7]向先波,徐國(guó)華,張琴.MATLAB環(huán)境下PC機(jī)與單片機(jī)的串行通信及數(shù)據(jù)處理[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2004,(12):27-31.

        猜你喜歡
        界面設(shè)置設(shè)計(jì)
        中隊(duì)崗位該如何設(shè)置
        國(guó)企黨委前置研究的“四個(gè)界面”
        瞞天過(guò)?!律O(shè)計(jì)萌到家
        基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開(kāi)發(fā)方法研究
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        人機(jī)交互界面發(fā)展趨勢(shì)研究
        本刊欄目設(shè)置說(shuō)明
        中俄臨床醫(yī)學(xué)專業(yè)課程設(shè)置的比較與思考
        手機(jī)界面中圖形符號(hào)的發(fā)展趨向
        新聞傳播(2015年11期)2015-07-18 11:15:04
        亚洲一区二区不卡日韩| 国产欧美日韩一区二区三区在线| 日本五月天婷久久网站| 国产亚洲精选美女久久久久| 天堂网av在线免费看| 久久精品中文字幕无码绿巨人| 国产熟人av一二三区| 国产国语对白一区二区三区| 日本视频一区二区这里只有精品 | 国产又色又爽又刺激在线播放| 啪啪免费网站| 日本无吗一区二区视频| 国产剧情一区二区三区在线 | 亚洲国产美女精品久久久 | 夫妻一起自拍内射小视频| 麻豆人妻性色av专区0000| 精品无码无人网站免费视频| y111111少妇影院无码| 免费高清视频在线观看视频| 亚洲国产精品婷婷久久| 中文字幕日韩人妻不卡一区| 日韩中文网| 色老板在线免费观看视频日麻批 | 亚洲精品456| 国产精品农村妇女一区二区三区| 激情综合五月婷婷久久| 无码精品人妻一区二区三区人妻斩 | 欧美狠狠入鲁的视频777色| 另类免费视频在线视频二区| 美女黄网站永久免费观看网站| 美女午夜福利视频网址| 久久久久女人精品毛片| 中文字幕永久免费观看| 亚洲国产成人av毛片大全| 亚洲国产精品无码久久| 欧韩视频一区二区无码| 91麻豆精品一区二区三区| 久久久久人妻精品一区二区三区 | 免费亚洲一区二区三区av| 99re热视频这里只精品| 亚洲国产成a人v在线观看|