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

        ?

        嵌入式數(shù)據(jù)庫SQLite在發(fā)動機故障診斷系統(tǒng)中的應用

        2013-04-26 07:13:16仝秋紅
        武漢輕工大學學報 2013年2期
        關鍵詞:進程嵌入式故障診斷

        黃 麗,黃 輝,仝秋紅

        (1.武漢科技大學城市學院信息工程學部,湖北武漢430083;2.中國電力工程顧問集團中南電力設計院,湖北武漢430070;3.長安大學汽車學院,陜西西安710064)

        目前,為了滿足快速故障定位和故障診斷的要求,車輛故障診斷系統(tǒng)朝著智能化和小型化的方向發(fā)展,嵌入式技術得到了廣泛的應用。在此類系統(tǒng)中,不便于采用大型的數(shù)據(jù)庫對數(shù)據(jù)進行管理。SQLite嵌入式數(shù)據(jù)庫具有體積小、速度快、維護方便、接口豐富等優(yōu)點,將其應用到發(fā)動機故障診斷系統(tǒng)中,極大提高了故障診斷系統(tǒng)中數(shù)據(jù)管理的效率。

        1 SQLite數(shù)據(jù)庫簡介

        SQLite是一款開源文件型數(shù)據(jù)庫,在嵌入式系統(tǒng)中廣泛應用。它具備一般關系型數(shù)據(jù)庫的基本特征,如SQL語法、事務處理、數(shù)據(jù)表管理和索引。作為嵌入式數(shù)據(jù)庫,又具備容量小、可靠性高、管理簡單、維護方便等特征,生成的數(shù)據(jù)庫文件可以在各個平臺無縫移植,可以靜態(tài)庫和動態(tài)庫的形式植入嵌入式系統(tǒng)中。

        SQLite的主要優(yōu)點[1]如下:(1)源代碼開放。一個完整的數(shù)據(jù)庫在系統(tǒng)中以單文件的形式存在,支持數(shù)據(jù)庫大小至2TB。(2)SQLite并非數(shù)據(jù)庫服務器,它和程序運行在同一進程,速度快,節(jié)省了系統(tǒng)調(diào)度時間。(3)體積小,運行時占用資源少,無需管理,廣泛適用于嵌入式或移動設備。(4)部署數(shù)據(jù)庫操作簡單易行,直接在應用程序的進程中以零配置模式運行。(5)單一磁盤文件,容易實現(xiàn)數(shù)據(jù)庫的共享訪問。(6)簡單易用的API接口。

        2 故障診斷系統(tǒng)設計

        2.1 系統(tǒng)總體設計

        本系統(tǒng)結合故障樹分析法和產(chǎn)生式規(guī)則的診斷專家系統(tǒng),以QT和嵌入式SQLite數(shù)據(jù)庫作為開發(fā)平臺,實現(xiàn)了基于嵌入式數(shù)據(jù)庫的發(fā)動機故障診斷功能,該系統(tǒng)的框架結構如圖1所示。

        圖1 故障診斷系統(tǒng)的框架結構圖

        系統(tǒng)主要由三大部分組成。

        2.1.1 數(shù)據(jù)采樣模塊

        采集傳感器信息,并將這些信息經(jīng)過預處理和轉(zhuǎn)換保存到實時數(shù)據(jù)庫中。主要采集的信息有:燃油壓力、進氣管路的真空度、燃油管內(nèi)的壓力、空氣流量、轉(zhuǎn)速等。

        2.1.2 推理診斷模塊

        整個診斷系統(tǒng)的核心部分,完成對知識庫數(shù)據(jù)的增加、修改、刪除、查詢等操作,運用獲取的診斷信息和相關知識完成診斷任務,并完善系統(tǒng)的知識庫,提高系統(tǒng)診斷能力。主要包括知識庫的知識管理維護和自學習功能、推理機引擎及動態(tài)數(shù)據(jù)庫的實現(xiàn)。

        2.1.3 人機交互模塊

        系統(tǒng)的控制和協(xié)調(diào)機構,通過接口從用戶處獲得信息,引導用戶參與診斷過程,回答系統(tǒng)提出的問題及完成系統(tǒng)相關操作指示。主要以圖形的方式顯示診斷結果,提供豐富多樣的呈現(xiàn)形式,如曲線、表格、消息框等。其中曲線用來顯示溫度和壓力等緩變量的變化趨勢,表格用來統(tǒng)計診斷結果,消息框則以消息方式提供診斷建議。

        2.2 故障樹的建立

        系統(tǒng)根據(jù)故障源和故障現(xiàn)象之間的因果關系構建了故障樹模型。以“發(fā)動機啟動異常振動”為例,建立故障樹如圖2所示。故障樹中從頂事件到底事件的路徑,對應知識庫規(guī)則的前提,基本事件對應規(guī)則的結論,如故障源或故障原因[2]。

        圖2 發(fā)動機啟動異常振動故障樹診斷圖

        2.3 數(shù)據(jù)庫設計實例

        根據(jù)以上分析,設計的“發(fā)動機啟動異常振動”數(shù)據(jù)庫表文件結構如表1—表4所示[3]。

        表1 基本事實數(shù)據(jù)表abnvibration.db

        表2 故障樹數(shù)據(jù)表faltree.db

        表3 規(guī)則前件數(shù)據(jù)表forule.db

        表4 規(guī)則后件數(shù)據(jù)表bkrule.db

        3 SQLite在故障診斷系統(tǒng)中的應用

        3.1 基于API的SQLite3基本數(shù)據(jù)庫操作

        在SQLite提供的C/C++接口中,其中5個APIs屬于核心接口,即數(shù)據(jù)庫操作的5個基本函數(shù),其函數(shù)功能、語法結構及參數(shù)介紹如下[4]。

        3.1.1 sqlite3_open

        打開數(shù)據(jù)庫函數(shù),操作SQLite數(shù)據(jù)庫的入口函數(shù)。

        int sqlite3_open(

        const char*filename, /*數(shù)據(jù)庫文件路徑(UTF-8編碼)*/

        sqlite3**ppDb, /*輸出:SQLite數(shù)據(jù)庫句柄*/

        );

        3.1.2 sqlite3_close

        關閉數(shù)據(jù)庫函數(shù)。

        int sqlite3_close(sqlite3*);/*使用該函數(shù)可以關閉數(shù)據(jù)庫*/

        3.1.3 sqlite3_prepare

        數(shù)據(jù)庫操作函數(shù),執(zhí)行SQL語句。

        int sqlite3_prepare_v2(

        sqlite3*db, /*打開的數(shù)據(jù)庫句柄*/

        const char*zSql, /*UTF8編碼的SQL語句,可以參數(shù)化*/

        int?nByte, /*SQL語句的字節(jié)長度,可以傳遞-1,即字符串以寬字符

        中文字幕日韩精品有码视频| 久久高潮少妇视频免费| 免费蜜桃视频在线观看| 最新国产精品拍自在线观看| 日韩有码在线观看视频| 无码国产精品久久一区免费| 欧美人妻精品一区二区三区 | 99热久久只有这里是精品| 麻豆精品一区二区三区| 久久国产色av免费观看| 韩国三级中文字幕hd久久精品| 欧美亚洲国产精品久久久久| av中文字幕一区人妻| 国产婷婷色一区二区三区在线| 日本一区午夜艳熟免费| 久久亚洲道色宗和久久| 人片在线观看无码| 国产女人乱码一区二区三区| 无码人妻精品一区二区三区夜夜嗨 | 美腿丝袜视频在线观看| 亚洲日韩精品无码av海量| 高中生粉嫩无套第一次| 国产精品理人伦国色天香一区二区| 一区二区三区国产精品| 亚洲视频在线免费不卡| 免费人妻精品一区二区三区| 久久国产偷| 午夜精品人妻中字字幕| 无码少妇丰满熟妇一区二区| 被黑人猛烈30分钟视频| 青草福利在线| 久久精品国产亚洲AV古装片| av在线播放亚洲天堂| 少妇厨房愉情理伦bd在线观看| 欧美精品中文| 中文字幕人成乱码中文| 激情综合色综合啪啪开心| 成人无码α片在线观看不卡| 久久久久无码国产精品不卡| 中文字幕一区二区三区在线视频| 最新日本人妻中文字幕|