999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

POS實時監控軟件多線程通信設計及實現

2015-12-23 01:00:12劉艷群朱莊生
計算機工程與設計 2015年6期
關鍵詞:界面系統設計

劉艷群,朱莊生

(1.北京航空航天大學 慣性技術重點實驗室,北京100191;2.北京航空航天大學 新型慣性技術儀表與導航系統技術國防重點學科實驗室,北京100191)

0 引 言

位置姿態測量系統 (position and orientation system,POS)[1,2]主要由慣性測量單元 (inertial measurement unit,IMU)、全球定位系統 (global position system,GPS)、POS計算機系統 (POS computer system,PCS)和后處理軟件組成[3],因此POS系統是一個復雜且有大量數據信息傳遞和存儲的系統。從POS工程應用背景的需求來說,需要對POS系統進行實時監控,但要實現對POS系統的實時監控,首要解決是通信問題。監控軟件常用監控接口有串口、USB口、網口等。監控軟件一般采用單一的接口作為監控接口,但這種方式會導致監控能力受到接口性能的限制。例如:串口數據傳輸速度和傳輸距離導致監控軟件只能實現低速、短距離的監控;以太網雖能實現高速、遠距離監控,但大數據量的傳輸會造成數據流阻塞和資源浪費。

本文基于Windows Socket的網絡數據傳輸和MSComm串口通信原理,設計基于TCP/IP 協議的流式套接字的網絡數據傳輸和MSComm 串口監控多線程通信系統,實現對POS系統的數據傳輸及系統的監控,消除了單一監控接口的弊端,充分利用了不同通信方式的優勢,實現優勢互補,具有很好的工程應用價值。

1 多線程通信方法

1.1 POS系統

POS的基本工作原理如圖1所示,系統由IMU 和POS導航計算機兩大部分組成,POS導航計算機集成了系統供電單元、GNSS接收單元、數據處理單元、數據存儲單元等;IMU 由加速計、陀螺儀和溫度傳感器等各類傳感器構成。利用IMU 可實時連續地測量載體的角速度和加速度信息,通過積分運算可得載體的位置、速度和姿態等參數,但由于積分運算會導致誤差的積累而引發導航結果的發散;GNSS單元通過獲取衛星信號實時解算得到高精度的位置信息,但其數據更新率低;因此將兩者組合起來,綜合二者的優點,實現優勢互補,經過平滑、事后差分等后處理,可以獲得更高精度的位置姿態信息。

圖1 POS的基本工作原理

由于POS應用于各種載荷,POS接口也從單一的串口向多樣的、高速、可靠接口發展,目前POS 的接口資源有:串口RS-232、串口RS-422、CAN 口、以太網等。

由于串口RS-232和RS-422結構簡單,編程簡易,已廣泛作為工業通信的一種手段。串口RS-232的最大傳輸距離約為15m,最大傳輸速率為460800b/s;串口RS-422的最大傳輸距離約為1200 多米,最大傳輸速率為10Mb/s。但串口RS-232、RS-422 通信的可靠性低,抗噪聲干擾性弱,以及其傳輸速度和傳輸距離的限制,使其通信能力受到嚴重的局限。

CAN 總線屬于工業現場總線,是一種有效支持分布式控制或實時控制的串行通信網絡。與一般的通信總線相比,CAN 總線網絡各節點之間的數據通信實時性強,通信速率最高可達1Mb/s,但傳輸距離與速率成反比例。CAN 總線適用于大數據量短距離或者長距離小數據量,實時性要求比較高的通信。

以太網通信是一種高速、可靠的通信方式,目前10、100Mb/s的快速以太網已開始廣泛應用,1Gb/s以太網技術也逐漸成熟。且通信網絡具有更高的帶寬和性能,通信協議有更高的靈活性,是任何一種通信手段所無法比擬得。

根據各接口的特點,在POS中串口主要用于器件間的低速數據傳輸,如與監控上位機間的數據傳輸;CAN 總線通信主要用于與載荷間的高速數據傳輸;以太網通信主要用于高速數據的存儲傳輸。本文提出一種多線線程的通信方案,采用以太網通信和串口通信并行使用,解決了高速數據傳輸和實時監控的問題。

1.2 多線程通信設計總體方案

