《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > MatlabGUI的上位機與智能車的兩種實時通信
MatlabGUI的上位機與智能車的兩種實時通信
電子科技
蔣超,劉新,曾義和
摘要: 基于Matlab的串口通信機制,簡要介紹了查詢方式下的非實時通信,提出一種將事件中斷寫入GUI組件函數的方式,相對于改寫instrcallback函數實現串口中斷機制的實時通信方式,大大簡化了中斷方式實現實時通信的過程,并詳述了三者的差異和實現過程。利用Matlab的GUI工具和內置的串口通信API,設計了一個可視化的串口通信界面,通過藍牙串行接口,實現智能車系統采集數據的實時接收,并利用Matlab強大的科學計算功能,對數據進行實時處
Abstract:
Key words :

引言
    在以速度決定優劣的飛恩卡爾智能車比賽中,任何因素都可能影響小車的運行。為了滿足對小車在賽道中各種狀態精確分析的需求,上位機的效據采集與處理要求通信波特率高、信號傳輸穩定、不丟包、數據處理量大、數據處理及時等。在基于Matlab環境下的串口通信中,查詢方式下的非實時串行通信技術對實時性要求很高的智能車通信有很大的局限性。而在目前普遍采用的中斷機制下的通信雖然可以滿足實時性的需要,卻需要修改Matlab自帶的instrcallback回調函數。程序調試過程中慘改了回調函數后,需要重新啟動Matlab才能使得新的回調函數文件生效。由此可以看出,其操作復雜易出錯,且instrcallback函數接收到保存在工作空間的數據不能被GUI組件的函數實時調用。故此方式在需要對多組數據進行分別作圖分析時,往往生成多個零散圖形窗口。為了滿足智能車的實時通信需求,同時使基于Matlab GUI的通信界面更加簡潔,本文提出了一種將事件中斷函數寫入GUI組件函數中的方式。
    Matlab是由美國Mathworks公司開發的面向理論分析研究及工程設計處理和繪圖的一套具有強大功能的軟件系統。Matlab運行穩定、可靠,使用方便,是廣大科研人員進行科學研究的得力助手。從Matlab6.0版本開始,Mathworks公司在軟件中增加了設備控制箱(instrument control toolbox),提供了對RS-232/RS-485通信標準的串口通信的正式支持。Matlab GUI(Graphic User Interface)是內置于Matlab的進行圖形界面開發的模塊。本文主要介紹在Mariab GUI環境下,上位機與智能車進行實時通信盼辦法。該方法較之使用VC/VB高級語言編程,
    大大縮減了開發時間,提高了開發效率。另外,較之傳統的RS-232接口,使用藍牙接口能夠更大范圍地全方位進行數據傳輸和采集。實驗結果表明,經過兩次握手處理后數據傳輸實時穩定,具有很強的實用性。

1 系統總體設計方案
    系統采用飛恩卡爾MCA8HCS12G128單片機作為智能車的控制器,PC機為上位機。利用Matlab GUI構建起二者的實時通信、數據處理和繪圖等平臺。整個系統的原理框圖如圖1所示,介紹了基于Matlab的GUI和串口通信機制下建立上位機與智能車實時通信和作圖的平臺方法。

a.JPG


    智能車與PC機通過藍牙相連,系統工作時,由Matlab調用設備控制工具箱中的serial類函數來設置串口屬性,創建串口對象,從而實現Matlab對串口的控制和讀寫操作。在對智能車的調試過程中,可以通過Matlab向藍牙發送特殊指令,啟動智能車。在智能車系統運行后便可以將所采集位置和速度等效據通過藍牙回送給PC機。
由Matlab通過中斷方式實時接收數據,并對數據進行分析和處理,實時繪出相應的圖形。

2 Matlab GUI設計介紹
①運行Matlab后,點擊主界面左上角的GUI圖標k.jpg即可運行Matlab GUI開發工具。
②點擊Blank GUI(Default)選項并點擊OK按鈕,完成新建Blank GUI。
③在新建的Blank GUI界面的右方菜單中添加設計所需要的元素,完成串口通信及數據實時顯示等功能的GUI界面設計。
④編寫GUI組建相應的響應控制代碼,運行后的通信仿真界面如圖2所示。

