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

一種基于VxWorks的高速實時數據記錄系統的設計

2017-03-16 03:40:51韓新麗
電子測試 2017年2期
關鍵詞:嵌入式系統

韓新麗

(中航工業西安航空計算技術研究所,陜西西安,710065)

一種基于VxWorks的高速實時數據記錄系統的設計

韓新麗

(中航工業西安航空計算技術研究所,陜西西安,710065)

本文針對大規模數據記錄系統對嵌入式系統實現的實時性需求,設計了一種采用VxWorks操作系統的嵌入式實現方案,該方案采用模塊化的設計架構,利用VxWorks靈活的多任務調度機制和任務間通信機制,建立了一種多任務間通信模型。通過對任務功能的合理劃分和任務優先級的設置,該嵌入式系統克服了數據記錄過程中數據丟失、數據覆蓋的問題,提高了數據記錄的實時性和可靠性要求。

數據記錄;信號量;環形緩沖區;消息隊列

0 引言

隨著電子信息產業的迅速發展,數據記錄系統越來越廣泛地應用在各個領域,例如導彈跟蹤、高分辨雷達成像、高能物理、電波天文學以及航空航天測試等. 這些應用領域要求數據必須快速、可靠地記錄在存儲設備中,用作后續的分析和使用.

由于數據規模的擴大,以往的單任務操作系統或以時間片輪轉調度為基礎的多任務操作系統無法滿足系統的實時性需求,因此需要采用一個多任務硬實時的嵌入式操作系統。VxWorks因其良好的實時性、可靠性被廣泛的應用于通信、軍事、航空、航天等領域。

本文為了解決數據記錄系統高實時性難于實現的問題,設計了一種基于VxWorks的嵌入式方案。本文介紹了系統功能要求,分析了多任務管理與任務優先級設置,建立了多任務間的數據通信模型,最后給出了嵌入式接口實現。

1 系統功能要求

本數據記錄系統的功能要求如下:

a.記錄4路HB6096總線信號;

b.記錄4路差分模擬量輸入(AFTI);

c.記錄4路高速串口信號,為差分曼徹斯特碼編碼,RS422電平信號;

d.接收1路RS422信號;

e.輸出4個通道,每個通道6路15V地/開離散量;

f.提供1路28V/開離散量;

g.提供可快速拔插的大容量固態電子盤,可連續記錄外設數據超過8h;

h.提供串行及網絡調試接口;

i.具有瞬時掉電保護功能;

j.數據以FAT32的文件形式存于電子盤上;

l.自動判斷電子盤容量,刪除老舊文件。

2 系統硬件環境

為了滿足本系統的功能需求,本系統的硬件包括機箱、母板、CPU模塊、I/O模塊、記錄模塊和電源模塊等部件。硬件外部接口關系圖如圖1所示。

CPU模塊采用PowerPC系列的MPC8245處理器,64MB SDRAM, 128MB 用戶Flash,4個32位定時器。

I/O模塊功能如下:

a.提供HB6096總線接口,總線速率可軟件配置為100kbps;

b.提供差分模擬量輸入及A/D轉換電路;

c.提供4通道、每通道6路的15V開/地離散量輸出;

d.提供1路28V/開路離散量輸出;

e.底板總線為LBE總線。

為滿足容量要求,記錄模塊提供了1塊16GB的IDE總線接口電子盤。

電源模塊的輸入為28V直流電源,為各模塊正常工作提供+5V、±15V直流電壓。

3 軟件設計

數據記錄系統軟件主要由VxWorks操作系統和應用軟件組成。VxWorks操作系統包括:操作系統內核、BSP(板級支持包)、網絡系統、文件系統、I/O系統,應用軟件包括配置程序、數據處理程序和掉電處理程序。

圖1 數據記錄系統外部接口關系圖

配置程序用于設定系統參數、檢測串口及網口,檢測電子盤容量、獲取系統時間。

數據處理程序主要包括高速串口記錄任務、HB6096記錄任務、差分模擬量記錄任務、命令處理任務,每個任務由相應的輔助定時器來管理,定時器周期性地采集不同通道的數據,記錄任務實時地將數據以文件形式記錄到電子盤,采用數據類型、目標機的啟動次數及當前時間作為記錄文件的名字,這樣方便地面回放及分析,日志文件記錄系統運行期間的異常情況。

掉電處理程序主要負責目標機掉電時安全地關閉文件。

該系統實現的難點在于如何滿足實時采集數據并正確地記錄下來,因此系統設計的重點就放在如何提高系統的實時性及可靠性方面。

3.1 多任務管理與優先級

VxWorks支持兩種任務調度算法,第1種為基于任務優先級的搶占式調度算法,第2種為時間片輪轉調度算法。由于本系統數據采集的實時性有較高的要求,故采用搶占式調度算法。該算法的基本思想是具有更高優先級的任務一旦進入ready狀態,將搶占當前運行任務的CPU資源,進行上下文切換后進入運行狀態。該算法的好處是可以滿足實時調度的需求,以更快的速度響應具有更高優先級的任務。其缺點是在多個任務具有相同優先級的情況下,如果當前任務不被阻塞,它將一直占用CPU資源,造成其它同優先級或低優先級的任務不能執行,所以采用這種算法時要特別注意任務的結構設計。

