《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > SQLite在資產管理與環境監測系統中的應用
SQLite在資產管理與環境監測系統中的應用
徐繼寧,李建芯
(北方工業大學 電氣與控制工程學院, 北京 100144)
摘要: 針對實驗室資產設備品種繁多、報廢周期不一、地址信息變更頻繁、環境安全難保障的特點,提出了將輕量級數據庫SQLite嵌入在一個資產管理與環境監測系統中,利用Qt實現對管理軟件的應用設計開發,最終實現了對實驗室資產設備數據的采集、存儲、管理以及對實驗室溫濕度環境狀態的監測和曲線顯示。
Abstract:
Key words :

  徐繼寧,李建芯

  (北方工業大學 電氣與控制工程學院, 北京 100144)

  摘要:針對實驗室資產設備品種繁多、報廢周期不一、地址信息變更頻繁、環境安全難保障的特點,提出了將輕量級數據庫SQLite嵌入在一個資產管理與環境監測系統中,利用Qt實現對管理軟件的應用設計開發,最終實現了對實驗室資產設備數據的采集、存儲、管理以及對實驗室溫濕度環境狀態的監測和曲線顯示。

  關鍵詞嵌入式系統;SQLite ;Qt ;資產管理;環境監測

0引言

  隨著工程實踐教育的發展,高校的實驗室設備資產數量日益增大,品種類型多樣, 且創新、開放實驗室活動的開展也使得設備的流動性更強,工作環境日益復雜。在新的教育形勢下,如何靈活有效地管理和利用實驗室的資產設備是所有實驗室管理人員面臨的問題。

  當今高校實驗室的設備資產管理有幾個特點:每個品種數量不大但種類繁多;更換、報廢物品周期不一;重要設備需有使用記錄;需要定期進行資產清查;確定重要設備位置等。傳統化的固定資產管理仍是當今高校普遍采用的方式,還是采用紙制標簽,利用手工方式將設備相關信息分類編輯管理[1]。這種管理方式雖然能從一定程度上對資產進行統計管理,但還存在很多固有的缺陷。因為標簽長時間的保存容易損壞,往往會造成信息具有不可追溯性;固定資產信息無法實時追蹤記錄,變更操作繁瑣;實驗室環境狀態缺乏預警機制,更難以保證實驗室環境狀態的安全。 因此本文設計了一個結合RFID技術和嵌入式數據庫的新型資產管理與環境監測系統。

1系統總體設計

  本文設計的實驗室資產管理與環境監測系統框圖如圖1所示。該系統主要分為數據采集端、核心控制器、遠程控制端和報警設備4部分。所有實驗室固定資產配備RFID卡片, 用于表示和記錄設備信息。

  數據采集端完成兩部分任務:(1)由RFID掃描器獲取實驗室內的設備信息;(2)通過各傳感器進行數據采集,進行必要的環境監控。數據最終都由ZigBee網絡傳輸到核心控制器端。其中RFID芯片采用MFRC522,ZigBee芯片采用TI 公司的CC2530。

  控制器基于Linux操作系統開發,其核心芯片是三星的S3C6410。控制器主要任務是完成前端采集的數據的存儲、顯示以及對整個系統的控制。接收前端采集數據,將數據存儲到數據庫中并顯示在基于Qt 4開發的人機交互界面中,利用無線網絡與遠程控制端進行交互。手機、Pad等移動終端設備組成了遠程控制端,它們通過無線WiFi實現與核心控制端通信,可以對核心控制端傳來的數據完成顯示和控制功能。

  為保障重要設備的安全,本系統提供了防盜報警功能。由超高頻RFID掃描器對重要物品進行掃描,當設備非法移出時啟動報警器。超高頻RFID掃描器和報警器組成的報警設備通過有線方式進行通信。

001.jpg

  在該系統中數據庫主要支持的功能有存儲由ZigBee協調器傳來的資產信息、溫度信息和濕度信息等數據,并將數據顯示在本地嵌入式端;同時實現對資產信息數據的添加、刪除、查詢、修改、報廢和變更記錄等功能,對溫濕度信息實現數據曲線顯示功能。

2嵌入式數據庫的選擇

  傳統的數據庫通常要專門的管理以及配置,不僅體積大、不便移植,而且使用也復雜[2]。而嵌入式數據庫不需要在客戶機服務器上的配置服務,它嵌入到了應用程序進程中。輕量級嵌入式數據庫在運行過程中只要比較少的內存,速度快,效果也更加理想。嵌入式數據庫一般也都支持SQL,通過SQL來管理應用程序數據,而不依靠原始的文本文件。

  當前支持多平臺的輕量級嵌入式數據庫主要有Empress、BerkeleyDB、SQLite[3],如表1所示。 表1常用嵌入式數據庫對比數據庫大小/KB特點是否支持SQLEmpress800穩定性強、高速性、多重訪問性支持BerkeleyDB300執行速度快、調度API完成操作支持SQLite250零配置、執行速度快、簡單易用的API支持