MFC中有兩類線程,分別稱之為用戶界面線程和工作者線程。用戶界面線程擁有自己的消息隊列和消息循環來處理界面消息,可以與用戶進行交互;工作者線程沒有消息循環,一般用來完成后臺計算和維護任務。本文提出的多線程方法總臺方案是:在工作者線程中開啟一個以太網通信工作線程,利用Windows Socket 控件建立了基于TCP/IP協議的以太網通信[4-7],在軟件后臺運行,實現與POS系統高速數據的傳輸;在用戶界面線程運行串口通信線程,利用MSComm 控件設計串口通信[8-11],實現與用戶的交互,實現對POS系統狀態的實時監控;利用工作者線程與用戶界面線程擁有各自的消息響應機制,不會產生干擾的特性,實現了以太網和串口并行通信。總體設計方案流程如圖2所示。

圖2 多線程通信設計流程

2 多線程通信設計

2.1 串口通信設計

MSComm 控件有兩種處理通信的方式,一種是事件驅動方式;另一種是定時或不定時查詢方式。本次設計要實現對POS系統的實時監控,因此對程序的實時性和速度要較高要求,所以本次設計選擇了事件驅動方式。串口通信設計流程如圖3所示。

(1)對MSComm 控件的進行初始化配置

將MSComm 控件通信端口設置為端口1;波特率為9600,無校驗位,8位數據位,1位停止位;以二進制方式接收數據;當緩沖器有數據就觸發OnComm 事件;每次都將緩沖區的數據全部接收。

(2)編寫OnComm 事件處理函數

利用GetCommEvent()函數獲取串口事件,當返回值為2時表示緩沖區有數據;將緩沖區的數據提取出來。

(3)利用SetPortOpen函數打開串口

BOOL CMSComm::SetPortOpen (BOOL Value)

當Value設置為TURE 時串口打開;設置為FALSE則串口關閉。

(4)利用函數通過串口向POS系統的下位機發送指令

2.2 以太網通信設計

Windows Socket支持兩種類型的套接字,即流式套接字 (SOCK _STREAM)和數據報套接字 (SOCK _DGRAM)。因為POS系統的復雜性,和考慮系統安全可靠性要求,本次設計采用的是流式套接字。且采用TCP/IP協議,上位機監控軟件作為客戶端,POS系統作為服務器。以太網通信設計流程如圖4所示。

圖4 以太網通信流程

(1)以太網初始化,加載套接字數據庫,創建流式套接字,將套接字設為非阻塞模式。

(2)利用WSAAsyncSelect函數建立套接字的事件通知

(3)添加網絡事件處理函數OnSockt。

(4)利用connect函數創建與POS系統服務器的連接

2.3 多線程設計

多線程設計流程如圖2所示。串口通信界面線程位于主線程中,完成MSComm 控件的初始化后,就開啟串口通信界面線程,因此多線程的設計主要是針對以太網工作線程設計。

(1)創建Windows Socket工作線程的入口函數

DWORD WINAPI ThreadFun(LPVOID pThread)

創建工作線程時,首先要先建立線程的入口函數,當工作線程被啟動后會轉入該函數,并且函數退出時工作線程就會結束。ThreadFun是入口函數名,也就是工作線程開始執行時代碼所在的函數地址,pThread是工作線程傳遞的入口函數的參數。如2.1節所述WSAAsyncSelect函數實現套接字自主監控網絡事件的功能,一旦啟動該函數,將啟動一個網絡事件監控的一個線程,因此若在主線程即界面線程中就調用該函數,則會與串口消息的OnComm 事件處理函數發生沖突,因此將在工作線程的入口函數調用WSAAsyncSelect函數,為其開辟另一個工作線程,實現網絡通信和串口通信的并行執行。

(2)利用CreatThread函數創建Windows Socket工作線程

參數lpThreadAttributes用來決定線程句柄是否可以被子線程繼承,此處將其設為NULL,令返回的句柄不能被繼承;參數dwStackSize指定新線程的堆棧的大小,將其設為0,線程將與進程的主線程堆棧相同;參數lpStartAddress是指向線程的入口函數,即2.3 節 (1)中所建立的函數;參數lpParameter是線程傳遞給線程入口函數的參數;參數dwCreationFlags設為0,使得線程產生后立即執行;參數lpThreadId用來存放返回線程ID。