在嵌入式實時多任務設計中,關鍵是如何保證軟件的實時性。本系統設計中,實時性的保證主要包括多任務的劃分、多任務的優先級設置、多任務間的通信方式設計和中斷處理程序的設計幾個方面。其中任務的合理劃分和任務優先級的合理設置對系統的實時性起著至關重要的作用。

通過文中對系統功能的描述,將不同類型的數據劃分為不同的任務來處理,并建立相應的寫文件任務。高速串口數據量大,采集周期為25ms, HB6096數據量較小,采集周期為12.5ms,差分模擬量數據量最小,但采集周期為2ms,在調試過程中將高速串口的優先級設為最高,HB6096次之,差分模擬量的優先級最小,這樣任務間配合比較合理。鑒于差分模擬量的采集周期最短,所以采集20次差分模擬量數據后才進行一次寫文件操作,這樣可避免頻繁操作電子盤引起采集數據受影響。

3.2 多任務間通信模型的設計

VxWorks操作系統支持多種任務間通信方式,主要包括信號量、消息隊列、共享內存、管道、信號等,不同的通信方式有不同的適用條件和響應速度。在任務的互斥與同步操作中,信號量是最快的一種通信機制。另外,消息隊列作為一種任務之間的高級通信機制,提供了完善的響應式交互信息方式,在單CPU系統中廣泛應用。在本數據記錄系統中,為了達到更加快捷高效的任務間信息傳遞,本系統結合使用了信號量和消息隊列,同時還應用了共享內存的環形緩沖區機制來進行任務間的數據交互。

同類型數據的接收任務和寫文件任務可能會同時訪問全局變量或共享內存,這時如果沒有一定的保護機制可能會產生意想不到的后果。本系統應用二進制信號量來協調任務間的同步和互斥。采用這種響應速度最快的互斥與同步手段也加強了系統響應的實時性。當任務需要訪問全局變量或共享內存時,首先通過semTake()操作來獲取一個信號量。這里將semTake()的等待時間設為WAIT_FOREVER,即任務若獲取不到該信號量則永久阻塞。

基于本系統分層化、模塊化的思想,處于不同層中任務的工作狀態是相互獨立的,因此需要進行數據交互時只需要操作消息隊列即可。驅動層將數據加上幀頭組成數據后將其作為消息發送到消息隊列中,應用層的接收任務一直等待接收下層的消息,一旦消息隊列中有未處理的消息,則馬上處理。這種通信方式可以有效的避免由于外部接收數據過快或者上層寫文件較慢造成的數據覆蓋問題,起到了數據緩沖處理的作用。對于控制幀信息來說,將其優先級設置為高于普通的數據幀,這樣新收到的控制幀信息可以插在消息隊列的頭部,提高了系統對關鍵控制幀的響應速度,這同時提高了系統的實時性。

嵌入式系統的板載RAM資源非常寶貴,在本系統中,數據幀的最大長度為514個字節,同時由于數據收發頻率非常快,所以數據處理需要占較多內存空間。由于采用的消息隊列通信機制在進行消息傳遞時采用的是內存拷貝機制,這樣當消息隊列中的消息長度過大時會影響隊列的操作速度和占用較多的內存資源,進而會影響系統的實時性。

本系統采用的解決方案是在驅動層和應用層各設置一個環形緩沖區,驅動層將數據放入環形緩沖區,然后將信息幀地址和信息幀長度作為消息發送到消息隊列中。應用層由于寫電子盤的速度比接收數據的速度慢,所以接收任務將數據先放在環形緩沖區中,再以信號量的方式通知寫任務將數據寫入電子盤中,這種方法有效地提高了數據的處理速度及系統響應的實時性。

實際編程過程中,由于每個數據采集任務都是采用輔助定時器控制采集周期,定時器計時結束后發送一個中斷信號,調用中斷服務處理函數發起采集數據操作,中斷處理不能占用太多時間,否則會引起數據丟失,所以定時器中斷中只是調用semGive()系統函數發送一個信號量,由發起任務具體處理采集記錄操作。

3.3 數據通信接口

嵌入式系統最終要與外部進行數據交互,在實時系統設計中,I/O操作的可靠性和實時性也是系統設計的重要指標。

VxWorks的I/O系統可以提供簡單、統一、與設備無關的接口,應用程序通過打開指定的文件來操作I/O設備。一個指定的文件可以是一個非結構化的原始設備,如:一個串行通信通道或一個任務間管道。本系統中的RS422就采用這種驅動,將串口的操作視為對一個文件的操作,不用關心設備或程序驅動的細節,因此該驅動相對開發起來容易一些。

高速串口驅動、HB6096驅動及差分模擬量驅動由于數據量比較大,采用繞過操作系統,直接訪問設備的驅動程序,這樣可以高效訪問設備,減少了系統開銷和操作時間。

