Automatically generating process sheets from digital twins using exploratory simulations

By automatically generating process lists using digital twins and reinforcement learning, the problem of low efficiency in manually creating process lists in autonomous manufacturing systems has been solved, enabling efficient and low-cost small-batch customized production.

CN115511653BActive Publication Date: 2026-08-04SIEMENS AG
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SIEMENS AG
Filing Date
2022-06-06
Publication Date
2026-08-04

AI Technical Summary

Technical Problem

Existing technologies require a large amount of manual creation of the Bill of Materials (BOP), resulting in low efficiency of autonomous manufacturing systems in rapid product changeover and small-batch customized production, and failing to effectively reduce production costs.

Method used

By using digital twins of products and environments for simulation, combined with reinforcement learning methods, the assembly possibility space is automatically explored, a bill of processes (BOP) is generated, manufacturing actions are optimized to avoid collisions and minimize forces, and the BOP is automatically generated.

Benefits of technology

It enables the autonomous generation of efficient and low-cost process lists, supports small-batch customized production, improves the flexibility and production efficiency of the manufacturing system, and reduces the reliance on manual programming.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115511653B_ABST
    Figure CN115511653B_ABST
Patent Text Reader

Abstract

The invention relates to a method for automatically generating a process sheet from a digital twin in a manufacturing system using exploratory simulation, the method comprising: receiving design information representative of a product to be produced; iteratively performing a simulation of the manufacturing system; identifying manufacturing actions based on the simulation; optimizing the identified manufacturing actions for efficient production of the product to be produced; generating a process sheet for producing the product through the manufacturing system. The simulation can be performed using a digital twin of the product being produced and a digital twin of the environment. The system actions are optimized using reinforcement learning techniques to automatically generate a process sheet based on the design information and task specification of the product.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to factory automation. More specifically, this application relates to autonomous manufacturing processes. Background Technology

[0002] The Fourth Industrial Revolution aims to incorporate mass customization into the costs of large-scale production. This is achievable because autonomous machines no longer need to be programmed with detailed instructions, such as robot waypoints or manually set paths. Instead, they automatically define their tasks using design information about the product to be produced. This can be used to assemble or package a set of items (e.g., razor handles, shaving cream, soap, etc.) into blister packs based on their digital twins. Information such as which objects are used, the order in which items need to be inserted, their orientation, how to pick them up, and the path they need to be inserted can be defined during the product design phase. Therefore, processes can be based on bills of materials (BOM) and bills of processes (BOP) without requiring additional programming to systems such as robotic handling systems.

[0003] However, for truly autonomous systems to be realized and production costs effectively reduced, it is crucial that generating sufficient BOM and BOP does not require the high skill and expensive resources comparable to traditional automated programming tasks (such as those used by robotic handling systems). If the BOP requires a level of detail similar to coding a robotic handling system, these requirements are merely shifted to another party or another process, rather than being truly automated. The BOM defines the components of a product, while the BOP defines the product to be manufactured. The automated creation of the BOM occurs within available design tools and can be enhanced through methods including generative design. The BOP defines how the product is manufactured and provides a reference for defining the execution steps / processes for autonomous systems. This process depends on the BOM, but other constraints (such as the tools and machines available for manufacturing) also contribute to preparing the workflow for producing the product.

[0004] BOP (Build-Operate-Plan) plays a crucial role in bringing product designs to life. BOP enables factories to possess autonomous production units or modules (e.g., robots) capable of self-organizing and optimizing based on pending production orders. This approach provides flexibility and responsiveness to production orders and market fluctuations, enabling the production of small-batch or mass-produced parts, thereby enhancing industry competitiveness. Therefore, methods for automatically generating BOPs to achieve autonomous manufacturing are needed. Summary of the Invention

[0005] According to an embodiment of the present invention, a method for autonomously generating a BOP 620 in a manufacturing system 600 is disclosed. The method includes: receiving design information 603 representing a product 300 to be manufactured; iteratively performing a simulation 420 of the manufacturing system; identifying manufacturing actions 612 based on the simulation; optimizing the identified manufacturing actions 619 to efficiently produce the product 300 to be manufactured; and generating a BOP 620 for producing the product through the manufacturing system 600.

[0006] According to other embodiments, the manufacturing system 600 includes an autonomous machine (e.g., an industrial robot) 520 for producing the product.

[0007] In other embodiments, a digital twin 601 of the product 300 and a digital twin 601 of the environment are received, in which the manufacturing system 600 operates to perform a simulation 420.

[0008] According to some embodiments, information related to environmental uncertainty 605 is received, in which the manufacturing system 600 operates.

