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

基于C#的船用柴油機監(jiān)控系統(tǒng)軟件設(shè)計

2017-05-16 07:53:54游伏兵雷本鑫陳澤亮陳智君高超
船海工程 2017年2期
關(guān)鍵詞:界面數(shù)據(jù)庫系統(tǒng)

游伏兵,雷本鑫,陳澤亮,陳智君,高超

(武漢理工大學 能源與動力工程學院,武漢 430063)

基于C#的船用柴油機監(jiān)控系統(tǒng)軟件設(shè)計

游伏兵,雷本鑫,陳澤亮,陳智君,高超

(武漢理工大學 能源與動力工程學院,武漢 430063)

針對國產(chǎn)柴油機監(jiān)控系統(tǒng)技術(shù)不成熟、測量精度不高及自主研發(fā)能力不足等問題,以某中速船用V12缸型柴油機為原型,運用C#語言開發(fā)一套柴油機安保監(jiān)控系統(tǒng)軟件。運用該軟件可實現(xiàn)對柴油機的運行工況的實時監(jiān)控。

CCP協(xié)議;多線程;數(shù)據(jù)庫;人機交互

由于我國的國產(chǎn)監(jiān)控系統(tǒng)的起步較晚,技術(shù)并不成熟,較多監(jiān)控系統(tǒng)仍在使用物理儀表進行狀態(tài)監(jiān)測。這種監(jiān)測方法的監(jiān)測精度往往不高,且自動化水平較低,很多儀器仍需手動操作。目前,應用于實際船舶的柴油機監(jiān)控系統(tǒng)產(chǎn)品主要來自國外[1-3]。實現(xiàn)對柴油機的自動化監(jiān)控,提高柴油機的監(jiān)測精度,突破國外相關(guān)公司的技術(shù)壟斷,成為目前國內(nèi)監(jiān)控系統(tǒng)行業(yè)亟需解決的問題。本文作者以某V12缸型柴油機為對象,開發(fā)一套監(jiān)測系統(tǒng),以實現(xiàn)對柴油機的自動化監(jiān)測。

1 監(jiān)控系統(tǒng)軟件設(shè)計原理

柴油機監(jiān)控系統(tǒng)是指能完成主機的控制、監(jiān)測及報警、故障的診斷、安全保護等功能的一個獨立完整的系統(tǒng),其主要功能有:

1)監(jiān)測采集重要參數(shù)。通過人機界面予以顯示。

2)報警。人機界面及集控臺同時予以警告。

3)安全保護。由人機界面顯示并通過下位機進行安保動作。

4)操控主機。通過集控臺進行主機啟停及加、減速等操作。

其主要組成包含硬件模塊和軟件模塊,其中硬件部分由監(jiān)測模塊(MU)、邏輯控制模塊(LCU)和安保模塊(ESU)組成;軟件部分在集控臺(ECR)上的PC機中運行,硬件部分通過工控機內(nèi)的CAN卡PCI9820I的端口1(CAN1)與PC機通信,同時PC機通過CAN卡的端口2(CAN2)與ECU進行通信,此外監(jiān)測模塊也通過CAN2總線與ECU進行通信。安保監(jiān)控系統(tǒng)的組成見圖1。

2 監(jiān)控系統(tǒng)軟件設(shè)計思路

要實現(xiàn)上述功能,需要將采集到的各通道值傳遞至上位機,上位機將接收到的數(shù)據(jù)存儲在本地磁盤,同時將數(shù)據(jù)及通道信息顯示在界面上。因此,柴油機監(jiān)控系統(tǒng)軟件主要由通信、數(shù)據(jù)庫、人機界面等幾個模塊組成.。