(3)利用Terminate Thread函數終止線程

BOOL Terminate Thread (HANDLE hThread,DWORD dwExitCode);

3 界面設計及實驗驗證

3.1 界面設計

3.1.1 設計通信接口配置界面

界面由兩部分組成,一個是MSComm 串口通信配置;另一個是Windows Socket 套接字的配置。效果如圖5所示。

通過對相關參數的配置,實現了對MSComm 串口和Windows Socket套接字的初始化,只要啟動連接則建立了與POS系統的連接,可以實現數據傳輸和系統監控。

3.1.2 串口監控主界面設計

監控界面由三大部分組成,一是系統的通信狀態顯示;二是系統的工作狀態顯示;三是系統的工作參數顯示。效果如圖6所示。

3.2 實驗驗證

實驗采用北京航空航天大學研制的1.5代光纖POS系統,測試系統如圖7所示。

圖5 通信接口配置界面

圖6 串口監控主界面

圖7 測試系統結構

測試結果:POS系統靜態測試實驗驗證了,多方式通信并行性的可行性,上位機既能實時通過串口監控POS系統的工作狀態,同時能通過網口實時存儲GPS接收機的實時衛星導航結果數據。圖8和圖9是測試結果。

圖8 上位機實時串口監控結果

圖9 網口實時存儲的衛星導航結果數據

4 結束語

本文利用多線程方法,提出開辟工作線程,將以太網通信置于后臺運行,避免了與界面線程的串口通信的沖突,因此實現了以太網通信和串口通信并行通信。該方案有效的利用了網絡通信和串口通信各自的優點,使得上位機既能實現與POS系統的高速數據傳輸,又能實現對POS系統監控。但該方案還存在不足之處,這兩種通信方式只是獨自運行,并未進行數據交流共享,下一步可研究兩種通信方式的數據交換共享,充分利用數據信息,擴展其功能。

[1]HAN Rui.Motion compensation system for SAR based on GPS/IMU intetgrated navigation [J].Journal of Chinese Inertial Technology,2013,21 (3):308-311 (in Chinese). [韓銳.一種基于GPS/IMU 組合導航的機載SAR 運動補償方案[J].中國慣性技術學報,2013,21 (3):308-311.]

[2]YANG Sheng,FANG Jiancheng.Design and realization of POS data acquisition and processing system based on double DSP [J].Chinese Journal of Scientific Instrument,2008,29(9):1822-1826 (in Chinese). [楊勝,房建成.基于雙DSP的POS數據采集與處理系統的設計與實現 [J].儀器儀表學報,2008,29 (9):1822-1826.]

[3]FANG Jiancheng,ZHANG Zhou,GONG Xiaolin.Modeling and simulation of transfer alignment for distributed POS [J].Journal of Chinese Inertial Technology,2012,20 (4):379-385 (in Chinese).[房建成,張舟,宮曉琳.機載分布式POS傳遞對準建模與仿真 [J].中國慣性技術學報,2012,20(4):379-385.]

[4]ZHOU Kun,FU Desheng.Data transmission and security on net based on Windows socket[J].Computer Engineering and Design,2007,28 (22):5381-5383 (in Chinese). [周坤,傅德勝.基于Windows Socket的網絡數據傳輸及其安全 [J].計算機工程與設計,2007,28 (22):5381-5383.]

[5]GONG Chao,GONG Liang.TCP/IP-based OPC communication between heterogeneous platforms [J].Computer Engineering,2008,44 (21):62-64 (in Chinese).[鞏超,宮亮.基于TCP/IP的異構平臺OPC通信 [J].計算機工程,2008,44 (21):62-64.]

[6]XIAO Meihua,YU Liquan.Model extraction and reliability verification on SOCKET communition program [J].Computer Science,2012,39 (11):102-106 (in Chinese). [肖美華,余立全.SOCKECT 通信程序模型抽取及可靠性驗證 [J].計算機科學,2012,39 (11):102-106.]

[7]WANG Yuanyang,ZHOU Yuanping.The accomplishment of multi-pthread communication based on socket model in the Linux[J].Microcomputer Information,2009,25 (5-3):70-72 (in Chinese).[王遠洋,周淵平.Linux下基于socket多線程并發通信的實現[J].微計算機信息,2009,25 (5-3):70-72.]

