張掖市質(zhì)量檢驗檢測研究院 鄔曉燕 邊英梅 朱志斌
針對傳統(tǒng)民用秤檢定過程中數(shù)據(jù)記錄流程繁瑣、檢定數(shù)據(jù)是否真實等問題,本文利用物聯(lián)網(wǎng)技術(shù)設(shè)計并實現(xiàn)了一款民用秤檢定系統(tǒng),該系統(tǒng)通過檢定側(cè)、服務(wù)側(cè)、管理側(cè)的軟硬件設(shè)計實現(xiàn)了檢定流程的在線控制及檢定數(shù)據(jù)的真實性核驗等功能。系統(tǒng)在檢定側(cè)使用QT 語言進行移動端程序設(shè)計使用的檢定側(cè)程序具有一定的跨平臺性,同時系統(tǒng)設(shè)計時還預(yù)留了后期增加其他檢定項目的接口,增加了系統(tǒng)的可擴展性。該系統(tǒng)的設(shè)計與實現(xiàn)是“互聯(lián)網(wǎng)+產(chǎn)業(yè)計量”的一種經(jīng)典應(yīng)用,對進一步探索“互聯(lián)網(wǎng)+產(chǎn)業(yè)計量”有一定的實際意義。
目前,在民用秤檢定工作中利用物聯(lián)網(wǎng)技術(shù)來實現(xiàn)無線遠程檢定的系統(tǒng)現(xiàn)階段還未實現(xiàn)。本文提出了一種基于物聯(lián)網(wǎng)技術(shù)的無線遠程民用秤檢定系統(tǒng)設(shè)計并進行了初步實現(xiàn)。
基于物聯(lián)網(wǎng)技術(shù)的民用秤檢定系統(tǒng)設(shè)計框圖如圖1所示,系統(tǒng)主要有檢定側(cè)、服務(wù)側(cè)和管理側(cè)三部分組成。
圖1 系統(tǒng)結(jié)構(gòu)圖Fig.1 System structure diagram
(1)檢定側(cè)主要完成如下3 個功能:1)民用秤檢定相關(guān)的原始數(shù)據(jù)錄入和關(guān)鍵數(shù)據(jù)圖像采集功能;2)對檢定地點進行時空定位,從時空側(cè)保證了數(shù)據(jù)的真實性;3)檢定證書的在線打印功能,使被檢單位可以快速地拿到檢定證書。
(2)服務(wù)側(cè)主要完成檢定側(cè)上傳來的數(shù)據(jù)及圖像的接收、保存和分析,同時還實現(xiàn)了證書的在線生成功能。
(3)管理側(cè)主要完成檢定員、核驗員、批準人用戶的維護,檢定數(shù)據(jù)的真實性檢查,檢定數(shù)據(jù)的統(tǒng)計分析,大屏幕數(shù)據(jù)統(tǒng)計分析顯示。
(1)檢定員通過移動端將檢定過程中產(chǎn)生的數(shù)據(jù)及采集的圖像提交至服務(wù)器。
(2)服務(wù)器端相應(yīng)程序?qū)z定數(shù)據(jù)及圖像進行保存并將數(shù)據(jù)及圖像投送給核驗員。
(3)核驗員通過查看需要核驗的數(shù)據(jù)確定是否通過,若通過則將初步生成證書并將信息推送至批準人,若不通過則將數(shù)據(jù)返回給檢定員,檢定員可以通過續(xù)檢功能來進行數(shù)據(jù)的修改并再次提交。
(4)批準人接收到推送來的信息后可以進行初步證書的審核和原始檢定數(shù)據(jù)的審核,若通過則生成正式的PDF 電子版證書,并將生成證書信息推送至檢定員和核驗員,若審核不通過則將數(shù)據(jù)返回給檢定員,并將核驗員已核驗數(shù)據(jù)刪除,檢定員可以通過續(xù)檢功能來進行數(shù)據(jù)的修改并再次提交。
(5)對于管理側(cè)的管理員可以隨時通過后臺管理程序登錄系統(tǒng)查看各檢定項目的進度,人員的位置,并進行數(shù)據(jù)的統(tǒng)計分析。
(6)對于管理側(cè)的大屏幕可實時顯示當前在線的檢定員的位置、工作狀態(tài)等,并在界面上實時顯示與檢定相關(guān)的統(tǒng)計數(shù)據(jù),如已檢設(shè)備數(shù)、在線人員數(shù)、檢驗合格率等。
在整個系統(tǒng)實現(xiàn)中檢定側(cè)與服務(wù)側(cè)進行通信使用了自定義通信協(xié)議,以下簡稱為協(xié)議1,協(xié)議1 是一個類JSON 的自定義協(xié)議,數(shù)據(jù)格式如下:
[|dataName:dataValue|dataName:dataValue|dataNa me:dataValue|dataName:dataValue|]
數(shù)據(jù)項:|dataName:dataValue|,其中dataName 為數(shù)據(jù)名,dataValue 為數(shù)據(jù)名對應(yīng)的數(shù)據(jù)值。其中數(shù)據(jù)值部分為無類型數(shù)據(jù),并支持有限的轉(zhuǎn)義字符,即數(shù)據(jù)值可以為協(xié)議1 格式的數(shù)據(jù)字符串。協(xié)議1 所用主要標志如表1 所示。
表1 自定義協(xié)議標志一覽表Tab.1 List of custom agreement marks
在本協(xié)議中可通過轉(zhuǎn)義字符的處理實現(xiàn)協(xié)議的嵌套,即數(shù)據(jù)值的部分可以是另一個協(xié)議1 組成的字符串。
在系統(tǒng)設(shè)計中考慮到訪問的實時性、數(shù)據(jù)的安全性等多方面的原因。整個系統(tǒng)有8 種數(shù)據(jù)表組成,下面分別做以說明:
2.2.1 用戶數(shù)據(jù)表
該表的主要功能是實現(xiàn)用戶的管理,主要管理用戶名、密碼、用戶登錄、用戶權(quán)限、用戶當前位置等,該數(shù)據(jù)表主要的字段有:
uid(用戶唯一編號)、username(登陸用用戶名)、pwd(登陸用密碼)、phone(電話號碼)、status(登錄狀態(tài))、power(權(quán)限)、rname(真實姓名)、job_number(工號)、ename(電子簽名)、x(經(jīng)度)、y(緯度)、d(日期)、t(時間)。
2.2.2 用戶狀態(tài)數(shù)據(jù)表
該表的主要功能是實現(xiàn)用戶上線后在檢定過程中發(fā)生關(guān)鍵檢定動作的時空數(shù)據(jù)保存。主要的字段有:uid(用戶唯一編號)、spwd(登陸用密碼)、status(狀態(tài))、x(經(jīng)度)、y(緯度)、d(日期)、t(時間)。
2.2.3 檢定記錄數(shù)據(jù)表
該表的主要功能是檢定設(shè)備在檢定過程中檢定關(guān)鍵點時空信息的存儲、檢定原始數(shù)據(jù)的保存等,其主要的字段有:id(設(shè)備id)、image(設(shè)備圖片)、dx(檢定地點經(jīng)度)、dy(檢定地點緯度)、dd(檢定日期)、dt(檢定時間)、cx(核驗地點經(jīng)度)、cy(核驗地點緯度)、cd(核驗日期)、ct(核驗時間)、step(檢定步驟)、status(檢定狀態(tài))、d_uid(檢定人員uid)、c_uid(核驗人員uid)、certificateNo(檢定證書編號)、raw_data(檢定原始數(shù)據(jù))。
2.2.4 用戶檢定數(shù)據(jù)表設(shè)計
該表主要針對檢定員設(shè)計的,主要用于保存檢定員檢定設(shè)備的相關(guān)信息,主要信息如時間、定位、檢定狀態(tài)等。該表的主要字段有:id(設(shè)備id)、image(設(shè)備圖片)、company(檢定單位名稱)、c_uid(檢驗人員uid)、x(經(jīng)度)、y(緯度)、d(日期)、t(時間)、status(檢定狀態(tài))、step(檢定步驟)等。
2.2.5 用戶核驗數(shù)據(jù)表
該表主要針對核驗員和批準人設(shè)計的,主要用于保存核驗員和批準人要核驗或批準設(shè)備的相關(guān)信息,主要信息如時間、定位、檢定狀態(tài)等。該表的主要字段有:id(設(shè)備id)、image(設(shè)備圖像)、company(被檢單位)、d_uid(檢定員uid)、x(經(jīng)度)、y(緯度)、d(日期)、t(時間)、status(檢定狀態(tài))。
2.2.6 用戶登錄日志數(shù)據(jù)表
該表主要針對用戶登錄、退出等動作的時空信息的保存。該表的主要字段有:uid(用戶id)、action(用戶動作)、x(經(jīng)度)、y(緯度)、d(日期)、t(時間)等。
2.2.7 檢定項目模板數(shù)據(jù)表
該表主要用于存放在檢定過程中的參數(shù)名稱、參數(shù)標簽、參數(shù)類型、參數(shù)相關(guān)說明等,表中主要的字段有:idx(參數(shù)序號)、paraName(參數(shù)名)、paraLabel(參數(shù)標簽)、type(參數(shù)類型)、illustration(參數(shù)說明)、tableIdx(參數(shù)所屬表序號)、tableName(參數(shù)所屬表名稱)等。
2.2.8 鑒定證書數(shù)據(jù)表
該表主要用于管理被檢設(shè)備的證書編號,主要設(shè)計的字段有:id(設(shè)備id)、certificateNo(證書編號)、path(PDF 證書存放路徑)、md5(PDF 證書md5 碼)用于驗證證書的真?zhèn)蝃1]。
程序設(shè)計主要有兩部分組成,一是檢定側(cè)程序設(shè)計;二是服務(wù)側(cè)程序設(shè)計。
檢定側(cè)程序設(shè)計主要是移動端的App 程序設(shè)計,考慮到各檢定人員的手機系統(tǒng)并不統(tǒng)一,可能有Android、iOS、HarmonyOS 等系統(tǒng),所以在移動端進行程序設(shè)計時需要使用跨平臺的程序設(shè)計技術(shù),在本系統(tǒng)設(shè)計中選用了QT 語言作為跨平臺編程語言,該語言通過一次開發(fā)在不同平臺上多次編譯的方式實現(xiàn)了跨平臺的程序設(shè)計。本系統(tǒng)現(xiàn)已實現(xiàn)了Android、iOS、HarmonyOS 及Windows、Linux 等多個平臺的程序編寫及運行。App主要實現(xiàn)的功能如圖2 所示[2]。
圖2 移動端程序功能框圖Fig.2 Program function block diagram of mobile terminal
服務(wù)側(cè)程序分為兩部分:(1)針對檢定側(cè)的數(shù)據(jù)及圖像采集程序;(2)針對管理側(cè)的數(shù)據(jù)管理及分析程序。后端程序設(shè)計語言主要使用了PHP 和SQL 等語言,前端程序設(shè)計語言主要采用HTML、JavaScript 等。
檢定側(cè)數(shù)據(jù)及圖像采集程序主要完成功能如圖3 所示。
圖3 檢定側(cè)數(shù)據(jù)及圖像采集程序功能框圖Fig.3 Functional block diagram of data and image acquisition program at verification side
管理側(cè)數(shù)據(jù)管理及分析程序主要完成功能如圖4 所示[3]。
圖4 管理側(cè)數(shù)據(jù)管理及分析程序功能框圖Fig.4 Functional block diagram of data management and analysis program on management side
對于整個檢定流程利用了設(shè)備檢定狀態(tài)的方法來實現(xiàn)整個流程的控制,對于一臺設(shè)備的檢定狀態(tài)在系統(tǒng)中設(shè)置為A、B、C、D、E、F 6 個狀態(tài)。下面分別對這6個狀態(tài)作以說明:
A 狀態(tài)是檢定員未將設(shè)備檢定完狀態(tài);
B 狀態(tài)是檢定員將設(shè)備檢定數(shù)據(jù)全部錄入保存但未提交狀態(tài);
C 狀態(tài)是檢定員將數(shù)據(jù)提交至核驗員但核驗員未核驗狀態(tài);
D 狀態(tài)是核驗員核驗合格提交至批準人而批準人未批準狀態(tài);
E 狀態(tài)是批準人已批準狀態(tài);
F 狀態(tài)是批準人或核驗員發(fā)現(xiàn)數(shù)據(jù)不合格返回檢定員狀態(tài)。
通過以上6 個狀態(tài)的控制可以有效地實現(xiàn)本系統(tǒng)的檢定流程。
為了加強檢定數(shù)據(jù)的可信性,在系統(tǒng)中通過時空定位和圖像采集的方式增強了原始數(shù)據(jù)的可信度,并通過兩級原始數(shù)據(jù)及關(guān)鍵數(shù)據(jù)圖像的查驗機制保證了數(shù)據(jù)的可信度。在移動端App 中使用了自動計算功能有效防止了人工計算時出現(xiàn)的數(shù)據(jù)計算錯誤[4]。
本系統(tǒng)在設(shè)計之初就考慮到了其他檢定項目的可擴充性,在數(shù)據(jù)庫設(shè)計、移動端程序設(shè)計、管理側(cè)程序設(shè)計方面都進行了擴充性設(shè)計,即今后可方便地將其他檢定項目接入到本系統(tǒng)中來。在系統(tǒng)可擴充方面主要實現(xiàn)了如下幾項技術(shù):
(1)實現(xiàn)了檢定項目數(shù)據(jù)錄入的模板可制定;
(2)移動端檢定數(shù)據(jù)錄入及圖像采集界面會根據(jù)檢定項目的數(shù)據(jù)模板動態(tài)改變數(shù)據(jù)輸入項目;
(3)原始數(shù)據(jù)存儲使用了協(xié)議1 來進行數(shù)據(jù)存儲。使各類不同項目的數(shù)據(jù)可以使用統(tǒng)一檢定記錄數(shù)據(jù)表結(jié)構(gòu);
(4)系統(tǒng)中采用了檢定證書模板可制定模式,保證了其他檢定項目證書的有效生成[5]。
(1)在網(wǎng)絡(luò)通信方面均使用了POST 方式進行通信,同時還使用了自定義通信協(xié)議,加強了通信的安全性;
(2)使用了PDF 證書md5 碼驗證機制,提高了電子證書的安全性[6]。
本文設(shè)計并實現(xiàn)了一款基于物聯(lián)網(wǎng)技術(shù)的民用秤檢定系統(tǒng)。該系統(tǒng)是“互聯(lián)網(wǎng)+產(chǎn)業(yè)計量”的經(jīng)典應(yīng)用。它克服了人工檢定民用秤的諸多問題,同時還實現(xiàn)了移動端數(shù)據(jù)錄入、數(shù)據(jù)分析、大數(shù)據(jù)展示、電子證書生成與發(fā)放等多項功能,這是未來諸多檢定系統(tǒng)發(fā)展的必然趨勢。
引用
[1] 彭其華.基于互聯(lián)網(wǎng)的遠程計量數(shù)據(jù)采集[J].數(shù)字技術(shù)與應(yīng)用,2010(10):16-17.
[2] 吳九牛,高宇海.基于LabVIEW的大尺寸量塊檢定系統(tǒng)的設(shè)計與實現(xiàn)[J].計量技術(shù),2018(7):60-62.
[3] 黃萬明,張明婷.基于“計量+互聯(lián)網(wǎng)”建立計量智慧客戶云系統(tǒng)[J].計量與測試技術(shù),2020,47(1):25-28.
[4] 褚堅玲,張莉蓉.運用“互聯(lián)網(wǎng)+”實現(xiàn)對集貿(mào)市場計量的“精準”監(jiān)管[J].中國計量,2018(5):18-19.
[5] 吳昌永,陳敏雪.“互聯(lián)網(wǎng)+”計量移動App的應(yīng)用創(chuàng)新與實踐[J].中國計量,2017(7):9-10.
[6] 吳宏杰.淺談在互聯(lián)網(wǎng)環(huán)境中的計量信息安全[J].工業(yè)計量,2012,22(S1):251-252.