本发明涉及汽车行业智能制造领域,具体地,涉及适用于工厂自动排产的数据采集与处理的方法及系统。
背景技术:
随着工厂机械化水平和设备柔性化水平的提高,产品品种的增多,工艺复杂度的上升,市场需求的快速波动,传统基于人工数据导入的单机版排产系统或者手工排产的方式已经无法满足计划排产和拉料对生产过程人机料异常、运输过程异常和需求波动响应速度,导致工厂产生了很多应急成本、产能浪费和交付异常。问题体现在以下几个方面:
(1)工厂自身仅有设备数据和过程数据采集能力,但是没有快速处理和分析大批量数据的技术和相关经验,导致很多过程数据没有实时抽取到对应具有数据分析和预警能力的系统中去;
(2)依赖人工经验或简单的数据清洗工具很难快速准确对有效数据进行过滤,且就算过滤出了有效数据,这些数据背后的价值和问题也很难通过有效的方式保存下来,作为相似数据的分类参考;
(3)主数据和业务数据的数据联通性、准确性、完整性监控主要靠线下人工核对,对于低频更新、数据量不大的数据勉强可以支持,对于极高频甚至近似实时、数据量较大的扫描数据传输过程是否有问题,数据是否完整可用,没有行之有效且统一的24小时自动监控和报警平台;
(4)以往数据的归属和权限为线下邮件分组管理,或系统用户的上传权限控制,数据本身的权限角色、用户和部门没有得到有效划分,导致数据更新不及时,数据问题无法按照角色和用户追溯,数据的不准确导致对数据准确性和实时性有较高要求的排产系统无法正常使用。
申请号为cn201710464866.1的中国专利,公开了“一种基于多平台自主预测的智能运维告警过滤方法及系统”的这种系统,其主要功能点侧重数据质量检查,与本专利相同的是都有对于数据质量检查功能与方法的介绍,但不同的是,本专利主要针对自动化排产系统,且本专利介绍了在数据质量检查前后的其他数据采集及处理的方法,仅凭该专利方法只能提升数据的准确性,并不能有针对性地解决排产系统数据实时性的问题。
申请号为cn201811408246.7的中国专利,公开了“一种基于大数据的电力协议库存履约监控方法”的这种方法,其主要功能点侧重于对协议库存执行风险的分析算法和预警,与本专利相同的是,二者均适用于排产系统,都是对于排产系统相关数据的处理和监控方法,但不同的是,该专利主要是针对排产系统库存数据的处理,并不能适用于排产过程中其他主数据和业务数据。
申请号为cn201510021667.4的中国专利,公开了“数据处理方法和系统”的这种方法,其主要侧重于介绍排产系统在生产计划计算中所用到的数学模型,与本专利相同的是二者均适用于排产系统,但不同的是,该专利主要介绍的是数据进入排产计算模型后,如何适应算法模型处理数据以实现生产排程中的目标与约束,并没有对数据进入算法模型前的处理方法进行介绍,而本专利则覆盖了排产系统全流程的数据处理。
技术实现要素:
针对现有技术中的缺陷,本发明的目的是提供一种适用于工厂自动排产的数据采集与处理的方法及系统。
根据本发明提供的一种适用于工厂自动排产的数据采集与处理系统,包括:
数据抽取及其监控模块:从外围系统自动抽取排产所需要的主数据及业务数据,为排产系统提供实时高效的输入,并通过数据抽取监控模块监控数据的连通性;
数据清洗模块:对于抽取到的排产所需要的主数据及业务数据,通过数据类型统一转换、空数据赋缺省值、数据排序与拆分及无用数据过滤等方式进行清洗处理,得到标准的结构化数据,输入至自动化排产计算系统;
数据质量检查模块:检查自动化排产计算中所需要输入的主数据和业务数据是否缺失以及是否合规;
数据权限控制模块:对不同角色的用户设置不同的数据权限;
数据镜像模块:由于自动化排产输入的数据不断更新,每次进行排产计算时,以触发计算当下的所有输入数据作镜像,以数据快照的形式复制并保存于数据库;
数据调度模块:排产及自动拉料包括多个计算小模型,用户从web端触发不同计算类型或系统根据数据识别到不同的场景时,传入不同的调度参数,根据不同的接口参数调用算法平台中不同的计算模型;
数据版本管理模块:自动记录历史版本的所有输入输出数据,并在web端展示供用户和管理员查询,同一计算版本的算法输入数据及输出数据以相同版本号标识出版本绑定关系。
优选地,所述数据抽取及其监控模块包括:
数据抽取子模块:基于各工厂的系统及其数据库现状,选择一种合适的高性能、高可用、支持集群部署的消息中间件,包括:kafka,rabbitmq,rocketmq,用于实时采集生产现场报工、移库、收货、发运、料架出入库数据,以保证数据的实时性,满足工厂连贯生产,数据不间断传输的要求;
数据抽取监控子模块:使用自主搭建的数据抽取运维平台监控数据连通性,平台具有如下功能:
日志保留与展示功能:所有数据抽取日志,包含抽取时间、生产数据量、消费数据量及抽取失败的记录均在数据库保留,并在平台的页面上展示;
失败报警功能:抽取产生失败记录时,平台将通过在页面消息提醒和预警邮件发送两种形式,反馈至相关人员,便于相关人员更加及时发现问题;
手动触发重处理功能:该平台支持用户在页面上基于报错信息对自动抽取失败的数据手动触发重处理;
映射关系配置功能:当抽取表或字段的映射关系发生变化时,平台支持用户通过页面操作实现抽取表和抽取字段映射关系的新增、删除及修改;
所述外围系统指智能制造工厂中与自动化排产系统有数据交互的上下游系统,包括:企业资源计划系统erp、生产执行系统mes、仓储管理系统wms以及物流执行系统les;
所述主数据及业务数据:
主数据包括:排产零件主数据、排产设备主数据、排产模具主数据、客户零件关系数据、设备-模具-零件对应关系数据、零件生产节拍数据、料架主数据以及物料bom数据;
业务数据包括:需求计划、模具更换耗时、设备宕机日志以及生产报工数据。
优选地,所述数据质量检查模块包括:
数据质量检查基准及频次自定义子模块:定期对对清洗后的数据进行校验,以用户选定的基准数据作为校验主表,基于用户设定的校验规则对于其他数据自动进行数据完整性及准确性的检查,并统计数据量,根据校验结果生成数据质量检查报告并发送至相关用户;
数据质量预警子模块:对于每次数据质量检查中发现的数据问题,以实时页面消息提醒或预警邮件通知责任用户,告知该数据问题可能导致的风险,并提醒用户补充缺失数据或修正错误数据。
优选地,所述数据权限控制模块:
避免由用户越权操作或无关用户误操作导致的错误生产指导,对生产数据设置多项权限,包括:
工厂权限:系统支持对不同角色的用户设置不同的工厂权限,各工厂下的所有数据仅对拥有该工厂权限的用户可见;
工序权限:系统支持对不同角色的用户设置不同的工序权限,各工序下的所有数据仅对拥有该工序权限的用户可见;
产线权限:系统支持对不同角色的用户设置不同的产线权限,各产线下的所有数据仅对拥有该产线权限的用户可见;
客户权限:系统支持对不同角色的用户设置不同的客户权限,各客户对应的数据仅对负责该客户的用户可见。
优选地,所述数据镜像模块:
支持用户调整输入数据以进行模拟排产计算,用户的调整基于各版本镜像数据,若模拟计算不被用户确认发布,该调整将不会应用于系统基础主数据;
用户基于模拟计算输出的排产计划及其相关报表数据,认为计算结果不可用,即不适于指导生产的时候则不会确认发布;
用户进行模拟计算的其中一种场景是为了设置假定参数进行计算,基于计算结果判定该参数对结果的影响或判定该参数值是否可用,在调整参数的几次计算中若出现用户不认可的版本结果,则用户不会发布该版本作为正式的生产指导。
优选地,所述数据调度模块:
可配置式参数传入,包括:排产计划锁定期、补宕产工单覆盖需求周期等常用的计算参数支持用户在前台配置,触发计算时,前端通过接口参数的形式将这部分计算参数传输至算法调度模块,调度模块将该参数输入预设算法;
分类队列式调度:分析每个接口参数并基于参数与不同计算类型算法模块的对应关系,将输入的数据包分配到不同的调度组,并将分配到同一个调度组的计算任务,根据触发接口时间从早到晚的顺序分别排列;
处理进度监控:触发计算后,调度模块轮询最新计算任务的当前进度,进度具体至计算流程中的各阶段,以及当前阶段的完成状态、完成度及错误信息,并将以上信息传输至前台。
优选地,所述数据版本管理模块:
所有输入输出数据按照数据不同的业务含义,分别存放在不同的数据表中,对于各个数据表中的数据,以版本号区分。
优选地,所述预设算法指运筹优化数学计算模型。
一种适用于工厂自动排产的数据采集与处理方法,包括:
步骤s1:自动集成外围数据,从制造工厂的mes、wms、erp系统抽取数据并集成至排产系统;
步骤s2:抽取过程中,自动实时监控抽取进程及其状态;
步骤s3:监控平台判断数据抽取状态是否失败,若出现失败记录时,则自动向用户发送预警邮件,反馈报错信息;
步骤s4:用户在收到预警信息后,可在数据抽取监控平台上手动对抽取失败的数据触发重处理;
步骤s5:在判断数据抽取无失败记录,即成功完成对外围系统数据的集成后,自动对整合过的数据进行清洗,得到完整的、连续的、标准的数据;
步骤s6:数据清洗过后,基于用户设定的数据检查准则和基准数据,自动定期对数据进行质量检查,并反馈给用户;
步骤s7:用户在确认数据质量合规后,可手动创建排产排程计算版本,或根据各工厂业务数据、主数据更新频次设定定时任务,配置定时脚本触发后台自动创建计算版本;
步骤s8:当用户操作或定时脚本触发了计算版本的创建任务后,自动基于触发当下的数据现状生成数据快照;
步骤s9:用户可对数据快照进行手工调整或修改,以进行模拟计算;
步骤s10:用户在调整镜像数据后,可手动触发或通过定时脚本自动触发排产计算;
步骤s11:计算完成后,算法模型将计算结果输出至调度模块,调度模块将其整合后按照版本标签及业务标签分类存入数据库。
根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述中所述的适用于工厂自动排产的数据采集与处理方法的步骤。
与现有技术相比,本发明具有如下的有益效果:
(1)通过采用高可用、高性能的数据抽取技术外围系统数据,该方法可监控多种数据库且适合抽取大批量实时数据,在数据量较大的情况下,既降低了对源端系统性能的影响,又提升了数据传输的速度,从而实现了数据的实时传输,为自动化排产系统的有效应急奠定了基础。
(2)通过采用自主搭建的数据抽取运维平台,不仅可以监控每一笔抽取记录、抽取时间和抽取失败的记录及原因,还支持简单配置抽取表和字段,用户配置后,数据抽取系统可自动从源数据库抽取数据到目标数据库中,从而实现了低成本高效率的数据抽取运维。
(3)通过参数化算法调度,根据标签分类规则和历史数据的分类情况对输入数据进行分类,按照标签输入到算法模型中,从而实现了排产系统计算参数的可配置化,加强了系统对于各类业务场景的适应性。
(4)通过深度学习算法将历史版本的排产输入输出数据作为数据质量检查基准和频次的训练数据,自动识别、预警及清洗异常数据,保证排产输入结果的准确性,从而实现了对排产结果的可执行性和可靠性的提高。
(5)通过数据镜像及对数据的版本化管理,方便用户对近期多次排产计算各阶段的数据进行追溯,从而实现了排产数据的可回退,可恢复,可溯源,提升运维工作效率。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明提供的系统模块关系图。
图2为本发明提供的业务流程示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
根据本发明提供的一种适用于工厂自动排产的数据采集与处理系统,包括:
数据抽取及其监控模块:从外围系统自动抽取排产所需要的主数据及业务数据,为排产系统提供实时高效的输入,并通过数据抽取监控模块监控数据的连通性;
数据清洗模块:对于抽取到的排产所需要的主数据及业务数据,通过数据类型统一转换、空数据赋缺省值、数据排序与拆分及无用数据过滤等方式进行清洗处理,得到标准的结构化数据,输入至自动化排产计算系统;
数据质量检查模块:检查自动化排产计算中所需要输入的主数据和业务数据是否缺失以及是否合规;
数据权限控制模块:对不同角色的用户设置不同的数据权限;
数据镜像模块:由于自动化排产输入的数据不断更新,每次进行排产计算时,以触发计算当下的所有输入数据作镜像,以数据快照的形式复制并保存于数据库;
数据调度模块:排产及自动拉料包括多个计算小模型,用户从web端触发不同计算类型或系统根据数据识别到不同的场景时,传入不同的调度参数,根据不同的接口参数调用算法平台中不同的计算模型;
数据版本管理模块:自动记录历史版本的所有输入输出数据,并在web端展示供用户和管理员查询,同一计算版本的算法输入数据及输出数据以相同版本号标识出版本绑定关系。
具体地,所述数据抽取及其监控模块包括:
数据抽取子模块:基于各工厂的系统及其数据库现状,选择一种合适的高性能、高可用、支持集群部署的消息中间件,包括:kafka,rabbitmq,rocketmq,用于实时采集生产现场报工、移库、收货、发运、料架出入库数据,以保证数据的实时性,满足工厂连贯生产,数据不间断传输的要求;
数据抽取监控子模块:使用自主搭建的数据抽取运维平台监控数据连通性,平台具有如下功能:
日志保留与展示功能:所有数据抽取日志,包含抽取时间、生产数据量、消费数据量及抽取失败的记录均在数据库保留,并在平台的页面上展示;
失败报警功能:抽取产生失败记录时,平台将通过在页面消息提醒和预警邮件发送两种形式,反馈至相关人员,便于相关人员更加及时发现问题;
手动触发重处理功能:该平台支持用户在页面上基于报错信息对自动抽取失败的数据手动触发重处理;
映射关系配置功能:当抽取表或字段的映射关系发生变化时,平台支持用户通过页面操作实现抽取表和抽取字段映射关系的新增、删除及修改;
所述外围系统指智能制造工厂中与自动化排产系统有数据交互的上下游系统,包括:企业资源计划系统erp、生产执行系统mes、仓储管理系统wms以及物流执行系统les;
所述主数据及业务数据:
主数据包括:排产零件主数据、排产设备主数据、排产模具主数据、客户零件关系数据、设备-模具-零件对应关系数据、零件生产节拍数据、料架主数据以及物料bom数据;
业务数据包括:需求计划、模具更换耗时、设备宕机日志以及生产报工数据。
具体地,所述数据质量检查模块包括:
数据质量检查基准及频次自定义子模块:定期对对清洗后的数据进行校验,以用户选定的基准数据作为校验主表,基于用户设定的校验规则对于其他数据自动进行数据完整性及准确性的检查,并统计数据量,根据校验结果生成数据质量检查报告并发送至相关用户;
数据质量预警子模块:对于每次数据质量检查中发现的数据问题,以实时页面消息提醒或预警邮件通知责任用户,告知该数据问题可能导致的风险,并提醒用户补充缺失数据或修正错误数据。
具体地,所述数据权限控制模块:
避免由用户越权操作或无关用户误操作导致的错误生产指导,对生产数据设置多项权限,包括:
工厂权限:系统支持对不同角色的用户设置不同的工厂权限,各工厂下的所有数据仅对拥有该工厂权限的用户可见;
工序权限:系统支持对不同角色的用户设置不同的工序权限,各工序下的所有数据仅对拥有该工序权限的用户可见;
产线权限:系统支持对不同角色的用户设置不同的产线权限,各产线下的所有数据仅对拥有该产线权限的用户可见;
客户权限:系统支持对不同角色的用户设置不同的客户权限,各客户对应的数据仅对负责该客户的用户可见。
具体地,所述数据镜像模块:
支持用户调整输入数据以进行模拟排产计算,用户的调整基于各版本镜像数据,若模拟计算不被用户确认发布,该调整将不会应用于系统基础主数据;
用户基于模拟计算输出的排产计划及其相关报表数据,认为计算结果不可用,即不适于指导生产的时候则不会确认发布;
用户进行模拟计算的其中一种场景是为了设置假定参数进行计算,基于计算结果判定该参数对结果的影响或判定该参数值是否可用,在调整参数的几次计算中若出现用户不认可的版本结果,则用户不会发布该版本作为正式的生产指导。
具体地,所述数据调度模块:
可配置式参数传入,包括:排产计划锁定期、补宕产工单覆盖需求周期等常用的计算参数支持用户在前台配置,触发计算时,前端通过接口参数的形式将这部分计算参数传输至算法调度模块,调度模块将该参数输入预设算法;
分类队列式调度:分析每个接口参数并基于参数与不同计算类型算法模块的对应关系,将输入的数据包分配到不同的调度组,并将分配到同一个调度组的计算任务,根据触发接口时间从早到晚的顺序分别排列;
处理进度监控:触发计算后,调度模块轮询最新计算任务的当前进度,进度具体至计算流程中的各阶段,以及当前阶段的完成状态、完成度及错误信息,并将以上信息传输至前台。
具体地,所述数据版本管理模块:
所有输入输出数据按照数据不同的业务含义,分别存放在不同的数据表中,对于各个数据表中的数据,以版本号区分。
具体地,所述预设算法指运筹优化数学计算模型。
一种适用于工厂自动排产的数据采集与处理方法,包括:
步骤s1:自动集成外围数据,从制造工厂的mes、wms、erp系统抽取数据并集成至排产系统;
步骤s2:抽取过程中,自动实时监控抽取进程及其状态;
步骤s3:监控平台判断数据抽取状态是否失败,若出现失败记录时,则自动向用户发送预警邮件,反馈报错信息;
步骤s4:用户在收到预警信息后,可在数据抽取监控平台上手动对抽取失败的数据触发重处理;
步骤s5:在判断数据抽取无失败记录,即成功完成对外围系统数据的集成后,自动对整合过的数据进行清洗,得到完整的、连续的、标准的数据;
步骤s6:数据清洗过后,基于用户设定的数据检查准则和基准数据,自动定期对数据进行质量检查,并反馈给用户;
步骤s7:用户在确认数据质量合规后,可手动创建排产排程计算版本,或根据各工厂业务数据、主数据更新频次设定定时任务,配置定时脚本触发后台自动创建计算版本;
步骤s8:当用户操作或定时脚本触发了计算版本的创建任务后,自动基于触发当下的数据现状生成数据快照;
步骤s9:用户可对数据快照进行手工调整或修改,以进行模拟计算;
步骤s10:用户在调整镜像数据后,可手动触发或通过定时脚本自动触发排产计算;
步骤s11:计算完成后,算法模型将计算结果输出至调度模块,调度模块将其整合后按照版本标签及业务标签分类存入数据库。
根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述中所述的适用于工厂自动排产的数据采集与处理方法的步骤。
下面通过优选例,对本发明进行更为具体地说明。
优选例1:
本系统在制造业客户需求波动日渐频繁、设备数量渐增,设备复杂度、柔性化程度渐高的过程中对排产系统数据的实时性、完整性及准确性要求逐渐严格的背景下,一方面自动集成工厂自动化排产系统需要的主数据及业务数据,为排产计算模型提供规范、及时、完备的输入;另一方面通过数据清洗、校验及数据版本管理等一系列自动化处理流程,提高系统数据质量,进而提升排产系统的计算效率。
通过本系统一方面解决了排产过程由于客户需求计划来源复杂,周边系统数据格式各异,颗粒度无法统一导致人工处理数据耗费了大量时间成本的问题,自动化、规范化的集成处理有效降低了人力成本及时间成本,同时也为排产系统的高效应急奠定了基础;另一方面解决了人工数据处理过程中易缺失、易出错、难溯源的问题,保证了数据在高效传输的基础上,仍然不失完整性、准确性和可恢复性。
如图一,本系统的核心为自动化排产的数据采集与处理,整体分为以下七个模块:
一、数据抽取及其监控模块,其用于:
从外围系统自动抽取排产所需要的主数据及业务数据,为排产系统提供实时高效的输入,并通过数据抽取监控模块监控数据的连通性。
外围系统指智能制造工厂中与自动化排产系统有数据交互的上下游系统,一般有企业资源计划系统(即erp),生产执行系统(即mes),仓储管理系统(wms),物流执行系统(les)等。
主数据指:排产零件主数据、排产设备主数据、排产模具主数据、客户零件关系数据、设备-模具-零件对应关系数据、零件生产节拍数据、料架主数据、物料bom数据等。
业务数据指:需求计划、模具更换耗时、设备宕机日志、生产报工数据等。
在数据抽取模块中,由以下两个子模块组成:
(1)数据抽取子模块,其用于:
基于各工厂的系统及其数据库现状,选择一种合适的高性能、高可用、支持集群部署的消息中间件,如kafka,rabbitmq,rocketmq等,用于实时采集生产现场报工、移库、收货、发运、料架出入库等数据,以保证数据的实时性,满足工厂连贯生产,数据不间断传输的要求。
(2)数据抽取监控子模块,其用于:
使用自主搭建的数据抽取运维平台监控数据连通性,平台主要具有几下四个功能:
1)日志保留与展示功能:所有数据抽取日志,包含抽取时间、生产数据量、消费数据量及抽取失败的记录均在数据库保留,并在平台的页面上展示;
2)失败报警功能:抽取产生失败记录时,平台将通过在页面消息提醒和预警邮件发送两种形式,反馈至相关人员,便于相关人员更加及时发现问题;
3)手动触发重处理功能:该平台支持用户在页面上基于报错信息对自动抽取失败的数据手动触发重处理;
4)映射关系配置功能:当抽取表或字段的映射关系发生变化时,平台支持用户通过页面操作实现抽取表和抽取字段映射关系的新增、删除及修改。
二、数据清洗模块,其用于:
对于抽取到的数据通过数据类型统一转换、空数据赋缺省值、数据排序与拆分及无用数据过滤等方式进行清洗处理,得到标准的结构化数据,输入至自动化排产计算系统。
三、数据质量检查模块,其用于:
检查自动化排产计算中所需要输入的主数据和业务数据是否缺失,是否合规,包含以下两个子模块:
(1)数据质量检查基准及频次自定义子模块,其用于:
定期对对清洗后的数据进行校验,以用户选定的基准数据作为校验主表,基于用户设定的校验规则对于其他数据自动进行数据完整性及准确性的检查,并统计数据量,根据校验结果生成数据质量检查报告并发送至相关用户。其中:
1)数据质量检查的频次支持用户自定义。
2)数据质量检查的基准数据支持用户自定义。
3)数据质量检查的校验规则支持用户自定义。
4)系统内置的深度学习算法可根据历史输入输出数据,计算所有输入数据的合理范围。
(2)数据质量预警子模块,其用于:
对于每次数据质量检查中发现的数据问题,以实时页面消息提醒或预警邮件通知责任用户,告知该数据问题可能导致的风险,并提醒用户补充缺失数据或修正错误数据。
数据质量检查中发现的数据问题具体指“系统基于用户定义的校验规则检查数据后,发现数据不符合用户设置的合规条件”的现象。
例如:用户设置的检查频次为1天1次。设置的基准数据为排产零件集合,设置的校验规则为“排产零件不得缺失对应的模具信息”。那么,系统将每天1次以系统中的排产零件集合为主表,检查其在系统中是否都能关联到对应的模具数据,若有部分排产零件缺失模具数据,则视为数据不符合用户设置的合规条件,即认为出现数据问题,系统将给用户发送预警信息。
四、数据权限控制模块,其用于:
对不同角色的用户设置不同的数据权限。为了避免由用户越权操作或无关用户误操作导致的错误生产指导,对生产数据设置多项权限,其中包括:
(1)工厂权限:系统支持对不同角色的用户设置不同的工厂权限,各工厂下的所有数据仅对拥有该工厂权限的用户可见。
(2)工序权限:系统支持对不同角色的用户设置不同的工序权限,各工序下的所有数据仅对拥有该工序权限的用户可见。
(3)产线权限:系统支持对不同角色的用户设置不同的产线权限,各产线下的所有数据仅对拥有该产线权限的用户可见。
(4)客户权限:系统支持对不同角色的用户设置不同的客户权限,各客户对应的数据仅对负责该客户的用户可见。
五、数据镜像模块,其用于:
由于自动化排产输入的数据不断更新,每次进行排产计算时,系统将以触发计算当下的所有输入数据作镜像,以数据快照的形式复制并保存于数据库。本模块支持用户调整输入数据以进行模拟排产计算,用户的调整基于各版本镜像数据,若模拟计算不被用户确认发布,该调整将不会应用于系统基础主数据。
用户基于模拟计算输出的排产计划及其相关报表数据,结合个人业务经验,认为计算结果不可用,即不适于指导生产的时候则不会确认发布。
用户进行模拟计算的其中一种场景是为了设置假定参数进行计算,基于计算结果判定该参数对结果的影响或判定该参数值是否可用,那么在调整参数的几次计算中很可能出现用户不认可的版本结果,则用户不会发布该版本作为正式的生产指导。
六、数据调度模块,其用于:
排产及自动拉料包括多个计算小模型,用户从web端触发不同计算类型或系统根据数据识别到不同的场景时,系统传入不同的调度参数至本模块。本模块根据不同的接口参数调用算法平台中不同的计算模型,包括以下几个功能:
(1)可配置式参数传入:例如排产计划锁定期、补宕产工单覆盖需求周期等常用的计算参数支持用户在前台配置,触发计算时,前端通过接口参数的形式将这部分计算参数传输至算法调度模块,调度模块将该参数输入算法(算法指自动化排产系统所用到的运筹优化数学计算模型)。
(2)分类队列式调度:分析每个接口参数并基于参数与不同计算类型算法模块的对应关系,将输入的数据包分配到不同的调度组,并将分配到同一个调度组的计算任务,根据触发接口时间从早到晚的顺序分别排列。
(3)处理进度监控:触发计算后,调度模块轮询最新计算任务的当前进度,进度具体至计算流程中的各阶段,以及当前阶段的完成状态、完成度及错误信息,并将以上信息传输至前台。
七、数据版本管理模块
系统自动记录历史版本的所有输入输出数据,并在web端展示供用户和管理员查询,同一计算版本的算法输入数据及输出数据以相同版本号标识出版本绑定关系。所有输入输出数据按照数据不同的业务含义,分别存放在不同的数据表中,对于各个数据表中的数据,以版本号区分。
如图二,本系统在应用过程中,涉及的业务流程如下:
一、系统首先自动集成外围数据,从制造工厂的mes、wms、erp等系统抽取数据并集成至排产系统;
二、抽取过程中,系统自动实时监控抽取进程及其状态;
三、监控平台判断数据抽取状态是否失败,若出现失败记录时,则自动向用户发送预警邮件,反馈报错信息;
四、用户在收到预警信息后,可在数据抽取监控平台上手动对抽取失败的数据触发重处理;
五、系统在判断数据抽取无失败记录,即成功完成对外围系统数据的集成后,自动对整合过的数据进行清洗,得到完整的、连续的、标准的数据;
六、数据清洗过后,系统基于用户设定的数据检查准则和基准数据,自动定期对数据进行质量检查,并反馈给用户;
七、用户在确认数据质量合规后,可手动创建排产排程计算版本,或根据各工厂业务数据、主数据更新频次设定系统定时任务,配置系统定时脚本触发后台自动创建计算版本;
八、当用户操作或定时脚本触发了计算版本的创建任务后,系统将自动基于触发当下的数据现状生成数据快照;
九、用户可对数据快照进行手工调整或修改,以进行模拟计算;
十、用户在调整镜像数据后,可手动触发或通过定时脚本自动触发排产计算;
十一、计算完成后,算法模型将计算结果输出至调度模块,调度模块将其整合后按照版本标签及业务标签分类存入数据库。
优选例2:
在某汽车零配件工厂的实施案例如下:
基于对该工厂实施成本和对其数据量的综合考虑,最终在数据抽取模块选用kafka技术抽取外围系统数据,其在具备了高性能、高可用、支持集群部署特性的基础上,还可支持高吞吐量的数据传输,保证大批量数据的实时传输;其次,通过搭建包含数据同步错误信息、数据抽取日志、数据同步版本号管理和同步数据表映射关系四个主要页面的数据抽取监控平台,展示内容简单明了,操作便捷,在降低运维成本的同时,进一步保证了数据传输的可靠性;接着,重点对客户计划数据进行清洗和梳理,基于业务上日计划按照客户覆盖周计划,pus单按照供货地覆盖日计划等规则,将其以统一的格式存入数据库;另外,通过接下来的一系列模块功能继续保证了排产过程中数据的完整性、准确性、可恢复及可追溯性,有效解决了客户痛点。
在该工厂基于本方法设计的自动化排产系统,可在15秒左右完成所有排产计算输入数据的集成与处理,为高频率的排产计算奠定了基础。目前该排产系统的生产计划可实现每小时一次的高频率滚动更新。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。