005.jpg

  由表1對比可得,SQLite數據庫占內存最小,僅為250 KB,同時提供簡單易用的API接口供開發者使用,因此最適合在實驗室資產管理與環境監測系統中開發使用。

  對于開源的嵌入式SQLite數據庫,它方便使用管理、維護和配置,無需安裝。該數據庫儲存在單一文件系統中,內嵌到應用程序中,支持Mac OS、Linux、Windows、UNIX等各種操作系統[4]。比起目前常見的SQL Server和Oracle數據庫來說,SQLite數據庫不需獨自運行數據庫的驅動系統,數據存取速度很快,是MySQL的1~2倍;支持2 TB數據存儲量。它具有簡潔優化的結構,主要由SQL編譯器、內核、后端3部分組成[5]。在SQLite數據庫體系結構的上部進行編譯查詢語句,在中部執行它,低層處理操作系統的存儲和接口。所有SQL語句通過分詞器和分析器生成語法樹,交由代碼生成器生成可以在SQLite虛擬機中執行的程序集[3,6] 。SQLite憑借較小的體積、簡單的操作以及運行穩定的優點,使之與復雜的商業數據引擎在開發維護方面更占優勢。

3SQLite在資產管理與環境監測系統中的實現

  在本設計系統中,資產信息存入到SQLite數據庫,用于支持用戶對資產信息的檢索、添加、修改、刪除、報廢以及數據變更等功能, 同時實現對環境溫濕度和報警信息的存儲,并以表格、曲線等形式顯示。

  3.1數據庫表的設計

  數據庫中創建了資產信息表、報廢資產信息表、信息變更表、溫度表、濕度表和報警記錄表6張表。資產信息表包含了每條資產的詳細信息,如表2所示,它包含了資產編號、資產名稱等14個字段。由于要對報廢的資產做一定時段的存檔,還需要一張報廢表,報廢表的字段等同于資產信息表。為了方便對資產變動信息進行登記,單獨建立了信息變更表,如表3所示。對環境信息,主要記錄時間和溫濕度值,如表4所示。 表2資產信息表字段名稱數據類型約束可否為空說明資產編號inter主鍵NOT NULL資產編號資產名稱text無NOT NULL資產名稱分類號text無NOT NULL分類號

  表3信息變更表字段名稱數據類型約束可否為空說明變更編號inter主鍵NOT NULL變更編號資產編號inter無NOT NULL資產編號使用者text無NULL使用者存放地點text無NULL存放地點歸屬單位text無NULL歸屬單位改變時間timestamp無NOT NULL改變時間

  表4溫度表字段名稱數據類型約束可否為空說明時間idtimestamp主鍵NOT NULL時間溫度real無NOT NULL溫度值實驗室text無NOT NULL實驗室歸屬單位text無NOT NULL歸屬單位

  3.2Qt下的數據庫的建立

  該系統用Qt進行數據庫的訪問, 采用了QtSQL模塊進行數據庫的驅動,用一套獨立于平臺和數據庫的調用接口進行通信[78]。

  首先創建數據庫鏈接,也就是創建一個QSqlDatabase類的實例,代碼如下:

  QSqlDatabase db= QSqlDatabase::addDatabase(“QSQLITE”);

  db.setDatabaseName(“databasefile”);

  鏈接好數據庫后,要創建數據庫表,代碼如下:

  void ConnDlg::creatDB()

  {QSqlQuery query;

  query.exec(“create table asset(“//創建資產信息表

  “assetid int primary key,”//插入主鍵

  “other varchar(50))”));}

  QSqlQuery類提供了一個接口,用于執行SQL語句。通過SQL語句實現了對數據庫的查詢、添加、刪除和修改等操作。

  3.3資產報廢的數據實現

  為了提高追溯能力和管理水平,實驗室資產報廢后需存檔一段時間,因此需要單獨形成一份報廢資產信息表。資產報廢操作先要將報廢資產信息從資產信息表中復制到報廢資產表中,然后從資產信息表中刪除該信息,如圖2所示。主要代碼如下:

  insert into scraptable(assetid,assetname,...)select assetid,assetname,... from assettable;//復制信息到報廢表

  removeAssetsFromDatabase(assetid);//在資產信息表中刪除該資產信息  

