丁伯川 孫可心 商浩 畢曉龍 李碩
摘要:為加速實現工廠的數字化轉型,提高工廠生產運營簡報的制作、管理和查詢速度,及時了解各生產區域數字化應用及現場實際生產情況,設計并開發了基于Streamlit的工廠生產運營簡報自動化管理Web應用,詳細規劃了Web應用的各項基本功能和整體結構并分析了Web應用的局部關鍵代碼,實現了生產運營簡報的自動化生成、展示、存儲以及文件的查詢下載。
關鍵字:生產管理; Streamlit;數字化運營;簡報自動化管理
引言
生產管理系統因負責的方面廣、項目多和區域大使得簡報制作過程的信息處理量大,同時,因簡報依據生產和管理周期分為日報、周報和月報造成簡報制作任務量大。傳統簡報的制作多依賴生產管理人員人工制作,簡報制作耗時較長、工作效率較低。此外,傳統簡報的管理媒介多為紙質或電子表單,不便于簡報及其相關信息的查詢、存儲和數字化展示。本文以生產運營簡報為對象,以生產運營簡報的自動化生成、信息化存儲、查詢、下載和數字化展示為目標,基于Streamlit框架和Python編程語言,并利用Mysql數據庫和Document模塊,開發了生產管理系統簡報自動化管理Web應用,實現了生產運營簡報的自動化制作、存儲、信息化查詢、下載以及數字化展示。
1.生產運營簡報自動化管理Web應用的設計與分析
1.1需求分析
本文研究對象為生產管理系統中生產運營簡報,該Web應用的主要使用者為生產管理系統的技術人員、生產管理人員、質量管理人員和安全管理人員等。生產管理系統技術人員亟需能夠實現生產相關信息統計分析、簡報自動化生成和存儲的Web應用,提升自身工作效率。生產管理者和質量管理人員亟需一種能夠實現簡報快速查詢和下載的輕量級Web應用,便于綜合掌握生產現場情況并及時做出反應。
該Web應用采用B/S架構,通過系統瀏覽器可同時或分別查看生產管理方面的各項運營指標及其相關信息,如各工區的人員、開工及時性、計劃、交付、異常、安全、成本及變更等。生產管理系統的技術人員可以通過設定簡報自動化生成觸發方式按時生成相應的生產運營簡報,并可根據簡報內容對其進行整體或者分塊存儲。生產管理人員、質量管理人員和安全管理人員可根據自身管理的方向,通過輸入要查詢的時間及運營指標進行相應的簡報的查詢并瀏覽,根據需求可通過點擊下載按鈕進行簡報的下載和打印。同時,該Web應用可通過企業的內部網絡部署,具備移動端、PC端的兼容性和數據保密性。
1.2數據設計
Web應用中簡報主要內容其呈現形式多為文本、圖片和表格,并且在生成、保存、查詢和下載等功能中利用Mysql數據庫實現了生產運營簡報及其相關信息的新建、查詢和存儲等功能。
1.3數據庫設計
根據生產運營簡報的E-R圖,設計并創建了簡報分布表,包括如下字段:FileID(文件標識)、FileName(文件名)、Extension(文件的擴展名)、ContentType(文件種類)、FileURL(文件地址)、FileData(二進制文件)、FileSize(文件大小)、UploadDate(文件導入時間)。其中,FileURL字段用于記錄該簡報位于公司大數據中心的地址,用于公司備案。FileData字段用于生產管理系統數據庫的簡報存儲,用于本地存儲與備份。
2.Web應用的功能與實現
2.1Web應用主要功能
根據相關用戶的需求該Web引用設計并開發了如下功能模塊:
(1)用戶登錄認證模塊。主要用于保證生產管理系統的信息安全,對不同用戶進行角色認證并賦予與其崗位相匹配的功能使用權限。
(2)生產運營情況的查詢及展示模塊。當用戶輸入查詢的日期時,用于對生產運營情況進行分析和數據處理,并根據簡報內的相關內容進行展示。
(3)生產運營簡報生成及存儲模塊。生產管理系統按照日報、周報和月報的周期自動生成相應的簡報,存儲到生產管理系統的本地數據庫并上傳到公司大數據中心。
(4)生產運營簡報下載模塊。主要為用戶提供簡報的下載功能,可用于日報、周報和月報的下載。
2.2相關功能的實現
2.2.1生產運營情況的查詢與展示
生產運營情況信息的查詢主要依靠Streamlit中的streamlit.date_input( )函數生成時間選擇輸入框,streamlit.multiselect( )函數生成簡報類型選擇框(日報、周報、月報),根據時間輸入框內的時間和簡報類型從生產管理系統的數據庫中獲取相應的數據。
生產運營情況的展示依據查詢到的數據制作相應的表格和數據圖表并進行展示。其中,表格分別采用streamlit.table( )和streamlit.dataframe( )進行靜態表格和動態表格的展示。數據圖表根據圖表類型選擇相應的函數進行展示,如streamlit.line_chart( ) 、streamlit.bar_chart( )、streamlit.area_chart( )等。
2.2.2 簡報生成及存儲模塊
根據簡報(日報、月報、周報)中的具體內容,通過查詢生產管理系統數據庫獲取相關數據,然后參考簡報的文本格式,采用Document模塊并結合numpy、pandas、matplotlib等模塊制作簡報文本內容。簡報的自動化生成觸發方式依據生產作業時間和簡報管理周期通過制定相應的時間節點觸發簡報生成指令。其中,Document模塊下生成的文件可用于制作臨時文件,當文件傳入數據庫后,該臨時文件自動刪除。
簡報的存儲模塊將臨時文件按照指定路徑上傳到公司大數據中心并獲取到相應的URL,并將臨時文件進行屬性提取和二進制轉碼,然后存入本地數據庫中。
2.2.3 簡報下載模塊
簡報的下載模塊應實現:鼠標單擊(或觸屏單擊)后彈出簡報下載提示框,用戶可根據需要為文件指定存儲路徑,隨后Web應用將該簡報存儲到用戶指定路徑下。
簡報下載功能實現的路徑為:基于Streamlit.download_button函數構建下載按鈕,鼠標單擊下載按鈕后,生產管理系統本地數據庫中相應的簡報(日報、周報、月報)二進制文件,并根據其文件種類進行解碼成相應的文件類型,隨后根據用戶指定路徑進行保存。
3結語
本文基于Streamlit框架和Document等模塊,利用Python編程語言和SQL結構化查詢語言,開發了一種基于Streamlit框架的工廠生產運營簡報自動化管理Web應用,實現了簡報的自動化生成、存儲以及數字化展示和下載。該Web應用具備數據的實時性和可視化、文本信息結構化、文件管理規范化、信息查詢簡易化等特點。
參考文獻:
[1]孫可心,鐘宏遠,呂光宙,商浩.基于WebGL的焊接構架質量控制點三維可視化管理研究[J].技術與市場,2020,27(07):170-171.
作者簡介:丁伯川(1993- ),男,漢族,河北任丘人,助理工程師,碩士研究生,研究方向:工業大數據挖掘與分析。