[0009] Other embodiments include optimizing the identified manufacturing action 619 by processing the received input in the reinforcement learning process 610.

[0010] In some embodiments, BOP 620 includes a list of components of product 300 arranged in assembly order, an optimized assembly sequence, and a related motion plan for assembling each component into product 300 in production. For assembly, process list 620 may include a list of components, production methods, operation sequences, and assembly methods, etc.

[0011] In any of the foregoing embodiments, the reinforcement learning process 610 includes a neural network 617 for creating a policy 618 that defines the next action 612 of an agent 611 for producing product 300.

[0012] According to some embodiments, the neural network 617 is trained offline using a simulation of environment 601 and product 300. In other embodiments, manufacturing process data is collected during real-time production of the manufacturing system 600, and the neural network 617 is trained accordingly.

[0013] Some other embodiments include labeling candidate solutions for manufacturing the product as types, such as integer variables for success or failure, as input to the neural network during training. This label can also be a continuous value, such as production efficiency or cycle time.

[0014] In other embodiments of the invention, the identified manufacturing action 619 is optimized based on one or more of the following factors, such as: forces generated by friction; forces generated by clamping; and forces that move parts of the product relative to an axis.

[0015] In other embodiments, one or more of the following factors are ignored: the force generated by friction, the force generated by the components holding the object, and the force that moves the components of the product relative to the axis, in order to accelerate the optimization of the identified manufacturing action 619.

[0016] In some embodiments, the identified manufacturing action 619 is optimized based on applying minimal force to the components of the object and shortening the path length of the components used to position the product.

[0017] In other embodiments, the process list 620 includes a list of components for assembling the product in the order of component assembly; and a list containing motion plans for each component as it is assembled to manufacture the product. Attached Figure Description

[0018] The foregoing and other aspects of the invention can be best understood from the following detailed description when read in conjunction with the accompanying drawings. For the purpose of illustrating the invention, the drawings show currently preferred embodiments; however, it should be understood that the invention is not limited to the specific apparatus disclosed. The drawings include the following illustrations:

[0019] Figure 1 A diagram is shown illustrating a box containing materials for producing a product, representing various aspects of embodiments according to the present invention.

[0020] Figure 2 An isometric view of a manufacturing station including a manufacturing robot, showing various aspects of embodiments according to the present invention, is shown.

[0021] Figure 3 The illustration shows a product that can be manufactured according to various aspects of embodiments of the present invention.

[0022] Figure 4 A process flowchart illustrating various aspects of an embodiment of the present invention for enabling a robot control system to autonomously generate a process list is shown.

[0023] Figure 5 A diagram illustrating an improved robot control system according to various aspects of embodiments of the present invention is shown.

[0024] Figure 6 A block diagram of a reinforcement learning architecture for autonomously generating process inventory is shown, illustrating various aspects of embodiments according to the present invention.

[0025] Figure 7A block diagram of a computing system capable of implementing specific aspects of the embodiments described in this invention is shown. Detailed Implementation

[0026] Traditionally, process lists are created during the product design phase and are often used as assembly instructions, for example, by workers. Consider an example such as... Figure 3 As shown, a set of razor handles, shaving cream, soap, etc., is assembled into a blister pack. These assembly instructions can be shown in an exploded view or provided in printed or electronic form, such as a readable computer file like a PDF. The instructions instruct workers to first apply glue, then place the coupon in the designated position, and then position the bottle so that the consumer can easily read the picture on the bottle. The assembler is then instructed to insert the razor handle, razor handle, and razor cap in the suggested order. While this is sufficient to guide workers to complete the task, this BOP presents a challenge in explaining how to perform the task to the machine.

[0027] For example, consider the difficulty of a machine reading a PDF image. The machine needs to identify the corresponding 3D part, determine the reason for the arrow's meaning, and the written conditions specifying the assembly order of the parts. Furthermore, the machine will infer missing or implicit information to determine if parts need to be inserted at a specific angle for alignment. While these aspects may pose challenges for workers, they can teach them how to manufacture the first product and determine subsequent requirements through trial and error, balancing multiple performance metrics such as accuracy and speed. However, this approach is not suitable for autonomous machines constrained by the expectations of skilled workers in a demanding workshop and the need to reduce production volume requirements that combine to minimize variations between products over time.