柴油機安保監(jiān)控軟件主要功能是完成系統(tǒng)輸入和界面輸出顯示,在完成界面初始化并進入系統(tǒng)后,首先進行系統(tǒng)初始參數(shù)設(shè)置,包括軟件系統(tǒng)自身運行的必要參數(shù)設(shè)置和下位機運行參數(shù)設(shè)置,其中下位機的運行參數(shù)設(shè)置通過CAN通信發(fā)送到下位機完成初始化工作。隨后系統(tǒng)由上位機向下位機發(fā)送數(shù)據(jù)采集命令,進入正常的數(shù)據(jù)采集狀態(tài),接收下位機發(fā)送來的數(shù)據(jù),進行參數(shù)、狀態(tài)、報警的實時監(jiān)測,并保存這些狀態(tài)數(shù)據(jù),以便進行歷史參數(shù)、狀態(tài)、報警的記錄查詢。程序運行流程見圖2。

確定好系統(tǒng)程序運行流程后,通過構(gòu)建不同的類和方法再組成C#中的命名空間來實現(xiàn)其功能,程序中自定義的命名空間主要有以下幾個。

1)數(shù)據(jù)庫命名空間(DataBase_System):主要用于配置和操作數(shù)據(jù)庫。

2)通信命名空間(CAN_System):主要用于實現(xiàn)CAN1和CAN2數(shù)據(jù)傳輸和顯示,包含CAN用函數(shù)結(jié)構(gòu)體,協(xié)議結(jié)構(gòu)體,站地址信息,接收和發(fā)送的線程等。

3)應用程序命名空間(Engine_Monitoring_System):控制上述所有的對象,確定程序特點,負責應用程序初始化、運行和清除。將各個窗口界面相關(guān)的類和函數(shù)、功能類、控件類、通信類、數(shù)據(jù)庫類等通過命名空間的形式組織在一起,從而實現(xiàn)整個柴油機安保監(jiān)控系統(tǒng)程序的運行。

3 監(jiān)控系統(tǒng)軟件具體實現(xiàn)

3.1 數(shù)據(jù)庫設(shè)計

柴油機監(jiān)控系統(tǒng)軟件的核心是對柴油機運行參數(shù)的監(jiān)測和顯示,實現(xiàn)運行中的柴油機的安全保護和操縱,附加系統(tǒng)參數(shù)的設(shè)置功能,是以數(shù)據(jù)為中心的體系結(jié)構(gòu),依靠數(shù)據(jù)聯(lián)通各個部分并使之協(xié)調(diào)工作,故可將其數(shù)據(jù)結(jié)構(gòu)組成設(shè)計成圖3所示的結(jié)構(gòu)。

從系統(tǒng)的數(shù)據(jù)流向上看,可將系統(tǒng)數(shù)據(jù)分為下位機發(fā)送數(shù)據(jù)和上位機發(fā)送數(shù)據(jù),其中系統(tǒng)參數(shù)設(shè)置是上位機發(fā)送給下位機的數(shù)據(jù),顯示的狀態(tài)和參數(shù)由下位機發(fā)送給上位機。

軟件界面上顯示的通道實時數(shù)據(jù)來自于下位機采集的數(shù)據(jù),顯示的通道信息則來自于數(shù)據(jù)庫。本文采用數(shù)據(jù)庫結(jié)構(gòu)中的二維表結(jié)構(gòu)對系統(tǒng)中的實體集進行描述,它是由許多包含字段的記錄組成的,每個字段對應一個對象屬性。可根據(jù)實際的要求,對字段的長度、數(shù)據(jù)類型及能否配置進行設(shè)置,部分二維表如下。

1)T_AnSesorChannelInfo(模擬量通道表)用于管理模擬量各通道的信息。

2)T_ChannelBasicInfo(配置信息基本表)用于管理所有通道的配置信息。

各表的結(jié)構(gòu)均由字段名和數(shù)據(jù)類型組成,由于模擬量通道表包含的信息較為全面,故此處以模擬量通道表為例來展示二維表的內(nèi)部結(jié)構(gòu),見表1。

表1 模擬量通道表的結(jié)構(gòu)

在設(shè)計好各個數(shù)據(jù)庫后,柴油機安保監(jiān)控程序在結(jié)合系統(tǒng)數(shù)據(jù)庫結(jié)構(gòu)的基礎(chǔ)上,通過包含System.Data、System.Data.SqlClient等命名空間來調(diào)用結(jié)構(gòu)化的語言(SQL語言)對數(shù)據(jù)庫進行管理[4-5]。

3.2 通信設(shè)計