b.JPG

3 單片機與PC機串行通信
3.1 設計思想 

   MCA8HCS12G128單片機的軟件設計需要實現對程序的初始化、接收與發送串口信號、速度和位置數據的采集等功能。為了保證上位機采集數據的可靠性和穩定性,防止出現丟包事件,在通信過程中約定了雙方的握手方法。在程序初始化以后,等待fwrite命令發送的握手信號0xFF。當單片機第一次接收到的信號為0xFF時,則握手成功,并開始運行電機和激光頭等子程序。在實驗過程中發現存在發送的第一組數據第一個字節丟失的現象,為了增強數據的可靠性,首先判斷數據包的前兩個字節是否為0xFF,是則剔除相應字節,分離出有效的數據,再在回送的速度、激光傳感器的數據中嵌入兩個字節的握手信號0xFF,Matlab接收到串口的數據后進行相應的處理。智能車控制器通信的總程序流程如圖3所示。

c.JPG


3.2 系統藍牙串口通信主要代碼
d.JPG

4 基于Matlab GUI的PC機與智能車的通信
4.1 Matlab GUI基礎上實現串口通信的軟件設計

    在Matlab環境下,讀取串口數據有查詢和中斷兩種方式。查詢方式數據只能分批進行傳送,實時性不高,且對系統資源的占用比較大。以中斷方式實現的串口通信,通常的處理方式是對Matlab提供的instrcallback回調函數進行修改,采用事件驅動的方式,達到實時處理下位機傳送數據的目的。但是采用Matlab的事件和回調函數機制編程要相對復雜一些,在對instreallback函數進行修改和備份等操作時容易出錯且比較麻煩。另外,每次修改instreallbaek函數后都要重新啟動Matlab,可能會導致數據丟失等一些不必要的麻煩。將事件驅動函數寫入GUI組件的M文件中,可以減少綰程的復雜性,避免一些不必要的麻煩,實現串口之間的實時通信。
4.2 設備控制工具箱介紹
    Matlab設備控制工具箱主要是提供Matlab軟件與各種智能儀器的直接通信功能。工具箱提供了以下功能:
①支持串行接口(RS-232/RS-422/RS-485)、GPIB接口(IEEE 488)等通信協議。
②支持IVI、VXI plug&play和Matlab設備驅動(instrument drivers),不需要學會寫與設備相關的指令即能與儀器直接聯通。
③傳輸的數據可以是文本或二進制的(數字的)。
④支持同步和異步(有阻塞或無阻塞)通信。
⑤支持基于事件的通信。
⑥新的TMTOOL圖形用戶接口不僅能夠連接儀器、接收/發送數據,而且可以自動生成M代碼文件,以加入編寫的Matlab程序中。

5 基于Matlab GUI查詢方式實現異步串行通信

    基于Matlab查詢方式的非實時串口通信雖然編程簡單,對數據的調用處理也更為容易,但是只能接收一個過程的數據,這在對實時性要求較高的系統中往往不能滿足設計者的需求。以下為部分通信程序代碼。
l.jpg
m.jpg

6 基于Matlab中斷方式實現實時串行通信
    事件驅動方式的優點是程序響應及時,可靠性高。在Matlab環境下實現實時通信的中斷方式,實際上就是采用事件驅動的方式實現的,類似于VB語言MSComm控件中OnComm事件的實現方法。當串口上監視到緩沖區有指定字節數目的數據可用(bytes-available event),串口接收到的數據長時間處于非激活狀態(break-interrupt event),串行口引腳狀態改變(pin-status event)或輸出緩沖區為空(output empty eve nt)等事件發生時,Matlab會自動調用回調函數進行通信事件的處理。因此,事件驅動實質上是一種中斷機制,而回調函數實質上相當于一個中斷服務子程序。Matlab端實時串行通信的程序流程如圖4所示。以下為兩種不同的方式實現實時通信的中斷機制程序。

e.JPG


6.1 將中斷服務子程序寫入GUI組件的部分M文件代碼
    主程序創建串口設備對象、設置串口設備屬性及打開串口等初始化操作的代碼與查詢方式下的初始化代碼相同:

f.JPG

