基于Streamlit的工厂生产运营简报自动化管理研究
2021-04-20丁伯川孙可心商浩毕晓龙李硕
丁伯川 孙可心 商浩 毕晓龙 李硕
摘要:为加速实现工厂的数字化转型,提高工厂生产运营简报的制作、管理和查询速度,及时了解各生产区域数字化应用及现场实际生产情况,设计并开发了基于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- ),男,汉族,河北任丘人,助理工程师,硕士研究生,研究方向:工业大数据挖掘与分析。