柴油機安保監(jiān)控程序和下位機,以及ECU的通信均采用CAN通信。柴油機監(jiān)控系統(tǒng)的通信包含兩路CAN通信,其中CAN1端口為程序與監(jiān)控單元的通信端口,CAN2端口為程序與電控單元(ECU)的通信端口。上位PC機采用的是工控機,工控機采用PCI9820I型CAN卡與下位機及ECU進行通信。

上位機安保監(jiān)控程序與下位機控制器的通信,涉及到多種模擬量和頻率量等的標定,采用基于CAN通信的CCP標定協(xié)議發(fā)送和接收數(shù)據(jù)。CCP全稱為CAN Calibration Protocol,即CAN標定協(xié)議,是基于主從方式可用于在線參數(shù)標定和實時數(shù)據(jù)采集的CAN總線應用層協(xié)議,通過CCP可完成控制參數(shù)標定、實時數(shù)據(jù)采集和FLASH編程等具體操作。安保監(jiān)控程序與電控單元(ECU)的通信,采用同樣基于CAN并在發(fā)動機中常用的SAE J1939通信協(xié)議進行發(fā)送和接收數(shù)據(jù)。

針對柴油機安保監(jiān)控系統(tǒng)任務(wù)多,通信量大,實時性要求高等特點,程序在設(shè)計時采用多線程技術(shù)。柴油機安保監(jiān)控系統(tǒng)程序通信中主要采用以下幾個線程:數(shù)據(jù)接收線程(threadRAV),掉線重連接線程(threadReConn),數(shù)據(jù)解碼線程(threadDecode),記錄線程(threadRecord),下載線程(threadDwnP)。具體運行流程如下。

1)打開軟件后,程序首先打開CAN設(shè)備,并設(shè)置CAN設(shè)備的一些相關(guān)參數(shù)及進行CAN設(shè)備的初始化,并開啟上述線程。

2)開啟線程后,系統(tǒng)向下位機發(fā)送連接指令與下位機進行通信連接,通信連接上后立即向下位機發(fā)送數(shù)據(jù)采集指令以接收下位機數(shù)據(jù)。若運行中出現(xiàn)掉線,則通過掉線重連接線程(threadReConn)與掉線的模塊重新建立連接。CAN2則是直接接受ECU傳遞過來的數(shù)據(jù)。

3)數(shù)據(jù)采集指令發(fā)出后,接收線程(threadRAV)開始接收下位機數(shù)據(jù),并將數(shù)據(jù)放置于一個隊列中,同時解碼線程(ThreadDecode)會從數(shù)據(jù)隊列的首部取出數(shù)據(jù)進行解碼。數(shù)據(jù)解碼后,解碼線程會將解碼后的數(shù)據(jù)傳遞給記錄線程(threadRecord),將這些數(shù)據(jù)存儲在本地磁盤上供顯示及歷史查詢使用。

4)通信連通后,下載線程(threadDwnP)也會立即運行,并檢查用戶是否修改了配置信息。如有修改,則將修改后的配置信息通過下載線程發(fā)送至下位機。

3.3 程序界面設(shè)計

結(jié)合用戶對監(jiān)控系統(tǒng)界面的要求可將界面劃分如下:

1)主界面,用于顯示柴油機的轉(zhuǎn)速和8個重要通道的數(shù)據(jù),以及上下位機通信連接狀態(tài)。

2)數(shù)據(jù)顯示界面,用于顯示各個通道的實時數(shù)據(jù),并可選擇將其中8個通道的數(shù)據(jù)以曲線的形式顯示在界面上。此外,軟件提供了歷史曲線查詢功能,可查詢在某段時間內(nèi)某一通道的數(shù)據(jù),并以曲線形式顯示在界面上。

3)報警界面,將柴油機運行過程中需要監(jiān)測報警的通道的實時狀態(tài)顯示在界面上,當出現(xiàn)報警時,在界面上以紅色標出。此外,不管當前處于哪一界面,若出現(xiàn)報警則立即跳轉(zhuǎn)至報警界面,以提示用戶出現(xiàn)了報警情況。軟件也提供了報警查詢的功能,用于查詢某段時間內(nèi)出現(xiàn)的報警信息(包括報警通道及報警發(fā)生時間)。