002.jpg

  3.4變更記錄的實現

  實驗室資產是實驗室成員的公共財產,使用過程中部分資產的信息變動較大,尤其是“使用者”和“存放地點”這兩條信息。為此建了一張變更信息表,專門存放每個資產的變更信息, 如圖3所示。每當資產的使用者和存放地點變動時,可以在資產信息窗口中選中要變動的資產,直接添加變更信息到變更信息表中。變更記錄時采用事務方式將變更信息插入到變更信息表中顯示。主要代碼如下:

  QSqlDatabase::database().transaction ;//啟動事務

  scrapModel->insertRecord(-1,record);

  QSqlDatabase::database().commit();//事務結束

003.jpg

  3.5環境監測溫度曲線顯示的實現

  大型貴重設備的環境監測已經成為實驗室不可忽略的問題,該系統用無線傳感網絡方便地實現了實驗室環境參數的監測,主要關注設備周邊的溫濕度變化。為提高可視性,系統采用高性能繪圖圖表Qt C++控件QCustomPlot,可以繪制曲線圖、趨勢圖、柱狀圖。圖4是對實驗室一天中每兩個小時采樣一次數據的溫度變化情況。  

004.jpg

4結論

  本文介紹了一款新型的面向高校實驗室資產管理和環境監測嵌入式系統,文中主要就該系統中輕型數據庫SQLite數據庫的選型、設計和開發作了介紹。作為一個綜合了ZigBee、RFID、嵌入式技術的實用系統,SQLite與Qt的聯合開發對系統的性能完善和提高起到了不可替代的作用,也表明了SQLite數據庫在嵌入式端的優越性,對相關系統的開發有著積極的借鑒意義。

參考文獻

  [1] 毛行標.RFID技術在高校實驗室設備資產信息化管理系統中的應用[J].中國現代教育裝備,2006(11):6970.

  [2] 李強,曾國強,羅群,等.嵌入式數據庫SQLite在核儀器數據管理中的應用[J].核電子學與探測技術,2014,34(8):921925.

  [3] 王峰超,申萍,嚴翔,等.SQLite在機車故障診斷系統中的應用研究[J].鐵道機車車輛,2012,32(4):9093.

  [4] 梁爽,任杰.嵌入式數據庫SQLite在油田監控系統中的應用[J].試驗研究,2014,33(11):2930.

  [5] 張穎,易金花,張曉玉,等.基于嵌入式Linux的上肢康復機器人用戶系統研究[J].電子技術應用,2014,40(5):1417.

  [6] 鄧宗權,蔣向東,王繼岷,等.基于嵌入式Linux汽車智能儀表系統的設計[J].微型機與應用,2014,33(4):2628.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