6.2 通過調用修改后的instroallback.m文件實現中斷
主程序:
h.JPG
    修改instreallback(obj,evenlt)回調函數,instrcallback.m文件包含了Matlab提供的回調函數程序模板,設計者可以根據需要自行添加相應的服務程序代碼。Matlab安裝目錄下有兩個instrcallback.m文件,只需要修改\MATLAB\toolbox\matlab\iofun\@instrument目錄下的instrcallback.m文件即可。另外,在修改instrcallback.m文件之前,最好對其做一個備份。在修改了instrcallback(obj,event)回調函數后,需要對其進行保存,重新啟動Matlab配置該文件,才使修改后的函數生效。

j.JPG


圖5為以下方式實現的智能車啟動過程速度的實時顯示,修改后的instrcallback.m文件主要程序代碼如下:
i.JPG
    實驗證明,基于Matlab事件驅動實現的智能車與上位機的實時串口通信可以很好地滿足智能車調試過程中的需要,且將中斷服務子程序寫入GUI組件和修改instrcallback.m文件兩種方式的通信都穩定可靠。

結語
    在Matlab環境下兩種實現智能車與PC機實時通信的中斷機制都能實時穩定地進行數據傳輸,不過將中斷服務子程序寫入GUI組件的方式編程簡單,數據處理方便,實現更為容易,開發效率相對得到了較大的提高。實踐證明,采用這種方法是可行的,它不但能夠應用于本文的智能車系統,也可廣泛應用在其他具有串口通信能力的儀器設備中。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲精品之草原avav久久| 国产农村妇女毛片精品久久莱园子| 国产精品热久久久久夜色精品三区| 亚洲精选视频在线| 国产日韩欧美制服另类| 模特精品裸拍一区| 亚洲一本视频| 亚洲一区美女视频在线观看免费| 麻豆精品精品国产自在97香蕉| 亚洲女ⅴideoshd黑人| 久久精品一区二区三区四区| 欧美高清视频一区二区三区在线观看| 在线免费观看欧美| 99伊人成综合| 国产精品永久免费观看| 玖玖综合伊人| 久久精品国产综合| 欧美成人精品h版在线观看| 欧美91福利在线观看| 欧美高清在线| 欧美视频在线一区二区三区| 日韩视频二区| 制服诱惑一区二区| 亚洲性视频网站| 一区二区三区鲁丝不卡| 亚洲欧美福利一区二区| 欧美激情视频在线免费观看 欧美视频免费一| 国产精品久久二区| 国产精品久久久久久久久久妞妞| 欧美激情一区在线| 国产精品人人做人人爽人人添| 欧美多人爱爱视频网站| 久久大综合网| 欧美国产大片| 黄色成人av网| 91久久夜色精品国产九色| 国产日韩一区二区三区在线播放| 国产精品羞羞答答| 在线观看欧美激情| 牛牛影视久久网| 国产伦精品一区二区| 亚洲看片一区| 久久久久久久网站| 国产欧美日韩精品专区| 欧美大片在线影院| 国产免费成人| 日韩亚洲欧美一区| 亚洲天堂久久| 91久久精品日日躁夜夜躁欧美| 精品动漫3d一区二区三区| ●精品国产综合乱码久久久久| 亚洲欧美日韩精品久久奇米色影视| 欧美先锋影音| 欧美一二三区在线观看| 欧美激情视频给我| 久久夜精品va视频免费观看| 久久久免费观看视频| 亚洲人成欧美中文字幕| 久久精品女人的天堂av| 亚洲永久精品国产| 免费短视频成人日韩| 欧美精品一区二区三区很污很色的| 欧美日韩一区二区三区视频| 亚洲精品综合在线| 欧美jizz19性欧美| 亚洲国产99精品国自产| 国产欧美日韩在线播放| 日韩一级视频免费观看在线| 国产主播在线一区| 欧美色欧美亚洲另类七区| 国产一区二区三区观看| 亚洲成人在线视频网站| 久久久精品国产一区二区三区| 妖精视频成人观看www| 欧美日韩中文在线观看| 一本不卡影院| 国外成人免费视频| 欧美三级日本三级少妇99| 影音先锋国产精品| 欧美99久久| 销魂美女一区二区三区视频在线| 欧美精品一区二区三| 久久黄色级2电影| 欧美顶级艳妇交换群宴| 激情综合激情| 亚洲国产精品免费| 国产亚洲一区二区精品| 国产一区二区三区精品欧美日韩一区二区三区| 久久精品一二三| 欧美激情精品久久久久久免费印度| 亚洲视频香蕉人妖| 欧美天天视频| 99pao成人国产永久免费视频| 国产在线麻豆精品观看| 在线视频欧美日韩| 国产欧美日韩亚州综合| 性欧美8khd高清极品| 在线日韩av| 欧美精品播放| 亚洲一二三级电影| 欧美综合二区| 一区二区冒白浆视频| 美日韩精品免费观看视频| 国产精品免费小视频| 国产精品久久一区二区三区| 国产精品欧美一区喷水| 国产精品美女久久久免费| 欧美成人一区二区三区| 欧美福利电影在线观看| 亚洲经典在线| 欧美a级一区二区| 999在线观看精品免费不卡网站| 亚洲免费网站| 国产精品vip| 亚洲欧美日韩国产一区二区| 99国产精品久久久久老师| 国产亚洲精品久久久久婷婷瑜伽| 欧美午夜宅男影院在线观看| 午夜亚洲视频| 亚洲无亚洲人成网站77777| 国产亚洲免费的视频看| 欧美在线视频二区| 亚洲日韩欧美一区二区在线| 亚洲激情成人网| 最新国产成人av网站网址麻豆| 欧美mv日韩mv国产网站app| 国产一区二区主播在线| 国产欧美精品一区二区色综合| 在线成人免费视频| 欧美v国产在线一区二区三区| 国产精品久久久一区麻豆最新章节| 国产一区二区丝袜高跟鞋图片| 国产精品av久久久久久麻豆网| 国产亚洲观看| 欧美日韩成人精品| 99在线视频精品| 久久久久久综合| 国产精品久久久久免费a∨| 噜噜噜躁狠狠躁狠狠精品视频| 狠狠做深爱婷婷久久综合一区| 国产欧美日韩一区二区三区在线| 亚洲国产日韩美| 国产一区二区三区久久精品| 亚洲图片激情小说| 欧美国产一区二区在线观看| 久久精品国产亚洲5555| 欧美国产日韩一区二区| 欧美伦理视频网站| 欧美日韩蜜桃| 狠狠色丁香婷婷综合影院| 国内一区二区三区在线视频| 国产亚洲一级高清| 一区二区三区**美女毛片| 久久久久国产精品一区二区| 欧美1区视频| 亚洲香蕉成视频在线观看| 欧美色偷偷大香| 亚洲成人资源网| 国内精品亚洲| 亚洲在线免费观看| 国产亚洲精品综合一区91| 亚洲一级二级| 亚洲一区二区在| 欧美日韩一区二区在线观看视频| 国产精品日韩欧美一区| 国产亚洲福利一区| 中文精品视频一区二区在线观看| 欧美jizzhd精品欧美喷水| 国产亚洲成人一区| 久久免费国产精品1| 欧美电影电视剧在线观看| 亚洲午夜伦理| 欧美天堂亚洲电影院在线播放| 欧美日韩一区自拍| 欧美影院在线播放| 久久免费视频网站| 国产精品看片你懂得| 国产精品扒开腿做爽爽爽软件| 亚洲私人黄色宅男| 国内精品久久久久久久影视麻豆| 好吊色欧美一区二区三区四区| 在线播放亚洲一区| 欧美综合77777色婷婷| 久久久亚洲人| 久久精品国产在热久久| 国产精品一区视频| 欧美成人在线影院| 欧美jizz19性欧美| 日韩亚洲国产欧美| 99riav久久精品riav| 久久黄色影院| 日韩一区二区精品在线观看| 欧美激情国产日韩| 国产精品视频免费观看| 精品av久久久久电影| 国产日韩欧美一区二区| 欧美精品在线视频观看| 久久精品综合一区| 国产日本欧美一区二区三区| 性色av一区二区怡红| 免费亚洲电影在线| 欧美福利电影在线观看| 亚洲青涩在线| 国产精品亚洲成人| 免费精品视频| 宅男噜噜噜66一区二区| 亚洲免费中文字幕| 国产在线高清精品| 欧美日韩激情网| 老司机午夜精品| 亚洲欧美另类在线观看| 激情丁香综合| 女人天堂亚洲aⅴ在线观看| 亚洲在线观看免费| 欧美三级韩国三级日本三斤| 久久一区二区三区四区五区| 国产精品美腿一区在线看| 欧美四级在线观看| 欧美日韩一区二区免费视频| 99视频在线观看一区三区| 欧美成人午夜77777| 午夜精品区一区二区三| 香蕉久久精品日日躁夜夜躁| 欧美黄色aaaa| 国产精品高潮在线| 免费成人小视频| 久久国产视频网站| 一区二区视频免费在线观看| 国产欧美在线视频| 亚洲区第一页| 欧美视频免费看| 中国女人久久久| 久久精品免费观看| 久久久91精品国产| 欧美精品v日韩精品v国产精品| 最新热久久免费视频| 国产九区一区在线| 国产女同一区二区| 亚洲激情国产| 久久婷婷国产综合精品青草| 欧美日韩日本国产亚洲在线| 久久一区二区精品| 最新69国产成人精品视频免费| 欧美不卡一区| 国产精品美女久久久免费| 国产精品爱久久久久久久| 欧美一区二区视频在线| 午夜精品99久久免费| 欧美日韩亚洲一区二| 亚洲三级电影在线观看| 欧美日韩精品一区二区在线播放| 亚洲国产精品久久久久婷婷老年| 欧美午夜宅男影院在线观看| 欧美一区二区免费观在线| 国产日韩欧美a| 久久国产夜色精品鲁鲁99| 久久五月天婷婷| 亚洲一区3d动漫同人无遮挡| 国产在线精品自拍| 国产精品亚发布| 午夜精品久久久久久久99樱桃| 国产精品国产三级国产aⅴ入口| 99人久久精品视频最新地址| 国产欧美日韩激情| 欧美日韩精品国产| 国产伊人精品| 亚洲乱码国产乱码精品精| 美女主播一区| 今天的高清视频免费播放成人| 亚洲欧美成aⅴ人在线观看| 在线视频你懂得一区二区三区| 狠狠色丁香婷婷综合| 国产日韩精品一区二区浪潮av| 欧美了一区在线观看| 久久精品噜噜噜成人av农村| 国产专区综合网| 久久精品日产第一区二区| 欧美日产国产成人免费图片| 久久久久久久久综合| 欧美中文字幕在线视频| 国产视频久久久久| 国产一区深夜福利| 欧美成人综合在线| 黄色一区三区| 国产精品毛片a∨一区二区三区| 欧美午夜精品理论片a级大开眼界| 国产精品嫩草99av在线| 国产日韩精品在线播放| 亚洲欧美在线免费| 亚洲国产综合视频在线观看| 狠狠色丁香婷婷综合| 欧美三区免费完整视频在线观看| 欧美在线一二三| 狠狠色丁香婷婷综合| 狠狠入ady亚洲精品| 免费看av成人| 亚洲久久一区二区| 亚洲欧美久久久| 欧美视频久久| 免费成人性网站| 国产精品久久久久久亚洲调教| 狂野欧美激情性xxxx欧美| 国产一区二区三区视频在线观看| 久久阴道视频| 日韩一区二区精品葵司在线| 99爱精品视频| 免费在线亚洲| 中文在线资源观看网站视频免费不卡| 国产精品久久久久99| 亚洲午夜精品在线| 激情文学一区| 久久网站热最新地址| 免费成人黄色片| 香蕉乱码成人久久天堂爱免费| 夜色激情一区二区| 欧美主播一区二区三区美女 久久精品人| 国产一区二区精品久久99| 亚洲一区二区三区精品动漫| 欧美国产欧美亚洲国产日韩mv天天看完整| 裸体歌舞表演一区二区| 欧美护士18xxxxhd| 国产精品一区二区在线观看网站| 1024精品一区二区三区| 一区二区三区国产精华| 国产欧美在线播放| 国产精品剧情在线亚洲| 国产精品福利在线| 一色屋精品视频免费看|