[8]WANG Jianxin,YAN Jun.Application of MSComm and Multthread in data acquisition system [J].Computer Applications and Software,2006,23 (4):134-136 (in Chinese). [王建新,嚴駿.MSComm 和多線程在數據采集系統中的應用 [J].計算機應用與軟件,2006,23 (4):134-136.]

[9]ZHANG Guolong,XU Xiaosu.Design of simulation inertial measurement units based on multithreading of VC++ [J].Journal of Chinese Inertial Technology,2009,17 (1):20-23(in Chinese).[張國龍,徐曉蘇.基于VC++多線程技術的模擬慣性測量組件設計 [J].中國慣性技術學報,2009,17(1):20-23.]

[10]QU Wenxin,FAN Xiaoya.Research progress in memory technique of the multi-core and multi-thread processor [J].Computer Science,2007,34 (4):13-16 (in Chinese).[屈文新,樊曉椏.多核多線程處理器存儲技術研究進展 [J].計算機科學,2007,34 (4):13-16.]

[11]FENG Junyu,DAI Qingyun.Realtime data collecting system basing on Multi-thread serial communition technology [J].Microcomputer Information,2006,22 (10):149-152 (in Chinese).[馮峻域,戴青云.基于多線程串口通信的生產數據實時采集系統[J].微計算機信息,2006,22 (10):149-152.]

猜你喜歡
界面系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
人機交互界面發展趨勢研究
主站蜘蛛池模板: 亚洲成aⅴ人片在线影院八| 国产主播在线一区| 国产精品偷伦在线观看| 中文字幕乱妇无码AV在线| 欧美精品不卡| 99伊人精品| 免费看av在线网站网址| 国产成人AV男人的天堂| 日韩国产无码一区| 久久亚洲日本不卡一区二区| 国产欧美在线| 久久这里只有精品66| 国产又粗又猛又爽| 日韩在线播放欧美字幕| 日本精品视频| 国产成+人+综合+亚洲欧美| av在线人妻熟妇| 午夜丁香婷婷| 亚洲成网站| 亚洲精品第一在线观看视频| 三上悠亚一区二区| 国产超薄肉色丝袜网站| 欧美性精品| 99在线视频网站| 萌白酱国产一区二区| 亚洲国语自产一区第二页| 看国产一级毛片| 国产欧美在线观看一区| 亚洲欧美国产视频| 国产在线无码一区二区三区| 国产乱人视频免费观看| 欧美日韩资源| 日日摸夜夜爽无码| 在线综合亚洲欧美网站| 免费a级毛片18以上观看精品| 中日无码在线观看| 日本三区视频| 美女扒开下面流白浆在线试听 | 亚洲熟女中文字幕男人总站| 熟妇人妻无乱码中文字幕真矢织江| 爱做久久久久久| 麻豆精品久久久久久久99蜜桃| 欧美国产在线精品17p| 久久精品无码国产一区二区三区| 欧美一区二区啪啪| 午夜不卡福利| 亚洲一区二区三区中文字幕5566| 国产精品人人做人人爽人人添| 国产精品第一区在线观看| 精品久久人人爽人人玩人人妻| 亚洲无码日韩一区| 久久人搡人人玩人妻精品 | 精品福利一区二区免费视频| 久久婷婷综合色一区二区| 伊人久久大香线蕉影院| 久久中文字幕2021精品| 乱人伦99久久| 日韩欧美在线观看| 国产在线精品人成导航| 亚洲天堂视频网站| 亚洲第一成人在线| 亚洲第一视频网| 综合色区亚洲熟妇在线| 色欲国产一区二区日韩欧美| 久久香蕉国产线看精品| 精品一区二区三区四区五区| 免费无码AV片在线观看中文| 99草精品视频| 国产美女精品一区二区| 亚洲人成网站日本片| 成人国产一区二区三区| 欧洲亚洲一区| 日韩欧美成人高清在线观看| 国产亚洲男人的天堂在线观看| 亚洲视频三级| 91久久夜色精品| 久久这里只有精品23| 91福利国产成人精品导航| 国产日韩精品欧美一区灰| 亚洲综合极品香蕉久久网| 亚洲欧美日韩中文字幕一区二区三区 | 国产成人精品无码一区二|