99精品国产99久久久久久福利| 午夜日韩在线观看| 国产精品视频久久| 欧美视频在线观看免费网址| 欧美大色视频| 美女视频黄 久久| 久久免费视频一区| 久久成人久久爱| 欧美一级大片在线观看| 亚洲欧美综合网| 亚洲欧美日韩国产一区二区| 亚洲色无码播放| 中文国产一区| 亚洲深夜激情| 亚洲性xxxx| 亚洲自拍电影| 性欧美精品高清| 欧美一级二级三级蜜桃| 欧美一区二区视频在线| 欧美影院在线| 久久视频国产精品免费视频在线| 久久国产手机看片| 久久嫩草精品久久久久| 久久综合久久综合九色| 欧美成人a视频| 欧美黄色免费| 欧美日韩国产一区二区三区| 欧美日韩免费在线视频| 国产精品久久久久91| 国产精品一区视频| 国产午夜精品一区二区三区视频 | 99热在线精品观看| 一区二区三区四区五区视频| 亚洲自拍电影| 欧美中在线观看| 亚洲黄色影院| 9色国产精品| 亚洲欧美亚洲| 久久久久国产一区二区| 欧美v日韩v国产v| 欧美日韩视频不卡| 国产精品在线看| 在线看视频不卡| 一本色道久久99精品综合| 午夜精品久久| 亚洲激情视频网| 亚洲午夜精品一区二区| 欧美伊人久久| 麻豆久久婷婷| 国产精品av久久久久久麻豆网| 国产精品综合不卡av| ●精品国产综合乱码久久久久| 亚洲欧洲日产国产综合网| 这里只有精品电影| 欧美在线短视频| 亚洲精品日产精品乱码不卡| 亚洲图片在区色| 欧美影院在线| 欧美精品在线一区二区| 国产精品永久| 亚洲激情六月丁香| 午夜精品久久久久久久99樱桃| 亚洲国产乱码最新视频| 亚洲一级二级在线| 久久精品中文| 欧美日韩中文精品| 国内精品写真在线观看| 日韩网站在线| 亚洲欧美综合网| 亚洲老司机av| 久久国产欧美精品| 欧美日本高清| 国产欧美在线播放| 亚洲国产精品一区二区第一页 | 一区二区三区免费网站| 久久爱91午夜羞羞| 欧美激情第10页| 国产精品夜夜嗨| 91久久久久久国产精品| 香港成人在线视频| 亚洲午夜精品国产| 蜜桃伊人久久| 国产精品嫩草影院av蜜臀| 亚洲国产婷婷| 欧美伊人久久| 亚洲尤物在线视频观看| 蜜臀av性久久久久蜜臀aⅴ| 国产精品激情电影| 91久久夜色精品国产九色| 欧美一区二区三区免费看| 亚洲一区www| 欧美大片免费| 国产亚洲欧美另类一区二区三区| 日韩午夜av| 亚洲精品久久7777| 久久精品国产欧美激情| 国产精品狼人久久影院观看方式| 91久久精品国产91久久性色tv| 欧美专区在线播放| 欧美一级专区| 国产精品久久久久久久久久三级 | 午夜视黄欧洲亚洲| 亚洲欧美日韩国产另类专区| 欧美精品久久99久久在免费线| 激情视频一区二区| 欧美一区二区三区播放老司机| 亚洲伊人网站| 欧美日韩国产123| 亚洲国产另类 国产精品国产免费| 欧美尤物一区| 欧美在线免费一级片| 国产精品久久一级| av成人黄色| 一本一道久久综合狠狠老精东影业 | 久久精品一二三| 国产精品嫩草99av在线| 亚洲少妇自拍| 亚洲一区三区在线观看| 欧美日韩一区二区在线 | 亚洲乱码国产乱码精品精可以看| 最近中文字幕日韩精品 | 久久久99爱| 国产一区二区成人| 欧美影院在线| 久久亚洲春色中文字幕| 国产综合色一区二区三区| 午夜精品久久久久久久男人的天堂| 亚洲一区视频| 国产精品成人一区二区三区吃奶| 亚洲最新在线| 亚洲一区二区欧美日韩| 欧美日韩一区在线| 一本色道**综合亚洲精品蜜桃冫| 亚洲一级黄色av| 国产精品亚洲一区| 亚洲激情视频在线播放| 日韩写真在线| 欧美三级视频在线观看| 亚洲小视频在线| 午夜在线精品| 国产在线视频欧美| 亚洲第一成人在线| 欧美国产丝袜视频| 99精品欧美| 亚洲一区二区三区久久| 国产精品美女在线| 香蕉国产精品偷在线观看不卡| 久久久精品网| 亚洲国产精品久久久久婷婷老年| 99在线热播精品免费99热| 欧美日韩一区二区在线播放| 亚洲午夜在线观看| 久久久精品日韩| 亚洲第一视频网站| 99国内精品久久| 国产精品成人一区二区| 欧美一区二区日韩| 欧美国产日韩精品免费观看| 日韩视频在线一区二区| 欧美一区二区三区免费视频| 国内久久精品视频| 亚洲乱码国产乱码精品精98午夜| 欧美区日韩区| 亚洲综合丁香| 免费不卡在线观看av| 亚洲免费av网站| 欧美诱惑福利视频| 亚洲电影第1页| 亚洲香蕉伊综合在人在线视看| 国产精品热久久久久夜色精品三区| 欧美一区二区精品久久911| 欧美大片一区| 亚洲亚洲精品三区日韩精品在线视频| 久久国产精品99精品国产| 1024欧美极品| 亚洲免费在线看| 黄色一区三区| 亚洲一区二区三区精品动漫| 国内久久精品| 亚洲一区二区三区高清 | 亚洲国产欧美一区二区三区同亚洲 | 亚洲高清在线| 欧美午夜a级限制福利片| 欧美有码视频| 欧美色播在线播放| 亚洲第一精品影视| 欧美三级在线播放| 亚洲电影有码| 国产精品成人aaaaa网站| 亚洲电影免费观看高清完整版在线| 欧美午夜理伦三级在线观看| 亚洲成人在线视频播放| 欧美日本三级| 欧美一级视频精品观看| 欧美日韩mv| 亚洲高清不卡| 国产精品视频不卡| 99精品国产福利在线观看免费| 国产网站欧美日韩免费精品在线观看| 日韩天天综合|