由于用戶要求將采集的數據以FAT32的文件格式來存儲,所以電子盤驅動需以塊設備的驅動程序來開發,是本系統中比較復雜的驅動。在VxWorks中,文件系統是作為驅動程序掛接到I/O系統中,應用程序對設備的I/O操作都是由I/O系統傳遞給文件系統,文件系統來訪問真正的電子盤驅動程序。

4 結束語

本文提出了一種基于VxWorks實時操作系統的協同數據記錄嵌入式方案,設計了數據記錄系統的整體框架。該系統充分利用了VxWorks的多任務支持,采用信號量和消息隊列保證任務間的同步和通信,利用任務優先級的高低來保證對外部響應的實時性。通過合理的任務劃分和任務優先級設置,該嵌入式系統基本滿足數據記錄的實時性和可靠性需求,同時,該設計方法對其它嵌入式應用也具有一定的借鑒作用。

[1]閆得杰.基于VxWorks 的多任務程序設計及通信管理[J].光機電信息,2009, 27(9):64-66

[2]王永亮, 李秀娟. 嵌入式多任務程序設計[J]. 電子科技,2010, 23(1): 94-96.

[3]陳智育, 溫嚴軍, 陳琪等. VxWorks 程序開發實踐[M]. 北京:人民郵電出版社, 2004-05: 107-127.

[4]楊揚.VxWorks 下數據采集卡驅動程序開發[J].現代電子技術,2008,31(7):113-114.

[5]李方敏,VxWorks高級程序設計,清華大學出版社,2004年5月

[6]周啟平,張楊,VxWorks下設備驅動程序及BSP開發指南,中國電力出版社,2004年9月

A Design of High Speed Realtime Data Recorded Software Based on VxWorks

Han Xinli
(Xi’an Aeronautics Computing Technique Research Institute, AVIC,Xi’an Shanxi,710065)

In order to fulfill the high real-time requirement that the mass datas recorded software needs in practical design , a scheme is proposed by using an embedded system based on VxWorks. This embedded system takes advantage of the excellent real-time performance, multitask scheduling technology ofVxWorks and the modularized and layered designing concept. A model which based on the multitask communication mechanism is established. By reasonable division of the task function and the priority settings of the tasks, the system overcame problem that data is lost and overlaid during recording , the system designed designed implements the high real-time and reliability requirement in mass datas recorded software.

data recording;binary semaphore;ring buffer;message queue

猜你喜歡
嵌入式系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開發平臺
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
主站蜘蛛池模板: 国产一级特黄aa级特黄裸毛片| 欧美成人免费午夜全| 欧美国产在线看| 国产h视频免费观看| 天天操精品| 五月婷婷亚洲综合| 日韩无码真实干出血视频| 欧美精品导航| 国产v精品成人免费视频71pao| 中文字幕人成人乱码亚洲电影| 制服丝袜一区| 在线看片中文字幕| 国产综合亚洲欧洲区精品无码| 亚洲色精品国产一区二区三区| 一区二区三区国产精品视频| 男女性色大片免费网站| 亚洲精品成人片在线观看| 日本欧美在线观看| 九色综合视频网| 亚洲中文久久精品无玛| 精品视频在线一区| 成人福利视频网| 中国黄色一级视频| 国产69精品久久| 久久精品国产91久久综合麻豆自制| 久久综合婷婷| 四虎影视无码永久免费观看| 亚洲中文字幕无码爆乳| 亚洲bt欧美bt精品| 亚洲中文在线视频| 国产微拍精品| 国产精品一区不卡| 亚洲国产一区在线观看| 91在线国内在线播放老师| 米奇精品一区二区三区| 国产亚洲欧美在线视频| 99热这里都是国产精品| 热re99久久精品国99热| 欧美激情,国产精品| 97se综合| 欧美午夜小视频| 亚洲精品欧美日本中文字幕| 人人妻人人澡人人爽欧美一区| 啪啪免费视频一区二区| 国产亚卅精品无码| 狠狠色成人综合首页| 国产精品中文免费福利| 亚洲福利网址| 性欧美精品xxxx| 综合天天色| 天堂成人av| 欧美国产菊爆免费观看| 亚洲日韩每日更新| 日本亚洲欧美在线| 国产在线精品美女观看| 国产草草影院18成年视频| 日本欧美午夜| 欧美激情二区三区| 人妻丰满熟妇AV无码区| 九色视频线上播放| 中文字幕欧美日韩| 中国一级特黄视频| 麻豆国产原创视频在线播放| 精品久久久久久久久久久| 好久久免费视频高清| 1769国产精品免费视频| 日韩色图在线观看| 在线国产91| 亚洲水蜜桃久久综合网站 | 激情六月丁香婷婷| 免费一级毛片在线观看| 国产超碰在线观看| 色综合久久无码网| 国产综合在线观看视频| 无码中文AⅤ在线观看| 欧美国产在线看| 国产网站黄| 性69交片免费看| 国产三级国产精品国产普男人 | 亚洲欧州色色免费AV| 国产中文在线亚洲精品官网| 色悠久久综合|