4)打印界面,提供通道數(shù)據(jù)的打印功能,可選擇60個通道進行打印輸出。

5)系統(tǒng)設(shè)置界面,完成下位機配置信息的下載,數(shù)據(jù)庫的備份和恢復,中英文切換等功能。

6)登錄界面:系統(tǒng)提供了兩類權(quán)限,一是普通權(quán)限,能完成系統(tǒng)的監(jiān)視、記錄查詢和打印功能;另一類為管理員權(quán)限,除了擁有普通權(quán)限功能外,還可以進行系統(tǒng)設(shè)置。管理員權(quán)限需在該界面登錄賬號。

設(shè)計好的系統(tǒng)界面主要功能模塊見圖4。

4 監(jiān)控系統(tǒng)軟件功能測試

針對各個界面逐一校核后發(fā)現(xiàn),該系統(tǒng)能根據(jù)通信協(xié)議滿足實時監(jiān)測保護的要求,各通道均能接收正確的數(shù)據(jù)并顯示對應狀態(tài),各界面數(shù)據(jù)刷新時間為1 s。但模擬量生成的曲線波形波動較大,達到3~5 ℃的偏差,波形中存在較大的噪聲,故需要采用軟件濾波器對通道數(shù)值進行濾波,濾掉其波形中所包含的噪聲。

根據(jù)溫度、壓力等模擬量參數(shù)是連續(xù)的值并結(jié)合噪聲干擾因素等情況,采用中位均值限幅濾波。中位均值限幅濾波是將中位均值濾波與限幅濾波相結(jié)合的方法,其具體方法是:對單個通道采集N次,去掉其最大值和最小值后,取其均值作為第一次通道采集到的值,根據(jù)經(jīng)驗判斷溫度是連續(xù)變化的,在極短的時間假設(shè)其變化值為X℃,將第二次中位均值采集到的數(shù)值與第一次采集到的數(shù)值進行比較,若兩者之差小于或等于X,則認為此次采集到的數(shù)值是準確的,此時更新通道顯示的值為第二次的數(shù)值;若兩者之差大于X,則不更新該通道的顯示值;進行第三次中位均值采集的時候,則以第二次通道顯示值為準,依此類推。

濾波前后通道采集的波形對比,見圖5。

5 結(jié)論

采用C#語言并結(jié)合數(shù)據(jù)庫管理技術(shù),進行了柴油機安保監(jiān)控系統(tǒng)軟件的開發(fā)。該軟件可實現(xiàn)對柴油機運行工況的實時監(jiān)控,軟件監(jiān)測精度較高。通過使用此上位機軟件對柴油機進行實時監(jiān)控,能準確把握柴油機運行中的狀態(tài)變化,及時發(fā)現(xiàn)柴油機運行中出現(xiàn)的故障,提高柴油機運行的安全性。本監(jiān)控系統(tǒng)軟件的設(shè)計思路和實現(xiàn)方法,可為國內(nèi)柴油機監(jiān)控以及船舶自動化等領(lǐng)域提供一定的參考。

此安保監(jiān)控系統(tǒng)軟件還有些需要改進的方面,如軟件長時間運行,需要定期對接受的海量數(shù)據(jù)進行處理,既要做到不影響歷史數(shù)據(jù)分析,又需保證數(shù)據(jù)運行空間,處理方法有待進一步優(yōu)化。

[1] 孫培廷.船舶柴油機動力裝置發(fā)展趨勢與環(huán)境關(guān)系的探討[J].航海技術(shù),2000(2):5-7.

[2] 陳越.船用柴油機監(jiān)控系統(tǒng)模塊化設(shè)計技術(shù)研究[D].哈爾濱:哈爾濱工程大學,2009.

[3] 羅福強,楊劍,張敏輝.C#程序設(shè)計經(jīng)典教程[M].北京:清華大學出版社,2014.

[4] 扶松柏.深入體驗C#項目開發(fā)[M].北京:清華大學出版社,2011.

