馬宇航 邸恒燁
摘要:文章設(shè)計(jì)的工廠質(zhì)量數(shù)據(jù)管理系統(tǒng)不僅能夠?qū)⒚嫦蛴脩舻膫€(gè)性化數(shù)據(jù)進(jìn)行解析與存儲(chǔ),還能通過數(shù)據(jù)轉(zhuǎn)換引擎將工廠質(zhì)量數(shù)據(jù)在面向系統(tǒng)的結(jié)構(gòu)化語言和面向用戶的個(gè)性化語言之間進(jìn)行交互,從而達(dá)到規(guī)范管理、提升效率的目的,具有很強(qiáng)的實(shí)用性和很大的拓展空間。
關(guān)鍵詞:工業(yè)互聯(lián)網(wǎng);表結(jié)構(gòu)自定義;工廠質(zhì)量管理;正則表達(dá)式匹配
中圖分類號(hào):TP391.41? 文獻(xiàn)標(biāo)志碼:A
0 引言
隨著工業(yè)信息化的逐步發(fā)展、市場競爭的日益激烈,工廠生產(chǎn)的各個(gè)方面都需要變得更加智能化、互聯(lián)網(wǎng)化,包括工廠的生產(chǎn)質(zhì)量管理數(shù)據(jù)采集系統(tǒng)[1]。現(xiàn)今,質(zhì)量檢驗(yàn)的目的早已不再是單純判斷產(chǎn)品是否合格,而是需要對(duì)以往的數(shù)據(jù)進(jìn)行匯總、統(tǒng)計(jì)、分析,對(duì)未來的生產(chǎn)工作提出建設(shè)性的改進(jìn)與修復(fù)措施[2]。目前,很多工廠的質(zhì)量數(shù)據(jù)采集系統(tǒng)還存在著諸多問題,如產(chǎn)品生產(chǎn)過程的質(zhì)量實(shí)時(shí)監(jiān)控主要依靠人工,信息反饋以及異常情況處理十分滯后,時(shí)效性不夠;工廠質(zhì)量檢驗(yàn)的歷史數(shù)據(jù)查詢困難,費(fèi)時(shí)費(fèi)力,各個(gè)產(chǎn)品的檢驗(yàn)流程和檢驗(yàn)結(jié)果不易進(jìn)行數(shù)據(jù)統(tǒng)計(jì)、分析與共享[3-4] 。
針對(duì)上述問題,本系統(tǒng)設(shè)計(jì)了一個(gè)支持表結(jié)構(gòu)個(gè)性化的工業(yè)質(zhì)量數(shù)據(jù)管理方法并將該方法應(yīng)用到質(zhì)量數(shù)據(jù)管理QMS系統(tǒng)中。在此基礎(chǔ)上,使用Django框架、Python語言完成后端數(shù)據(jù)管理原型系統(tǒng)的開發(fā),使用Bootstrap3框架、HTML語言、CSS語言、JavaScript語言完成前端數(shù)據(jù)管理系統(tǒng)的開發(fā),使系統(tǒng)能夠解析質(zhì)檢員上傳的Excel表單模板,最終將關(guān)鍵字段和描述信息展示出來并反饋給質(zhì)檢員。質(zhì)檢員上傳完整的Excel質(zhì)檢表單之后,可以將數(shù)據(jù)與模板進(jìn)行解析、分離。通過前端網(wǎng)頁的文本框輸入將質(zhì)檢數(shù)據(jù)上傳至數(shù)據(jù)庫中,提取數(shù)據(jù)庫中的質(zhì)檢數(shù)據(jù),最終按照模板格式生成個(gè)性化Excel質(zhì)檢表格。該系統(tǒng)針對(duì)建立的數(shù)據(jù)庫表進(jìn)行映射關(guān)系處理,對(duì)系統(tǒng)開展準(zhǔn)確性和有效性測試驗(yàn)證,用以改善整體的質(zhì)量生產(chǎn)管理體系。
1 系統(tǒng)功能分析
本系統(tǒng)所有的功能都顯示在主頁頂部導(dǎo)航欄中。系統(tǒng)功能主要體現(xiàn)在:允許質(zhì)檢員登錄、注冊(cè)及退出操作;允許質(zhì)檢員進(jìn)行Excel質(zhì)檢模板的上傳與解析及生成與更新;允許質(zhì)檢員上傳Excel質(zhì)檢表單,再由系統(tǒng)將質(zhì)檢數(shù)據(jù)提取后,建立新的產(chǎn)品檢驗(yàn)流程實(shí)用表;允許質(zhì)檢員選擇已經(jīng)上傳過的質(zhì)檢模板,前端網(wǎng)頁動(dòng)態(tài)生成該檢驗(yàn)流程中的所有待檢數(shù)據(jù)文本框,再由質(zhì)檢員輸入本次質(zhì)檢數(shù)據(jù),最終將所有數(shù)據(jù)存入數(shù)據(jù)庫中,建立新的產(chǎn)品檢驗(yàn)流程實(shí)用表;允許質(zhì)檢員選擇數(shù)據(jù)庫中的已有產(chǎn)品檢驗(yàn)流程實(shí)用表,由系統(tǒng)根據(jù)該產(chǎn)品檢驗(yàn)流程的Excel模板形式,生成個(gè)性化Excel質(zhì)檢表單,最終由質(zhì)檢員進(jìn)行下載。
2 基于正則匹配的數(shù)據(jù)轉(zhuǎn)換引擎設(shè)計(jì)
在復(fù)雜的Excel解析問題中,需要解決2個(gè)問題:一是針對(duì)單元格中的數(shù)據(jù)內(nèi)容的識(shí)別解析以及針對(duì)關(guān)鍵字段、數(shù)據(jù)項(xiàng)與關(guān)鍵字段每一個(gè)項(xiàng)目匹配關(guān)系的解析;二是針對(duì)每個(gè)關(guān)鍵字段的數(shù)據(jù)類型、關(guān)系模式、數(shù)據(jù)存儲(chǔ)模式等信息的解析。針對(duì)上述復(fù)雜Excel表單解析的問題,本項(xiàng)目搭建了一種數(shù)據(jù)轉(zhuǎn)換模型,即先行對(duì)Excel模板進(jìn)行預(yù)編輯并將預(yù)編輯后的Excel模板上傳,再根據(jù)本項(xiàng)目搭建的數(shù)據(jù)轉(zhuǎn)換引擎將Excel質(zhì)檢表單模板中的所有信息進(jìn)行提取與解析。上述過程的關(guān)鍵之處是數(shù)據(jù)轉(zhuǎn)換引擎,因此本系統(tǒng)構(gòu)建了一種基于正則表達(dá)式的數(shù)據(jù)轉(zhuǎn)換引擎。
2.1 數(shù)據(jù)轉(zhuǎn)換引擎規(guī)則制定
總述性數(shù)據(jù)共包含2項(xiàng)內(nèi)容,須按照特定位置進(jìn)行填寫。第一項(xiàng)為“overall”,表明其為總述性數(shù)據(jù);第二項(xiàng)為“名稱:產(chǎn)品”,代表關(guān)鍵字段名稱為“名稱”,且其數(shù)據(jù)為“產(chǎn)品”。
一對(duì)一型數(shù)據(jù)和一對(duì)多型數(shù)據(jù),其所包含的內(nèi)容信息會(huì)有許多條,除檢驗(yàn)項(xiàng)目必須在第一條外,其余的信息位置可隨意進(jìn)行調(diào)整。所包含的內(nèi)容如下:(1)檢驗(yàn)項(xiàng)目為必填項(xiàng),且必須在第一個(gè)位置上。它表明了此單元格應(yīng)該填寫的數(shù)據(jù)與關(guān)鍵字段的對(duì)應(yīng)關(guān)系。(2)關(guān)系模式為選填項(xiàng)。它表明了此單元格所代表的檢驗(yàn)項(xiàng)目與其數(shù)據(jù)個(gè)數(shù)的對(duì)應(yīng)關(guān)系。(3)存儲(chǔ)形式為選填項(xiàng)。此屬性僅在數(shù)據(jù)的關(guān)系模式為一對(duì)多時(shí)才有作用,它表明了存儲(chǔ)形式數(shù)據(jù)是以行進(jìn)行拓展還是以列進(jìn)行存儲(chǔ)。(4)描述信息為選填項(xiàng)。它表明了該關(guān)鍵字段在表格中描述信息所處的位置。(5)數(shù)據(jù)類型選填項(xiàng)。它表明了該關(guān)鍵字段所對(duì)應(yīng)的質(zhì)檢數(shù)據(jù)類型。
2.2 具體實(shí)現(xiàn)流程
Excel質(zhì)檢模板最終通過數(shù)據(jù)轉(zhuǎn)換引擎解析后,需要得到的信息如下:檢驗(yàn)項(xiàng)目列表;數(shù)據(jù)所處位置字典;關(guān)鍵字段所處位置字典;總體項(xiàng)目數(shù)據(jù)項(xiàng)字典;總體項(xiàng)目描述信息字典;關(guān)系模式字典;數(shù)據(jù)存儲(chǔ)形式字典;關(guān)鍵字段描述信息字典;數(shù)據(jù)類型字典。第1~5個(gè)字典得到了第一個(gè)問題中需要得到的信息;第6~9個(gè)字典得到了第二個(gè)問題需要得到的信息。數(shù)據(jù)轉(zhuǎn)換引擎工作的具體流程,如圖1所示。
3 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
3.1 總體框架
本系統(tǒng)總共需要實(shí)現(xiàn)4項(xiàng)功能。本文針對(duì)這4項(xiàng)功能設(shè)計(jì)了4個(gè)模塊,分別為:Excel模板解析(前端)、網(wǎng)頁端輸入質(zhì)檢數(shù)據(jù)、Excel完整質(zhì)檢表單上傳、Excel表單導(dǎo)出。總體架構(gòu)設(shè)計(jì)如圖2所示。
3.2 數(shù)據(jù)庫層次與映射關(guān)系
為實(shí)現(xiàn)面向用戶的個(gè)性化數(shù)據(jù)與面向系統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)的交互,直觀上來說就是Excel和MySQL數(shù)據(jù)庫的交互,需要對(duì)各種不同類型的產(chǎn)品、不同形式的檢驗(yàn)過程進(jìn)行管理,而這些管理都需要經(jīng)過數(shù)據(jù)庫進(jìn)行導(dǎo)入導(dǎo)出,所以對(duì)于數(shù)據(jù)庫層次的設(shè)計(jì)方案變得至關(guān)重要。
基于上述需求,制定了3層數(shù)據(jù)庫層次。首先,每一種產(chǎn)品對(duì)應(yīng)一個(gè)數(shù)據(jù)庫。每個(gè)產(chǎn)品的數(shù)據(jù)庫中有3種類型的數(shù)據(jù)庫表:產(chǎn)品總表(產(chǎn)品名稱_total表)、產(chǎn)品檢驗(yàn)流程信息表(產(chǎn)品名稱_檢驗(yàn)流程_Info表)、產(chǎn)品檢驗(yàn)流程實(shí)用表(產(chǎn)品名稱_檢驗(yàn)流程表)。一種檢驗(yàn)流程可能會(huì)存在很多張實(shí)用表單,為各次檢驗(yàn)的完整質(zhì)檢表單。產(chǎn)品總表中的一條記錄,對(duì)應(yīng)的是某種檢驗(yàn)流程,因而對(duì)應(yīng)著2種表單:一是該產(chǎn)品檢驗(yàn)流程的信息表;二是該產(chǎn)品檢驗(yàn)流程的多張實(shí)用表。產(chǎn)品檢驗(yàn)流程信息表中的每條記錄,對(duì)應(yīng)的是產(chǎn)品檢驗(yàn)流程實(shí)用表中的一個(gè)關(guān)鍵字段。
3.3 主要模塊設(shè)計(jì)與實(shí)現(xiàn)
根據(jù)實(shí)現(xiàn)功能要求,按照模塊劃分,詳細(xì)講述各模塊的展示界面、所完成的功能以及如何實(shí)現(xiàn)功能的流程。
3.3.1 主頁/登錄/注冊(cè)
系統(tǒng)在質(zhì)檢員未登錄之前,顯示的是無功能的主頁,只有登錄后才可以合法地進(jìn)入各模塊,登錄界面供質(zhì)檢員輸入用戶名和密碼。注冊(cè)界面供新的質(zhì)檢員進(jìn)行注冊(cè),需要質(zhì)檢員提供其工號(hào)、用戶名、密碼并將這些數(shù)據(jù)存入數(shù)據(jù)庫。為了增加系統(tǒng)的安全性,密碼的保存會(huì)通過哈希函數(shù)進(jìn)行加密后存入數(shù)據(jù)庫。
3.3.2 通過網(wǎng)頁端上傳質(zhì)檢數(shù)據(jù)
(1)該模塊允許質(zhì)檢員在前端網(wǎng)頁已上傳的模板中進(jìn)行選擇,上傳需要提取數(shù)據(jù)的Excel完整質(zhì)檢表單。(2)將Excel質(zhì)檢表單傳入后臺(tái),后臺(tái)對(duì)Excel進(jìn)行解析。(3)在前端將這張產(chǎn)品檢驗(yàn)流程實(shí)用表展示出來,供質(zhì)檢員查看。本模塊的流程如圖3所示。
3.3.3 Excel質(zhì)檢表單提取質(zhì)檢數(shù)據(jù)
本模塊的重點(diǎn)工作即為Excel的渲染。Excel渲染的流程如圖4所示。染的流程是先提取產(chǎn)品檢驗(yàn)流程信息表,再針對(duì)檢驗(yàn)項(xiàng)目關(guān)系模式的不同進(jìn)行分別存儲(chǔ)。
4 結(jié)語
本文針對(duì)工廠質(zhì)量檢驗(yàn)過程中存在的數(shù)據(jù)手動(dòng)采集操作復(fù)雜、耗時(shí)耗力、不易入庫進(jìn)行共享和保護(hù)、
無法在Excel和數(shù)據(jù)庫之間進(jìn)行靈活轉(zhuǎn)換等問題,設(shè)定了一種正則匹配規(guī)則,通過正則匹配規(guī)則,搭建了基于此正則匹配規(guī)則能夠提取信息的數(shù)據(jù)轉(zhuǎn)換引擎,實(shí)現(xiàn)復(fù)雜Excel模板解析這一關(guān)鍵步驟,最終通過系統(tǒng)測試,完成了本系統(tǒng)的各方面需求,使工廠質(zhì)量數(shù)據(jù)管理系統(tǒng)大大提高了質(zhì)檢員的工作效率,并可以與工廠質(zhì)量系統(tǒng)QMS進(jìn)行對(duì)接。
參考文獻(xiàn)
[1]楊榮祥,于慧君.M公司煙機(jī)QMS的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2019.
[2]俞杰.產(chǎn)品檢驗(yàn)數(shù)據(jù)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2011(17):4096-4098.
[3]程佳,陳濤,王成.通用Web表單數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].沈陽:東北大學(xué),2016.
[4]吳海宇.項(xiàng)目數(shù)據(jù)表單管理系統(tǒng)的建設(shè)研究[J].信息系統(tǒng)工程,2017(5):57-58.
(編輯 姚 鑫編輯)
Analysis and design of factory quality management system for personalized table structure
Ma? Yuhang1, Di? Hengye2
(1.Xian University of Science and Technology, Xian 710049, China;2.University of Science and Technology Beijing, Beijing 100083, China)
Abstract:? This paper designs the factory quality data management system, which can parse and store the user-oriented personalized data, and interact the factory quality data between the system-oriented structured language and user-oriented personalized language through the data conversion engine, so as to achieve the purpose of standardized management and improving efficiency. This system has a strong practicability and a great space for expansion.
Key words: industrial Internet; customed structure of table; industrial quality management;regular expression matching