热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

MES系统中生产计划模块的重要作用

MES系统中的“生产调度”支持从“工单管理”中收到的作业队列,根据生产目标(时间和数量),必须考虑到人员、设备、材料的可用性

MES系统中的“生产调度”支持从“工单管理”中收到的作业队列,根据生产目标(时间和数量),必须考虑到人员、设备、材料的可用性等限制和生产过程中的各种中断,生成一个作业时间表,即生产作业计划。MES系统“生产调度”的任务模型如图1所示。

“生产调度”一方面是前瞻性分析,基于当前产能安排生产任务。另一个方面是对突发事件作出反应的需要,这种实时能力是MES的核心特征。它形成一个控制回路,允许对生产计划进行持续修改和对生产过程干预。

这份计划可能包含冲突,需要反复评估和解决。计划中的冲突由系统自动程序或调度员干预来解决。生产过程中的意外事件(如设备故障停机,前工序因为不良率过高延迟结束等)会导致进一步的冲突,必须按照同样的方法找到解决方案。

图1:MES生产调度任务模型

生产目标是更高层次的生产控制数据,如遵守最后期限、制造周期、利用率和在制品数量等。

生产调度最初基础是一个作业队列,取决于制造业的类型和规模。例如,离散制造业的作业队列经常是由许多不同大小的订单组成的,需要以最符合时间安排的方式和最优化的顺序分配给多台机器。

连续生产的作业队列可能只由一个或几个机器的几个订单组成,在某些情况下,可以以定期订单的形式出现。无论哪种类型的生产,这些订单可以被分解为工序作业。

通常情况下,多工序工单、单工序工单和装配工单的工序设置、加工和运输时间是有区别的,需要在工艺建模时建立工序的时间模型。

生产调度考虑执行生产任务所需的设备,设备应该在特定时段需要时可用,并且应该安排维护,使其处于良好的工作状态。如果设备在不同的部门之间共享,或用于生产不同的产品系列,调度员应该进行沟通,以确保没有重叠或竞争资源的情况。

生产调度协调制造过程的物流,使工作如期完成,同时尽可能地减少资源的浪费。为了有效地安排生产,需要确保所有需要加工的材料在开始生产前可用。如果缺少工序所需的材料,将会导致生产作业中断。

生产调度必须有效地安排人员,使生产能够顺利进行。在这个过程中的每个阶段都应该有足够的工作人员,他们必须经过培训后具备必要的技能,熟练地完成需要完成的工作。

排产是生产调度的重要环节,目的是:

① 制定一个可行的生产计划

● 解决与能力有关的冲突

● 对计划中的交货期进行长期监控,确保遵守最后期限

② 生产优化

● 在资源方面优化订单顺序,减少设置时间

● 减少周期时间,提高产量

● 减少在制品库存

● 提高资源的使用和利用率

生产调度的结果是一个时间表,提供给生产人员或其他MES任务,包括设备作业队列、物料配送时间表、运输订单等。

经过排产后得到的作业队列往往产生冲突,即排产结果确认的时间与要求时间产生冲突。显然,这是资源能力和材料供应方面的瓶颈。因此,已经创建的日程表通常被冲突所困扰。MES任务“生产调度”必须指出这些冲突,并制定可能的解决方案。


推荐阅读
  • JUC并发编程——线程的基本方法使用
    目录一、线程名称设置和获取二、线程的sleep()三、线程的interrupt四、join()五、yield()六、wait(),notify(),notifyAll( ... [详细]
  • 本文探讨了如何在Windows程序中实现高精度的定时控制,特别是针对需要精确控制发包频率的应用场景,如“小兵以太网测试仪”。 ... [详细]
  • 前言:由于Android系统本身决定了其自身的单线程模型结构。在日常的开发过程中,我们又不能把所有的工作都交给主线程去处理(会造成UI卡顿现象)。因此,适当的创建子线程去处理一些耗 ... [详细]
  • Java中的引用类型详解
    本文详细介绍了Java中的引用类型,包括强引用、软引用、弱引用和虚引用的特点和应用场景。 ... [详细]
  • 本文详细介绍了Sleep函数的基本概念、使用方法及其背后的实现原理。适合对Sleep函数的使用和实现感兴趣的开发者阅读。通过本文,您将了解如何在不同操作系统中使用Sleep函数,以及其在多线程编程中的重要性。 ... [详细]
  • SDWebImage第三方库学习
    1、基本使用方法异步下载并缓存-(void)sd_setImageWithURL:(nullableNSURL*)urlNS_REFINED_FOR_SWIFT;使用占位图片& ... [详细]
  • 关于进程的复习:#管道#数据的共享Managerdictlist#进程池#cpu个数1#retmap(func,iterable)#异步自带close和join#所有 ... [详细]
  • 大华股份2013届校园招聘软件算法类试题D卷
    一、填空题(共17题,每题3分,总共51分)1.设有inta5,*b,**c,执行语句c&b,b&a后,**c的值为________答:5 ... [详细]
  • 本文详细介绍了如何对一个整数的二进制表示进行逆序操作。通过多种方法,包括直接法、查表法和分治法,帮助读者全面理解和掌握这一技术。 ... [详细]
  • Spring Boot + RabbitMQ 消息确认机制详解
    本文详细介绍如何在 Spring Boot 项目中使用 RabbitMQ 的消息确认机制,包括消息发送确认和消息接收确认,帮助开发者解决在实际操作中可能遇到的问题。 ... [详细]
  • Redis 是一个高性能的开源键值存储系统,支持多种数据结构。本文将详细介绍 Redis 中的六种底层数据结构及其在对象系统中的应用,包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象。通过12张图解,帮助读者全面理解 Redis 的数据结构和对象系统。 ... [详细]
  • 我自己做了一个网站图片的抓取,感觉速度有点慢抓取4000张图片可能得用15分钟左右的时间,我百度看用线程可以加快抓取,然后创建了5个线程抓取,但是5个线程是同步执行同样的操作一个图片就 ... [详细]
  • 在iOS开发中,多线程技术的应用非常广泛,能够高效地执行多个调度任务。本文将重点介绍GCD(Grand Central Dispatch)在多线程开发中的应用,包括其函数和队列的实现细节。 ... [详细]
  • RocketMQ 运维监控实践指南
    本文详细介绍了如何实现 RocketMQ 的运维监控,包括监控平台的搭建、常用运维命令及其具体用法。适合对 RocketMQ 监控感兴趣的读者参考。 ... [详细]
  • 优先队列是一种特殊的队列,不遵循先进先出原则。它分为最大优先队列和最小优先队列。最大优先队列总是将当前最大的元素优先出队,而最小优先队列则总是将当前最小的元素优先出队。本文将详细介绍如何使用二叉堆在C#中实现这两种优先队列。 ... [详细]
author-avatar
老翅几回寒_332
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有