[5] Vidya Vrat Agarwal. C# 2012數(shù)據(jù)庫編程入門經(jīng)典[M].北京:清華大學出版社,2013.

[6] 饒運濤.現(xiàn)場總線CAN原理與應用技術(shù)[M].北京,北京航空航天大學出版社,2003.

[7] 劉運瀟.基于CCP的通用型ECU標定系統(tǒng)研究和設(shè)計[D].上海:上海交通大學,2013.

Marine Diesel Engine Monitoring System Software Design Based on C#

YOU Fu-bing, LEI Ben-xin, CHEN Ze-liang, CHEN Zhi-jun, GAO Chao

(School of Energy and Power Engineering, Wuhan University of Technology, Wuhan 430063, China)

In view of problems of that the domestic diesel engine monitoring system technology is not mature, measurement accuracy is not high and the independent research and development ability is poor, a security monitoring system software was designed by using the C# language based on a V12 diesel. This software was proved to be able to monitor the operation condition of diesel engine in real-time.

CCP protocol; multithreading; Database; HCI

10.3963/j.issn.1671-7953.2017.02.036

2016-06-27

國家部委基金資助項目(2012BAG02B00)

游伏兵(1971—),男,博士,副教授

U664.121

A

1671-7953(2017)02-0153-04

修回日期:2016-09-14

研究方向:柴油機性能及排放

猜你喜歡
界面數(shù)據(jù)庫系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發(fā)方法研究
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
人機交互界面發(fā)展趨勢研究
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 亚洲欧美国产五月天综合| 伊人色综合久久天天| 亚洲黄网视频| 一区二区欧美日韩高清免费| 免费 国产 无码久久久| 国产精品一区二区在线播放| 亚洲香蕉久久| 亚洲国产成人久久精品软件| 免费看av在线网站网址| 日本人妻丰满熟妇区| 日韩久久精品无码aV| 久久九九热视频| 亚洲精品视频免费观看| 99久久这里只精品麻豆| 亚洲二三区| 视频在线观看一区二区| 久久久久亚洲AV成人网站软件| 亚洲欧美日韩成人高清在线一区| 国产浮力第一页永久地址| 九色在线视频导航91| 日韩毛片免费| a毛片免费观看| 国产精品亚欧美一区二区| 天堂久久久久久中文字幕| 国产无码精品在线| 日韩成人午夜| 午夜高清国产拍精品| 无码中文AⅤ在线观看| 午夜视频免费一区二区在线看| 免费欧美一级| 午夜福利免费视频| 国产尤物在线播放| 丝袜亚洲综合| 少妇露出福利视频| 思思热在线视频精品| 亚洲swag精品自拍一区| 99视频精品全国免费品| 婷婷色在线视频| 在线播放国产99re| 青青久视频| 十八禁美女裸体网站| 理论片一区| 亚洲精品天堂自在久久77| 在线观看国产网址你懂的| 国产一区二区三区视频| 欧美日韩一区二区在线免费观看 | 亚洲性日韩精品一区二区| 欧美第二区| 午夜啪啪网| 国产又黄又硬又粗| 国产一区二区免费播放| 国产伦精品一区二区三区视频优播| 国产jizzjizz视频| 国产色图在线观看| 亚洲综合色区在线播放2019| 香蕉精品在线| 国产成人久久777777| 成人自拍视频在线观看| 77777亚洲午夜久久多人| 国产极品美女在线播放| 国产特级毛片aaaaaaa高清| 亚洲欧美激情小说另类| 日韩一区二区三免费高清| 亚洲精品高清视频| 国产成人精品2021欧美日韩| 国产大片喷水在线在线视频| 都市激情亚洲综合久久| 在线看免费无码av天堂的| 福利在线不卡| 国产第一页屁屁影院| 97久久免费视频| 精品人妻一区无码视频| 91亚洲视频下载| 在线观看国产小视频| 国产免费精彩视频| 91偷拍一区| 小13箩利洗澡无码视频免费网站| 国产传媒一区二区三区四区五区| 91久久大香线蕉| 99热国产在线精品99| 99青青青精品视频在线| 亚洲天堂精品在线观看|