[0028] Therefore, current technologies using autonomous machines require manually creating BOPs in a document-readable format, including information about each product gripping point (e.g., ensuring the robot end effector's contact point aligns with blister pack features, necessary to prevent accidental rotation of the product during high-speed insertion). Autonomous machines are also capable of being equipped with models for object pose detection (e.g., the ability to position objects to provide image readability). Furthermore, autonomous machines must understand the object's insertion position and orientation relative to the product coordinate system (e.g., blister pack), and the path to follow to prevent collisions that could damage the product. The correct tool selection for performing the task must also be chosen. This includes the ability to transfer the product when needed (e.g., preventing physical slippage of suction cups). While the amount of work required to create this information is far less than that required to program a robotic handling system, it still demands significant skill and time. For example, programming a complex, flexible, and complementary problem based on vision and advanced robotic functions might take a robotics expert a month or more, while manually defining the models and parameters associated with the BOP could add several more hours.

[0029] Manually defining BOPs presents challenges when considering rapid changeover scenarios. For example, if a system needs to manufacture a different product every 4-5 hours, reprogramming the robotic handling system between changeovers becomes impractical. Even for autonomous systems that require BOP creation without reprogramming, manually generating this BOP can be an obstacle, as generating a BOP for a new product can take several hours. When extrapolating to fully customized production with a lot size of one (e.g., at a rate of 50 parts per minute), it's clear that manually editing the BOP won't scale as required. This article will refer to... Figures 1 to 3 The process of assembling components into a kit is described. These figures highlight the challenges and tasks involved in defining the assembly sequence, placement, orientation, insertion path, insertion speed, and other aspects coded into the BOP.

[0030] Figure 1 A kit 100 of parts and the tools required for assembly are shown. The position and orientation of each part are important for the next process step. These parts are assembled to achieve product supply. Kit 100 includes a tray 121 for holding parts and tools. Kit 100 includes tools such as a Phillips screwdriver 101, a flathead screwdriver 103, and a drill bit 107. Kit 100 also includes several parts, including a measuring instrument 115, a valve 117, a screw 111, a wing nut 113, and a hook 105. Each tool can be manipulated by an autonomous machine, such as using a robotic gripper or a specially designed robotic actuator. For example, a robotic arm can be configured with a rotating tool and a chuck for receiving the drill bit 107. A robotic gripper can be configured to hold, position, and rotate the wing nut 113. A robotic arm can also be configured to manipulate parts such as the measuring instrument 115 and the valve 117. In order to automate the handling of kit 100, the machine must understand the dimensions and layout of the tray 121 and identify the tools and parts in the tray 121. In order to properly handle the tools and parts in kit 100, the autonomous machine must identify these parts or tools and their orientation relative to other parts or tools in tray 121. The parts and tools can have predetermined positions within kit 100, or they can be loosely situated in tray 121. In this case, their relative orientations can be random or overlapping.

[0031] Figure 2 A diagram illustrates a self-contained cabinet assembly that can be used to implement various aspects of embodiments of the present invention. For example, Figure 2The autonomous machine cabinet assembly shown can be used for highly customized manufacturing, such as producing products in batches of 1. The assembly includes a first robotic arm 203 and a second robotic arm 201. A tool 209 can be associated with robotic arm 201 to work on workpiece 205. An additional workpiece 207 is provided to be incorporated into workpiece 205. Robotic arm 203 can be equipped with an image sensor to provide machine vision on the additional workpiece 207 or workpiece 205. Information acquired by the image sensor allows the autonomous machine to determine process steps, such as those included in the product's BOP. Robotic arms 201 and 203 can be configured to work collaboratively to produce the desired product. For example, information acquired by robotic arm 203 via the image sensor can be used to inform the system how and where to move robotic arm 201 and its associated tool 209. The position and orientation of each part are important for determining subsequent process steps. If workpiece 207 changes length, for example due to a manual cutting process, it may not be able to be positioned between other parts previously placed in workpiece 205. If it is necessary to place workpiece 207 among other parts within strict tolerance constraints, it may be necessary to insert additional workpiece 207 in a specific manner, such as tilting the parts during insertion.

[0032] Figure 3 A diagram showing a product 300 that can be assembled using BOM and BOP according to an embodiment of the present invention. Figure 3 Product 300 shown is a shaving-related gift set. Product 300 includes a blister pack 301 made of plastic. The blister pack 301 is molded to include a cavity 313 for receiving the gift set components. The gift set includes a razor handle 303, three razor holders 305, a razor cap 307, a shaving gel or shaving cream container 311, and a promotional item 309 (e.g., a water bottle). Each component is associated with a cavity 313, which is specifically designed to receive its associated component. The cavity 313 can be formed to include a protrusion 315, which is resilient and allows a component to be inserted into the cavity 313 through the protrusion 315. The protrusion 315 is pushed outward when the component is inserted into the cavity 313. When the component is fully inserted into the cavity 313, the protrusion 315 returns to its original position, holding the component in place within the blister pack 301.

[0033] A key aspect of this invention is the pursuit of automatically generating a BOP (Bill of Materials) representing the product definition during the design phase, using only the BOM. That is, computer-aided design (CAD) or textured CAD information for different parts and the final product (depending on image placement, if necessary) is used as input for this step. The final product information implicitly provides the optimal location and orientation of the product, while the design information for individual parts informs the required process steps and starting points.

[0034] In addition to product information, physical manufacturability also needs to be considered. That is, can a part be placed behind another part without collision, or can the machine reach the required position or follow the required path based on its physical constraints or potential collisions with other objects? Furthermore, other product-dependent constraints may need to be considered. For example, in some cases, forces should be limited to specific levels. Another constraint could be that the object should not move about a specific axis to prevent product leakage or shear forces that could cause the product to fall.

[0035] In this embodiment, the proposed solution utilizes digital twins of the environment and the product to simulate physical phenomena (e.g., friction, force, collision) and deploys reinforcement learning incentives to explore the possibility space for manufacturing the product from its parts. Different success options (no collision with other objects and kinematically accessible paths) are then weighted using criteria such as minimum force and cycle time. The reward function for the reinforcement learning method can be the distance between the assembled parts and the positions of relevant objects in the product design. Candidate solutions are considered only when all parts reach their final positions without collision. The order of part assembly and the path information for the last few centimeters before insertion are then stored as a BOP. To simplify the problem and thus accelerate convergence, certain aspects can be ignored depending on the task at hand. For example, friction, force, and kinematic aspects can be ignored, and the testing can be restricted to collisions (including end effectors). In some cases, the parts supply can be located at a relatively close distance (e.g., 10 cm) above its final position in the assembly. Therefore, the focus may not be on how to explicitly handle objects (pick-up, transfer, rotation, and transport), but rather on how and in what order they are placed.

[0036] Flexible handling and assembly issues stem from a product's Bill of Materials (BOM) and Balance of Production (BOP). While the BOM defines the product and is therefore a result of the design process, the BOP describes how the product will be manufactured. Generating a BOP can take hours and must be automated for efficient small-batch production. Current methods for generating BOPs require skilled human labor with knowledge of the products and tools used for assembly (e.g., robots and end effectors), making them costly and time-sensitive for flexible manufacturing.

[0037] According to various aspects of the embodiments described herein, reinforcement learning can be used to automatically explore the possibility space of assembled products. Execution is penalized by information on collisions and forces generated by physical simulation. The reward function is based on the distances between all assembled parts and the design information (the assembly's BOM). The process only considers successful solutions (without remaining distance or collisions). The successful sequence of insertion strategies / paths for the final few centimeters of distance can then be stored as a BOP.

[0038] Current design tools focus solely on creating the Bill of Materials (BOM) and its associated components. The Bill of Materials (BOP) then must be manually coded by experienced experts. Automated BOP generation creates an improved design and production system. This is an improvement over existing autonomous manufacturing systems that previously could not determine feasible BOPs on their own. With the technical challenge of automating the generation of practical BOPs resolved, the capabilities of these autonomous manufacturing systems are enhanced, enabling them to realize greater potential for highly complex and customizable production. These improved capabilities open opportunities in untapped markets, such as scaling down from small-batch manufacturing to batch sizes of 1.

[0039] Now for reference Figure 4 The diagram illustrates a process 400 for automatically generating a process list via a control system of an autonomous robot. Inputs to this process can include geometric information related to the product to be manufactured. This geometric information can be provided in the form of CAD information generated as computer files by design tools during the product design phase. Furthermore, information related to the operating environment of the autonomous robot can also be used as input to process 400. In some embodiments, information about the product and / or environment can be provided as a digital twin. A digital twin is a digital or computer-based replica of a real-world object or environment. Given inputs or states experienced by a real-world object, the digital twin of that object will create identical outputs or state changes that will be observed in the real-world counterpart of the same inputs.

[0040] Other inputs to process 400 can include information characterizing the uncertainties of the operating environment. Uncertainty quantifies small, unpredictable, time-varying conditions that can affect the entire production process. Considering these uncertainties during optimization can provide improved solutions. By taking uncertainty into account, the optimized solution accounts for minor unpredictable variations and yields a more robust solution. Another factor that can be provided as input is information related to the specifications specific to the robotic task the robot can perform during the manufacturing process. This additional information will guide the development of an optimized solution specifically tailored to the task being performed. Returning to process 400, the selected inputs are fed into the reinforcement learning process for the automatic generation of process list 410.

[0041] Simulations are performed using the provided inputs to explore the solution space 420. Successful solutions are identified as a subset of the entire solution space. A successful solution is characterized by each action in the manufacturing process being performed according to the design and without collisions with the robot. Figure 3 In the illustrated example, a successful solution ensures that each component of the razor kit is placed in its intended position without collision when inserting each component into its final position.

[0042] While exploring the solution space, each potential solution is labeled based on the simulation results 430. Each labeled solution provides input to a neural network, which evaluates the solutions based on their quality 440.

[0043] The neural network is optimized using reinforcement learning. A reward function that favors solutions meeting favorable criteria adjusts the weights in the neural network according to the criteria to achieve an optimal solution 450 that meets design requirements while exhibiting the most advantageous characteristics. Furthermore, this process can be evaluated to determine which successful solutions meet design requirements while minimizing the robot arm's movement path. When the neural network focuses on the optimal solution, its output produces a process list 460 for the optimal solution. This process list can include the placement order of each part in the kit, and the path the robot arm uses to place each part in the kit.

[0044] The aforementioned process 400 can be performed within a computer processor, which is part of the robot control system. This robot control system serves as an integral component of the industrial robot. The improved computer control system can automatically generate a process list derived from the reinforcement learning process simulation, providing a technical solution to the existing problem of providing instructions in the form of a process list that can be consumed and executed by the machine. Previous solutions required significant human expertise and involved time constraints, hindering the expectation of rapid changeover of manufacturing processes. The improved robot control system provides the capability to achieve Industry 4.0 goals. For example, automatically generating the process list will bring manufacturing closer to the goal of batch size 1.

[0045] Figure 5 A diagram illustrating an improved robot control system 500 for automatically generating process lists according to various embodiments of the present invention is shown. An industrial robot 520 includes a robotic arm 521. The robotic arm 521 includes several articulated joints. Tools can be attached to the end of the robotic arm 521. For example, a gripper 523 can be attached to the end of the robotic arm 521. The industrial robot 520 can also be equipped with sensors 525 for assisting the robot 520. The sensors 525 can be imaging devices for enabling machine vision in the industrial robot 520. Other types of sensors 525 can be used. For example, force sensors or torque sensors can be used to provide operational status information of the robotic arm 521. It should be recognized that various types of sensors 525 can be used to perform various support functions of the industrial robot 520. The industrial robot can be configured to use a tool and parts tray 100. Parts or components from the parts and tools tray 100 can be picked up by the industrial robot 520 and placed in the final product, such as blister packs 301.

[0046] Industrial robot 520 is controlled by robot controller 501. The robot controller includes a computer processor and memory 503. The computer memory can contain digital assets in the form of data and software. Digital assets can include digital twins 505, neural networks 507, and / or specialized task specifications 509 related to the robot operating system. Robot controller 501 generates robot instructions 511, which are transmitted to industrial robot 520, causing industrial robot 520 to perform tasks associated with the received robot instructions 511. When the robot takes an action, sensor 525 can capture the robot's state and changes in its environment. Information about state changes can be transmitted back to robot controller 501 in the form of feedback 513.

[0047] According to an embodiment of the invention, the computer controller 501 is improved to provide better control over the robot 520. The computer processor and memory contain instructions that enable the robot controller 501 to automatically generate a process list using only product design information. A digital twin 505 of the product and environment is used to provide the design information to a simulation. The solution space of all candidate solutions for producing the product is explored. The candidate solutions are applied to a reinforcement learning process in a neural network 507 to learn the optimal solution for producing the product. The optimal solution provides a way to produce the product in a manner that prevents the robot 520 from colliding with product parts or the robot 520's surrounding environment. Other standards can also be used.

[0048] Figure 6 A block diagram of an improved manufacturing system 600 for automatically generating BOPs using a reinforcement learning process, according to various aspects of embodiments of the present invention, is shown.

[0049] The inputs to the improved manufacturing system 600 include a digital twin 601 relating to the product being manufactured and the environment, product design information (e.g., CAD files) 603, uncertainties 605, and detailed task specifications 607 relating to the production task. These inputs are provided to a reinforcement learning process 610. Machine learning is performed to optimize the solution. The optimized action 619 is output in the form of an automatically generated BOP 620.

[0050] The reinforcement learning process 610 includes an agent 611. The agent 611 can be an industrial robot or an autonomous machine that performs actions 612 to produce a designed product. Each action 612 taken by the agent 611 affects the environment 613 in which the agent operates. When the agent 611 takes an action 612, one or more states of the environment 613 change. The goal of the reinforcement learning process 610 is to enable the agent 611 to take the optimal action 612 to efficiently produce the designed product. To this end, the reinforcement learning process 610 uses a neural network 617 to evaluate the action 612 being performed by the agent 611. The neural network 617 evaluates the action 612 of the agent 611 and outputs a policy 618 that determines the next action to be taken by the agent 611. For each action 612 of the agent 611, the expected reward 615 for taking the given action 612 is compared with the actual reward 614 generated by simulating the action 612 relative to the environment 613. The expected reward 615 is compared with the actual reward 614 to adjust the weights 616 of the neural network 617 to update the policy 618. The neural network 617 is adjusted to generate the optimal next action 612 for the agent 611. The optimal action propels the agent 611 toward the goal of producing a product according to the design specifications. When a set of optimal actions 619 for successfully completing the designed product is determined, these actions are compiled into a process list 620. The process list 620 is automatically generated by the robot control system acting as the agent 611. In this way, the manufacturing system 600 represents an improvement in the robot control system capable of automatically generating the process list 620. The improved manufacturing system 600 enables the automatic generation of optimized actions 619, thus moving towards the goal of rapidly adapting to manufacturing process transformations envisioned in Industry 4.0.

[0051] Figure 7 An exemplary computing environment 700 capable of implementing embodiments of the present invention is shown. Computers and computing environments such as computer system 710 and computing environment 700 are known to those skilled in the art and are therefore briefly described herein.

[0052] like Figure 7 As shown, the computer system 710 may include a communication mechanism such as a system bus 721, or other communication mechanisms for transmitting information within the computer system 710. The computer system 710 also includes one or more processors 720 coupled to the system bus 721 for processing information.

[0053] Processor 720 may include one or more central processing units (CPUs), graphics processing units (GPUs), or any other processor known in the art. More generally, a processor as used herein is a device for executing machine-readable instructions stored on a computer-readable medium to perform a task, and may include any one or a combination of hardware and firmware. The processor may also include memory storing machine-readable instructions executable to perform the task. The processor manipulates information by manipulating, analyzing, modifying, transforming, or transmitting information for use by an executable process or information device, and / or by routing information to an output device. The processor may use or include the functions of, for example, a computer, controller, or microprocessor, and may be modulated using executable instructions to perform special-purpose functions that a general-purpose computer cannot perform. The processor may be coupled (electrically coupled and / or include executable components) to any other processor to enable interaction and / or communication between them. User interface processors or generators are known elements that include electronic circuitry or software, or a combination of both, for generating a display image or a portion thereof. The user interface includes one or more display images that enable a user to interact with the processor or other devices.

[0054] Continue to refer to Figure 7 The computer system 710 also includes a system memory 730 coupled to a system bus 721 for storing information and instructions to be executed by the processor 720. The system memory 730 may include computer-readable storage media in the form of volatile and / or non-volatile memory, such as read-only memory (ROM) 731 and / or random access memory (RAM) 732. RAM 732 may include other dynamic storage devices (e.g., dynamic RAM, static RAM, and synchronous DRAM). ROM 731 may include other static storage devices (e.g., programmable ROM, erasable PROM, and electrically erasable PROM). Furthermore, the system memory 730 may be used to store temporary variables or other intermediate information during instruction execution by the processor 720. A basic input / output system 733 (BIOS) contains basic routines that facilitate the transfer of information between components within the computer system 710, for example, during startup, and may be stored in the ROM 731. RAM 732 may contain data and / or program modules that can be immediately accessed by the processor 720 and / or are currently being executed by the processor 720. The system memory 730 may also include, for example, an operating system 734, an application program 735, other program modules 736, and program data 737.

[0055] The computer system 710 also includes a disk controller 740 coupled to a system bus 721 to control one or more storage devices for storing information and instructions, such as hard disks 741 and removable media drives 742 (e.g., floppy disk drives, optical disk drives, tape drives, and / or solid-state drives). Storage devices can be added to the computer system 710 using a suitable device interface (e.g., Small Computer System Interface (SCSI), Integrated Device Electronics (IDE), Universal Serial Bus (USB), or FireWire).

[0056] Computer system 710 may also include a display controller 765 coupled to system bus 721 to control a display or monitor 766, such as a cathode ray tube (CRT) or liquid crystal display (LCD), for displaying information to a computer user. The computer system includes an input interface 760 and one or more input devices, such as a keyboard 762 and a pointing device 761, for interacting with the computer user and providing information to processor 720. For example, pointing device 761 may be a mouse, light pen, trackball, or pointing stick for transmitting directional information and instruction selection to processor 720 and for controlling cursor movement on display 766. Display 766 may provide a touchscreen interface that allows input to supplement or replace the directional information and instruction selection communication of pointing device 761. In some embodiments, an augmented reality device 767 worn by the user may provide input / output functionality that allows the user to interact with both the physical and virtual worlds. Augmented reality device 767 communicates with display controller 765 and user input interface 760, enabling the user to interact with virtual objects generated by display controller 765 within augmented reality device 767. Users can also provide gestures that are detected by the augmented reality device 767 and sent as input signals to the user input interface 760.

[0057] Computer system 710 is capable of performing some or all of the process steps of embodiments of the present invention in response to processor 720 executing one or more sequences of one or more instructions contained in memory such as system memory 730. These instructions can be read into system memory 730 from another computer-readable medium (e.g., hard disk 741 or removable media drive 742). Hard disk 741 can contain one or more data memories and data files used in embodiments of the present invention. The contents of the data memories and data files can be encrypted to improve security. Processor 720 can also be used in a multiprocessing configuration to execute one or more sequences of instructions contained in system memory 730. In alternative embodiments, hard-wired circuitry can be used instead of or in combination with software instructions. Therefore, embodiments are not limited to any particular combination of hardware circuitry and software.

[0058] As described above, computer system 710 can include at least one computer-readable medium or memory for storing instructions programmed according to embodiments of the present invention, and for containing data structures, tables, records, or other data as described herein. The term "computer-readable medium" as used herein refers to any medium involved in providing execution instructions to processor 720. Computer-readable media can take many forms, including but not limited to non-transient, non-volatile, volatile, and transmission media. Non-limiting examples of non-volatile media include optical discs, solid-state drives, magnetic disks, and magneto-optical discs, such as magnetic hard disk 741 or removable media drive 742. Non-limiting examples of volatile media include dynamic memory, such as system memory 730. Non-limiting examples of transmission media include coaxial cables, copper wires, and optical fibers, including conductors constituting system bus 721. Transmission media can also take the form of acoustic or optical waves, such as acoustic or optical waves generated during radio wave and infrared data communication.

[0059] The computing environment 700 may also include a computer system 710 operating in a networked environment via a logical connection to one or more remote computers (e.g., remote computing device 780). The remote computing device 780 may be a personal computer (laptop or desktop), mobile device, server, router, network PC, peer-to-peer device, or other public network node, and typically includes multiple or all of the elements described above with respect to the computer system 710. When used in a networked environment, the computer system 710 may include a modem 772 for establishing communication on a network 771 such as the Internet. The modem 772 may be connected to the system bus 721 via a user network interface 770 or via another suitable mechanism.

[0060] Network 771 can be any network or system commonly known in the art, including the Internet, intranet, local area network (LAN), wide area network (WAN), metropolitan area network (MAN), direct or cascaded connection, cellular telephone network, or any other network or medium that facilitates communication between computer system 710 and other computers (e.g., remote computing device 780). Network 771 can be wired, wireless, or a combination thereof. Wired connections can be implemented using Ethernet, Universal Serial Bus (USB), RJ-6, or any other wired connection known in the art. Wireless connections can be implemented using Wi-Fi, WiMAX and Bluetooth, infrared, cellular networks, satellite, or any other wireless connection method known in the art. Furthermore, multiple networks can operate independently or communicate with each other to facilitate communication within network 771.

[0061] Figure 3The illustration shows a batch-1 packaged for, for example, blister-based gift packaging. The order in which these parts are inserted is important because they can be placed on top of each other, for example, first the glue, then the coupon, and then the bottle. Furthermore, the orientation of the product image is also important for presentation. Additionally, blister packs have snap-fit ​​features that constrain the placement of objects, which may require insertion at a specific angle or speed.

[0062] The executable application as used herein includes code or machine-readable instructions used to regulate a processor to perform predetermined functions, such as those of an operating system, a context data acquisition system, or other information processing system, in response to user instructions or input. An executable program is a segment of code or machine-readable instructions, subroutines, or other distinct code segments or part of an executable application used to perform one or more specific processes. These processes can include receiving input data and / or parameters, running the received input data and / or performing functions in response to the received input data, and providing the resulting output data and / or parameters.

[0063] As used herein, a graphical user interface (GUI) includes one or more display images generated by a display processor that enable a user to interact with the processor or other devices, along with associated data acquisition and processing functions. The GUI also includes an executable program or executable application. The executable program or executable application modulates the display processor to generate signals representing the GUI display images. These signals are provided to a display device capable of displaying the images for the user to view. Under the control of the executable program or executable application, the processor manipulates the GUI display images in response to signals received from input devices. In this way, the user can interact with the display images using input devices, enabling interaction with the processor or other devices.

[0064] The functions and procedures described herein can be executed automatically, wholly or partially, in response to user instructions. Automatically executed activities (including steps) can be performed in response to one or more executable instructions or device operation, without requiring direct user initiation.

[0065] The systems and processes illustrated in the accompanying drawings are not exclusive. Other systems, processes, and menus can be derived from the principles of this invention to achieve the same purpose. Although the invention has been described with reference to specific embodiments, it should be understood that the embodiments and variations shown and described herein are for illustrative purposes only. Modifications to the present design can be made by those skilled in the art without departing from the scope of the invention. As described herein, various systems, subsystems, agents, managers, and processes can be implemented using hardware components, software components, and / or combinations thereof.

[0066] This invention describes embodiments for automatically generating a BOP from a BOM supported by product design information. These summarize an embodiment including a method for automatically generating a BOP 620 in a manufacturing system 600, the method comprising: receiving design information 603 representing a product 300 to be manufactured; iteratively performing a simulation 420 of the manufacturing system; identifying manufacturing actions 612 based on the simulation; optimizing the identified manufacturing actions 619 to efficiently produce the product 300 to be manufactured; and generating a process list 620 for producing the product through the manufacturing system 600.

[0067] An embodiment including any of the foregoing embodiments, wherein the manufacturing system 600 includes an industrial robot 520 for producing the product.

[0068] An embodiment including any of the foregoing embodiments further includes a digital twin 601 receiving the product 300 and a digital twin 601 of the environment in which the manufacturing system 600 operates for simulation 420.

[0069] An embodiment including any of the foregoing embodiments further includes receiving information related to environmental uncertainty 605 in which the manufacturing system 600 operates.

[0070] An embodiment including any of the foregoing embodiments further includes optimizing the identified manufacturing action 619 by processing the received input in the reinforcement learning process 610.

[0071] In any of the foregoing embodiments, the process list 620 includes a list of components of the product 300 arranged in assembly order, and a related motion plan for assembling each component into the product 300 in production.

[0072] An embodiment including any of the foregoing embodiments, wherein the process list 620 includes a list of components arranged in assembly order.

[0073] In any of the foregoing embodiments, the reinforcement learning process 610 includes a neural network 617 for creating a policy 618 that defines the next action 612 of an agent 611 for producing product 300.

[0074] An embodiment including any of the foregoing embodiments further includes offline training of the neural network 617 using simulations of environment 601 and product 300.

[0075] An embodiment including any of the foregoing embodiments further includes training a neural network 617 during real-time production of the manufacturing system 600.

[0076] An embodiment including any of the foregoing embodiments further includes labeling candidate solutions for manufacturing a product as inputs to the neural network during training of the neural network.

[0077] An embodiment including any of the foregoing embodiments further includes: optimizing the identified manufacturing action 619 to compensate for uncertainties, such as: forces generated by friction; forces generated by clamping; and forces that move parts of the product relative to the axis.

[0078] An embodiment including any of the foregoing embodiments, wherein one or more of the following factors are ignored: forces generated by friction, forces generated by the components holding the product, and forces that move the components of the product relative to the axis, in order to accelerate the optimization of the identified manufacturing action 619.

[0079] Including any of the foregoing embodiments, the identified manufacturing action 619 is optimized based on applying minimal force to the components of the object and reducing the path length or cycle time for positioning the product components.

[0080] In any of the foregoing embodiments, the process list 620 includes a list of components for assembling the product in the order of component assembly; and a list containing motion plans for each component as it is assembled to manufacture the product.

Claims

1. A method for automatically generating a bill of processes in a manufacturing system, said manufacturing system comprising autonomous machines for producing products, the method comprising: Receive design information in CAD file formats representing different components and the final product to be manufactured; Receive a digital twin of the product and a digital twin of the environment in which the manufacturing system operates, and use the digital twin to iteratively simulate the manufacturing system; Receive information relating to the uncertainty of the environment in which the manufacturing system operates, the information relating to the uncertainty quantifies unpredictable time-varying conditions that can affect the entire production process; The manufacturing process is evaluated based on the received design information, the received digital twin, and the received uncertainty-related information to determine a successful solution that achieves the design requirements. Successful manufacturing actions are identified based on the simulation. Optimize the identified manufacturing actions to efficiently produce the products to be manufactured; The manufacturing system generates a process list for producing the product, which includes a list of the product's components arranged in assembly order, and a related motion plan for assembling each component to manufacture the product in production.

2. The method of claim 1, further comprising optimizing the identified manufacturing action by processing the received input during reinforcement learning.

3. The method according to claim 2, wherein, The reinforcement learning process includes a neural network for creating a policy that defines the agent's next action, which the agent uses to produce the product.

4. The method according to claim 3, further comprising offline training of the neural network using simulations of the environment and the product.

5. The method of claim 3, further comprising training the neural network during real-time production in the manufacturing system.