WO2019180466A1 - A system and method for manufacture and material optimisation - Google Patents

A system and method for manufacture and material optimisation Download PDF

Info

Publication number
WO2019180466A1
WO2019180466A1 PCT/GB2019/050844 GB2019050844W WO2019180466A1 WO 2019180466 A1 WO2019180466 A1 WO 2019180466A1 GB 2019050844 W GB2019050844 W GB 2019050844W WO 2019180466 A1 WO2019180466 A1 WO 2019180466A1
Authority
WO
WIPO (PCT)
Prior art keywords
product
print
materials
optimal
algorithm
Prior art date
Application number
PCT/GB2019/050844
Other languages
French (fr)
Inventor
Alexander Joseph PLUKE
James Robert Lee
Charles Lucien FRIED
Ishay ROSENTHAL
Original Assignee
The Plastic Economy Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by The Plastic Economy Ltd filed Critical The Plastic Economy Ltd
Publication of WO2019180466A1 publication Critical patent/WO2019180466A1/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4097Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using design data to control NC machines, e.g. CAD/CAM
    • G05B19/4099Surface or curve machining, making 3D objects, e.g. desktop manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
    • B29C64/00Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
    • B29C64/30Auxiliary operations or equipment
    • B29C64/386Data acquisition or data processing for additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
    • B33Y50/00Data acquisition or data processing for additive manufacturing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49008Making 3-D object with model in computer memory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P80/00Climate change mitigation technologies for sector-wide applications
    • Y02P80/40Minimising material used in manufacturing processes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present invention relates to the field of manufacturing and particularly, but not exclusively, to a technique of dynamically controlling an additive manufacturing apparatus to optimise preparation of materials for printing with the correct constitution. Through optimising the way materials are prepared for printing, it is possible to achieve a number of advantageous effects.
  • Additive manufacturing also referred to as three-dimensional printing, is a process by which products are produced by the successive deposition of layers of materials.
  • the material deposition is controlled based on computer-readable instructions contained in a design file, causing movement of a print head or nozzle, such that an object having required geometry and structural properties can be printed.
  • the performance of an additive manufacturing system is largely determined by the available printing hardware and materials for deposition, but advancements can also be made to the control and driving of such hardware, in terms of the selection of process parameters and materials to be used, and optimal definition of a print path based on a product design file.
  • Such developments enable printing performance to be improved, when measured in terms of parameters such as material costs, speed, structural integrity and resolution of produced objects, which extends the range of applications in which additive manufacturing can be used reliably, in many cases replacing more conventional manufacturing techniques.
  • the way in which it is required to be used can become increasingly more sophisticated and complex. For example, the range of materials which can be produced can be increased when consideration is made as to how to blend particular materials within a product to suit a certain aim, such as maximising sustainability or functional requirements such as strength.
  • United States Patent Application US 2017/0334141 discloses an example of a technique of preparing functionally graded materials through additive manufacturing.
  • the disclosed system seeks to overcome restrictions imposed on conventional systems due to an under-developed relationship between the print path of a 3D print head specified by print control software and any required variation in the materials to be extruded.
  • the system which is described plans the path of a 3D print head in view of the directions in which the 3D print head can move while extruding a particular mixture of materials, such that certain print regions can be identified in which the printing of particular material mixtures at certain locations can be guaranteed.
  • the present invention was developed in this context, with a particular focus on material heterogeneity, conversions, or combinations. While the invention has particular applicability to additive manufacturing systems, there is also a need to better understand such selections and optimisation processes for non-additive manufacturing processes associated with the same or similar constraints or design choices as additive manufacturing systems. In general terms, there is a need to understand how manufacturing hardware should be selected and controlled, how manufacturing materials should be selected and controlled, and how particular manufacturing processes should be implemented, in order to achieve particular outcomes while anticipating the interrelation between the various factors. The present invention was therefore also developed in the context of non-additive manufacturing systems. Summary of invention
  • Embodiments of the present invention relate to a standalone control apparatus which can be retrofitted to an additive manufacturing apparatus, in order to achieve the effects of the present invention. Further embodiments relate to an integrated apparatus comprising a manufacturing apparatus which is equipped with technology required to provide dynamic control. Further embodiments relate to a method of dynamic control, and a computer program which, when executed by a processor, is arranged to perform a dynamic control method. Further embodiments relate to a method of optimising material selection for use in dynamic control of a manufacturing apparatus.
  • an apparatus for configuring an additive manufacturing system comprising means for receiving a specification of a product to be manufactured, and user preferences, and means for determining one or more optimal material configurations to be used to manufacture the specified product, which satisfies one or more conditions set out in the user preferences, wherein the means for determining the one or more optimum material configurations uses a machine learning algorithm to process historical data from manufacturing processes in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for the additive manufacturing system.
  • the apparatus may further comprise means for determining an optimum configuration of an additive manufacturing system for manufacturing the product according to the one or more optimal material configurations, which satisfies one or more conditions set out in the user preferences, wherein the means for determining the optimum configuration of the manufacturing apparatus uses a machine learning algorithm in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for a particular manufacturing apparatus.
  • the apparatus may further comprise means for determining an optimal sequence of control signals to be applied to actuators of the additive manufacturing system to enable the specified product to be manufactured according to the optimal material configuration, wherein the optimal sequence of control signals represents the implementation of a manufacturing process predicted to process the optimal material configuration using behaviour modelled by the machine learning algorithm, and means for applying the determined optimal sequence of control signals to the actuators of the additive manufacturing system.
  • the means for determining a sequence of control signals may be arranged to generate a plurality of sequences of control signals, and to determine the optimum sequence in accordance with a cost function specified in the user preferences.
  • the apparatus may comprise means for monitoring the output of a manufacturing process implemented by the additive manufacturing system and means for updating the sequence of control signals if the monitored output deviates from the specified output.
  • the apparatus may further comprise means for updating behaviour modelled by the machine learning algorithm based on monitoring of the output of the manufacturing process.
  • the means for monitoring the output of a manufacturing process may comprise an imaging system implementing a machine vision algorithm to inspect mechanical properties of the output in real time.
  • the apparatus may further comprise means for generating test data by modelling the expected output from a manufacturing process performed using the additive manufacturing system using a plurality of different manufacturing process parameters and material configurations, and for training the behaviour modelled by the machine learning algorithm using the test data.
  • the apparatus may further comprise means for determining an optimum geometry for manufacturing the specified product using behaviour modelled by the machine learning algorithm.
  • an additive manufacturing system comprising the above apparatus.
  • the additive manufacturing system may comprise a twin screw extruder.
  • a method of configuring an additive manufacturing system comprising receiving a specification of a product to be manufactured, and user preferences, and determining one or more optimal material configurations to be used to manufacture the specified product, which satisfies one or more conditions set out in the user preferences, wherein determining the one or more optimum material configurations uses a machine learning algorithm to process historical data from manufacturing processes in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for the additive manufacturing system.
  • the method may further comprise determining an optimum configuration of an additive manufacturing system for manufacturing the product according to the one or more optimal material configurations, which satisfies one or more conditions set out in the user preferences, uses a machine learning algorithm in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for a particular manufacturing apparatus.
  • a method of simulating manufacture of a product using an additive manufacturing system comprising configuring an additive manufacturing system according to the above method, and determining an optimal sequence of control signals to be applied to actuators of the additive manufacturing system to enable the specified product to be manufactured according to the optimal material configuration, wherein the optimal sequence of control signals represents the implementation of a manufacturing process predicted to process the optimal material configuration using behaviour modelled by the machine learning algorithm, simulating the application of the determined sequence of control signals to the additive manufacturing system, and populating the machine learning algorithm with tests data generated by the simulation.
  • a computer program which may be stored in a non-transitory computer-readable medium or in a signal which, when executed by a processor, is arranged to execute the above methods.
  • the improved understanding between the effects of variations in process parameters and material selections on an additive manufacturing process makes it possible to significantly optimise the way in which products are designed and manufactured in terms of predictability and maximisation of structural and functional performance, and through optimisation of material usage and type.
  • Embodiments of the present invention facilitate specification of material constitution at high levels of resolution, for example at the voxel level or in terms of layered pixels or co-ordinate-specified positions.
  • references to voxel-level resolution are to be interpreted as including any alternative means of specifying the spatial locations of particular material designations.
  • Products can be thus manufactured using controllable material constitution, whether a highly specialised material for a particular voxel, or a particular allocation of material constitutions across a plurality of voxels within a geometry in order to achieve particular properties in the printed product.
  • a specific allocation within a geometry of selected material(s) is referred to as a material configuration.
  • One example of an improved material usage made possible by embodiments of the present invention relates to use of recycled material, such as polymeric materials, which can be extruded and blended with other high-performance materials, for example, fibres (for example carbon, Kevlar, graphene), plastics and glass fills in order to achieve novel material mixtures.
  • recycled material such as polymeric materials
  • other high-performance materials for example, fibres (for example carbon, Kevlar, graphene), plastics and glass fills
  • This benefit enables production of objects via particularly cost- effective and environmentally-friendly solutions.
  • use of a recycled material in place of a conventional material can reduce costs of manufacturing a particular product, particularly at large scale, below 10% of the cost of a process using conventional material.
  • embodiments of the present invention ensure consistent quality with significant economic benefit.
  • a further example of optimal material usage relates to reduction in wastage of material to be extruded, because it is possible to predict and compensate for the effect of variations in material compositions or process conditions in a dynamic manner.
  • materials may be discarded, or a print processes may need to be restarted if changes in conditions could not be accounted for.
  • inventions of the present invention further enable scaling of additive manufacturing processes as a whole because print processes need not be defined solely with respect to fixed machine or product specifications.
  • the ability to specify a particular machine behaviour or model number, print paths, and materials ensures that the claimed technique can be applied to a variety of scenarios and applications in a manner which was not previously possible.
  • the dynamic adaptive machine control which is made possible by embodiments of the present invention ensures that not only is it possible to optimise the process with which an individual object is manufactured, but it is also possible to deliver batches of objects with the optimal conditions, which ensures that a batch process is robust to both external and internal shocks. Optimisations can thus be made to ensure that a material configuration can be achieved, or at least achieved within a specified tolerance, throughout the production of a particular batch. This further increases scalability of embodiments of the present invention, in terms of the numbers and types of machines which can designed and built which can be ensured to be capable of achieving optimal outputs. The size of a particular machine can also be increased, in addition to optimisation of its physical configuration with respect to certain process and production optimisations.
  • embodiments of the present invention facilitate the process of printing laboratory scale experimental material samples, as part of a testing process or process of refining the underlying modelling processes, such that it is possible to predict that a larger batch production process will perform in an expected manner, with greater accuracy.
  • This large batch could be executed within an additive or non-additive process - and in both cases, could be started experimentally.
  • Simulation of different material flows within different machine types is greatly aided by embodiments of the present invention. Simulations using data from industrial/ conventional scale polymeric processing systems, with well understood homogeneous materials, are difficult to apply in additive manufacturing applications, and made even more demanding by non-Newtonian behaviour of polymers and novel material mixes, which may or may not be polymeric. Consequently, the ability to calibrate a prediction model for enabling the behaviours of certain materials in a given machine, for a given set of processing parameters, means that it is possible to determine optimum printing conditions and machine configurations in order to obtain a desired physical output in an efficient manner.
  • embodiments of the present invention demonstrate advantages in improvement of the product design process. For example, it is possible to customise or optimise the design of a particular product such that parameters such as cost-saving and sustainability can be maximised and such that functional properties can be achieved with optimum material selections for given printer hardware.
  • parameters such as cost-saving and sustainability can be maximised and such that functional properties can be achieved with optimum material selections for given printer hardware.
  • FIG 1 illustrates an additive manufacturing (AM) system according to an embodiment of the present invention
  • FIG 2 illustrates a schematic of the control module used to control an AM system as shown in Figure 1 , according to embodiments of the present invention
  • Figure 3 illustrates the data path through a printer driver algorithm which is executed by the control module of Figure 2 according to embodiments of the present invention
  • Figure 4 illustrates a process of error evaluation as performed by an optimiser according to embodiments of the present invention
  • Figure 5 represents a system diagram of a control system for an AM system according to embodiments of the present invention.
  • Figure 6 represents a flow chart of a process for controlling an AM system according to embodiments of the present invention.
  • Figure 7 represents a flow chart of a process for configuring a print process according to an embodiment of the present invention.
  • Figure 8 is a graph illustrating a process for refining the quality of data in the database
  • Figure 9 is a graph illustrating how the strength of a material varies according to the ratio of a first and a second material
  • Figure 10 is a process overview
  • Figure 11 is a flow chart illustrating how the n p-dimensional list is created during the material selection stage Detailed description
  • FIG 1 illustrates an additive manufacturing system (AM) 10 according to an embodiment of the present invention.
  • the AM system 10 shall also be referred to herein as a 3D printer.
  • the AM system 10 is characterised as a twin-extruder printing apparatus, in which materials are extruded for deposition on to a build plate via an extruder, also referred to herein as a print head.
  • the AM system 10 is configured to deposit successive layers of material onto a build plate by controlling operation of a nozzle, through which the material is deposited, according to a predetermined print path.
  • the print path is determined by a control module based on specification of process parameters characterising the object to the printed, and taking into account the specification of the AM system 10.
  • the AM system 10 comprises a mechanical system, which is driven by actuators representing an electrical system, controlled by a software system.
  • the mechanical and electronic systems are described with reference to Figures 1 and 2, while the software system is described with reference to Figures 3 and 4.
  • Material to be extruded is contained within a feed system characterised by one or more material reservoirs or feed hoppers.
  • a feed system characterised by one or more material reservoirs or feed hoppers.
  • two feed hoppers are shown, containing two material feed stocks.
  • Materials are fed selectively from the feed hoppers into a mixing channel, through which the materials are mixed into a composite, and extruded under the action of a twin barrel screw system.
  • Material deposition is performed via a single nozzle, but in other embodiments, multiple nozzles may be present, carried on a respective plurality of print heads.
  • the nature of the extrusion process is controlled by specification of a number of process parameters, as described in more detail below, so as to ensure that a desired blend of materials is provided to the nozzle.
  • the mixing channel is characterised by three zones - a feed zone, a mix zone, and a pressure zone.
  • materials are collected from the feed hoppers and heated by one or more heaters applying heat into the mixing channel.
  • the heaters may comprise any suitable heating elements suitable for transferring heat through, or from, the outer body of the mixing channel to the materials such that the materials are melted to facilitate their extrusion.
  • Materials are provided from the feed hoppers via an entry interface into the mixing channel. Materials are released from the feed hoppers based on the opening and closing of feed hopper ports which communicate with the entry interface, and by feed motors which drive the expulsion of material through the feed hopper ports.
  • the materials which arrive in the feed zone are driven through the mixing channel, in the direction from left to right in Figure 1 , based on the rotation of a pair of barrel screws.
  • the twin barrel screws can be independently arranged to rotate at respective speeds, and in respective directions, under the control of a motor drive system, so as to achieve various mixing effects, and materials are transferred along the mixing channel by the urging action of the screw threads.
  • the motor drive system may include a rotary encoder and torque sensor, as known in the art.
  • the pitch of the barrel screw threads in the feed zone is relatively long with respect to barrel diameter, in comparison with the pitch of the screw threads further downstream of the feed zone, so as to maximise accommodation of material received from the feed hoppers in the space between the screw threads, for conveyance.
  • the mixing channel itself may also be configured to be wider in the feed zone, than in the mix and pressure zones, so as to facilitate the capturing of material for extrusion.
  • the pitch of the barrel screw threads is reduced, so that mixing of materials can be facilitated by the action of the barrel screw threads on the materials in the mixing channel.
  • the barrel screws are controlled to rotate in the same direction as each other, in order to mix together two materials in the mixing channel.
  • processing materials such as PVC-like materials, rotation of the two screws in the opposite direction may be used for mixing.
  • the rotation direction of the screws is selected according to particular throughput requirements, or the required nature of the mixing, exploiting the advantages of a twin- screw extruder in a manner known in the art.
  • one or more heaters are arranged around the mixing channel in order to maintain or further melt the material mixture in the mixing channel to facilitate its extrusion and mixing.
  • the two material constituents provided from the respective feed hoppers are thoroughly blended in order to achieve a particular composite required to be printed.
  • the blending is dependent on the amount of each material constituent in the build chamber, which is dependent on the amount of material released into the feed zone from each material feed hopper.
  • the blending is controlled in this manner based on a control module, to be described below.
  • the mix zone achieves the blending of the materials. What is enabled next is a conversion of the blend into a form which is suitable for deposition via the nozzle. For instance, it is desirable to ensure that the blended composite can retain its composition during, and after deposition.
  • the pitch of the barrel screws in the pressure zone is shorter than in the feed and mix zones, and the rotation of the barrel screws thus applies further pressure to the mixed material as it passes along the mixing channel in order also to increase throughput.
  • the operation of the heating means is controlled based on feedback from temperature sensors contained in the mixing channel in order to maintain a specified temperature.
  • screw flight angle and size may also vary between zones. It will be appreciated that screw profiles for conveying differ from those used in kneading, or distributive/dispersive mixing, which differ again from those used in mixing.
  • the composite extruded by the process described above passes into a nozzle system for deposition.
  • the nozzle system comprises a nozzle channel, which receives extruded material through a mixing channel interface, and transfers it to the die through which the material is deposited.
  • Temperature and pressure sensors in both the nozzle channel and the die are used to monitor the parameters of the composite, and to provide feedback to the extrusion process (including the heaters, barrels and the motor drive control) in order to adjust process parameters, but auxiliary heaters or coolers may be provided in the nozzle itself in order to boost or reduce the temperature of the extrudate.
  • the die is movable in the x, y and z directions based on the control of a mechanical drive means (not shown) as known in the art, which implements a predetermined print path with respect to a space defined in relation to a build plate, in order to print an object.
  • Movement in the x-y plane enables a particular material later to be deposited voxel by voxel, based on a particular path between those voxels, while movement in the z- direction may be synchronised with closing of the die, flow-restriction or diversion (such as guttering, described in more detail below), so that deposition is paused between layers while the die is moved to a new starting position for a subsequent layer.
  • Movement in the x-y plane may also be synchronised with movement in the z-direction.
  • the build plate has a print bed platform which is also movable in the z-direction, in order to facilitate deposition by moving the printed object away from the die.
  • the print bed may comprise a heater, temperature sensor, and means for measuring material geometry or material composition, which can be used to feed back required adjustments into the AM apparatus as described in more detail below.
  • the build plate may be fitted with a load measurement and auto-levelling functionality, in order to maintain performance by feeding back any required adjustments due to, for example, external vibrations or irregularities in material deposition.
  • cooling actuators for cooling channels may include, but are not limited to, at least some of cooling actuators for cooling channels, to counteract the use of heaters, vibration sensors, sound sensors, material ID sensors and optical sensor such as CCD or FTIR sensors, gutter actuators, gas sensors, airflow actuators, weight sensors, pressure sensors, humidity sensors and light sensors, drive motor gearings, quick release components, thermal insulation, and hermetic sealing, line width sensors and levelling sensors.
  • modifications to the embodiment of Figure 1 may be made, such as different distribution of barrel screw threads, barrel screw geometry and heater positioning.
  • the AM system 10 described above is an example of a configuration which can include a control module, to be described below, for controlling a printing process, or which can be controlled by a separate control module. It will be appreciated that other manufacturing apparatuses can be used with, or combined with, such a control module according to alternative embodiments of the present invention.
  • such alternative systems to the disclosed extruder may include AM systems based on sintering or powder-based systems, using light or UV irradiation to fuse powder particles together to build up material layers.
  • Hybrid systems are possible in which some of the print heads make use of material extrusion in the manner set out above, but in which other print heads, such as filaments, may be used to print particular portions of an object, or to print materials such as support materials.
  • Non-additive manufacturing systems such as industrial plastics processing machines (e.g. extruders) and techniques such as abrading and polishing may also be employed used and controlled in embodiments of the present invention.
  • Operation of the AM system 10 of Figure 1 is controlled based on the driving of one or more actuators 21 by control signals provided from a control module 20.
  • the control signals are applied based on one or more action plans, which are developed in order to achieve a particular target material profile for the object to be printed.
  • the control module 20 may be implemented as a microcontroller which is either integrated with or separable from the AM system 10, containing a display and controls for as a user interface.
  • the control module 20 may represent a software application executed by an external computer which is connected directly to the AM system 10, or over a network, such as the cloud.
  • the AM system 10 may comprise a central communications hub which contains processing circuitry to receive control signals from the control module over a network and controls their distribution to the appropriate actuator 21 in the system.
  • Figure 2 illustrates a schematic of the control module used in embodiments of the present invention
  • Figure 3 illustrates the data path through a print driver algorithm 23 which is executed by the control module 20 of Figure 2, according to embodiments of the present invention.
  • Figure 2 illustrates the relationship between the control module and aspects of the AM system 10 of Figure 1 in an example embodiment.
  • the control module 20 operates to receive a design file for an object to be printed.
  • the design file may be generated by an application hosted externally with respect to the AM system 10, such as a computer-aided design (CAD) package, which specifies the geometry of an object, colour, and so on.
  • CAD computer-aided design
  • the design file may be selected by user input provided to a user interface 23, or may be received via a computer disk or internet download, or wired or wireless transfer from another computer device.
  • the object is typically specified based on material-agnostic geometry, in other words, the material with which the product is to be printed is not specified, but functional or structural properties required of the product may be specified, although in alternative embodiments, material specifications may be included in the design file.
  • the control module 20 is able to receive any further design parameters not present in the design file from a user via the user interface 22.
  • the user may specify a number of properties such as hardness, material strength, flexibility, material tolerances, force modelling, and/or a specific material composition per voxel, including absolute compositions of voxels bounding transitional zones containing voxels of materials which transition in composition between the materials of the boundary voxel materials.
  • the control module 20 operates to determine a particular target material profile, for example as described below which enables an object to be printed having the required specification.
  • design requirements are specified at a particular level of resolution, such as on a voxel-by-voxel basis, for example as an array, in which voxels containing position and material specification data are distributed across layers of the object to be deposited during the AM process.
  • level of resolution such as on a voxel-by-voxel basis, for example as an array, in which voxels containing position and material specification data are distributed across layers of the object to be deposited during the AM process.
  • the control module 20 executes a print driver algorithm 23 for determining the control instructions required to be applied to the AM apparatus in order for the object to be printed.
  • the print driver algorithm 23 takes, as inputs, a specification of an AM system and its components, available materials to be extruded, and any user preferences such as a maximum or average tolerance between a specification of a target object to be printed, and the actual output which is generated.
  • Control of the AM system 10 is performed by a print controller 25 which may be part of the control module 20, or which may be a slave controller with respect to the master control module 20, as illustrated in Figure 2.
  • the print driver algorithm 23 determines the following, based on the provided inputs: • an optimal print path over which the nozzle system is to be driven from voxel to voxel, as known in the art;
  • process parameters relating to the extruder including temperature, barrel screw motor speed and direction and the print head (details provided in Appendix 1);
  • nozzle/print head control parameters including startup, shutdown and pause operations.
  • the inputs to the control module 20 are provided via the user interface 23, which includes an input means such as a keypad or touchpad and a display.
  • an input means such as a keypad or touchpad and a display.
  • Information stored in said one or more databases 26 may include customer preferences, material specifications and machine specifications, and action plans and their success, to be described in more detail below.
  • the database(s) 26 may be local or remote, such as cloud-based.
  • AM system specifications may include a device name and version, specification of the number of print heads, specification of the number of feed hoppers and their contents, operational ranges, such as temperature ranges in which the AM system 10 can operate safely, and specification of the maximum rate of change of materials the AM system 10 can achieve when adjusting the extrusion process in real time.
  • the outputs from the control module 20, determined by the print driver algorithm 23, are provided by the print controller 25 as actuation signals to the AM system 10, including heaters, feeder motors, barrel screw motors, print bed drive, and the nozzle drive, and so on.
  • representative actuators 21 #1 , #2... #N are illustrated, with corresponding sensors 27 #1 , #2... #N, for any number, N, of actuators 21 or sensors 27 which may enhance control, although in alternative embodiments there does not need to be a 1 : 1 mapping between physical sensors 27 and actuators 21.
  • Figure 2 can be understood as illustrating sensor signals, which are fed back to the database 26 in a process described in more detail below.
  • control module 20 may specify a temperature set point and a loop back from a temperature sensor to the print controller may enable the set temperature to be maintained based on a mechanism such as proportional-integral-derivative (PID) control, although more sophisticated multivariate control is also possible as will be described in more detail below.
  • PID proportional-integral-derivative
  • the actuation signals are controlled as time/voxel position-varying signals, in order to ensure that a) the correct material mixture is deposited at the correct voxel, b) use of the AM system 10 is optimised such that materials for future voxels to be printed can be suitably prepared in advance, and c) material wastage is minimised.
  • temperatures and other factors will have to change to appropriately in order to enable the materials to be treated appropriately.
  • a control module of a machine recognises that it is dealing with composite of 55% material A, 40% of material B, and 5% of material C, then it might be determined that the feed zone can be set to 200°C, and the pressure zone needs a temperature of 230°C, and so on.
  • material for another voxel such as a voxel in a successive layer, may be required to be released from the feed hopper into the mixing channel, or material having particular blends of constituents may need to be prepared in advance to achieve functional properties such as hardness at a particular region of the object to be printed.
  • optimisation is performed by a print path optimiser 31 , also referred to as a toolpath optimiser so as to minimise at least one of travel distance in which printing is not performed (for example when transitioning between deposition layers), and changes to material composition which are needed when the nozzle moves between different areas.
  • a print path optimiser 31 also referred to as a toolpath optimiser so as to minimise at least one of travel distance in which printing is not performed (for example when transitioning between deposition layers), and changes to material composition which are needed when the nozzle moves between different areas.
  • a print path optimisation is performed by a print path optimisation so as to minimise at least one of travel distance in which printing is not performed (for example when transitioning between deposition layers), and changes to material composition which are needed when the nozzle moves between different areas.
  • efficiency is thus determined by the algorithm by determining path length and material compositions, using a technique analogous to those described in United States Patent Application US 2017/0334141.
  • the print path optimiser 31 represents a functional sub component of the control module 20, specified as a particular section of programming instructions in the print driver algorithm 23.
  • the print driver algorithm 23 operates to translate functional requirements, such as hardness or flexibility, into material compositions, in a manner to be described in more detail below.
  • the input to the print driver algorithm 23 may specify that a particular voxel requires a particular hardness, for example, and the algorithm operates to determine which blend of available materials, defined by their mixing ratio, will achieve the required function.
  • the print driver algorithm 23 makes use of information contained in a database such as material datasheets or in-house test data in a manner to be described in more detail below.
  • Further control can be determined in terms of the temperature to which the constituents should be heated, the pressure at which they should be mixed, and the way in which the transitions between voxels should be achieved by adjustment of parameters.
  • Testing of printed outputs such as a Charpy impact test based on a determined materials, can validate a particular material selection, and if the test is failed, as determined by a comparison of a printed object to the required geometry, performed using, for example, a machine vision technique, the selection can be modified accordingly to either change an aspect of the material, or to change the material itself.
  • inventions of the present invention enables novel material mixtures to be developed and controlled during printing, having highly customisable material compositions, gradients and doping effects, including known and existing combinations on demand for desired effects.
  • material mixtures and smooth gradients can be achieved when materials are in the molten state in the extrusion process, which is not something which is possible in, for example, powder bed printing systems based on particle fusing.
  • novel material mixtures can be tested on a laboratory scale prior to larger-scale manufacturing processes, so that quality can be verified or modifications made to various parameters prior to execution of such a print job.
  • smaller quantities can be printed for experimentation and prototyping to determine target material and design prior to larger unit quantities such as injection moulding.
  • a three dimensional geometry for the product is created, for example using a CAD system. This is known as the 3D Geometry.
  • the User Requirements are specified in a model which is created using a Scenario Builder for example by a user interface.
  • the Scenario Builder looks at the desired specification of the product and defines, for example, the load cases, constraints, design objectives and local set points that are needed to meet the specification, which may be inputted within the User Interface
  • the next step is Material Selection starts with the Material selector, an algorithm that returns an n p-dimensional material list based on the user defined rules. Where n is equal to the number of production methods to be used and p the number of materials compatible with the production mean in question.
  • the next step is an Initial Material Selection which is undertaken once the model has been built and which utilises a database.
  • the database contains two sets of information.
  • Production Means Information pertains to manufacturing apparatus, for example for a twin-screw extruder (and/or a specification for a component of a manufacturing apparatus, e.g. the length of an extruder barrel).
  • Materials Information pertains to specific materials.
  • the Initial Material Selection identifies one or more suitable production means. A number‘n’ which is equal to the number of suitable Production Means is allocated.
  • n p-Dimensional List is a conversion through mathematical means of the User Requirements.
  • the mathematical means may include, but not be limited to, methods such as a variance of the Euclidean distance, a decision tree, a dimensionality reduction algorithm, a clustering algorithm or an artificial neural network.
  • each objective (rule) is assigned a weight by the user (normal, high, very high) in the backend this corresponds to a scalar value which increase the prominence of that rule in the material selection. Automated weighting can also happen if the result of the simulation falls below the safety factor.
  • Rules are also referred to as User requirements, is the output of the Scenario Builder. They can be categorised into two sections; Constraints, rules that the user will not compromise on and objectives, rules which the user will compromise.
  • the database may be populated by a parametric model that explains how components of the specific machine type can be changed, for example the length of barrel and/or the screw geometry [angles of flights]).
  • the components are treated as variables and the relationship of how these variables affect the material processing is determined by the machine learning calibration model.
  • Other Production Means information includes standard machine information from additional databases which is input into the database manually as provided by the machine suppliers, or inserted after experimental testing. If the information is obtained by experimental testing, the generation of the ‘actual’ Production Means Information could be aided by statistical modelling.
  • the parametric model is accessed by the machine designer 53 (as shown in Figure 5).
  • the User Requirements may be Global or Local.
  • a Global Requirement is a requirement that can be applied to the whole of the product, such as whether a material can be used with the production means that have been identified as being suitable.
  • a Local Requirement is a requirement that is applicable to just a part, or parts of the product, such as a particular hardness needed at a specific point on the product (e.g. inside the jaws of a spanner). Local Requirements may also arise from a simulation carried out on the Model. For example, sharp corners on an object subject to stress may demand high- strength materials in those regions. The exact Material Allocation with be determined by a Material Allocator.
  • the definition of User Requirements as Global or Local results in a two-step process within the Initial Material Selection.
  • the first step is to create a Global Materials List, i.e. a list of materials that are, for example, suitable for the selected production means.
  • the second step is to identify materials from within the Global Materials List which are also suitable for meeting the Local Requirements and to create a Local Materials List. In this way the User Requirements are converted into a two-dimensional (2D) n p-Dimensional List.
  • the mathematical model underlying the material selection is a ranking-type algorithm.
  • the rule that drives the procedure is an input to the code and contains two major types, namely the objectives and the constraints.
  • the former are used to operate the ranking of the materials, whereas the latter are evaluated to decide whether to keep/eliminate the material in/from the database.
  • the number of objectives is not known a priori, thus the general problem has to be addressed as a multi-objective ranking.
  • the final merit function to be maximized for a given material is where Q, is 0 if the objective is to be maximized, 1 otherwise, P/ow, Amed, Flhigh are the total number of objectives and J /ow ; J meci ; J high are the normalized
  • t a prescribed tolerance in [0, 1]
  • ric s the total number of scalar constraints.
  • t is set to 0 and the total number of textual constraints.
  • the availability of data in the dataset may also be considered a constraint itself, since it drives the final outcome of the procedure.
  • An edge case will be considered in which a local requirement will supersede the global requirement if the volume adjusted and weighted score is greater than the global score.
  • safety factor is to be understood in the conventional sense, i.e. a multiplier to be applied to a mechanical property such as compressive strength, or it can be understood to be a tolerance on a physical property, such as Shore Hardness, wherein it is desired to have, for example, a product that is at least 20% harder than the hardness defined in the user preferences. If the product is manufactured and has a property that is outside of the safety factor range then it will not be acceptable.
  • the properties could also include (but not be limited to) excess forces or thermal loads that cause breakage, sustainability, or recycled content or end cost.
  • Safety factor will also cover other user defined metrics that they would not accept deviation outside of certain bounds. Therefore, the algorithm will prioritise a material that solves this discrepancy.
  • a product is to be manufactured from more than one material then it is necessary to check that all of the materials are compatible with each other and this can be done through interrogation of the database.
  • Materials may be incompatible because the processing requirements of one may not be compatible with the processing requirements of the other. Materials may be incompatible because the chemical compositions of each of the materials may cause an undesirable chemical reaction when they are used together, or for example materials may be incompatible because they are not miscible.
  • a compatibility assessment will be made to ensure that incompatible materials are not selected. If there is no data in the database describing the compatibility of two particular materials behaviour then a calibration can take place in which physical testing is used to obtain the required compatibility information.
  • the machine or material model can be utilised to present a probability of compatibility based on previous data on how materials interact with each other. If there is an incompatibility between materials this may be resolved by the addition of one or more chemicals to the materials, or modifications to a material profile in a comparative way to the Profile Repairer as defined below
  • a simulation is executed to determine the safety factor. The simulation could be a finite element analysis. If the safety factor requirement is met (i.e. the safety factor is above the target) then the 2D n p-Dimensional List is created for use in the next step of the process. If the simulation finds that the safety factor requirement is not met, i.e. the safety factor is below the target, for example because the material is not strong enough, then a material generation step may be undertaken utilising a Material Generator.
  • the Material Generator uses a Property Relationship Prediction Model which can predict the physical properties of a material combination dependent upon the ratio of each of the constituent materials in the material combination, for example the amount of carbon fibre within a carbon fibre and polypropylene composite material.
  • the Material Generator is run in an iterative fashion to create different material combinations and each of those material combinations is analysed using a simulator (for example a finite element analysis) until a material combination is identified which is predicted to meet the safety factor requirement and can be added to the list.
  • the output of the work done by the Material Generator and the simulation can be fed back into the database to improve future Initial Material Selection processes as described below. For example, new material listings of‘estimated’ behaviour of material mixes can be created and these new listings can be experimentally confirmed/amended by‘real’ data later.
  • the Property relationship prediction model is using a reinforced learning method of machine learning as known in the art. The model is initialised to output a linear proportional property predictions, and then trained using historical data from testing of material mixtures of varying ratios.
  • the training data can be generated by manually creating different mixtures and testing them or by automatically generating the mixtures via the additive manufacturing apparatus described above.
  • the required size of the training data (number of mixtures tested) relies on the number of materials in the mixture.
  • the training data material mixture ratios
  • the training data is fed into the algorithm, the output of the algorithm (predicted material properties) is compared to the known (tested) material properties and an error is calculated.
  • the model parameters are then corrected to minimise the error.
  • An illustration of the process is depicted in Figure 9:
  • the trend line 103 represents the material properties predicted by the model using varying mixtures. For example, increasing the ratio of Material A relative to Material B in the mixture increases the strength of the material mixture. If it is found that for a particular mixture, i.e.
  • the algorithm is corrected to create an adjusted prediction line 109 and a new mixture, data point 107, is created which provides the desired physical characteristics.
  • the prediction model parameters are stored in the database and updated when new training data is available from usage.
  • the Initial Material Selection has output a selection of material(s) and compatible production means.
  • the next step in the process is the Design Optimisation in which, for example, a further simulation, material allocation, topology optimisation, configuration evaluation and a manufacturability check may be carried out.
  • this Design Optimisation stage a Machine Database is checked for information relating to how to operate the selected production means in order to make the product from a material configuration.
  • this Design Optimisation stage may run an operation as defined below in Print Driver Algorithm, to determine that a proposed Material Profile can be suitably manufactured with the selected machine.
  • the Machine Database may not contain any information relating to how to operate a suitable production means. In such an instance it may be necessary to undertake a calibration phase as defined below.
  • the calibration phase provides data to build a model that determines predicted machine parameters or settings that should be utilised for the target material profile. For a new material, or a combination of a new material and a new machine, the machine (the production means) is run and a sample of the material is printed.
  • the sample material can be analysed in real time (for example by using spectroscopy to identify the quantity of each different material in a material combination) whilst the material is being printed, and/or by testing after printing of the sample has been completed.
  • the analysis can be used to determine the optimum setting for the machine parameters (for example by Action Plans as defined below), for example via Scenario Builder as explained in embodiments below . If the material and the production means are known then there will already be information in the database and a model that can be utilised to determine how to operate the production means to produce the product, embodiments of which are described in greater detail below.
  • the calibration activity can also be used to deal with the limiting assumption in a multi discrete or multi-gradient material optimisation that the mechanical response of a mesostructured system (i.e. a structure with dimensions intermediate between micro and macro levels) can be simulated with mechanical properties of the individual constituent materials, for example measured by uniaxial tension testing or other tests as known in the art.
  • the assumption is only valid under two conditions. The first condition is that the materials exhibit symmetric behaviour in tension and compression.
  • the primary reason why these conditions do not hold in multi-material 3D printing is because external loading results in a multi-axial stress state in each material voxel (volumetric pixel, or any other cell structure) of the heterogeneous mesostructured system, which may present non linear results.
  • a calibration process may be used to build accurate models of particular material configurations,
  • a preliminary optimised design is identified, including the identification of optimal materials and a product with a predefined heterogeneous mesostructured design is manufactured, for example with a twin screw extrusion or any other type of 3D printer.
  • a deformation map is created using a Digital Image Correlation (DIC) or a Digital Volume Correlation (DVC) technique utilising a camera (or using X-rays).
  • DIC Digital Image Correlation
  • DVC Digital Volume Correlation
  • the deformation behaviour of the mesostructured material system is modelled across axes to accommodate anisotropy.
  • the model is then calibrated using cell level deformation data, the design is finalised and a design optimization is product for given applications.
  • the last step is to validate the design optimisation by manufacturing a product to the design and analysing the product by experiment.
  • the Design Optimisation stage is also used to specify Material Allocation, a sequence of material compositions either in discrete or gradient format if multi-material, and Material Configurations - which are Material Allocations located within a geometry.
  • a Material Allocation may be a sequence of material having the same material composition, such as the same material.
  • the Material Configurations are sent to the Print Driver Algorithm and further contains the required processing parameters to enable manufacture as a Material Profile.
  • This Material Profile could be accepted by an Additive Manufacturing System 10 to produce a part as explained in embodiments below.
  • the information relating to the physical characteristics, for example mechanical properties or processing parameters, of the material configurations is recorded in the Production Means Information or the Materials Information in the database (as mentioned above) for example as material profiles .
  • the material configurations include particular materials, particular material mixes, including the novel material mixes, and materials made up from discrete allocations of two or more different materials.
  • a material made up from a discrete allocation of two or more different materials may be manufactured by depositing the two or more different materials in discrete steps and in a way such that those materials adjoin each other, for example by abutment, or overlapping, and interact such that they behave as if they are a single body of material.
  • the behaviour information is collected from physical testing and inspection of samples manufactured from the material configurations.
  • an algorithm is used to predict, from knowledge of the physical characteristics of each material within the configuration, what the physical characteristics of the material configuration will be.
  • the algorithm may be, for example, a machine learning algorithm using observed material characteristics such as spectrograph data or a predefined formula.
  • the prediction of the algorithm is added to the database under a specifically annotated ‘predicted’ attribute.
  • the database facilitates retrieval of material information by a production means, such as a twin screw extruder, , when the print driver algorithm 23 within the control module 20 is selecting a suitable material, material mixture, or material made from discrete allocations of materials from which to manufacture a product.
  • the database 26 may take a number of forms such as a collection of datasheets or a look-up table.
  • the control module 20 interrogates the Material Information within the database to identify a suitable material configuration. If the database does not contain the information then the material generator can be employed to specify a mixture of two or more materials, or the material allocator can be used to create a solution made from discrete allocations of two or more materials, that is likely to give the desired physical characteristics, on the basis of the knowledge of the physical characteristics of each of the two or more materials in the mixture or the discrete allocation. That newly identified material mixture or discrete allocation of materials will be stored in the material database for future use.
  • the material generator can be employed to specify a mixture of two or more materials, or the material allocator can be used to create a solution made from discrete allocations of two or more materials, that is likely to give the desired physical characteristics, on the basis of the knowledge of the physical characteristics of each of the two or more materials in the mixture or the discrete allocation. That newly identified material mixture or discrete allocation of materials will be stored in the material database for future use.
  • the material database does contain the information, then the material, material mixture or discrete allocation of materials can be specified without use of the algorithm. Furthermore, the calibration process can be called to automatically combine the compatible materials, allowing the user to extract the missing properties and to store them in the database. This is described in more detail in the following paragraph.
  • That data obtained from the algorithm can be verified by physical testing of the product manufactured from the mixture of materials or the discrete allocation of materials.
  • the testing can take place in a number of ways. It can take place during manufacturing of the product, for example by halting the manufacturing process before it is completed and using a mechanical probe to test, for example, the hardness of the material. It can also take place during manufacturing of the product, for example by visual inspection of the material as it is being laid down in the manufacture of a product. The visual inspection can determine if the material being laid down, e.g. a material mixed by the apparatus, is the correct material.
  • the automated inspection of the material can be undertaken using spectroscopy. It can take place after manufacturing, for example by using a destructive test, such as a Charpy impact test. If the testing identifies that the material does not have the desired physical characteristic, then the material mixture or the discrete allocation of materials can be changed and a new product manufactured. If upon testing the new material does exhibit the correct physical properties then the information in the material database can be updated. It may also be appropriate to use the new information to refine the algorithm, to aid with future definition of material mixtures and discrete allocations of materials, such as in embodiments covered below.
  • Figure 8 is a graph 101 pictorially illustrating how a material mixture of a Material A and a Material B can be defined using the algorithm and refined using testing, such that the material database can be populated with the best quality information.
  • the data points 103 are obtained from the algorithm (in the absence of information from physical testing of samples) and represent mixtures that have different physical characteristics. For example, increasing the ratio of Material B relative to Material A in the mixture increases the hardness of the material and reducing the ratio of Material B relative to Material A in the mixture increases the toughness of the material. It might be found that for a particular data point, i.e. 105, that the material mixture does not provide the anticipated physical characteristics and that an adjustment of the material mixture needs to be made.
  • Data point 107 illustrates the adjusted ratio between Material A and Material B, which provides the desired physical characteristics.
  • Material compositions and or configurations generated by the Material Generator can advantageously be received by the print driver algorithm to produce material profiles in real time which are manufactured by the AM System to generate actual data that can improve predictive accuracy.
  • Figure 9 is a graph pictorially illustrating how the strength of a material mixture made from Material A and Material B changes as the ratio between Material A and Material B is altered.
  • the trend line 203 is predicted by the algorithm and represents mixtures that have different physical characteristics. For example, increasing the ratio of Material A relative to Material B in the mixture increases the strength of the material mixture. If it is found that for a particular mixture, i.e. data point 205, that the material mixture does not provide the anticipated physical characteristics and that an adjustment of the material mixture needs to be made , then the algorithm is corrected to create an adjusted prediction line 109 and a new mixture, data point 107, is created which provides the desired physical characteristics.
  • the database can contain Production Means Information about how the additive layer manufacturing apparatus is operating. Specific machine behaviours can be recorded in the machine database and that information used in the specification of a material or material mixture. Specific machine behaviours can also be used by the algorithm.
  • the manufacturing system may be of a type other than an additive manufacturing system.
  • the manufacturing apparatus in the system may be an injection moulding machine that is capable of receiving two or more different materials and mixing those materials together.
  • the two or more materials can be mixed together to produce a material that has, for example, physical properties that meet a demand that a user has placed upon the system.
  • the injection moulding machine can then mould a product with that material mixture.
  • Optimisation of the orientation of a printed output on the build platform can also be performed according to embodiments of the present invention by an orientation or geometry optimiser 31 , which ensures that an object can be printed according to a particular orientation in a manner which optimises quality, print time, material cost with respect to the machine and material, and faithful correspondence to the intent of the object designer.
  • orientation optimisation is based on prioritised factors, determined by a cost function (to be described below in further detail).
  • the orientation optimiser represents a functional sub-component of the control module, specified as a particular section of programming instructions in the print driver algorithm.
  • the print path and orientation optimisations are illustrated as a single component 31 for simplicity, but in alternative embodiments, the separation of these components enables architectural advantages because the print path optimisation can be performed after the orientation optimisation, as a “downstream” optimisation, given a particular print orientation decision.
  • the user preferences may include, but are not limited to, at least one of the following: printing resolution, printing speed, layer height, extrusion multiplier, wall thickness, maximum deviation, infill density, infill pattern, support type, support threshold, build plate adhesion mode (for example, rafts, skirts and brims), maximum material gradients, tolerances and so on.
  • build plate adhesion mode for example, rafts, skirts and brims
  • maximum material gradients tolerances and so on.
  • the target material profile extractor 32 represents a functional sub-component of the control module 20, specified as particular sections of programming instructions in the print driver algorithm 23.
  • the target material profile extractor 32 operates to determine one or more profiles of material specifications in the form in which they are to be printed in order to print the object specified in the design file.
  • a design file might specify that a particular portion of an object should be harder than another region, and the target material profile specifies the optimum material, material blend and process parameters which would be required in order to ensure that the required hardness can be achieved, within particular constraints specified in the user preferences, relating to, for example, cost, print time, weight, and so on.
  • the target material profile data thus represents a set of material and process parameters associated with printing a particular voxel.
  • the target material profile data may also be associated with a specific machine. Accordingly, the target material profile data may be expressed in terms of a matrix of parameters, in which the matrix positions are associated with particular voxel positions or voxel IDs.
  • the matrix may be an MxN matrix, expressing N process parameters for each of M voxels in an object.
  • the N parameters may include parameters such as temperature, speed of barrel screw rotation, volume/weight/mass of material A to be fed, volume of material B to be fed, nozzle position, and so on.
  • the matrix as a whole may be associated with a particular index ID, in which an index represents a particular stage in an AM print process, and which may be mapped to the time domain, although it will be appreciated that voxels need not be printed at a constant rate, such that index IDs may represent a time-ordered sequence, but not necessarily an absolute time. For example, it will be appreciated that index IDs may be added or removed from a sequence in order to change a particular print process.
  • index #1 it may be specified that voxel V/iw /i is to be printed.
  • index #3 it may be specified that voxel V/iwc, in a new layer, k, is to be printed.
  • the corresponding action plan may represent pausing of the output from the nozzle of the print head while the nozzle is moved in the z-direction to start a new layer, or in which the print bed is lowered.
  • the control module 20 is in a position to control the AM system 10 to execute printing by translating the target material profile(s) into the necessary actuation signals of one or more action plans, driven by the print controller.
  • the translation may be performed by a subroutine of the print controller 25.
  • the AM system 10 provides a physical print output, but also feeds back information relating to its system state to the target material profile extractor 32, to enable the profile to be adjusted in real time, or predictively, in a process described in more detail below.
  • a profile simplifier 33 and a profile repairer 34 are included in the target material profile extractor 32.
  • the profile simplifier 33 and profile repairer 34 represent functional sub-components of the target material profile extractor 32, specified as particular sections of programming instructions in the print driver algorithm 23.
  • the profile simplifier 33 and profile repairer 34 are independent of the target material profile extractor 32, and of each other.
  • the profile simplifier 33 may be absent.
  • the profile simplifier 33 operates to downsample or smooth the target material properties specified in the voxel array, ensuring that operation will not exceed the manufacturing tolerances set by the user preferences.
  • the profile repairer 34 operates to check for regions of the target material profile, with respect to geometry and machine ID that are infeasible. For example, it may be determined by the profile repairer 34 that the AM system 10 is not capable of delivering continuous printing at particular regions of the product to be printed. These infeasible regions are typically, but not limited to, discontinuities or very steep gradients of material transition. Other examples include wall thicknesses with respect to the proposed nozzle size. Maximum gradients may be set via user preferences provided to the control module 20, for a particular AM system. Repair may be achieved by an even described herein as a“planned guttering” event in the event of a single-head AM system, and a print head change event, in the event of a multi-head AM system.
  • infeasible gradients are repaired by adjusting the indexed profile data through insertion of “transition data” in the profile, such that the resultant gradient is achievable.
  • transition data will result in the generation of extruded material having properties which are not required in the output product, the material being generated in a transitional phase so as to facilitate the process of generating material which is later required.
  • Such transitional extrudate is directed to a channel or gutter, which carries or diverts extrudate away from the build plate to a reservoir for disposal or re-use in other print jobs where the material might be appropriate, rather than directing it to the output print, from which the material is removed from the AM system 10.
  • a gutter is shown in the embodiment of Figure 1.
  • extrudate is not directed to a gutter but output through the nozzle is paused.
  • the extrudate is retracted into the print head by a suction means included in the nozzle system.
  • combinations of guttering and retraction may be employed.
  • target material profiles are generated for each print nozzle, and at discontinuity events, it is determined which print head is to output the particular material, in order to avoid a discontinuity that might be present if only one print head were to be used.
  • Shutdown, startup and pause events are issued to the respective print heads accordingly via action plan control signals from the print controller 25, so that one print head disengages while the other print head takes over.
  • a startup action plan puts the device into a read-to-print state, in which it is typically warming up and charging with materials.
  • a shutdown action plan prepares the device for power-off, typically flushing materials to the gutter and performing cooling.
  • a pause action plan moves the device to a non-printing, but responsive state.
  • hybrid technology may be employed in which different print heads are based on different principles of operation.
  • filament print heads could be combined with the nozzles described above in a hybrid technology, such that the printing operations can be based on the selective combination of different types of print head in order to achieve desired outcomes.
  • Different technologies may have particular applicability to particular printing requirements, for example a filament printer may be particularly useful where it is desired to achieve fast printing.
  • Filament printers are also particularly applicable where support materials, for example water-soluble polymers, are to be used in addition to extruded materials.
  • target profile extractor might return:
  • An action plan such as the following, may be created:
  • the above action plan therefore represents a heating operation which is applied to a heater identified as heater #1 in the AM system 10 in use, in order to change material properties to be deposited at particular voxel positions, wherein there is an intermediate state at which material is not to be deposited, but instead directed to a gutter.
  • profile repair operation described above may also be executed during a printing operation in some embodiments of the present invention.
  • profile repair might be required in the event that nozzle measurements exceed acceptable tolerances, as defined by user preferences, and such circumstances may require an unplanned profile repair.
  • Nozzle measurements may be compared with tolerances either mid-deposition, or pre- deposition, based on material composition or geometry (for example, measured by linewidth), relative to the deposition timing defined by the action plan.
  • the print controller may be directed to suspend printing, enter a pause action plan, and call the profile repairer to create a repair profile, using a guttering strategy as described above, either during a print operation, or before a print job is commenced in the event that a material is determined to be outside specified tolerances. If acceptable tolerances are not achieved after a predefined number of profile repair attempts, the predefinition representing part of the user preferences, the entire print job may be aborted.
  • the profile repairer 34 may operate to instigate the need for a new machine design which will allow the specified profile to be achieved, or alternative material compositions which will give rise to a specified functional effect.
  • the machine design/recommendation process is described in more detail below.
  • the orientation of the product itself may be changed by the orientation optimiser 31 , on the instruction of the profile repairer.
  • the process described above represents the development of action plans(s) to be used in an AM process to print a particular target or object.
  • the developed action plan(s) may represent the best estimate of the control module 20 as to how the AM system 10 should be controlled to achieve a particular outcome, variations in real world operating conditions, such as temperature, pressure or humidity changes, variations in material consistency, deterioration in AM system hardware, coupled with any limitations of the control module 20 and/or AM system 10 in terms of the number of parameters which can be controlled, or the extent to which material behaviours or material mixtures can be predicted, means that in practice, there may be differences between the target material profile(s) generated by the processes described above, and the output of the proposed action plan(s). Consequently, there is a need for further optimisation of the control of the AM system 10.
  • optimisation of control of an AM system occurs via two principal mechanisms.
  • the first mechanism relates to on-the-fly control of a printing process, which is achieved by capturing system states and outputs during the print process, and feeding back the captured data to the control module 20, so that continuous adjustments to the action plan(s) can be performed.
  • the first mechanism is thus an in-processing optimisation, and is reflected by the feedback loop from the AM system 10 to the target material profile extractor 32 in Figure 3.
  • This feedback loop is a simplified representation of the first mechanism, which is described in more detail below.
  • the second mechanism relates to optimisation of the development of an action plans itself, which is achieved by using historical data in the process of developing the action plan in order to train the control module’s understanding of the relationship between process settings and achieved outputs.
  • the second mechanism is thus a pre-processing optimisation.
  • both mechanisms are employed, but in other embodiments, only the first or the second mechanism is employed, such that it is possible to either dynamically update an action plan mid-print, or such that an action plan created at the start of a print job is executed without deviation. In the latter case, an action plan can be modified or refreshed after execution, prior to a subsequent print job.
  • the refinement of a particular action plan to be used in an AM process is performed according to the technique described below, in embodiments of the present invention.
  • An action plan is replaced or supplemented, prior to commencement of a print process, and/or the action plan is adapted during printing, substantially in real time.
  • Figure 4 illustrates an optimisation process performed by an optimiser according to embodiments of the present invention.
  • the optimisation process may be performed by functional sub-components of the control module 20 referred to herein as the optimiser 40.
  • the optimisation process is performed according to an optimisation algorithm 24 hosted by the control module 20 of Figure 2, which includes a step of error evaluation.
  • the error evaluation is performed by an error evaluator 42, which is a functional sub-component of the control module 20, specified as a particular section of programming instructions in the optimisation algorithm 24 of the control module 20.
  • the error evaluator 42 determines whether a proposed action plan, to be provided to the print controller 25 as the output of the print driver algorithm 23 shown in Figure 3, will result in print outputs that are acceptably close to the goal described in the target material profile. This is achieved by comparing the target material profile with a predicted material profile, on a voxel-by-voxel basis, and assessing the comparison against a particular cost function which is specified by user input to the control module 20.
  • a predicted material profile is determined by a predictor 41 which takes historical values from the available sensors 27 and planned actuator settings, and predicts the future constituency of material which will emerge from the print nozzle, using a process to be described in more detail below.
  • the predictor 41 represents a functional sub-component of the error evaluator 42, specified as a particular section of programming instructions in the optimisation algorithm 24.
  • the predictor 41 is a sub-component of the control module 20 but is independent from the error evaluator 42.
  • the predictor 41 requests historical sensor readings from a currently-executed print run, and may simplify the data by downsampling, or discarding data which is unexpected or too old to be useful.
  • the predictor 41 may perform the same simplification process on future actuator settings which are specified in the action plan.
  • a predicted profile is generated as described below, in the same format as the target material profile, by using the historical data to assist in the prediction of how the actions of the proposed action plan will be seen in practice.
  • the cost function is a mechanism for specifying those errors which cannot be accepted, and those which are could potentially be accepted for particular reasons. Costs may be expressed in terms of restrictions of any of, or any combination of, the hardware to be used, the materials to be used, and the nature of a printed product.
  • a cost function might discourage use of one material if it is expensive. Conversely, the cost function might promote use of sustainable materials, such as recycled materials.
  • a cost function might also prioritise acceptability of short-term errors over long-term errors, for example short-term colour variations which may not be detectable in practice. Sharp changes in error might also be avoided, if it is determined that these might have a particular material or structural effect.
  • Nozzle exit temperatures, and the required cooling function represent an example of a parameter of a cost function, in which the cost is expressed as a requirement of the available hardware.
  • the cost function to be used may be selected from a number of pre-stored cost profiles, such as cost minimisation, error minimisation, and so on, the profile stored in a database 26 coupled to the control module 20 as shown in Figure 2.
  • the selection can be dependent on a particular application, such as the resolution of an object to be printed, the number of objects to be printed, and so on.
  • a cost function may be specified manually, prior to execution of a print job, by the user populating a number of fields via the user interface 22 for the control module 20, as part of the user preferences which are input to the print driver control algorithm 23.
  • the user-specified cost function, the target material profile, and the predicted profile are combined by the error evaluator 42 to form an error profile, plotted on a voxel-by-voxel basis, which represents the difference between the target material profile and predicted profile, and the error evaluator determines whether, and the extent to which, those differences are acceptable based on the specified cost function.
  • a plurality of action plans By developing a plurality of action plans, it is possible to determine respective error profiles for each action plan of the plurality of action plans, and to identify the action plan associated with the optimum error profile.
  • Generation of a plurality of action plans may be performed by adjusting one or more parameters used to determine a target material profile in an iterative process, from which it is possible to determine the effects of variation of those individual parameters.
  • the control module 20 may determine a plurality of action plans developed by sweeping a particular parameter (e.g. temperature) through an operational range associated with the AM system hardware or a user specification of parameter limits or controller bounds to be applied to that hardware, while maintaining all other parameters constant. The same process may be repeated, in parallel, for variation of different parameters or combinations of parameters in coherent or divergent manners.
  • a crude implementation may include random selection from the multi-dimensional parameter space, and identification of the action plan associated with the lowest error measure.
  • convergence algorithms based on Newton-Raphson, Conjugate Gradient, Principal Axis, Markov Chain Monte Carlo, Differential Evolution, Nelder Mead and Simulated Annealing techniques may be used in order to assist the convergence of the error determination process by controlling the parameters to be adjusted between iterations in a manner which drives the error profile towards its optimum.
  • a further benefit of simulating a plurality of action plans for error evaluation, based on one or more cost functions, is that simulation data associated with non-selected action plans can be stored and potentially reused in the future, in the event that a different cost function is selected which might render such an action plan useful.
  • the stored information thus acts as a means of training the predictor model.
  • the optimisation process shown in Figure 4 may be applied in both pre-print procedures and in-print procedures by a data augmenter 43.
  • the data augmenter represents a functional sub-component of the control module, specified as a particular section of programming instructions in the overall optimisation algorithm.
  • the data augmenter is connected to the print controller, and in turn, the AM system 10, and operates to substitute action plan values for each index value of an action plan, with the updated action plan values associated with an action plan having the optimal error profile.
  • An index represents a stage in a sequence of processing steps or setting adjustments, as described above in connection with the target material profile. If an action plan value is not available in a new plan, a previous value can be maintained.
  • the AM system 10 executes the updated action plan(s) based on operation of the printer controller 25, as illustrated in Figure 2.
  • the print controller 25 operates independently, and in parallel with, the optimiser 40 components, namely the predictor 41 , error evaluator 42, and data augmenter 43, such that revisions to an action plan can be considered while the print controller 25 continues to action an existing action plan.
  • a short-term state database 26 is maintained, to which all sensor readings and actioned action plan items are written, represented by the output path shown in Figure 4, and the feedback loop to the target material profile, as also shown in Figure 3.
  • the database 26 is interrogated by the control module 20 to monitor progress and to enable real time feedback to be provided to the AM system 10.
  • Such a database 26 enables a report on the actual quality delivered, relative to the intended material constitution of the print, as described below, and also allows engineers to perform diagnostics on the performance or failures of the device via the user interface 22.
  • the database 26 may, in some embodiments, communicate with a root cause analytics application hosted on a website server in order to provide more sophisticated diagnostic information than might be available locally.
  • the recorded information may include, but is not limited to, a print job ID, an index ID for actions just performed, a record of events actioned at the step associated with the index ID (such as voxel printed, or controller set), a timestamp, the voxel ID and co-ordinates of a voxel just printed, the measured consistency of the voxel just printed, and sensor names, target values and measured values.
  • status information is fed back into the target material profile extractor 32, which enables dynamic adjustment of the target material profile mid-print, and accordingly, the action plan to be executed by the print controller 25 may be dynamically adapted.
  • the target material profile extractor 32 is able to interpret material flow rates from pressure/temperature sensors, and to interpret material viscosity and other material composition characteristics in order to monitor the progress of the material through the extrusion process. Comparisons are performed between produced outputs and the specification of the object to be printed, in terms of comparison of printed line widths, geometrical comparisons, and material composition comparisons.
  • the relevant actuators 21 to be adjusted to bring the target material profile into conformity with the specified print output are determined in the process of generating an action plan.
  • modelling the effect of changes can be a computationally-intensive process. If too many changes are to be modelled, the time required to carry out such processing may mean that the data augmenter is not able to update action plans sufficiently far in advance of a required change. In some embodiments, modelling of changes over a period of time which is longer than the maximum time that the effect of current decisions will last for is found to represent an optimum frequency. In turn, this ensures that a candidate action plan is generated which will not be out of date by the time it is delivered for execution by the print controller.
  • model will also affect the computational resources needed to apply the model. For example, models involving higher-order functions or polynomials will require more processing than linear models, and thus the interrogation of the system state may take into account a score or degree of complexity associated with the model. Such a score may be determined by the predictor based on test computation times indicative or the complexity associated with applying the model, and stored in a database
  • control module 20 can be configured to operate at an interrogation frequency which is optimised based on the amount of time lag taken for an action plan to be returned, the maximum prediction window, and the parallel processing count.
  • the optimiser 40 takes into account the time taken for a particular updated action plan to be generated, such that the control module 20 is able to be informed if an action plan is delivered late, with respect to a particular instance in time, and in this instance, and actuator settings that have already been missed may be immediately actioned by the print controller 25.
  • a sensor 27 may be polled multiple times, and a smoothing or averaging algorithm applied to the results, before any interpretation of the results is performed. It is thus possible to collect data from multiple sensors over an interrogation period, while only initiating updating of an action plan at a lower frequency based on windows of time in which the collective sensor data is obtained.
  • Such multivariate processing is superior to the univariate control possible in conventional proportional integral derivative (PID) control systems.
  • control module 20 assesses particular variables in the manner described above in order to determine whether or not adjustments should be applied to an action plan, and there is optimisation to be performed in the selection of which variables are to be considered.
  • a decision tool for determining which variables are to be considered by the control module 20 is Principal Component Analysis (PCA).
  • PCA has statistical benefits with respect to dealing with collinear variables and distilling the most significant variables which influence other variables within the system, such that monitoring and feedback processes can be performed in an optimal manner.
  • the AM system 10 of embodiments of the present invention may also enable manual adjustment of settings by a user. This may be useful in cases where the user is able to observe a particular change in conditions or the state of the AM system 10 which has not yet been identified by the control module 20.
  • the user interface 22 of the AM system 10 is able to report not only on progress of a particular print job, but to provide access to a number of live system parameters which the user is able to monitor.
  • Such statuses may include, but are not limited to, temperature, pressure and humidity readings, material feed stock levels, any warning indications such as a parameter entering a region specified in the user preferences that signals that action should be taken, such as replacement of a component or provision of further materials, or the manual instigation of a guttering event, and so on.
  • Some system states may also be determined by visual inspection through a viewport, for example in the nozzle channel illustrated in Figure 1.
  • the viewport may, in some embodiments, enable manual inspection by a user
  • the viewport may have a sensor such as a camera or infra-red sensor which is able to provide automatic feedback on material ID or material parameters.
  • Machine vision techniques applied to such cameras or sensors may enable processing of captured images so that certain properties or artefacts can be observed, interpreted, and fed back to the control module 20.
  • sensors could be located in any or all of: material feed, in a process within a print head, at the output of a nozzle, on the build plate, or on an output object layer by layer.
  • Each or any of the above may operate at a defined time range (every x number of layers, at start or at end or the layer or print job, and so on).
  • This sensors could capture data from multiple angles, and be combined with controlled lighting environment (different colours or intensities), using different sensors (visual light, IR, any suitable wavelength).
  • different material types/processing conditions may enable magnetic sensing (e.g. if a certain metal is being processed), sound based sensing etc.
  • a machine vision algorithm for example, executed by the control module 20, may be trained to identify certain material properties and shapes such as colour and material gradient based on templates or reference images relating to such properties, and the reference images can be accumulated over time in a manner analogous to the use of a sensor database as described above. Consequently, it becomes possible for the machine vision system to make a determination of the quality of a printed product or a mid-print process, particularly when quality is assessed with respect to a cost function as described above.
  • the viewport need not be a dedicated window at a defined location in the AM system 19, but components, such as the barrel of the twin screw extruder, may be transparent to facilitate inspection. Data collection throughout the full process is especially advantageous where new/novel materials are used, or with machine designs, as the collected data can be used to test simulations, build models and so on.
  • the AM system 10 to be used in a printing operation may be calibrated in some embodiments of the present invention.
  • Calibration involves training the predictor 41 , used in the process of Figure 4.
  • Calibration is a particularly useful process to be applied to new or modified AM system 10 as it enables the implication of actuator and sensor states on the printed output, and the effect of particular materials, to be understood.
  • a calibrated AM machine, loaded with knowledge as to how best to produce a given material, is thus responsive in a manner which enables any desired object to be printed, based on a particular set of specifications. Detailed operation of the predictor used in the process of Figure 4 is described below.
  • the predictor 41 is implemented as a model whose arguments include the machine and environmental states, including sensor/actuator positions, for the AM system 10 during the current print run (if started) and a hypothetical set of current and future controller settings, materials, or other process parameters, including target parameters.
  • the model produces a vector of predicted future material properties, geometries and line widths which will emerge from the print nozzle over time.
  • the predictor 41 represents a plurality of models, modelling the effects of different groups of parameters such as materials, machines and so on.
  • Machine learning is a broad term that includes a collection of methods for automatically creating models for data. As used in embodiments of the present invention, these include, but are not limited to, Decision Trees, Gradient Boosted Decision Trees, Linear Regression, Nearest Neighbours, Random Forest, Gaussian Processes and Neural Networks.
  • the predictor 41 operates to take an existing Long Short-Term Memory (LSTM) neural network, which is a class of a Recurrent Neural Network (RNN), or to create an LSTM neural network if there is not one already available, using techniques known in the art.
  • the network is trained by providing data captured in past use of the AM system 10, including the information set out in Appendix 3.
  • the neural network trained in this manner, is tested on experimental data not used in the training process, to determine its performance as a predictor 41 - if the test results are inadequate, the neural network is either retrained with further experimental data, or it is reconstructed. If the test results are adequate, the model is used as the basis of the predictor 41 in the process illustrated in Figure 4, and the generated test data may be used in order to further test or improve the model, in some embodiments on-demand.
  • training data is taken from the short-term state databases 26 (as described above) of one or more AM systems in use. Where multiple databases are in use, these are merged to form a single large database of known data.
  • This process may make use of high-power data mining techniques as known in the art, where training data is to be taken from extensive print networks on a potentially global scale.
  • transfer functions may be used to simulate the modelling of one machine based on training data associated with other machines or materials, in order to accelerate the time to predictive success. The majority of the data is used as training data and delivered to a chosen machine learning trainer. The remaining data is held back as test data and delivered to a model tester.
  • Execution times for the neural network can be minimised through use of massive parallelization through processing hardware, which can be scaled using large-scale cloud infrastructure. In this manner, it becomes possible to perform execution in near- real time during a print job. Batch processing is also possible, and real-time optimisation of a print process may be restricted to certain scenarios/parameters.
  • a calibration process can also be performed in order to recommend optimised machine design parameters to be used. This is especially advantageous as additive manufacturing and other related printing techniques are relatively recent, with new materials being used - knowledge and understanding of material behaviour with machine designs therefore has room for improvement & quantification.
  • the output may represent an instruction to a user to make manual modifications or selections of hardware components, or may represent the sending of a print job to a selected one of a plurality of AM systems connected over a network.
  • the output may represent a recommendation to purchase or install a new type of machine.
  • the output may represent an instruction to make use of hybrid technology, such as a combination of extruders and filament print heads.
  • the screw flights used in the twin screw extruder of Figure 1 could be angled appropriately to suit a particular process.
  • Alternative optimisations may include, but are not limited to, hardware configurations such as the nature of the screws and barrel, in terms of length, diameter, centre-to-centre distance, nozzle geometry, die design, distribution of zones, inclusion and placement of sensors and thermal control design.
  • Such recommendations can also be made prior to new print jobs, such as in the product design or definition phase.
  • controllable environmental conditions e.g. temperature
  • a parameter selection tool (not shown) in the control module 20, which operates to calibrate the print driver algorithm 23, in terms of the parameters which are to be monitored as part of the dynamic adaptive system control operation described above, will also operate in the calibration phase in order to ensure that not only the hardware able to achieve a desired outcome, but it is able to ensure the desired outcome in the most efficient manner.
  • Figure 5 represents a system diagram of a control system 50 for an AM system according to embodiments of the present invention.
  • the system diagram represents an alternative way of representing the processes and algorithms described above, expressed as a system-of-systems, in the particular example of an AM system.
  • the figure illustrates functional components employed for five distinct processing categories - 1) a calibration and system setup stage, 2) a design/development stage, 3) a pre-print stage, 4) a during print stage, and 5) an after-print stage.
  • the functional modules may be implemented as hardware, software, or a combination of both.
  • Modules for stages (1) and (2) are collectively referred to as a design manager, and the distinction between calibration and design/development does not necessarily correlate with any temporal sequence in which these components are used.
  • Modules for stages (3) and (4) are collectively referred to as a print manager.
  • Modules for stage (5) may be implemented as part of the AM system.
  • a model builder 51 performs automated model generation, using machine learning, for any AM system in order to optimise process parameters for any printable materials using print quality feedback (linewidth, material composition) as well as process feedback (temperature, screw speed and so on).
  • the model builder 51 is analogous to the optimiser 40 and predictor 41 illustrated in Figure 4.
  • a mechanical system 52 analogous to that of the AM system 10 of Figure 1 , is provided, or selected based on a machine designer 53, to perform printing. As described above, the mechanical system 52 is able to make use of extensive material possibilities, such as use of injection-moulding polymers, reinforcing agents, additives, metals, natural fibres, glass and so on, with real time-time mixing. Recycled materials can be used for high quality printing, using fine control of composites (such as controllable mixing gradients).
  • a machine designer 53 may recommend an optimum AM system to be used for printing, using techniques analogous to those described above in connection with the calibration process. This could be a new design or a change in an available module of an existing machine.
  • the machine designer 53 exploiting the computational advances made possible through the application of machine learning as described above, is thus able to ensure potential workflow improvements from the perspective of reducing lead times and bottlenecks associated with ordering new machines or modifying existing machines, in an efficient manner.
  • a design tool 54 such as a graphical user interface is used to finalise a design file for an object to be printed.
  • the software in this stage enables multi-material capability to be unlocked through creating particular material gradients, in order to achieve functional requirements.
  • the software may direct the printing of test specimens using particular material gradients to assess viability of new composites by manual or automated inspection of the printed product to be performed, to feed back into the calibration stage.
  • the user interface in the embodiment of Figure 5 enables interfacing to a subset of the functions of what is described as the target material profile extractor 32 of Figure 3, and may thus represent a standalone optimisation component of embodiments of the present invention.
  • an action plan generator 55 representing functionality contained within the optimiser 40 of Figure 4, may be used to generate an action plan in order to implement the output from the design tool 54.
  • a toolpath optimisation 56 and orientation/geometry optimisation 57 component are used respectively to apply optimisation to improve efficiency and print quality for a given print head, to drive motion of the build plate and the print head nozzle to optimise one or more of process behaviour, print quality, processing overhead, print time and waste, in the manner described in connection with the operation print driver algorithm 23 represented in Figure 3.
  • MGC Material Gradient and Maximum Gradient Function
  • the print movement sequence optimised by the toolpath optimisation component 56 will be optimised using a cost function that ensures optimal surface finish, structural integrity and optimal material gradient. The latter will only be truly valid if the layers being deposited exist in three dimensional space, achievable material gradient on a single two- dimensional layer will be too low to warrant optimisation. These criteria will be given a weight based on their relevance to their final function.
  • the in-print control stage makes use of dynamic adaptive machine control 58, in the manner described above in order to make use of optimisation to improve quality of a printed object, taking into account internal and external conditions.
  • Live adaptive control makes use of models that have been calibrated and optimised to determine changes to machine states which enable print plans to be updated.
  • the live adaptive control can be considered as a mechanism for coping with factors such as material irregularities and machine wear changes, and changes in environmental conditions.
  • the live adaptive control can also be considered as a mechanism for accounting for, and controlling the different composites through the system appropriately, choosing the right parameter to change with respect to effects on the whole system and process (especially where there are multiple compositions in different positions in the same mixing area).
  • Execution is analogous to the function of the error evaluator 42 and the data augmenter 43 of Figure 4, and a subset of the functionality of the target material profile extractor 32.
  • a feedback process 59 is employed based on observed process parameters such as printed line width, material composition, throughput, weight, and raw sensor data such as motor torque and pressure to infer material properties and conditions such as viscosity. Gutter processes are activated if the measured material states exceed prescribed limits.
  • This control mechanism can be considered as analogous to the feedback loop of Figure 3.
  • the after-print stage can be considered as involving a reporting module 60, which correlates information including print job IDs, machine IDs, sensor values, action plan specifications, user preferences and so on, at least some of which may be contained in a database, to print geometry and material composition in order to provide an indication of the degree of success of a print job to a user.
  • the output of the reporting module can be the user interface 22 of Figure 2, but additional reporting mechanisms, such as output to a printer, or output of a report by email or file other electronic file transfer may also be provided.
  • a model updater 61 is used to feed back information to the model builder 51 , so that the system can be configured for subsequent print jobs using the benefit of the empirical data obtained by the completion of the print job.
  • Figure 6 illustrates a flow chart of a process for controlling an AM system according to embodiments of the present invention.
  • the process will be illustrated in the context of a project specification which is the manufacture of a medical part (for example, a denture) requiring a particular structural and functional properties, including functional gradients of properties such as mechanical durability, ease of positioning, resistance to chemical erosion, and material properties which are suitable for placement in a user’s mouth over a period of time without causing adverse health problems.
  • the process is illustrated with respect to use of the architecture of Figure 5.
  • step S1 the model builder 51 operates to develop a model for predicting the effects of particular processing parameters on a manufacturing process, and provides a basis for subsequent optimisation of the print process.
  • an initial model may already exist which can seed future training of the model.
  • the model builder makes use of historical sensor and product data associated with a particular machine regarding action plans which have been used in previous print processes, and also prior action plans which have been simulated as part of an error evaluation process, but not used.
  • test data can be simulated by sweeping particular variables over operating ranges in a similar manner to the process described above in connection with the generation of a plurality of action plans, in order for the model to develop using the underlying neural network hosted by the predictor.
  • the result of the calibration is an ability to determine the material and parameter selections which will enable a machine to maximise its ability to print a part.
  • step S2 the process of optimisation of printing of the denture begins, particularly in regard to material selection.
  • Optimum material composition is determined based on the design tool 54 of Figure 5. The determination takes into account user preferences, and enables material choices to be combined with a design file for the denture in order to maximise, for example, the use of sustainable materials, minimisation of cost, and utilisation of particular material transition gradients to be used.
  • the design file may be provided from a source such as a design package or third party application.
  • the design file specifies the desired shape of the denture, and the characteristics set out above.
  • the result is an optimal design for the denture in terms of its material.
  • a potential output of step S2 may include the production of a test specimen of either a portion, or the entirety of the denture, to serve as a validation of the hardware and material selection, or to feed back refinements into the model generation process.
  • the user consults the machine designer 53 of Figure 5 to identify a particular machine which is suitable for producing the denture according to the optimised material specification output from step S2.
  • the machine designer 53 access libraries storing parameters characterising a number of available systems, in terms of particular parameters including maximum operating ranges, compatibility with particular materials, and so on, and operates to determine whether any available system is appropriate, or whether a modification of an existing system is required or whether even a new machine altogether needs to be configured.
  • user preferences are provided to the machine designer, via a user interface specifying printing resolution, printing speed, layer height, extrusion multiplier, wall thickness, maximum deviation, infill density, infill pattern, support type, support threshold, build plate adhesion mode, material gradients, tolerances, and so on, as described above.
  • the machine designer 53 Based on the user preferences, and the characteristics of the available hardware, the machine designer 53 operates to determine whether or not manufacture of the specified denture falls within the capability of a particular machine and whether modifications or replacements are required, such as manual adjustment of the positioning of some components, or substitution of components with others. If hardware is changed, the process may return to step S2, as shown in dotted lines.
  • the machine designer 53 examines maximum parameter ranges of machine configurations, for example, to determine whether it is possible for a product of a particular shape, to be produced, but also consults existing models, if available, developed for the machines which indicate how a machine might behave based on adjustment of parameters, rather than simply providing a static assessment of the capability of the machine.
  • a nozzle size might be specified for a particular machine which might be associated with a minimum linewidth, which might determine whether any surface features of the denture having a particular level of resolution can in fact be printed, or whether the nozzle exit is too thick.
  • Changing of a nozzle die from 0.1 mm to 0.05mm is one example of how a print head of a machine may be tuned.
  • Other static limiting parameters might include, but are not restricted to, the size of a build platform, or compatible materials, the type of deposition process, and so on, but where parameters are variable, models may be used to determine whether limitations can be overcome with particular parameter selections.
  • Machine hardware design is defined in a printer properties file. It describes the physical performance of a version of the printer hardware with a specific combination of input materials. This file is created by a machine optimisation module which may, in some embodiments, represent a functional sub-component of the machine designer 53, which is informed by experimental data. Key components of machine hardware are parametrically defined allowing for an iterative adjustment and simulation software which evaluates its fitness for any given combination of material profiles and processing parameters.
  • a selected machine 42, as recommended by the machine designer 53, is calibrated by the model determined using the model builder 51 in S1 , as described above
  • step S4 pre-print optimisation processes are performed using the toolpath optimiser 56 and the build plate orientation optimiser 57, and the action plan generator 55 is used to generate one or more action plans to implement the denture printing, in the manner described in connection with the print driver algorithm.
  • step S5 printing is performed, taking advantage of live adaptive feedback 58, 59 to monitor the progress of the printing process and the output produced to adjust particular process parameters, and the action plan developed in step S4.
  • sensor readings and action plan success or modifications are recorded in real time in order to train the model, and in Figure 5, this is illustrated with respect to a feedback arrow to the model data.
  • step S5 The output of step S5 is a printed denture.
  • step S6 the denture is examined for conformity with the required specification, both manually and automatically, in order to feed data back into the model generation aspect of step (S3) via the model data storage for further print processes to be adjusted.
  • the information which is fed back is specific to the hardware used to print the denture.
  • post-processing analysis may include functionality, executed by the control module 20 above, analogous to computer numeric control abrasion machines, but taking advantage of the improved understanding of material properties of the present invention to identify“hidden errors” in the denture, such a propensity for failure, based on stored fatigue data for a material or product, which might not be possible from visible inspection alone.
  • the entirety of the process from steps S1 to S6 is automated, operated using the components, particularly the control module 20, illustrated in Figures 2 and 3.
  • some of the processes may be performed manually, such as machine design, particularly in cases where the user is constrained by a lack of availability of alternative machines, or a lack of ability to modify a machine.
  • step S2 a machine configuration is recommended, and provided to a third party which then executes a print job using the recommended machine configuration.
  • the output of step S2 might thus be a file, or a displayed output, specifying particular hardware to be employed, or a model number or manufacturer name associated with a particular machine.
  • the recommended or required machine might be unavailable until a particular time in the future, perhaps made available as a result of a prior recommendation operation of the machine designer of Figure 5, but in this instance, the execution of a process based on step S1 of Figure 6 utilises the advantages of the invention as a standalone machine recommendation process.
  • the user may make use of the technology of embodiments of the present invention in order to perform pre-print processes in terms of the characterisation of a print control process to be implemented on a third party device.
  • the user may interact with the software application on, for example, a PC, according to the method shown in Figure 7, as follows.
  • the software receives, at step S11 , the intent of the designer, in the form of a specification of a product to be printed, and user preferences of the form described above.
  • step S12 the software enables, provided via an interface analogous to that of a CAD package, the allocation of materials, the generation of the internal structure of the product to be printed, optimisation of the print orientation, and specification of any processing conditions.
  • Step S12 is analogous to step S2 of Figure 6.
  • Step S13 the software performs machine setup configuration, in a manner analogous to the description of step S3 of Figure 6.
  • the software performs simulation of the print process based on the material and machine selections of steps S12 and S13, in order to verify whether the output is fit for purpose, or if further changes are required. If the simulation results are acceptable, taking into account any cost function that might be contained within the user preferences, the output of the method of the embodiment of Figure 7 is a specification of a print job S15, in terms of materials, machines, and action plans to carry out the printing, which can be exported to the relevant hardware.
  • the product to be printed may not itself be a complete commercial item, but may be a component or part, the output of which is to be used entirely for testing processes.
  • manufacture of particular metal alloy gradients to achieve particular outcomes may represent a tailored or customised aspect of intensive model building for a particular machine, so that fine distinctions between process and material parameters can be appreciated within a particular context.
  • Another example might be the examination of printed recycled materials or finished objects using Charpy tests or ultrasound testing in order to identify particular geometrical failures such as voids, cracks, delamination, density irregularities or under-extrusion regions that might exist, requiring the doping of other materials in order to strengthen the material - such doping can be understood in terms of a particular material compositions which serves simply as a means of populating a material composition database to be accessed by a target material profile extractor used in future print processes, such that compromised voxels which might be hidden within the finished product might be identified.
  • Such data is thus highly useful in both a machine calibration phase, and during optimisation of a CAD model.
  • Such a material database might, for example, store a predefined set of process parameters, functional qualities,“likelihood of success” metrics associated with different material composition IDs, so that selection of material profiles can be simplified either pre-print, or mid-print, through selection of multiple parameters from a single database.
  • control module is able to control a number of different types of AM systems having different specific characteristics and operating ranges.
  • an AM system is illustrated in Figure 1
  • the control architecture of embodiments of the present invention may be applied to other AM systems and non-AM systems.
  • the techniques of the present invention will enable such machines to adjust to wear/temperature shocks, processing condition choices, and so on.
  • the techniques of the present invention may enable preliminary optimal development of a product using an AM process with a view to scaling production to non-AM systems, which is particularly advantageous.
  • a number of the embodiments described relate to the way in which particular material mixtures may be achieved, but in alternative embodiments, it is possible to control the printing of an object using only a single material, which may be non-uniform in terms of particle size and material characteristics, in which the material characteristics (such as its hardness) may be adjusted by control of parameters such as viscosity in the extrusion process, in order to ensure that the material (for example, a heat or pressure-sensitive or reactive material is deposited in a particular manner.
  • the components may represent a set of interconnected, independent software components which facilitate modular development and maintenance. Distributed cloud- based implementations are possible, in which each component could potentially be executed on a physically different computer, at different physical locations.
  • the software may be based on any suitable programming language.
  • embodiments of the present invention are characterised by two different software implementations - a first implementation which represents control of a print process, and is described in connection with a print driver algorithm, and second implementation which represents a machine learning -based optimisation algorithm, which enables improvement of an AM system based on historical data.
  • the data flows described herein, particularly with reference to Figures 3 and 4, represent abstractions of the specific exchanges of control information between components, and the protocols used for communication between components may take the form of any appropriate known protocol in the art.
  • components communicate with each other based on structured key-value data structures such as JSON (JavaScript Object Notation).
  • JSON JavaScript Object Notation
  • the specific action plans to be executed will depend on a number of parameters including those which relate to the available hardware and materials, environmental conditions, user-specified constraints and the object print file, and the techniques of the present invention are such that an appropriate action plan or plurality of action plans can be generated accordingly, in an optimal manner.
  • the embodiments of the present invention are considered to provide significant advantages over conventional systems, in terms of flexibility, scalability, cost, novelty of material structures, use of recycled materials, speed of printing, and quality of a printed product or batch of products. Appendix 1
  • Process parameters include all commands related to the extruder that have an effect on the material output of all actuator commands relating to the extruder, including temperature, barrel screw motor speed and direction and the print head.
  • Process parameters are obtained in real-time based on sensor input and statistical models of the system which have been trained on historical data. This model is also used to simulate required actuator commands over an indexed sequence with expected time in order to best achieve desired output.
  • actuator commands and sense data can be understood via the logical illustration below, which shows the interrelationship between functional modules at different layers of abstraction.
  • a first layer of abstraction represents functional components involved in analysis of sense data, including an optimisation/learning algorithm operating on the principles of machine learning as described in the application.
  • learning algorithms at the first layer do not attempt to model the system as a whole, rather they abstract complex & non-linear relationships between selected variables for later processing by a global model.
  • Pattern recognition and collinear assessment algorithms perform analysis of the sensed data, while a propositional formula can be used to feed data into modelling algorithms in the second layer.
  • Formulas may include proofs and scientific equations that accept input variable data to derive further variables that are used by other elements of the system; for example, combining pressure sense data with known geometries of the extruder to produce a throughput calculation.
  • a second layer of abstraction represents functional components involved in modelling, including a plurality of different modelling algorithms and optimisation/learning algorithm operating on the principle of the machine learning algorithms described in the application. Additional optimisation algorithms may also optimise the algorithms themselves. Based on output error and gradient descent techniques known in the art, weights of the model are tuned in order to achieve optimal results.
  • a third layer of abstraction represents a decision unit which collects inputs from the components of the modelling layers and determines actuator commands to be output.
  • data from each layer may be available to the rest, such that actuator commands can also form sense data, and that a plurality of modelling techniques may be used.
  • the layers of abstraction can also be represented by the following data flow, in which sensed data is stored in a database.
  • the Target Material Profile is defined as the required material constitution to be printed at every IndexID. It exists within a Maximum Gradient Function which has been established from experimental data and machine configuration. This is the steepest transition gradient that the device is capable of delivering.
  • the Target Material Profile is scanned for all sections where its gradient exceeds the Maximum Gradient Function. These sections are targeted for repair. For single print-head devices these are repaired by a Planned Guttering event. For dual print-head devices, the repair is achieved by a Print Head Change event.
  • the three-dimensional can model can be represented as a list of the indexed voxels, each with an associated material composition.
  • the JSON structure below illustrates a composition of four materials, of which neither contains any input from hopper three or four.
  • the diagram below illustrates a computer simulation to inform material allocation from a force vector.
  • the system designed is agnostic to the simulation type which will depend based on the end function of the product. These may consist of:
  • material allocation can be defined as a linear interpolation function between two functional points (xi & x 2 ).
  • m the ratio of two materials and solve it at any given point between xi and x 2 using the interpolation function shown below. Note that this example is one dimensional but easily extendable to accommodate the second/third dimension, further material counts and complex/non-linear interpolation functions.
  • the basic methodology for creating the predictor 41 is as follows:
  • Step 3 Test the trained network on experimental data (which was not used in the training process) to measure its predictive power. If it does not make sufficiently good predictions, repeat from Step 1) with either a new initial neural network or with more experimental data.
  • the training data is taken from the Short Term State Databases of the test printers as follows:
  • the state database will use an SQL database to store the data for efficient lookup with most values being Reals or Integers.
  • the database must be indexed by print job ID and by Index ID. However, queries from the database will be converted to a dataset of associations, ready for use in the predictor 41. For example:
  • sensors could be any sensor: (temperature, pressure, build plate weight, motion speed, material output);
  • actuators could be any appropriate actuator: (extruder motor, heaters, coolers, motion stage, retraction, gutter);
  • V - Where Variable could be any derived or composite function (e.g. viscosity, material Melt Flow Index).

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Materials Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Optics & Photonics (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)

Abstract

A system and method for manufacture and material optimisation An apparatus for configuring an additive manufacturing system is provided, comprising means for receiving a specification of a product to be manufactured, and user preferences, and means for determining one or more optimal material configurations to be used to manufacture the specified product, which satisfies one or more conditions set out in the user preferences, wherein the means for determining the one or more optimum material configurations uses a machine learning algorithm to process historical data from manufacturing processes in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for the additive manufacturing system. Also provided are an additive manufacturing apparatus, a method of configuring an additive manufacturing system, and a method simulating manufacture of a product using an additive manufacturing system.

Description

A SYSTEM AND METHOD FOR MANUFACTURE AND MATERIAL OPTIMISATION
Technical Field
The present invention relates to the field of manufacturing and particularly, but not exclusively, to a technique of dynamically controlling an additive manufacturing apparatus to optimise preparation of materials for printing with the correct constitution. Through optimising the way materials are prepared for printing, it is possible to achieve a number of advantageous effects.
Background of invention
Additive manufacturing, also referred to as three-dimensional printing, is a process by which products are produced by the successive deposition of layers of materials. The material deposition is controlled based on computer-readable instructions contained in a design file, causing movement of a print head or nozzle, such that an object having required geometry and structural properties can be printed.
One example of a conventional additive manufacturing technique is disclosed in United States Patent Application US 2018/015668. This document describes a three- dimensional printer extruder in which a material is heated and extruded through a movable nozzle over a desired area. By moving the nozzle, and by selecting an appropriate material for extrusion over a particular area or layer, it is possible to build products having a variety of shapes and properties.
The performance of an additive manufacturing system is largely determined by the available printing hardware and materials for deposition, but advancements can also be made to the control and driving of such hardware, in terms of the selection of process parameters and materials to be used, and optimal definition of a print path based on a product design file. Such developments enable printing performance to be improved, when measured in terms of parameters such as material costs, speed, structural integrity and resolution of produced objects, which extends the range of applications in which additive manufacturing can be used reliably, in many cases replacing more conventional manufacturing techniques. As the technology develops, the way in which it is required to be used can become increasingly more sophisticated and complex. For example, the range of materials which can be produced can be increased when consideration is made as to how to blend particular materials within a product to suit a certain aim, such as maximising sustainability or functional requirements such as strength.
United States Patent Application US 2017/0334141 discloses an example of a technique of preparing functionally graded materials through additive manufacturing. The disclosed system seeks to overcome restrictions imposed on conventional systems due to an under-developed relationship between the print path of a 3D print head specified by print control software and any required variation in the materials to be extruded. The system which is described plans the path of a 3D print head in view of the directions in which the 3D print head can move while extruding a particular mixture of materials, such that certain print regions can be identified in which the printing of particular material mixtures at certain locations can be guaranteed.
Despite the ability to plan a particular print path for a given set of materials and for given hardware, there remains a wider lack of detailed understanding as to how a specification of a printing process will correlate with the printed output in practice. There are typically a large number of process parameters which can be controlled and adapted individually, as part of an additive manufacturing process, but each variation may have a different effect on a different material, potentially even having different effects at different stages during the print process, and also having different effects in different machines types or variants. External conditions such as atmospheric temperature, pressure and humidity, may also affect performance in a manner which is highly complex, and difficult to analyse efficiently. Internal characteristics of novel materials are also difficult to understand. If these parameters are not optimised then it can negatively affect the print process, and can even affect what is possible to print in terms of particular materials and shapes.
As additive manufacturing becomes more and more prevalent, as described above, and as hardware choices, desired material compositions and functional properties become more variable, it becomes more and more difficult to determine exactly which combination of process parameters and material selections should be made in order to produce a particular product with particular features, such as mechanical strength or flexibility, with a given machine. This problem is particularly significant when it is considered that it is now desirable to specify a printed product in resolution which may be as specific as a voxel-by-voxel basis. Poor selection of hardware and/or material can lead to errors at the voxel level which may in turn render a printed product as a whole to be unfit for purpose. Consequently, there may be a restriction on what products can be made.
Accordingly, there is a need to better understand, and control, additive manufacturing hardware and to optimise material selections and processing conditions for those material selections dynamically for given project specifications and conditions. Without such understanding, it can be difficult for certain materials to be processed at all, or for particular material combinations to be delivered.
The present invention was developed in this context, with a particular focus on material heterogeneity, conversions, or combinations. While the invention has particular applicability to additive manufacturing systems, there is also a need to better understand such selections and optimisation processes for non-additive manufacturing processes associated with the same or similar constraints or design choices as additive manufacturing systems. In general terms, there is a need to understand how manufacturing hardware should be selected and controlled, how manufacturing materials should be selected and controlled, and how particular manufacturing processes should be implemented, in order to achieve particular outcomes while anticipating the interrelation between the various factors. The present invention was therefore also developed in the context of non-additive manufacturing systems. Summary of invention
Embodiments of the present invention relate to a standalone control apparatus which can be retrofitted to an additive manufacturing apparatus, in order to achieve the effects of the present invention. Further embodiments relate to an integrated apparatus comprising a manufacturing apparatus which is equipped with technology required to provide dynamic control. Further embodiments relate to a method of dynamic control, and a computer program which, when executed by a processor, is arranged to perform a dynamic control method. Further embodiments relate to a method of optimising material selection for use in dynamic control of a manufacturing apparatus. According to an aspect of the present invention, there is provided an apparatus for configuring an additive manufacturing system, comprising means for receiving a specification of a product to be manufactured, and user preferences, and means for determining one or more optimal material configurations to be used to manufacture the specified product, which satisfies one or more conditions set out in the user preferences, wherein the means for determining the one or more optimum material configurations uses a machine learning algorithm to process historical data from manufacturing processes in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for the additive manufacturing system.
The apparatus may further comprise means for determining an optimum configuration of an additive manufacturing system for manufacturing the product according to the one or more optimal material configurations, which satisfies one or more conditions set out in the user preferences, wherein the means for determining the optimum configuration of the manufacturing apparatus uses a machine learning algorithm in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for a particular manufacturing apparatus.
The apparatus may further comprise means for determining an optimal sequence of control signals to be applied to actuators of the additive manufacturing system to enable the specified product to be manufactured according to the optimal material configuration, wherein the optimal sequence of control signals represents the implementation of a manufacturing process predicted to process the optimal material configuration using behaviour modelled by the machine learning algorithm, and means for applying the determined optimal sequence of control signals to the actuators of the additive manufacturing system.
The means for determining a sequence of control signals may be arranged to generate a plurality of sequences of control signals, and to determine the optimum sequence in accordance with a cost function specified in the user preferences.
The apparatus may comprise means for monitoring the output of a manufacturing process implemented by the additive manufacturing system and means for updating the sequence of control signals if the monitored output deviates from the specified output. The apparatus may further comprise means for updating behaviour modelled by the machine learning algorithm based on monitoring of the output of the manufacturing process.
The means for monitoring the output of a manufacturing process may comprise an imaging system implementing a machine vision algorithm to inspect mechanical properties of the output in real time.
The apparatus may further comprise means for generating test data by modelling the expected output from a manufacturing process performed using the additive manufacturing system using a plurality of different manufacturing process parameters and material configurations, and for training the behaviour modelled by the machine learning algorithm using the test data.
The apparatus may further comprise means for determining an optimum geometry for manufacturing the specified product using behaviour modelled by the machine learning algorithm.
According to a further aspect of the present invention, there is provided an additive manufacturing system comprising the above apparatus.
The additive manufacturing system may comprise a twin screw extruder.
According to another aspect of the present invention, there is provided a method of configuring an additive manufacturing system, comprising receiving a specification of a product to be manufactured, and user preferences, and determining one or more optimal material configurations to be used to manufacture the specified product, which satisfies one or more conditions set out in the user preferences, wherein determining the one or more optimum material configurations uses a machine learning algorithm to process historical data from manufacturing processes in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for the additive manufacturing system.
The method may further comprise determining an optimum configuration of an additive manufacturing system for manufacturing the product according to the one or more optimal material configurations, which satisfies one or more conditions set out in the user preferences, uses a machine learning algorithm in the prediction of the configuration of a product manufactured according to the one or more optimal material configurations for a particular manufacturing apparatus.
According to a further aspect of the present invention, there is provided a method of simulating manufacture of a product using an additive manufacturing system comprising configuring an additive manufacturing system according to the above method, and determining an optimal sequence of control signals to be applied to actuators of the additive manufacturing system to enable the specified product to be manufactured according to the optimal material configuration, wherein the optimal sequence of control signals represents the implementation of a manufacturing process predicted to process the optimal material configuration using behaviour modelled by the machine learning algorithm, simulating the application of the determined sequence of control signals to the additive manufacturing system, and populating the machine learning algorithm with tests data generated by the simulation.
According to a further aspect of the present invention, there is provided a computer program, which may be stored in a non-transitory computer-readable medium or in a signal which, when executed by a processor, is arranged to execute the above methods.
In general terms, the improved understanding between the effects of variations in process parameters and material selections on an additive manufacturing process, provided by embodiments of the present invention, makes it possible to significantly optimise the way in which products are designed and manufactured in terms of predictability and maximisation of structural and functional performance, and through optimisation of material usage and type.
Embodiments of the present invention facilitate specification of material constitution at high levels of resolution, for example at the voxel level or in terms of layered pixels or co-ordinate-specified positions. In the following disclosure, references to voxel-level resolution are to be interpreted as including any alternative means of specifying the spatial locations of particular material designations. Products can be thus manufactured using controllable material constitution, whether a highly specialised material for a particular voxel, or a particular allocation of material constitutions across a plurality of voxels within a geometry in order to achieve particular properties in the printed product. A specific allocation within a geometry of selected material(s) is referred to as a material configuration.
Through fine and dynamic control of the process of mixing different constituent materials, it is possible to use unique material compositions for the printed product, including polymers and composites, natural fibres, glass, with their specifications controlled in real time, and predictively, in order to achieve both homogeneous and heterogeneous structures. It is also possible to optimise the printing process with respect to speed and cost.
One example of an improved material usage made possible by embodiments of the present invention relates to use of recycled material, such as polymeric materials, which can be extruded and blended with other high-performance materials, for example, fibres (for example carbon, Kevlar, graphene), plastics and glass fills in order to achieve novel material mixtures. This benefit enables production of objects via particularly cost- effective and environmentally-friendly solutions. For instance, use of a recycled material in place of a conventional material can reduce costs of manufacturing a particular product, particularly at large scale, below 10% of the cost of a process using conventional material. In the case of using heterogeneous or low quality recycled material in an industrial extruder, embodiments of the present invention ensure consistent quality with significant economic benefit.
In addition to the clear material-usage benefits of using recycled materials, a further example of optimal material usage, made possible by embodiments of the present invention, relates to reduction in wastage of material to be extruded, because it is possible to predict and compensate for the effect of variations in material compositions or process conditions in a dynamic manner. Conventionally, in the absence of such dynamic specification of process parameters, materials may be discarded, or a print processes may need to be restarted if changes in conditions could not be accounted for.
The advantages provided by embodiments of the present invention further enable scaling of additive manufacturing processes as a whole because print processes need not be defined solely with respect to fixed machine or product specifications. The ability to specify a particular machine behaviour or model number, print paths, and materials ensures that the claimed technique can be applied to a variety of scenarios and applications in a manner which was not previously possible.
The dynamic adaptive machine control which is made possible by embodiments of the present invention ensures that not only is it possible to optimise the process with which an individual object is manufactured, but it is also possible to deliver batches of objects with the optimal conditions, which ensures that a batch process is robust to both external and internal shocks. Optimisations can thus be made to ensure that a material configuration can be achieved, or at least achieved within a specified tolerance, throughout the production of a particular batch. This further increases scalability of embodiments of the present invention, in terms of the numbers and types of machines which can designed and built which can be ensured to be capable of achieving optimal outputs. The size of a particular machine can also be increased, in addition to optimisation of its physical configuration with respect to certain process and production optimisations. At the other end of the spectrum, embodiments of the present invention facilitate the process of printing laboratory scale experimental material samples, as part of a testing process or process of refining the underlying modelling processes, such that it is possible to predict that a larger batch production process will perform in an expected manner, with greater accuracy. This large batch could be executed within an additive or non-additive process - and in both cases, could be started experimentally.
Simulation of different material flows within different machine types is greatly aided by embodiments of the present invention. Simulations using data from industrial/ conventional scale polymeric processing systems, with well understood homogeneous materials, are difficult to apply in additive manufacturing applications, and made even more demanding by non-Newtonian behaviour of polymers and novel material mixes, which may or may not be polymeric. Consequently, the ability to calibrate a prediction model for enabling the behaviours of certain materials in a given machine, for a given set of processing parameters, means that it is possible to determine optimum printing conditions and machine configurations in order to obtain a desired physical output in an efficient manner.
In addition to optimising the printing process, embodiments of the present invention also demonstrate advantages in improvement of the product design process. For example, it is possible to customise or optimise the design of a particular product such that parameters such as cost-saving and sustainability can be maximised and such that functional properties can be achieved with optimum material selections for given printer hardware. Brief description of drawings
Embodiments of the present invention will now be described by way of example only, and with reference to the accompanying drawings, in which:
Figure 1 illustrates an additive manufacturing (AM) system according to an embodiment of the present invention;
Figure 2 illustrates a schematic of the control module used to control an AM system as shown in Figure 1 , according to embodiments of the present invention;
Figure 3 illustrates the data path through a printer driver algorithm which is executed by the control module of Figure 2 according to embodiments of the present invention; Figure 4 illustrates a process of error evaluation as performed by an optimiser according to embodiments of the present invention;
Figure 5 represents a system diagram of a control system for an AM system according to embodiments of the present invention;
Figure 6 represents a flow chart of a process for controlling an AM system according to embodiments of the present invention;
Figure 7 represents a flow chart of a process for configuring a print process according to an embodiment of the present invention;
Figure 8 is a graph illustrating a process for refining the quality of data in the database; Figure 9 is a graph illustrating how the strength of a material varies according to the ratio of a first and a second material;
Figure 10 is a process overview; and
Figure 11 is a flow chart illustrating how the n p-dimensional list is created during the material selection stage Detailed description
AM System
Figure 1 illustrates an additive manufacturing system (AM) 10 according to an embodiment of the present invention. The AM system 10 shall also be referred to herein as a 3D printer. The AM system 10 is characterised as a twin-extruder printing apparatus, in which materials are extruded for deposition on to a build plate via an extruder, also referred to herein as a print head.
In more detail, the AM system 10 is configured to deposit successive layers of material onto a build plate by controlling operation of a nozzle, through which the material is deposited, according to a predetermined print path. The print path is determined by a control module based on specification of process parameters characterising the object to the printed, and taking into account the specification of the AM system 10.
In general terms, the AM system 10 comprises a mechanical system, which is driven by actuators representing an electrical system, controlled by a software system. The mechanical and electronic systems are described with reference to Figures 1 and 2, while the software system is described with reference to Figures 3 and 4.
Material to be extruded is contained within a feed system characterised by one or more material reservoirs or feed hoppers. In the embodiment illustrated in Figure 1 , two feed hoppers are shown, containing two material feed stocks. Materials are fed selectively from the feed hoppers into a mixing channel, through which the materials are mixed into a composite, and extruded under the action of a twin barrel screw system. Material deposition is performed via a single nozzle, but in other embodiments, multiple nozzles may be present, carried on a respective plurality of print heads.
The nature of the extrusion process is controlled by specification of a number of process parameters, as described in more detail below, so as to ensure that a desired blend of materials is provided to the nozzle.
The mixing channel is characterised by three zones - a feed zone, a mix zone, and a pressure zone.
In the feed zone, materials are collected from the feed hoppers and heated by one or more heaters applying heat into the mixing channel. The heaters may comprise any suitable heating elements suitable for transferring heat through, or from, the outer body of the mixing channel to the materials such that the materials are melted to facilitate their extrusion. Materials are provided from the feed hoppers via an entry interface into the mixing channel. Materials are released from the feed hoppers based on the opening and closing of feed hopper ports which communicate with the entry interface, and by feed motors which drive the expulsion of material through the feed hopper ports.
The materials which arrive in the feed zone are driven through the mixing channel, in the direction from left to right in Figure 1 , based on the rotation of a pair of barrel screws. The twin barrel screws can be independently arranged to rotate at respective speeds, and in respective directions, under the control of a motor drive system, so as to achieve various mixing effects, and materials are transferred along the mixing channel by the urging action of the screw threads. The motor drive system may include a rotary encoder and torque sensor, as known in the art.
In the embodiment of Figure 1 , the pitch of the barrel screw threads in the feed zone is relatively long with respect to barrel diameter, in comparison with the pitch of the screw threads further downstream of the feed zone, so as to maximise accommodation of material received from the feed hoppers in the space between the screw threads, for conveyance. The mixing channel itself may also be configured to be wider in the feed zone, than in the mix and pressure zones, so as to facilitate the capturing of material for extrusion.
In the mix zone, the pitch of the barrel screw threads is reduced, so that mixing of materials can be facilitated by the action of the barrel screw threads on the materials in the mixing channel. In the embodiment of Figure 1 , the barrel screws are controlled to rotate in the same direction as each other, in order to mix together two materials in the mixing channel. In alternative embodiments, processing materials such as PVC-like materials, rotation of the two screws in the opposite direction may be used for mixing. The rotation direction of the screws is selected according to particular throughput requirements, or the required nature of the mixing, exploiting the advantages of a twin- screw extruder in a manner known in the art.
As in the feed zone, one or more heaters are arranged around the mixing channel in order to maintain or further melt the material mixture in the mixing channel to facilitate its extrusion and mixing.
As material passes through the mix zone, the two material constituents provided from the respective feed hoppers are thoroughly blended in order to achieve a particular composite required to be printed. The blending is dependent on the amount of each material constituent in the build chamber, which is dependent on the amount of material released into the feed zone from each material feed hopper. The blending is controlled in this manner based on a control module, to be described below.
The mix zone achieves the blending of the materials. What is enabled next is a conversion of the blend into a form which is suitable for deposition via the nozzle. For instance, it is desirable to ensure that the blended composite can retain its composition during, and after deposition. The pitch of the barrel screws in the pressure zone is shorter than in the feed and mix zones, and the rotation of the barrel screws thus applies further pressure to the mixed material as it passes along the mixing channel in order also to increase throughput. In both the mix zones and the pressure zones, the operation of the heating means is controlled based on feedback from temperature sensors contained in the mixing channel in order to maintain a specified temperature.
In addition to, or instead of screw pitch, other parameters such as screw flight angle and size may also vary between zones. It will be appreciated that screw profiles for conveying differ from those used in kneading, or distributive/dispersive mixing, which differ again from those used in mixing.
The composite extruded by the process described above passes into a nozzle system for deposition. The nozzle system comprises a nozzle channel, which receives extruded material through a mixing channel interface, and transfers it to the die through which the material is deposited. Temperature and pressure sensors in both the nozzle channel and the die are used to monitor the parameters of the composite, and to provide feedback to the extrusion process (including the heaters, barrels and the motor drive control) in order to adjust process parameters, but auxiliary heaters or coolers may be provided in the nozzle itself in order to boost or reduce the temperature of the extrudate.
The die is movable in the x, y and z directions based on the control of a mechanical drive means (not shown) as known in the art, which implements a predetermined print path with respect to a space defined in relation to a build plate, in order to print an object. Movement in the x-y plane enables a particular material later to be deposited voxel by voxel, based on a particular path between those voxels, while movement in the z- direction may be synchronised with closing of the die, flow-restriction or diversion (such as guttering, described in more detail below), so that deposition is paused between layers while the die is moved to a new starting position for a subsequent layer. Movement in the x-y plane may also be synchronised with movement in the z-direction.
The build plate has a print bed platform which is also movable in the z-direction, in order to facilitate deposition by moving the printed object away from the die. In this regard, it is not necessary for the die to have a full range of movement in the z-direction which corresponds to the height of the printed object, because of the compensation which can be provided by the build plate. The print bed may comprise a heater, temperature sensor, and means for measuring material geometry or material composition, which can be used to feed back required adjustments into the AM apparatus as described in more detail below.
The build plate may be fitted with a load measurement and auto-levelling functionality, in order to maintain performance by feeding back any required adjustments due to, for example, external vibrations or irregularities in material deposition.
Further components which may be included in alternative embodiments of the present invention may include, but are not limited to, at least some of cooling actuators for cooling channels, to counteract the use of heaters, vibration sensors, sound sensors, material ID sensors and optical sensor such as CCD or FTIR sensors, gutter actuators, gas sensors, airflow actuators, weight sensors, pressure sensors, humidity sensors and light sensors, drive motor gearings, quick release components, thermal insulation, and hermetic sealing, line width sensors and levelling sensors. In addition, modifications to the embodiment of Figure 1 may be made, such as different distribution of barrel screw threads, barrel screw geometry and heater positioning.
The AM system 10 described above is an example of a configuration which can include a control module, to be described below, for controlling a printing process, or which can be controlled by a separate control module. It will be appreciated that other manufacturing apparatuses can be used with, or combined with, such a control module according to alternative embodiments of the present invention. For example, such alternative systems to the disclosed extruder may include AM systems based on sintering or powder-based systems, using light or UV irradiation to fuse powder particles together to build up material layers. Hybrid systems are possible in which some of the print heads make use of material extrusion in the manner set out above, but in which other print heads, such as filaments, may be used to print particular portions of an object, or to print materials such as support materials. Non-additive manufacturing systems, such as industrial plastics processing machines (e.g. extruders) and techniques such as abrading and polishing may also be employed used and controlled in embodiments of the present invention.
Print Driver Algorithm
Operation of the AM system 10 of Figure 1 is controlled based on the driving of one or more actuators 21 by control signals provided from a control module 20. The control signals are applied based on one or more action plans, which are developed in order to achieve a particular target material profile for the object to be printed.
The control module 20 may be implemented as a microcontroller which is either integrated with or separable from the AM system 10, containing a display and controls for as a user interface. The control module 20 may represent a software application executed by an external computer which is connected directly to the AM system 10, or over a network, such as the cloud. In the case of network connection, the AM system 10 may comprise a central communications hub which contains processing circuitry to receive control signals from the control module over a network and controls their distribution to the appropriate actuator 21 in the system.
Figure 2 illustrates a schematic of the control module used in embodiments of the present invention, and Figure 3 illustrates the data path through a print driver algorithm 23 which is executed by the control module 20 of Figure 2, according to embodiments of the present invention. Figure 2 illustrates the relationship between the control module and aspects of the AM system 10 of Figure 1 in an example embodiment.
The control module 20 operates to receive a design file for an object to be printed. The design file may be generated by an application hosted externally with respect to the AM system 10, such as a computer-aided design (CAD) package, which specifies the geometry of an object, colour, and so on. The design file may be selected by user input provided to a user interface 23, or may be received via a computer disk or internet download, or wired or wireless transfer from another computer device. The object is typically specified based on material-agnostic geometry, in other words, the material with which the product is to be printed is not specified, but functional or structural properties required of the product may be specified, although in alternative embodiments, material specifications may be included in the design file.
The control module 20 is able to receive any further design parameters not present in the design file from a user via the user interface 22. For example, the user may specify a number of properties such as hardness, material strength, flexibility, material tolerances, force modelling, and/or a specific material composition per voxel, including absolute compositions of voxels bounding transitional zones containing voxels of materials which transition in composition between the materials of the boundary voxel materials. The control module 20 operates to determine a particular target material profile, for example as described below which enables an object to be printed having the required specification.
These design requirements are specified at a particular level of resolution, such as on a voxel-by-voxel basis, for example as an array, in which voxels containing position and material specification data are distributed across layers of the object to be deposited during the AM process. The process of developing the target material profile, based on the material configuration in conjunction with its processing requirements, is described in more detail below.
Based on the object specification, the control module 20 executes a print driver algorithm 23 for determining the control instructions required to be applied to the AM apparatus in order for the object to be printed. The print driver algorithm 23 takes, as inputs, a specification of an AM system and its components, available materials to be extruded, and any user preferences such as a maximum or average tolerance between a specification of a target object to be printed, and the actual output which is generated. Control of the AM system 10 is performed by a print controller 25 which may be part of the control module 20, or which may be a slave controller with respect to the master control module 20, as illustrated in Figure 2.
In one embodiment, the print driver algorithm 23 determines the following, based on the provided inputs: • an optimal print path over which the nozzle system is to be driven from voxel to voxel, as known in the art;
• determination of build plate layout and orientation optimisation, and a sequence for controlling movement of the print bed platform and/or relative motion between the nozzle and the print bed platform;
• process parameters relating to the extruder, including temperature, barrel screw motor speed and direction and the print head (details provided in Appendix 1);
• materials, material mixtures and transition gradients to be used, and synchronisation between material feeding, other process parameters, and deposition via the nozzle (details provided in Appendix 2);
• nozzle/print head control parameters, including startup, shutdown and pause operations.
The inputs to the control module 20 are provided via the user interface 23, which includes an input means such as a keypad or touchpad and a display. In the case of particular settings or preferences, and may also be retrieved from one or more databases 26 under the control of a user input to the user interface. Information stored in said one or more databases 26 may include customer preferences, material specifications and machine specifications, and action plans and their success, to be described in more detail below. The database(s) 26 may be local or remote, such as cloud-based.
AM system specifications may include a device name and version, specification of the number of print heads, specification of the number of feed hoppers and their contents, operational ranges, such as temperature ranges in which the AM system 10 can operate safely, and specification of the maximum rate of change of materials the AM system 10 can achieve when adjusting the extrusion process in real time.
The outputs from the control module 20, determined by the print driver algorithm 23, are provided by the print controller 25 as actuation signals to the AM system 10, including heaters, feeder motors, barrel screw motors, print bed drive, and the nozzle drive, and so on. In Figure 2, representative actuators 21 #1 , #2... #N are illustrated, with corresponding sensors 27 #1 , #2... #N, for any number, N, of actuators 21 or sensors 27 which may enhance control, although in alternative embodiments there does not need to be a 1 : 1 mapping between physical sensors 27 and actuators 21. Figure 2 can be understood as illustrating sensor signals, which are fed back to the database 26 in a process described in more detail below. In alternative embodiments, it is possible to make use of a closed loop control between the output of the sensors 27 and the print controller 25. For example, in the case of temperature control, the control module 20 may specify a temperature set point and a loop back from a temperature sensor to the print controller may enable the set temperature to be maintained based on a mechanism such as proportional-integral-derivative (PID) control, although more sophisticated multivariate control is also possible as will be described in more detail below.
The actuation signals are controlled as time/voxel position-varying signals, in order to ensure that a) the correct material mixture is deposited at the correct voxel, b) use of the AM system 10 is optimised such that materials for future voxels to be printed can be suitably prepared in advance, and c) material wastage is minimised.
For example, as a material composite changes through the print head, temperatures and other factors will have to change to appropriately in order to enable the materials to be treated appropriately. Consider, for example, an example in which a control module of a machine recognises that it is dealing with composite of 55% material A, 40% of material B, and 5% of material C, then it might be determined that the feed zone can be set to 200°C, and the pressure zone needs a temperature of 230°C, and so on.
Additionally, as one voxel is being printed, material for another voxel, such as a voxel in a successive layer, may be required to be released from the feed hopper into the mixing channel, or material having particular blends of constituents may need to be prepared in advance to achieve functional properties such as hardness at a particular region of the object to be printed.
In relation to the print path of the nozzle, optimisation is performed by a print path optimiser 31 , also referred to as a toolpath optimiser so as to minimise at least one of travel distance in which printing is not performed (for example when transitioning between deposition layers), and changes to material composition which are needed when the nozzle moves between different areas. For example, it may be the case that an object to be printed has regions of identical composition which are not positioned close together, and it may be determined to be more efficient to print those regions in sequence, rather than printing spatially-adjacent voxels of the object having differing material requirements. Efficiency is thus determined by the algorithm by determining path length and material compositions, using a technique analogous to those described in United States Patent Application US 2017/0334141.
In some embodiments, the print path optimiser 31 represents a functional sub component of the control module 20, specified as a particular section of programming instructions in the print driver algorithm 23.
In the case of material selection, if this is not already specified by user input, or a fixed property of the AM system 10, the print driver algorithm 23 operates to translate functional requirements, such as hardness or flexibility, into material compositions, in a manner to be described in more detail below. The input to the print driver algorithm 23 may specify that a particular voxel requires a particular hardness, for example, and the algorithm operates to determine which blend of available materials, defined by their mixing ratio, will achieve the required function. The print driver algorithm 23 makes use of information contained in a database such as material datasheets or in-house test data in a manner to be described in more detail below. Further control can be determined in terms of the temperature to which the constituents should be heated, the pressure at which they should be mixed, and the way in which the transitions between voxels should be achieved by adjustment of parameters. Testing of printed outputs, such as a Charpy impact test based on a determined materials, can validate a particular material selection, and if the test is failed, as determined by a comparison of a printed object to the required geometry, performed using, for example, a machine vision technique, the selection can be modified accordingly to either change an aspect of the material, or to change the material itself.
The process of embodiments of the present invention enables novel material mixtures to be developed and controlled during printing, having highly customisable material compositions, gradients and doping effects, including known and existing combinations on demand for desired effects. Such material mixtures and smooth gradients can be achieved when materials are in the molten state in the extrusion process, which is not something which is possible in, for example, powder bed printing systems based on particle fusing.
This is uniquely advantageous, as it enables particular material mixtures to be used which might have properties which can achieve a required output, when each material constituent may, in isolation, not demonstrate the required parameters. As an example, a recycled plastic, which may on its own have weaker material characteristics than virgin material could be mixed or doped with carbon fibre to combine the beneficial effects of the material strength and lightness provided by carbon fibre with the cost and flexibility of plastic. In doing so, the process provided by embodiments of the present invention is able to generate an opportunity for reuse of materials, and a motivation to recycle products for this specific purpose. Substantial cost savings are made possible, particularly when product manufacturing processes are scaled up in terms of unit quantities and size. Additionally, novel material mixtures can be tested on a laboratory scale prior to larger-scale manufacturing processes, so that quality can be verified or modifications made to various parameters prior to execution of such a print job. For example, smaller quantities can be printed for experimentation and prototyping to determine target material and design prior to larger unit quantities such as injection moulding.
Material Selection, Material Allocation, Configuration
In order to manufacture a product the following steps are followed. These steps are set out pictorially in Figures 10 and 1 1.
A three dimensional geometry for the product is created, for example using a CAD system. This is known as the 3D Geometry.
In addition to creating the 3D Geometry it is necessary to specify the other factors that will result in the manufacture of a product having the desired specification. These other factors are referred to here as the User Requirements (and may be thought of as the User’s definition of the problem). The User Requirements are specified in a model which is created using a Scenario Builder for example by a user interface. The Scenario Builder looks at the desired specification of the product and defines, for example, the load cases, constraints, design objectives and local set points that are needed to meet the specification, which may be inputted within the User Interface
The next step is Material Selection starts with the Material selector, an algorithm that returns an n p-dimensional material list based on the user defined rules. Where n is equal to the number of production methods to be used and p the number of materials compatible with the production mean in question. The next step is an Initial Material Selection which is undertaken once the model has been built and which utilises a database. The database contains two sets of information. Production Means Information pertains to manufacturing apparatus, for example for a twin-screw extruder (and/or a specification for a component of a manufacturing apparatus, e.g. the length of an extruder barrel). Materials Information pertains to specific materials. The Initial Material Selection identifies one or more suitable production means. A number‘n’ which is equal to the number of suitable Production Means is allocated. For each of the suitable production means a number‘p’ is allocated which is equal to the number of materials that are compatible with that suitable production means. In this way the User Requirements are converted into a one-dimensional (1 D), n p-Dimensional List. The n p- Dimensional List is a conversion through mathematical means of the User Requirements. The mathematical means may include, but not be limited to, methods such as a variance of the Euclidean distance, a decision tree, a dimensionality reduction algorithm, a clustering algorithm or an artificial neural network.
Note that through the Scenario Builder each objective (rule) is assigned a weight by the user (normal, high, very high) in the backend this corresponds to a scalar value which increase the prominence of that rule in the material selection. Automated weighting can also happen if the result of the simulation falls below the safety factor. Rules are also referred to as User requirements, is the output of the Scenario Builder. They can be categorised into two sections; Constraints, rules that the user will not compromise on and objectives, rules which the user will compromise.
The database may be populated by a parametric model that explains how components of the specific machine type can be changed, for example the length of barrel and/or the screw geometry [angles of flights]). The components are treated as variables and the relationship of how these variables affect the material processing is determined by the machine learning calibration model. Other Production Means information includes standard machine information from additional databases which is input into the database manually as provided by the machine suppliers, or inserted after experimental testing. If the information is obtained by experimental testing, the generation of the ‘actual’ Production Means Information could be aided by statistical modelling. In one embodiment the parametric model is accessed by the machine designer 53 (as shown in Figure 5). The User Requirements may be Global or Local. A Global Requirement is a requirement that can be applied to the whole of the product, such as whether a material can be used with the production means that have been identified as being suitable. A Local Requirement is a requirement that is applicable to just a part, or parts of the product, such as a particular hardness needed at a specific point on the product (e.g. inside the jaws of a spanner). Local Requirements may also arise from a simulation carried out on the Model. For example, sharp corners on an object subject to stress may demand high- strength materials in those regions. The exact Material Allocation with be determined by a Material Allocator.
The definition of User Requirements as Global or Local results in a two-step process within the Initial Material Selection. The first step is to create a Global Materials List, i.e. a list of materials that are, for example, suitable for the selected production means. The second step is to identify materials from within the Global Materials List which are also suitable for meeting the Local Requirements and to create a Local Materials List. In this way the User Requirements are converted into a two-dimensional (2D) n p-Dimensional List.
The mathematical model underlying the material selection is a ranking-type algorithm. The rule that drives the procedure is an input to the code and contains two major types, namely the objectives and the constraints. The former are used to operate the ranking of the materials, whereas the latter are evaluated to decide whether to keep/eliminate the material in/from the database.
The number of objectives is not known a priori, thus the general problem has to be addressed as a multi-objective ranking. For this purpose, we combine all the objectives in a scalar merit function via suitable weights. Such weights are chosen with reference to the 3-level importance assigned to the objective, i.e., low, medium, high (see, e.g., [1]). The final merit function to be maximized for a given material is
Figure imgf000023_0001
where Q, is 0 if the objective is to be maximized, 1 otherwise, P/ow, Amed, Flhigh are the total number of objectives and J /ow; Jmeci; Jhigh are the normalized
objectives of low, medium, and high importance, respectively.
The constraints to be verified are in the form
Figure imgf000024_0001
with being the imposed value for the i-th constraint, t a prescribed tolerance in [0, 1], and rics the total number of scalar constraints. In case of textual constraints, t is set to 0 and
Figure imgf000024_0002
the total number of textual constraints. The availability of data in the dataset may also be considered a constraint itself, since it drives the final outcome of the procedure.
An edge case will be considered in which a local requirement will supersede the global requirement if the volume adjusted and weighted score is greater than the global score.
This may happen in two cases, the first is as a direct result of the user input when an objective is defined as“very important” the algorithm will prioritise a material that fulfils this requirement. Another example could emerge out of a simulation, whereby the safety factor falls significantly below the desired value. The term safety factor is to be understood in the conventional sense, i.e. a multiplier to be applied to a mechanical property such as compressive strength, or it can be understood to be a tolerance on a physical property, such as Shore Hardness, wherein it is desired to have, for example, a product that is at least 20% harder than the hardness defined in the user preferences. If the product is manufactured and has a property that is outside of the safety factor range then it will not be acceptable. The properties could also include (but not be limited to) excess forces or thermal loads that cause breakage, sustainability, or recycled content or end cost. For our purposes Safety factor will also cover other user defined metrics that they would not accept deviation outside of certain bounds. Therefore, the algorithm will prioritise a material that solves this discrepancy.
If a product is to be manufactured from more than one material then it is necessary to check that all of the materials are compatible with each other and this can be done through interrogation of the database. Materials may be incompatible because the processing requirements of one may not be compatible with the processing requirements of the other. Materials may be incompatible because the chemical compositions of each of the materials may cause an undesirable chemical reaction when they are used together, or for example materials may be incompatible because they are not miscible. In the Initial Material Selection stage, a compatibility assessment will be made to ensure that incompatible materials are not selected. If there is no data in the database describing the compatibility of two particular materials behaviour then a calibration can take place in which physical testing is used to obtain the required compatibility information. Alternatively, in the absence of compatibility information in the database the machine or material model can be utilised to present a probability of compatibility based on previous data on how materials interact with each other. If there is an incompatibility between materials this may be resolved by the addition of one or more chemicals to the materials, or modifications to a material profile in a comparative way to the Profile Repairer as defined below
Following creation of the 2D list a check is made to ensure that the specified material(s) and production means are able to satisfy a safety factor requirement. A simulation is executed to determine the safety factor. The simulation could be a finite element analysis. If the safety factor requirement is met (i.e. the safety factor is above the target) then the 2D n p-Dimensional List is created for use in the next step of the process. If the simulation finds that the safety factor requirement is not met, i.e. the safety factor is below the target, for example because the material is not strong enough, then a material generation step may be undertaken utilising a Material Generator.
The Material Generator uses a Property Relationship Prediction Model which can predict the physical properties of a material combination dependent upon the ratio of each of the constituent materials in the material combination, for example the amount of carbon fibre within a carbon fibre and polypropylene composite material.
The Material Generator is run in an iterative fashion to create different material combinations and each of those material combinations is analysed using a simulator (for example a finite element analysis) until a material combination is identified which is predicted to meet the safety factor requirement and can be added to the list. The output of the work done by the Material Generator and the simulation can be fed back into the database to improve future Initial Material Selection processes as described below. For example, new material listings of‘estimated’ behaviour of material mixes can be created and these new listings can be experimentally confirmed/amended by‘real’ data later. The Property relationship prediction model is using a reinforced learning method of machine learning as known in the art. The model is initialised to output a linear proportional property predictions, and then trained using historical data from testing of material mixtures of varying ratios. The training data can be generated by manually creating different mixtures and testing them or by automatically generating the mixtures via the additive manufacturing apparatus described above. The required size of the training data (number of mixtures tested) relies on the number of materials in the mixture. The training data (material mixture ratios) is fed into the algorithm, the output of the algorithm (predicted material properties) is compared to the known (tested) material properties and an error is calculated. The model parameters are then corrected to minimise the error. An illustration of the process is depicted in Figure 9: The trend line 103 represents the material properties predicted by the model using varying mixtures. For example, increasing the ratio of Material A relative to Material B in the mixture increases the strength of the material mixture. If it is found that for a particular mixture, i.e. data point 105, that the material mixture does not provide the anticipated physical characteristics and that an adjustment of the material mixture needs to be made, The algorithm is corrected to create an adjusted prediction line 109 and a new mixture, data point 107, is created which provides the desired physical characteristics. The prediction model parameters are stored in the database and updated when new training data is available from usage.
The Initial Material Selection has output a selection of material(s) and compatible production means. The next step in the process is the Design Optimisation in which, for example, a further simulation, material allocation, topology optimisation, configuration evaluation and a manufacturability check may be carried out.
In the Design Optimisation stage a Machine Database is checked for information relating to how to operate the selected production means in order to make the product from a material configuration. In some embodiments this Design Optimisation stage may run an operation as defined below in Print Driver Algorithm, to determine that a proposed Material Profile can be suitably manufactured with the selected machine.
Material Generator and Design Optimisation
If the material is a new material, for example a material created by the Material Generator that has a mixture of materials that has not been manufactured before, then the Machine Database may not contain any information relating to how to operate a suitable production means. In such an instance it may be necessary to undertake a calibration phase as defined below. The calibration phase provides data to build a model that determines predicted machine parameters or settings that should be utilised for the target material profile. For a new material, or a combination of a new material and a new machine, the machine (the production means) is run and a sample of the material is printed. The sample material can be analysed in real time (for example by using spectroscopy to identify the quantity of each different material in a material combination) whilst the material is being printed, and/or by testing after printing of the sample has been completed. The analysis can be used to determine the optimum setting for the machine parameters (for example by Action Plans as defined below), for example via Scenario Builder as explained in embodiments below .If the material and the production means are known then there will already be information in the database and a model that can be utilised to determine how to operate the production means to produce the product, embodiments of which are described in greater detail below.
The calibration activity can also be used to deal with the limiting assumption in a multi discrete or multi-gradient material optimisation that the mechanical response of a mesostructured system (i.e. a structure with dimensions intermediate between micro and macro levels) can be simulated with mechanical properties of the individual constituent materials, for example measured by uniaxial tension testing or other tests as known in the art. The assumption is only valid under two conditions. The first condition is that the materials exhibit symmetric behaviour in tension and compression. The primary reason why these conditions do not hold in multi-material 3D printing is because external loading results in a multi-axial stress state in each material voxel (volumetric pixel, or any other cell structure) of the heterogeneous mesostructured system, which may present non linear results. To overcome this possible deviation between traditionally simulated and actual behaviour a calibration process may be used to build accurate models of particular material configurations,
A preliminary optimised design is identified, including the identification of optimal materials and a product with a predefined heterogeneous mesostructured design is manufactured, for example with a twin screw extrusion or any other type of 3D printer. A deformation map is created using a Digital Image Correlation (DIC) or a Digital Volume Correlation (DVC) technique utilising a camera (or using X-rays). The deformation behaviour of the mesostructured material system is modelled across axes to accommodate anisotropy. The model is then calibrated using cell level deformation data, the design is finalised and a design optimization is product for given applications. The last step is to validate the design optimisation by manufacturing a product to the design and analysing the product by experiment.
The Design Optimisation stage is also used to specify Material Allocation, a sequence of material compositions either in discrete or gradient format if multi-material, and Material Configurations - which are Material Allocations located within a geometry. In some embodiments a Material Allocation may be a sequence of material having the same material composition, such as the same material.
In some embodiments, upon completion of the Design Optimisation Stage, the Material Configurations are sent to the Print Driver Algorithm and further contains the required processing parameters to enable manufacture as a Material Profile. This Material Profile could be accepted by an Additive Manufacturing System 10 to produce a part as explained in embodiments below. The information relating to the physical characteristics, for example mechanical properties or processing parameters, of the material configurations is recorded in the Production Means Information or the Materials Information in the database (as mentioned above) for example as material profiles . The material configurations include particular materials, particular material mixes, including the novel material mixes, and materials made up from discrete allocations of two or more different materials. A material made up from a discrete allocation of two or more different materials may be manufactured by depositing the two or more different materials in discrete steps and in a way such that those materials adjoin each other, for example by abutment, or overlapping, and interact such that they behave as if they are a single body of material.
The behaviour information is collected from physical testing and inspection of samples manufactured from the material configurations. In relation to material configurations that are mixtures of two or more different materials, or which are created by the discrete allocation of two or more different materials, an algorithm is used to predict, from knowledge of the physical characteristics of each material within the configuration, what the physical characteristics of the material configuration will be. The algorithm may be, for example, a machine learning algorithm using observed material characteristics such as spectrograph data or a predefined formula. The prediction of the algorithm is added to the database under a specifically annotated ‘predicted’ attribute. The database facilitates retrieval of material information by a production means, such as a twin screw extruder, , when the print driver algorithm 23 within the control module 20 is selecting a suitable material, material mixture, or material made from discrete allocations of materials from which to manufacture a product. The database 26 may take a number of forms such as a collection of datasheets or a look-up table.
In operation of the manufacturing system, when the material configuration is not directly specified by user input, but rather the user requests that the material must have one or more specific properties, for example a mechanical property such as tensile strength or hardness, then the control module 20 interrogates the Material Information within the database to identify a suitable material configuration. If the database does not contain the information then the material generator can be employed to specify a mixture of two or more materials, or the material allocator can be used to create a solution made from discrete allocations of two or more materials, that is likely to give the desired physical characteristics, on the basis of the knowledge of the physical characteristics of each of the two or more materials in the mixture or the discrete allocation. That newly identified material mixture or discrete allocation of materials will be stored in the material database for future use. If the material database does contain the information, then the material, material mixture or discrete allocation of materials can be specified without use of the algorithm. Furthermore, the calibration process can be called to automatically combine the compatible materials, allowing the user to extract the missing properties and to store them in the database. This is described in more detail in the following paragraph.
In the situation where the database has to be populated with Material Information data obtained from the algorithm, that data obtained from the algorithm can be verified by physical testing of the product manufactured from the mixture of materials or the discrete allocation of materials. The testing can take place in a number of ways. It can take place during manufacturing of the product, for example by halting the manufacturing process before it is completed and using a mechanical probe to test, for example, the hardness of the material. It can also take place during manufacturing of the product, for example by visual inspection of the material as it is being laid down in the manufacture of a product. The visual inspection can determine if the material being laid down, e.g. a material mixed by the apparatus, is the correct material. If the material is not the correct material then a decision can be taken as to what remedial action needs to be taken, for example as covered in embodiments below. The automated inspection of the material can be undertaken using spectroscopy. It can take place after manufacturing, for example by using a destructive test, such as a Charpy impact test. If the testing identifies that the material does not have the desired physical characteristic, then the material mixture or the discrete allocation of materials can be changed and a new product manufactured. If upon testing the new material does exhibit the correct physical properties then the information in the material database can be updated. It may also be appropriate to use the new information to refine the algorithm, to aid with future definition of material mixtures and discrete allocations of materials, such as in embodiments covered below. Figure 8 is a graph 101 pictorially illustrating how a material mixture of a Material A and a Material B can be defined using the algorithm and refined using testing, such that the material database can be populated with the best quality information. The data points 103 are obtained from the algorithm (in the absence of information from physical testing of samples) and represent mixtures that have different physical characteristics. For example, increasing the ratio of Material B relative to Material A in the mixture increases the hardness of the material and reducing the ratio of Material B relative to Material A in the mixture increases the toughness of the material. It might be found that for a particular data point, i.e. 105, that the material mixture does not provide the anticipated physical characteristics and that an adjustment of the material mixture needs to be made. Data point 107 illustrates the adjusted ratio between Material A and Material B, which provides the desired physical characteristics. Material compositions and or configurations generated by the Material Generator can advantageously be received by the print driver algorithm to produce material profiles in real time which are manufactured by the AM System to generate actual data that can improve predictive accuracy.
Figure 9 is a graph pictorially illustrating how the strength of a material mixture made from Material A and Material B changes as the ratio between Material A and Material B is altered. The trend line 203 is predicted by the algorithm and represents mixtures that have different physical characteristics. For example, increasing the ratio of Material A relative to Material B in the mixture increases the strength of the material mixture. If it is found that for a particular mixture, i.e. data point 205, that the material mixture does not provide the anticipated physical characteristics and that an adjustment of the material mixture needs to be made , then the algorithm is corrected to create an adjusted prediction line 109 and a new mixture, data point 107, is created which provides the desired physical characteristics.
The database can contain Production Means Information about how the additive layer manufacturing apparatus is operating. Specific machine behaviours can be recorded in the machine database and that information used in the specification of a material or material mixture. Specific machine behaviours can also be used by the algorithm.
It is envisaged that the manufacturing system may be of a type other than an additive manufacturing system. For example, the manufacturing apparatus in the system may be an injection moulding machine that is capable of receiving two or more different materials and mixing those materials together. The two or more materials can be mixed together to produce a material that has, for example, physical properties that meet a demand that a user has placed upon the system. The injection moulding machine can then mould a product with that material mixture.
Optimisation of the orientation of a printed output on the build platform can also be performed according to embodiments of the present invention by an orientation or geometry optimiser 31 , which ensures that an object can be printed according to a particular orientation in a manner which optimises quality, print time, material cost with respect to the machine and material, and faithful correspondence to the intent of the object designer.
For example, it might be determined that printing of an object in a lengthwise manner might be cheaper, simpler, or might lead to a superior printed product than an object printed in a widthwise manner, although it will be appreciated that many different orientations can be considered, and not all parameters may be optimised simultaneously. A product can thus be built up from a selected surface, such as its base or side, in an optimal manner. It might further be determined that sub-sections of a printed product might be optimally printed in different orientations from each other, the sub-sections being assembled together in a post-processing operation. In this situation, optimisation is based on prioritised factors, determined by a cost function (to be described below in further detail). In some embodiments, the orientation optimiser represents a functional sub-component of the control module, specified as a particular section of programming instructions in the print driver algorithm.
In the embodiment illustrated in Figure 3, the print path and orientation optimisers are illustrated as a single component 31 for simplicity, but in alternative embodiments, the separation of these components enables architectural advantages because the print path optimisation can be performed after the orientation optimisation, as a “downstream” optimisation, given a particular print orientation decision.
As shown in Figure 3, hardware specifications, user preferences, the outputs of the print path optimiser 31 , in the form of a specification of material property values for three- dimensional positions, and the orientation optimiser are input to a target material profile extractor 32.
The user preferences may include, but are not limited to, at least one of the following: printing resolution, printing speed, layer height, extrusion multiplier, wall thickness, maximum deviation, infill density, infill pattern, support type, support threshold, build plate adhesion mode (for example, rafts, skirts and brims), maximum material gradients, tolerances and so on. In some embodiments, it is possible to design a user interface, via which the user preferences are input, such that different sets of preferences can be set by users having different levels of expertise, which reduces complexity for less-skilled users, and provides flexibility for expert users.
In some embodiments, the target material profile extractor 32 represents a functional sub-component of the control module 20, specified as particular sections of programming instructions in the print driver algorithm 23.
In general terms, the target material profile extractor 32 operates to determine one or more profiles of material specifications in the form in which they are to be printed in order to print the object specified in the design file. For example, a design file might specify that a particular portion of an object should be harder than another region, and the target material profile specifies the optimum material, material blend and process parameters which would be required in order to ensure that the required hardness can be achieved, within particular constraints specified in the user preferences, relating to, for example, cost, print time, weight, and so on.
The target material profile data thus represents a set of material and process parameters associated with printing a particular voxel. The target material profile data may also be associated with a specific machine. Accordingly, the target material profile data may be expressed in terms of a matrix of parameters, in which the matrix positions are associated with particular voxel positions or voxel IDs. For example, the matrix may be an MxN matrix, expressing N process parameters for each of M voxels in an object. The M voxels may themselves be divided into / layers of jxk voxels, such that an individual voxel can be addressed as Vju for the voxel in the /h row and the /c*h column in layer / of an object, with jxkxl = M. The N parameters may include parameters such as temperature, speed of barrel screw rotation, volume/weight/mass of material A to be fed, volume of material B to be fed, nozzle position, and so on.
The matrix as a whole may be associated with a particular index ID, in which an index represents a particular stage in an AM print process, and which may be mapped to the time domain, although it will be appreciated that voxels need not be printed at a constant rate, such that index IDs may represent a time-ordered sequence, but not necessarily an absolute time. For example, it will be appreciated that index IDs may be added or removed from a sequence in order to change a particular print process.
For instance, in index #1 , it may be specified that voxel V/iw/i is to be printed. At index #2, movement of the print head nozzle in the y-direction may be directed by specifying that the second voxel to be printed is Vyi *2/1 , e.g. k2=ki+'\ . At index #3, for instance, it may be specified that voxel V/iwc, in a new layer, k, is to be printed. The corresponding action plan may represent pausing of the output from the nozzle of the print head while the nozzle is moved in the z-direction to start a new layer, or in which the print bed is lowered.
Having defined target material profile(s) in the manner set described above, the control module 20 is in a position to control the AM system 10 to execute printing by translating the target material profile(s) into the necessary actuation signals of one or more action plans, driven by the print controller. The translation may be performed by a subroutine of the print controller 25. During printing, the AM system 10 provides a physical print output, but also feeds back information relating to its system state to the target material profile extractor 32, to enable the profile to be adjusted in real time, or predictively, in a process described in more detail below.
Print driver algorithm enhancements
Operation of the print driver algorithm 23 is enhanced in some embodiments of the present invention by the presence of a profile simplifier 33 and a profile repairer 34 in the target material profile extractor 32. In some embodiments, the profile simplifier 33 and profile repairer 34 represent functional sub-components of the target material profile extractor 32, specified as particular sections of programming instructions in the print driver algorithm 23. In alternative embodiments, the profile simplifier 33 and profile repairer 34 are independent of the target material profile extractor 32, and of each other. In some embodiments, the profile simplifier 33 may be absent.
The profile simplifier 33 operates to downsample or smooth the target material properties specified in the voxel array, ensuring that operation will not exceed the manufacturing tolerances set by the user preferences.
The profile repairer 34 operates to check for regions of the target material profile, with respect to geometry and machine ID that are infeasible. For example, it may be determined by the profile repairer 34 that the AM system 10 is not capable of delivering continuous printing at particular regions of the product to be printed. These infeasible regions are typically, but not limited to, discontinuities or very steep gradients of material transition. Other examples include wall thicknesses with respect to the proposed nozzle size. Maximum gradients may be set via user preferences provided to the control module 20, for a particular AM system. Repair may be achieved by an even described herein as a“planned guttering” event in the event of a single-head AM system, and a print head change event, in the event of a multi-head AM system.
In a single print head device, infeasible gradients are repaired by adjusting the indexed profile data through insertion of “transition data” in the profile, such that the resultant gradient is achievable. As a result of this process, however, the adjusted profile data will result in the generation of extruded material having properties which are not required in the output product, the material being generated in a transitional phase so as to facilitate the process of generating material which is later required. Such transitional extrudate is directed to a channel or gutter, which carries or diverts extrudate away from the build plate to a reservoir for disposal or re-use in other print jobs where the material might be appropriate, rather than directing it to the output print, from which the material is removed from the AM system 10. A gutter is shown in the embodiment of Figure 1. In alternative embodiments, extrudate is not directed to a gutter but output through the nozzle is paused. In alternative embodiments, the extrudate is retracted into the print head by a suction means included in the nozzle system. In further embodiments, combinations of guttering and retraction may be employed.
In the case of a multi-print head device, target material profiles are generated for each print nozzle, and at discontinuity events, it is determined which print head is to output the particular material, in order to avoid a discontinuity that might be present if only one print head were to be used. Shutdown, startup and pause events are issued to the respective print heads accordingly via action plan control signals from the print controller 25, so that one print head disengages while the other print head takes over. For example, a startup action plan puts the device into a read-to-print state, in which it is typically warming up and charging with materials. A shutdown action plan prepares the device for power-off, typically flushing materials to the gutter and performing cooling. A pause action plan moves the device to a non-printing, but responsive state.
In some embodiments of the present invention employing multiple print head devices, hybrid technology may be employed in which different print heads are based on different principles of operation. For instance, filament print heads could be combined with the nozzles described above in a hybrid technology, such that the printing operations can be based on the selective combination of different types of print head in order to achieve desired outcomes. Different technologies may have particular applicability to particular printing requirements, for example a filament printer may be particularly useful where it is desired to achieve fast printing. Filament printers are also particularly applicable where support materials, for example water-soluble polymers, are to be used in addition to extruded materials. In more detail, consider a hypothetically trivial 2x1x1 voxel object with target material properties {0, 1}, representing mixing ratios of two materials. The target profile extractor might return:
[{Index ID = 1 , Voxel ID = 1 , Print Head ID = 1 , Material = 0}, {Index ID = 2, Voxel ID = 2, Material = 1}].
The profile repairer, where used, might return:
[{Index ID = 1 , Voxel ID = 1 , Print Head ID = 1 , Material = 0}, {Index ID = 2, Voxel ID = Gutter, Print Head ID = 1 , Material = 0.5}, {Index ID = 3, Voxel ID = 3, Material = 1}].
An action plan, such as the following, may be created:
[{Index ID = 1 , Voxel ID = 1 , Heater 1 = 100}, {Index ID = 2, Voxel ID = Gutter, Heater 1 = 120}, {Index ID = 3, Voxel ID = 3}].
The above action plan therefore represents a heating operation which is applied to a heater identified as heater #1 in the AM system 10 in use, in order to change material properties to be deposited at particular voxel positions, wherein there is an intermediate state at which material is not to be deposited, but instead directed to a gutter.
The profile repair operation described above may also be executed during a printing operation in some embodiments of the present invention. For example, profile repair might be required in the event that nozzle measurements exceed acceptable tolerances, as defined by user preferences, and such circumstances may require an unplanned profile repair.
Nozzle measurements may be compared with tolerances either mid-deposition, or pre- deposition, based on material composition or geometry (for example, measured by linewidth), relative to the deposition timing defined by the action plan. In such circumstances, the print controller may be directed to suspend printing, enter a pause action plan, and call the profile repairer to create a repair profile, using a guttering strategy as described above, either during a print operation, or before a print job is commenced in the event that a material is determined to be outside specified tolerances. If acceptable tolerances are not achieved after a predefined number of profile repair attempts, the predefinition representing part of the user preferences, the entire print job may be aborted. In alternative embodiments, the profile repairer 34 may operate to instigate the need for a new machine design which will allow the specified profile to be achieved, or alternative material compositions which will give rise to a specified functional effect. The machine design/recommendation process is described in more detail below.
In alternative embodiments, the orientation of the product itself may be changed by the orientation optimiser 31 , on the instruction of the profile repairer.
Optimisation algorithm
The process described above represents the development of action plans(s) to be used in an AM process to print a particular target or object. Although the developed action plan(s) may represent the best estimate of the control module 20 as to how the AM system 10 should be controlled to achieve a particular outcome, variations in real world operating conditions, such as temperature, pressure or humidity changes, variations in material consistency, deterioration in AM system hardware, coupled with any limitations of the control module 20 and/or AM system 10 in terms of the number of parameters which can be controlled, or the extent to which material behaviours or material mixtures can be predicted, means that in practice, there may be differences between the target material profile(s) generated by the processes described above, and the output of the proposed action plan(s). Consequently, there is a need for further optimisation of the control of the AM system 10.
In embodiments of the present invention, optimisation of control of an AM system occurs via two principal mechanisms. The first mechanism relates to on-the-fly control of a printing process, which is achieved by capturing system states and outputs during the print process, and feeding back the captured data to the control module 20, so that continuous adjustments to the action plan(s) can be performed. The first mechanism is thus an in-processing optimisation, and is reflected by the feedback loop from the AM system 10 to the target material profile extractor 32 in Figure 3. This feedback loop is a simplified representation of the first mechanism, which is described in more detail below. The second mechanism relates to optimisation of the development of an action plans itself, which is achieved by using historical data in the process of developing the action plan in order to train the control module’s understanding of the relationship between process settings and achieved outputs. The second mechanism is thus a pre-processing optimisation. In some embodiments of the present invention, both mechanisms are employed, but in other embodiments, only the first or the second mechanism is employed, such that it is possible to either dynamically update an action plan mid-print, or such that an action plan created at the start of a print job is executed without deviation. In the latter case, an action plan can be modified or refreshed after execution, prior to a subsequent print job.
For both mechanisms, the refinement of a particular action plan to be used in an AM process is performed according to the technique described below, in embodiments of the present invention. An action plan is replaced or supplemented, prior to commencement of a print process, and/or the action plan is adapted during printing, substantially in real time.
Figure 4 illustrates an optimisation process performed by an optimiser according to embodiments of the present invention. Collectively, the optimisation process may be performed by functional sub-components of the control module 20 referred to herein as the optimiser 40.
The optimisation process is performed according to an optimisation algorithm 24 hosted by the control module 20 of Figure 2, which includes a step of error evaluation. The error evaluation is performed by an error evaluator 42, which is a functional sub-component of the control module 20, specified as a particular section of programming instructions in the optimisation algorithm 24 of the control module 20.
The error evaluator 42 determines whether a proposed action plan, to be provided to the print controller 25 as the output of the print driver algorithm 23 shown in Figure 3, will result in print outputs that are acceptably close to the goal described in the target material profile. This is achieved by comparing the target material profile with a predicted material profile, on a voxel-by-voxel basis, and assessing the comparison against a particular cost function which is specified by user input to the control module 20.
A predicted material profile is determined by a predictor 41 which takes historical values from the available sensors 27 and planned actuator settings, and predicts the future constituency of material which will emerge from the print nozzle, using a process to be described in more detail below. In some embodiments, the predictor 41 represents a functional sub-component of the error evaluator 42, specified as a particular section of programming instructions in the optimisation algorithm 24. In alternative embodiments, the predictor 41 is a sub-component of the control module 20 but is independent from the error evaluator 42.
The predictor 41 requests historical sensor readings from a currently-executed print run, and may simplify the data by downsampling, or discarding data which is unexpected or too old to be useful. The predictor 41 may perform the same simplification process on future actuator settings which are specified in the action plan. A predicted profile is generated as described below, in the same format as the target material profile, by using the historical data to assist in the prediction of how the actions of the proposed action plan will be seen in practice.
The cost function is a mechanism for specifying those errors which cannot be accepted, and those which are could potentially be accepted for particular reasons. Costs may be expressed in terms of restrictions of any of, or any combination of, the hardware to be used, the materials to be used, and the nature of a printed product.
For example, a cost function might discourage use of one material if it is expensive. Conversely, the cost function might promote use of sustainable materials, such as recycled materials. A cost function might also prioritise acceptability of short-term errors over long-term errors, for example short-term colour variations which may not be detectable in practice. Sharp changes in error might also be avoided, if it is determined that these might have a particular material or structural effect. Nozzle exit temperatures, and the required cooling function, represent an example of a parameter of a cost function, in which the cost is expressed as a requirement of the available hardware.
The cost function to be used may be selected from a number of pre-stored cost profiles, such as cost minimisation, error minimisation, and so on, the profile stored in a database 26 coupled to the control module 20 as shown in Figure 2. The selection can be dependent on a particular application, such as the resolution of an object to be printed, the number of objects to be printed, and so on. Alternatively, or additionally, a cost function may be specified manually, prior to execution of a print job, by the user populating a number of fields via the user interface 22 for the control module 20, as part of the user preferences which are input to the print driver control algorithm 23. The user-specified cost function, the target material profile, and the predicted profile, are combined by the error evaluator 42 to form an error profile, plotted on a voxel-by-voxel basis, which represents the difference between the target material profile and predicted profile, and the error evaluator determines whether, and the extent to which, those differences are acceptable based on the specified cost function.
By developing a plurality of action plans, it is possible to determine respective error profiles for each action plan of the plurality of action plans, and to identify the action plan associated with the optimum error profile. Generation of a plurality of action plans may be performed by adjusting one or more parameters used to determine a target material profile in an iterative process, from which it is possible to determine the effects of variation of those individual parameters. For example, the control module 20 may determine a plurality of action plans developed by sweeping a particular parameter (e.g. temperature) through an operational range associated with the AM system hardware or a user specification of parameter limits or controller bounds to be applied to that hardware, while maintaining all other parameters constant. The same process may be repeated, in parallel, for variation of different parameters or combinations of parameters in coherent or divergent manners. As alternatives to a parameter-sweeping technique, a crude implementation may include random selection from the multi-dimensional parameter space, and identification of the action plan associated with the lowest error measure. In alternative embodiments, convergence algorithms based on Newton-Raphson, Conjugate Gradient, Principal Axis, Markov Chain Monte Carlo, Differential Evolution, Nelder Mead and Simulated Annealing techniques may be used in order to assist the convergence of the error determination process by controlling the parameters to be adjusted between iterations in a manner which drives the error profile towards its optimum.
A further benefit of simulating a plurality of action plans for error evaluation, based on one or more cost functions, is that simulation data associated with non-selected action plans can be stored and potentially reused in the future, in the event that a different cost function is selected which might render such an action plan useful. The stored information thus acts as a means of training the predictor model. Dynamic adaptive AM system control
The optimisation process shown in Figure 4 may be applied in both pre-print procedures and in-print procedures by a data augmenter 43. In some embodiments, the data augmenter represents a functional sub-component of the control module, specified as a particular section of programming instructions in the overall optimisation algorithm.
The data augmenter is connected to the print controller, and in turn, the AM system 10, and operates to substitute action plan values for each index value of an action plan, with the updated action plan values associated with an action plan having the optimal error profile. An index represents a stage in a sequence of processing steps or setting adjustments, as described above in connection with the target material profile. If an action plan value is not available in a new plan, a previous value can be maintained.
The AM system 10 executes the updated action plan(s) based on operation of the printer controller 25, as illustrated in Figure 2. The print controller 25 operates independently, and in parallel with, the optimiser 40 components, namely the predictor 41 , error evaluator 42, and data augmenter 43, such that revisions to an action plan can be considered while the print controller 25 continues to action an existing action plan. In the case of continuous updating of an action plan, a short-term state database 26 is maintained, to which all sensor readings and actioned action plan items are written, represented by the output path shown in Figure 4, and the feedback loop to the target material profile, as also shown in Figure 3. The database 26 is interrogated by the control module 20 to monitor progress and to enable real time feedback to be provided to the AM system 10. Such a database 26 enables a report on the actual quality delivered, relative to the intended material constitution of the print, as described below, and also allows engineers to perform diagnostics on the performance or failures of the device via the user interface 22. The database 26 may, in some embodiments, communicate with a root cause analytics application hosted on a website server in order to provide more sophisticated diagnostic information than might be available locally.
The recorded information may include, but is not limited to, a print job ID, an index ID for actions just performed, a record of events actioned at the step associated with the index ID (such as voxel printed, or controller set), a timestamp, the voxel ID and co-ordinates of a voxel just printed, the measured consistency of the voxel just printed, and sensor names, target values and measured values.
As illustrated in Figure 3, status information is fed back into the target material profile extractor 32, which enables dynamic adjustment of the target material profile mid-print, and accordingly, the action plan to be executed by the print controller 25 may be dynamically adapted. The target material profile extractor 32 is able to interpret material flow rates from pressure/temperature sensors, and to interpret material viscosity and other material composition characteristics in order to monitor the progress of the material through the extrusion process. Comparisons are performed between produced outputs and the specification of the object to be printed, in terms of comparison of printed line widths, geometrical comparisons, and material composition comparisons. The relevant actuators 21 to be adjusted to bring the target material profile into conformity with the specified print output are determined in the process of generating an action plan.
By performing interrogation of the state of the AM system 10 on a sufficiently regular basis, it is possible to anticipate particular state changes to be applied to the AM system 10 well in advance of the specific time at which such changes are required, which ensures that sufficient implementation time exists to effect such changes. Where particular material compositions are identified in the AM system 10, for example, it may be determined that a predefined optimum set of processing parameters for that nozzle may be used to ensure correct treatment of that material.
There is, however, a balance to be drawn between the ability to anticipate changes far in advance, and the available processing resources, as modelling the effect of changes can be a computationally-intensive process. If too many changes are to be modelled, the time required to carry out such processing may mean that the data augmenter is not able to update action plans sufficiently far in advance of a required change. In some embodiments, modelling of changes over a period of time which is longer than the maximum time that the effect of current decisions will last for is found to represent an optimum frequency. In turn, this ensures that a candidate action plan is generated which will not be out of date by the time it is delivered for execution by the print controller.
It will also be appreciated that the specific nature of a model will also affect the computational resources needed to apply the model. For example, models involving higher-order functions or polynomials will require more processing than linear models, and thus the interrogation of the system state may take into account a score or degree of complexity associated with the model. Such a score may be determined by the predictor based on test computation times indicative or the complexity associated with applying the model, and stored in a database
As described above, it is possible to make use of parallel processing in order to simultaneously model the effects of different control parameters, and in the case of execution of the optimisation algorithm 24, it may be possible to avoid optimisation lag in this manner. Consequently, the control module 20 can be configured to operate at an interrogation frequency which is optimised based on the amount of time lag taken for an action plan to be returned, the maximum prediction window, and the parallel processing count.
In some embodiments, the optimiser 40 takes into account the time taken for a particular updated action plan to be generated, such that the control module 20 is able to be informed if an action plan is delivered late, with respect to a particular instance in time, and in this instance, and actuator settings that have already been missed may be immediately actioned by the print controller 25.
In embodiments of the present invention, it is possible to distinguish between the interrogation or sensor-polling frequency, and the frequency of execution of a decision making section of the print driver algorithm 23, performed by the control module 20. Consequently, a sensor 27 may be polled multiple times, and a smoothing or averaging algorithm applied to the results, before any interpretation of the results is performed. It is thus possible to collect data from multiple sensors over an interrogation period, while only initiating updating of an action plan at a lower frequency based on windows of time in which the collective sensor data is obtained. Such multivariate processing is superior to the univariate control possible in conventional proportional integral derivative (PID) control systems.
In executing the print driver algorithm 23, the control module 20 assesses particular variables in the manner described above in order to determine whether or not adjustments should be applied to an action plan, and there is optimisation to be performed in the selection of which variables are to be considered. A decision tool for determining which variables are to be considered by the control module 20 is Principal Component Analysis (PCA). PCA has statistical benefits with respect to dealing with collinear variables and distilling the most significant variables which influence other variables within the system, such that monitoring and feedback processes can be performed in an optimal manner.
In practice, most of the learning and optimisation of the material and system models will have happened in a calibration phase, to be described in more detail below, such that only minor changes are required during operation.
In addition to the automatic control which is described above, the AM system 10 of embodiments of the present invention may also enable manual adjustment of settings by a user. This may be useful in cases where the user is able to observe a particular change in conditions or the state of the AM system 10 which has not yet been identified by the control module 20.
To this effect, the user interface 22 of the AM system 10 is able to report not only on progress of a particular print job, but to provide access to a number of live system parameters which the user is able to monitor. Such statuses may include, but are not limited to, temperature, pressure and humidity readings, material feed stock levels, any warning indications such as a parameter entering a region specified in the user preferences that signals that action should be taken, such as replacement of a component or provision of further materials, or the manual instigation of a guttering event, and so on. Some system states may also be determined by visual inspection through a viewport, for example in the nozzle channel illustrated in Figure 1. While the viewport may, in some embodiments, enable manual inspection by a user, in alternative embodiments, the viewport may have a sensor such as a camera or infra-red sensor which is able to provide automatic feedback on material ID or material parameters. Machine vision techniques applied to such cameras or sensors may enable processing of captured images so that certain properties or artefacts can be observed, interpreted, and fed back to the control module 20. Such sensors could be located in any or all of: material feed, in a process within a print head, at the output of a nozzle, on the build plate, or on an output object layer by layer. Each or any of the above may operate at a defined time range (every x number of layers, at start or at end or the layer or print job, and so on).
This sensors could capture data from multiple angles, and be combined with controlled lighting environment (different colours or intensities), using different sensors (visual light, IR, any suitable wavelength). In addition to, or alternatively to light-based sensing techniques, different material types/processing conditions may enable magnetic sensing (e.g. if a certain metal is being processed), sound based sensing etc.
A machine vision algorithm, for example, executed by the control module 20, may be trained to identify certain material properties and shapes such as colour and material gradient based on templates or reference images relating to such properties, and the reference images can be accumulated over time in a manner analogous to the use of a sensor database as described above. Consequently, it becomes possible for the machine vision system to make a determination of the quality of a printed product or a mid-print process, particularly when quality is assessed with respect to a cost function as described above.
In further embodiments, the viewport need not be a dedicated window at a defined location in the AM system 19, but components, such as the barrel of the twin screw extruder, may be transparent to facilitate inspection. Data collection throughout the full process is especially advantageous where new/novel materials are used, or with machine designs, as the collected data can be used to test simulations, build models and so on.
System Calibration
Prior to operation, the AM system 10 to be used in a printing operation may be calibrated in some embodiments of the present invention. Calibration involves training the predictor 41 , used in the process of Figure 4. Calibration is a particularly useful process to be applied to new or modified AM system 10 as it enables the implication of actuator and sensor states on the printed output, and the effect of particular materials, to be understood. A calibrated AM machine, loaded with knowledge as to how best to produce a given material, is thus responsive in a manner which enables any desired object to be printed, based on a particular set of specifications. Detailed operation of the predictor used in the process of Figure 4 is described below.
The predictor 41 is implemented as a model whose arguments include the machine and environmental states, including sensor/actuator positions, for the AM system 10 during the current print run (if started) and a hypothetical set of current and future controller settings, materials, or other process parameters, including target parameters. The model produces a vector of predicted future material properties, geometries and line widths which will emerge from the print nozzle over time. In some embodiments, the predictor 41 represents a plurality of models, modelling the effects of different groups of parameters such as materials, machines and so on.
In embodiments of the present invention, it is possible to develop the mathematical models using a human-created model, or based on machine learning, but in both cases the models are informed by data collected from experimental runs of the device. In the case of human-derived models, an understanding of the physics involved, or an intuition from data observation, is used to craft a model that is then adjusted to fit observed data.
In the case of machine learning, very general models are used which are then entirely trained using the experimental data. Due to the number of variables, and with some instances the presence of complex statistical features such as (multi)collinearity, simultaneity, and autocorrelation, the manual structuring and modelling of such systems are very difficult (beyond normal human capability).
Further, with each new material composition or machine design change, a new model is required, which would be very manually intensive and difficult for human implementation. Further, where gradients and composites are applied, the transition between models defining different gradients and their behaviours could be very complex. Hence machine learning approaches advantageously accelerate and automate the optimisation aspect of embodiments of the present invention.
Machine learning is a broad term that includes a collection of methods for automatically creating models for data. As used in embodiments of the present invention, these include, but are not limited to, Decision Trees, Gradient Boosted Decision Trees, Linear Regression, Nearest Neighbours, Random Forest, Gaussian Processes and Neural Networks. In one embodiment, the predictor 41 operates to take an existing Long Short-Term Memory (LSTM) neural network, which is a class of a Recurrent Neural Network (RNN), or to create an LSTM neural network if there is not one already available, using techniques known in the art. The network is trained by providing data captured in past use of the AM system 10, including the information set out in Appendix 3. Internal parameters of the network are adjusted iteratively, until the model is able to replicate observed outputs of the prior experiments. The neural network, trained in this manner, is tested on experimental data not used in the training process, to determine its performance as a predictor 41 - if the test results are inadequate, the neural network is either retrained with further experimental data, or it is reconstructed. If the test results are adequate, the model is used as the basis of the predictor 41 in the process illustrated in Figure 4, and the generated test data may be used in order to further test or improve the model, in some embodiments on-demand.
For example, it will be appreciated that a model can be tested intensively within a parameter space in which test results are at least partially inadequate, so as target improvements in the model. In embodiments of the present invention, training data is taken from the short-term state databases 26 (as described above) of one or more AM systems in use. Where multiple databases are in use, these are merged to form a single large database of known data. This process may make use of high-power data mining techniques as known in the art, where training data is to be taken from extensive print networks on a potentially global scale. In cases where data is collected from different machines, or based on different materials, transfer functions may be used to simulate the modelling of one machine based on training data associated with other machines or materials, in order to accelerate the time to predictive success. The majority of the data is used as training data and delivered to a chosen machine learning trainer. The remaining data is held back as test data and delivered to a model tester.
Execution times for the neural network can be minimised through use of massive parallelization through processing hardware, which can be scaled using large-scale cloud infrastructure. In this manner, it becomes possible to perform execution in near- real time during a print job. Batch processing is also possible, and real-time optimisation of a print process may be restricted to certain scenarios/parameters.
In addition to the calibration of the predictor model, as described above, a calibration process can also be performed in order to recommend optimised machine design parameters to be used. This is especially advantageous as additive manufacturing and other related printing techniques are relatively recent, with new materials being used - knowledge and understanding of material behaviour with machine designs therefore has room for improvement & quantification.
For example, hardware that maximises potential and capabilities, in terms of enabling the processing and mixing of a wide range of materials, including polymers and composites and/or recycled materials and/or non-Newtonian fluids, can be selected as an output based on a plurality of different AM system hardware profiles stored in the database 26 shown in Figure 2. Depending on the specific implementation to be recommended, the output may represent an instruction to a user to make manual modifications or selections of hardware components, or may represent the sending of a print job to a selected one of a plurality of AM systems connected over a network. In some cases, the output may represent a recommendation to purchase or install a new type of machine. In some cases, the output may represent an instruction to make use of hybrid technology, such as a combination of extruders and filament print heads.
As an example of a hardware modification which could be made, it will be envisaged that the screw flights used in the twin screw extruder of Figure 1 could be angled appropriately to suit a particular process. Alternative optimisations may include, but are not limited to, hardware configurations such as the nature of the screws and barrel, in terms of length, diameter, centre-to-centre distance, nozzle geometry, die design, distribution of zones, inclusion and placement of sensors and thermal control design. Such recommendations can also be made prior to new print jobs, such as in the product design or definition phase.
In addition to, or as an alternative to hardware recommendations, material calibrations can be suggested, and controllable environmental conditions (e.g. temperature) can be adjusted. A parameter selection tool (not shown) in the control module 20, which operates to calibrate the print driver algorithm 23, in terms of the parameters which are to be monitored as part of the dynamic adaptive system control operation described above, will also operate in the calibration phase in order to ensure that not only the hardware able to achieve a desired outcome, but it is able to ensure the desired outcome in the most efficient manner.
Alternative Embodiment
Figure 5 represents a system diagram of a control system 50 for an AM system according to embodiments of the present invention. The system diagram represents an alternative way of representing the processes and algorithms described above, expressed as a system-of-systems, in the particular example of an AM system.
The figure illustrates functional components employed for five distinct processing categories - 1) a calibration and system setup stage, 2) a design/development stage, 3) a pre-print stage, 4) a during print stage, and 5) an after-print stage. The functional modules may be implemented as hardware, software, or a combination of both. Modules for stages (1) and (2) are collectively referred to as a design manager, and the distinction between calibration and design/development does not necessarily correlate with any temporal sequence in which these components are used. Modules for stages (3) and (4) are collectively referred to as a print manager. Modules for stage (5) may be implemented as part of the AM system.
In the calibration stage, a model builder 51 performs automated model generation, using machine learning, for any AM system in order to optimise process parameters for any printable materials using print quality feedback (linewidth, material composition) as well as process feedback (temperature, screw speed and so on). The model builder 51 is analogous to the optimiser 40 and predictor 41 illustrated in Figure 4. A mechanical system 52, analogous to that of the AM system 10 of Figure 1 , is provided, or selected based on a machine designer 53, to perform printing. As described above, the mechanical system 52 is able to make use of extensive material possibilities, such as use of injection-moulding polymers, reinforcing agents, additives, metals, natural fibres, glass and so on, with real time-time mixing. Recycled materials can be used for high quality printing, using fine control of composites (such as controllable mixing gradients).
A machine designer 53 may recommend an optimum AM system to be used for printing, using techniques analogous to those described above in connection with the calibration process. This could be a new design or a change in an available module of an existing machine. The machine designer 53, exploiting the computational advances made possible through the application of machine learning as described above, is thus able to ensure potential workflow improvements from the perspective of reducing lead times and bottlenecks associated with ordering new machines or modifying existing machines, in an efficient manner.
In the design/development stage, a design tool 54 such as a graphical user interface is used to finalise a design file for an object to be printed. The software in this stage enables multi-material capability to be unlocked through creating particular material gradients, in order to achieve functional requirements. The software may direct the printing of test specimens using particular material gradients to assess viability of new composites by manual or automated inspection of the printed product to be performed, to feed back into the calibration stage. The user interface in the embodiment of Figure 5 enables interfacing to a subset of the functions of what is described as the target material profile extractor 32 of Figure 3, and may thus represent a standalone optimisation component of embodiments of the present invention.
In the pre-print stage, an action plan generator 55, representing functionality contained within the optimiser 40 of Figure 4, may be used to generate an action plan in order to implement the output from the design tool 54. A toolpath optimisation 56 and orientation/geometry optimisation 57 component are used respectively to apply optimisation to improve efficiency and print quality for a given print head, to drive motion of the build plate and the print head nozzle to optimise one or more of process behaviour, print quality, processing overhead, print time and waste, in the manner described in connection with the operation print driver algorithm 23 represented in Figure 3.
The part orientation process performed by the geometry optimisation component 57 is driven by cost function which minimises the difference between desired Material Gradient and Maximum Gradient Function (MGC). MGC is not constant, rather it is a function of a vector relative to the coordinate system and the architecture of the motion system. Greater MGC freedom may be achieved by increasing number of motion axes.
The print movement sequence optimised by the toolpath optimisation component 56 will be optimised using a cost function that ensures optimal surface finish, structural integrity and optimal material gradient. The latter will only be truly valid if the layers being deposited exist in three dimensional space, achievable material gradient on a single two- dimensional layer will be too low to warrant optimisation. These criteria will be given a weight based on their relevance to their final function.
The in-print control stage makes use of dynamic adaptive machine control 58, in the manner described above in order to make use of optimisation to improve quality of a printed object, taking into account internal and external conditions. Live adaptive control makes use of models that have been calibrated and optimised to determine changes to machine states which enable print plans to be updated. The live adaptive control can be considered as a mechanism for coping with factors such as material irregularities and machine wear changes, and changes in environmental conditions. The live adaptive control can also be considered as a mechanism for accounting for, and controlling the different composites through the system appropriately, choosing the right parameter to change with respect to effects on the whole system and process (especially where there are multiple compositions in different positions in the same mixing area). Execution is analogous to the function of the error evaluator 42 and the data augmenter 43 of Figure 4, and a subset of the functionality of the target material profile extractor 32. In addition, a feedback process 59 is employed based on observed process parameters such as printed line width, material composition, throughput, weight, and raw sensor data such as motor torque and pressure to infer material properties and conditions such as viscosity. Gutter processes are activated if the measured material states exceed prescribed limits. This control mechanism can be considered as analogous to the feedback loop of Figure 3.
The after-print stage can be considered as involving a reporting module 60, which correlates information including print job IDs, machine IDs, sensor values, action plan specifications, user preferences and so on, at least some of which may be contained in a database, to print geometry and material composition in order to provide an indication of the degree of success of a print job to a user. The output of the reporting module can be the user interface 22 of Figure 2, but additional reporting mechanisms, such as output to a printer, or output of a report by email or file other electronic file transfer may also be provided. A model updater 61 is used to feed back information to the model builder 51 , so that the system can be configured for subsequent print jobs using the benefit of the empirical data obtained by the completion of the print job.
Figure 6 illustrates a flow chart of a process for controlling an AM system according to embodiments of the present invention. The process will be illustrated in the context of a project specification which is the manufacture of a medical part (for example, a denture) requiring a particular structural and functional properties, including functional gradients of properties such as mechanical durability, ease of positioning, resistance to chemical erosion, and material properties which are suitable for placement in a user’s mouth over a period of time without causing adverse health problems. The process is illustrated with respect to use of the architecture of Figure 5.
In step S1 , the model builder 51 operates to develop a model for predicting the effects of particular processing parameters on a manufacturing process, and provides a basis for subsequent optimisation of the print process.
As described above, an initial model may already exist which can seed future training of the model. In such instances, the model builder makes use of historical sensor and product data associated with a particular machine regarding action plans which have been used in previous print processes, and also prior action plans which have been simulated as part of an error evaluation process, but not used.
Additionally, or where a model does not already exist, test data can be simulated by sweeping particular variables over operating ranges in a similar manner to the process described above in connection with the generation of a plurality of action plans, in order for the model to develop using the underlying neural network hosted by the predictor.
The result of the calibration is an ability to determine the material and parameter selections which will enable a machine to maximise its ability to print a part.
In step S2, the process of optimisation of printing of the denture begins, particularly in regard to material selection. Optimum material composition is determined based on the design tool 54 of Figure 5. The determination takes into account user preferences, and enables material choices to be combined with a design file for the denture in order to maximise, for example, the use of sustainable materials, minimisation of cost, and utilisation of particular material transition gradients to be used. The design file may be provided from a source such as a design package or third party application. The design file specifies the desired shape of the denture, and the characteristics set out above.
The result is an optimal design for the denture in terms of its material.
A potential output of step S2, shown in dotted lines, may include the production of a test specimen of either a portion, or the entirety of the denture, to serve as a validation of the hardware and material selection, or to feed back refinements into the model generation process.
At step S3, the user, consults the machine designer 53 of Figure 5 to identify a particular machine which is suitable for producing the denture according to the optimised material specification output from step S2. In addition to consulting one or more available manufacturing systems which are capable of reporting model/machine characteristics to the machine designer, the machine designer 53 access libraries storing parameters characterising a number of available systems, in terms of particular parameters including maximum operating ranges, compatibility with particular materials, and so on, and operates to determine whether any available system is appropriate, or whether a modification of an existing system is required or whether even a new machine altogether needs to be configured.
In order for the machine designer 53 to be able to make this determination, user preferences are provided to the machine designer, via a user interface specifying printing resolution, printing speed, layer height, extrusion multiplier, wall thickness, maximum deviation, infill density, infill pattern, support type, support threshold, build plate adhesion mode, material gradients, tolerances, and so on, as described above.
Based on the user preferences, and the characteristics of the available hardware, the machine designer 53 operates to determine whether or not manufacture of the specified denture falls within the capability of a particular machine and whether modifications or replacements are required, such as manual adjustment of the positioning of some components, or substitution of components with others. If hardware is changed, the process may return to step S2, as shown in dotted lines.
The machine designer 53 examines maximum parameter ranges of machine configurations, for example, to determine whether it is possible for a product of a particular shape, to be produced, but also consults existing models, if available, developed for the machines which indicate how a machine might behave based on adjustment of parameters, rather than simply providing a static assessment of the capability of the machine.
For example, a nozzle size might be specified for a particular machine which might be associated with a minimum linewidth, which might determine whether any surface features of the denture having a particular level of resolution can in fact be printed, or whether the nozzle exit is too thick. Changing of a nozzle die from 0.1 mm to 0.05mm is one example of how a print head of a machine may be tuned. Other static limiting parameters might include, but are not restricted to, the size of a build platform, or compatible materials, the type of deposition process, and so on, but where parameters are variable, models may be used to determine whether limitations can be overcome with particular parameter selections.
In addition to determining hardware which is capable of achieving a particular output, where more advanced machine behaviour models are made available to the machine designer, developed in prior modelling stages, it is also possible to anticipate machine damage or failure where a machine might appear to be capable of printing one denture, but may not be capable of, for example, printing 100 dentures, or printing 10 dentures within a short time period, and so on. Such limitations can be compared with the user preferences, as above.
Machine hardware design is defined in a printer properties file. It describes the physical performance of a version of the printer hardware with a specific combination of input materials. This file is created by a machine optimisation module which may, in some embodiments, represent a functional sub-component of the machine designer 53, which is informed by experimental data. Key components of machine hardware are parametrically defined allowing for an iterative adjustment and simulation software which evaluates its fitness for any given combination of material profiles and processing parameters.
Many of these properties files are stored, and the machine designer 53 will choose the most recent one that matches the current hardware and input materials.
A selected machine 42, as recommended by the machine designer 53, is calibrated by the model determined using the model builder 51 in S1 , as described above
In step S4, pre-print optimisation processes are performed using the toolpath optimiser 56 and the build plate orientation optimiser 57, and the action plan generator 55 is used to generate one or more action plans to implement the denture printing, in the manner described in connection with the print driver algorithm.
In step S5, printing is performed, taking advantage of live adaptive feedback 58, 59 to monitor the progress of the printing process and the output produced to adjust particular process parameters, and the action plan developed in step S4. During printing, sensor readings and action plan success or modifications are recorded in real time in order to train the model, and in Figure 5, this is illustrated with respect to a feedback arrow to the model data.
The output of step S5 is a printed denture. In step S6, the denture is examined for conformity with the required specification, both manually and automatically, in order to feed data back into the model generation aspect of step (S3) via the model data storage for further print processes to be adjusted. The information which is fed back is specific to the hardware used to print the denture. Such post-processing analysis may include functionality, executed by the control module 20 above, analogous to computer numeric control abrasion machines, but taking advantage of the improved understanding of material properties of the present invention to identify“hidden errors” in the denture, such a propensity for failure, based on stored fatigue data for a material or product, which might not be possible from visible inspection alone.
In embodiments of the present invention, the entirety of the process from steps S1 to S6 is automated, operated using the components, particularly the control module 20, illustrated in Figures 2 and 3. In alternative embodiments, however, some of the processes may be performed manually, such as machine design, particularly in cases where the user is constrained by a lack of availability of alternative machines, or a lack of ability to modify a machine.
It will be appreciated that various aspects of the flow chart shown in Figure 6 can be applied to different applications, including standalone optimisation processes. For example, rather than performing an entire end-to-end process of steps S1 to S6 of Figure 6, it is possible to perform only a machine recommendation process in embodiments of the present invention, in which particular user preferences are applied to step S2, a machine configuration is recommended, and provided to a third party which then executes a print job using the recommended machine configuration. The output of step S2 might thus be a file, or a displayed output, specifying particular hardware to be employed, or a model number or manufacturer name associated with a particular machine. In some instances, the recommended or required machine might be unavailable until a particular time in the future, perhaps made available as a result of a prior recommendation operation of the machine designer of Figure 5, but in this instance, the execution of a process based on step S1 of Figure 6 utilises the advantages of the invention as a standalone machine recommendation process.
In another example, the user may make use of the technology of embodiments of the present invention in order to perform pre-print processes in terms of the characterisation of a print control process to be implemented on a third party device. For instance, in cases where the machine designer, model builder, design tool, action plan generator and toolpath and orientation optimisations are implemented as components of a software application, the user may interact with the software application on, for example, a PC, according to the method shown in Figure 7, as follows.
The software receives, at step S11 , the intent of the designer, in the form of a specification of a product to be printed, and user preferences of the form described above.
At step S12, the software enables, provided via an interface analogous to that of a CAD package, the allocation of materials, the generation of the internal structure of the product to be printed, optimisation of the print orientation, and specification of any processing conditions. Step S12 is analogous to step S2 of Figure 6. At Step S13, the software performs machine setup configuration, in a manner analogous to the description of step S3 of Figure 6.
At step S14, the software performs simulation of the print process based on the material and machine selections of steps S12 and S13, in order to verify whether the output is fit for purpose, or if further changes are required. If the simulation results are acceptable, taking into account any cost function that might be contained within the user preferences, the output of the method of the embodiment of Figure 7 is a specification of a print job S15, in terms of materials, machines, and action plans to carry out the printing, which can be exported to the relevant hardware.
In some embodiments, the product to be printed may not itself be a complete commercial item, but may be a component or part, the output of which is to be used entirely for testing processes. For instance, manufacture of particular metal alloy gradients to achieve particular outcomes may represent a tailored or customised aspect of intensive model building for a particular machine, so that fine distinctions between process and material parameters can be appreciated within a particular context.
Another example might be the examination of printed recycled materials or finished objects using Charpy tests or ultrasound testing in order to identify particular geometrical failures such as voids, cracks, delamination, density irregularities or under-extrusion regions that might exist, requiring the doping of other materials in order to strengthen the material - such doping can be understood in terms of a particular material compositions which serves simply as a means of populating a material composition database to be accessed by a target material profile extractor used in future print processes, such that compromised voxels which might be hidden within the finished product might be identified. Such data is thus highly useful in both a machine calibration phase, and during optimisation of a CAD model.
Such a material database might, for example, store a predefined set of process parameters, functional qualities,“likelihood of success” metrics associated with different material composition IDs, so that selection of material profiles can be simplified either pre-print, or mid-print, through selection of multiple parameters from a single database. Implementations and Modifications
It will be appreciated that the present invention may be embodied in a number of different ways, and that modifications to those embodiments may be made in a manner which does not deviate from the scope of the appended claims. Features of compatible embodiments may be combined in order to enhance or make selective use of particular features contained therein. It will be appreciated that the control module is able to control a number of different types of AM systems having different specific characteristics and operating ranges. Although an example of an AM system is illustrated in Figure 1 , the control architecture of embodiments of the present invention may be applied to other AM systems and non-AM systems. For example, in the case of large-scale extrusion and moulding systems it will be appreciated that the techniques of the present invention will enable such machines to adjust to wear/temperature shocks, processing condition choices, and so on. It will be further appreciated that the techniques of the present invention may enable preliminary optimal development of a product using an AM process with a view to scaling production to non-AM systems, which is particularly advantageous.
For example, a number of the embodiments described relate to the way in which particular material mixtures may be achieved, but in alternative embodiments, it is possible to control the printing of an object using only a single material, which may be non-uniform in terms of particle size and material characteristics, in which the material characteristics (such as its hardness) may be adjusted by control of parameters such as viscosity in the extrusion process, in order to ensure that the material (for example, a heat or pressure-sensitive or reactive material is deposited in a particular manner.
Several of the components illustrated in Figures 2, 3 and 4, with particular reference to the control module and its sub-components are described as software implementations. The components may represent a set of interconnected, independent software components which facilitate modular development and maintenance. Distributed cloud- based implementations are possible, in which each component could potentially be executed on a physically different computer, at different physical locations. The software may be based on any suitable programming language.
In general terms, embodiments of the present invention are characterised by two different software implementations - a first implementation which represents control of a print process, and is described in connection with a print driver algorithm, and second implementation which represents a machine learning -based optimisation algorithm, which enables improvement of an AM system based on historical data.
Generally, detailed description of those components of embodiments of the present invention which are well known in the art is omitted in the interest of conciseness. For instance, detailed operation of a twin-screw extruder printing system will be well understood by the skilled person, as well the process of specifying an object to be printed using a design file and the three-dimensional image processing which is associated with transformation and analysis of voxel data. Specific optimisation techniques to be employed within the machine will also be apparent to the skilled person, when applied in the context which is described herein.
The data flows described herein, particularly with reference to Figures 3 and 4, represent abstractions of the specific exchanges of control information between components, and the protocols used for communication between components may take the form of any appropriate known protocol in the art. In some embodiments, for example, components communicate with each other based on structured key-value data structures such as JSON (JavaScript Object Notation). As described above, the specific action plans to be executed will depend on a number of parameters including those which relate to the available hardware and materials, environmental conditions, user-specified constraints and the object print file, and the techniques of the present invention are such that an appropriate action plan or plurality of action plans can be generated accordingly, in an optimal manner. For at least these reasons, the embodiments of the present invention are considered to provide significant advantages over conventional systems, in terms of flexibility, scalability, cost, novelty of material structures, use of recycled materials, speed of printing, and quality of a printed product or batch of products. Appendix 1
Examples of how system modelling and process parameters are determined
Process parameters include all commands related to the extruder that have an effect on the material output of all actuator commands relating to the extruder, including temperature, barrel screw motor speed and direction and the print head.
Process parameters are obtained in real-time based on sensor input and statistical models of the system which have been trained on historical data. This model is also used to simulate required actuator commands over an indexed sequence with expected time in order to best achieve desired output.
The relationship between actuator commands and sense data can be understood via the logical illustration below, which shows the interrelationship between functional modules at different layers of abstraction.
A first layer of abstraction represents functional components involved in analysis of sense data, including an optimisation/learning algorithm operating on the principles of machine learning as described in the application. In this example, learning algorithms at the first layer do not attempt to model the system as a whole, rather they abstract complex & non-linear relationships between selected variables for later processing by a global model. Pattern recognition and collinear assessment algorithms perform analysis of the sensed data, while a propositional formula can be used to feed data into modelling algorithms in the second layer. Formulas may include proofs and scientific equations that accept input variable data to derive further variables that are used by other elements of the system; for example, combining pressure sense data with known geometries of the extruder to produce a throughput calculation. A second layer of abstraction represents functional components involved in modelling, including a plurality of different modelling algorithms and optimisation/learning algorithm operating on the principle of the machine learning algorithms described in the application. Additional optimisation algorithms may also optimise the algorithms themselves. Based on output error and gradient descent techniques known in the art, weights of the model are tuned in order to achieve optimal results. A third layer of abstraction represents a decision unit which collects inputs from the components of the modelling layers and determines actuator commands to be output.
Figure imgf000061_0001
It is envisaged in this embodiment that data from each layer may be available to the rest, such that actuator commands can also form sense data, and that a plurality of modelling techniques may be used.
The layers of abstraction can also be represented by the following data flow, in which sensed data is stored in a database.
Figure imgf000061_0002
Appendix 2
Examples of how material profiles are determined
The Target Material Profile is defined as the required material constitution to be printed at every IndexID. It exists within a Maximum Gradient Function which has been established from experimental data and machine configuration. This is the steepest transition gradient that the device is capable of delivering. The Target Material Profile is scanned for all sections where its gradient exceeds the Maximum Gradient Function. These sections are targeted for repair. For single print-head devices these are repaired by a Planned Guttering event. For dual print-head devices, the repair is achieved by a Print Head Change event.
The three-dimensional can model can be represented as a list of the indexed voxels, each with an associated material composition. The JSON structure below illustrates a composition of four materials, of which neither contains any input from hopper three or four.
{"object": [
{"VoxellD":1 ,"VoxelCoordinate":[1 ,1 ,1],"Material":[0.8,0.2,0,0]}, {"VoxellD":2,"VoxelCoordinate":[1 ,1 ,2],"Material":[0.7,0.3,0,0]}, ...]}
The diagram below illustrates a computer simulation to inform material allocation from a force vector. The system designed is agnostic to the simulation type which will depend based on the end function of the product. These may consist of:
• Finite Element Analysis
• Computational Fluid Dynamic
• Agent-based Modelling
• Lindenmayer systems
• Topology Optimisation Algorithms
• The Gray-Scott Algorithm
In its most basic form, as illustrated below material allocation can be defined as a linear interpolation function between two functional points (xi & x2). We can define m as the ratio of two materials and solve it at any given point between xi and x2 using the interpolation function shown below. Note that this example is one dimensional but easily extendable to accommodate the second/third dimension, further material counts and complex/non-linear interpolation functions.
Figure imgf000063_0001
Once the material is allocated (for example as a Target Material Profile), a cost function will evaluate the effectiveness of this material allocation based on the functional data and attempt to minimise the error (error is expressed as‘result’ below).
In the illustration above functional data is the force being applied on the object, other functional data types could include air flow, physical characteristics such as flexibility, durability, weight, or conductance.
If the result between the predicted and actual behaviour is larger than a set threshold an iterative process will be undertaken to fine-tune material distribution until satisfactory. Note that this final simulation will take into account the anisotropic behaviour intrinsic to the process described herein.
€ Stilt y predict eA % factual
It will be appreciated that cost functions will be minimised subject to constraints, for example subject to Maximum Gradient Function of a particular embodiment. Appendix 3
Model creation example
The basic methodology for creating the predictor 41 is as follows:
1. Take an existing LSTM neural network, or create one.
2. Train the network by giving it data captured in past use of the printer, and iteratively adjusting the internal parameters of the network until it replicates the observed outputs of the prior experiments.
3. Test the trained network on experimental data (which was not used in the training process) to measure its predictive power. If it does not make sufficiently good predictions, repeat from Step 1) with either a new initial neural network or with more experimental data. The training data is taken from the Short Term State Databases of the test printers as follows:
The state database will use an SQL database to store the data for efficient lookup with most values being Reals or Integers. The database must be indexed by print job ID and by Index ID. However, queries from the database will be converted to a dataset of associations, ready for use in the predictor 41. For example:
Print job Index Machine Time Si Sn Ai An Vi Vn Expected ID ID ID (UNIX) Time
Figure imgf000064_0001
S - Where sensors could be any sensor: (temperature, pressure, build plate weight, motion speed, material output);
A - Where actuators could be any appropriate actuator: (extruder motor, heaters, coolers, motion stage, retraction, gutter);
V - Where Variable could be any derived or composite function (e.g. viscosity, material Melt Flow Index).

Claims

Claims
1. An apparatus for configuring a manufacturing system, comprising:
means for receiving a specification of a product to be manufactured, and user preferences for at least one physical characteristic of the product, and
means for selecting an optimal material configuration to be used to manufacture the specified product, the optimal material configuration having been selected to provide the at least one physical characteristic set out in the user preferences, wherein the selection of the at least one optimal material configuration is undertaken by interrogation of a materials database,
means to run a simulation to determine if a product manufactured from the optimal material configuration has a desired safety factor,
means to run a material generator if the simulation indicates that the product will not have the desired safety factor, and
means for creating a manufacturing solution suitable for export to a production means,
wherein the materials database is populated with data obtained from an algorithm.
2. An apparatus according to claim 1 , further comprising:
means for determining an optimum configuration of an additive manufacturing system for manufacturing the product according to the at least one optimal material configuration, which satisfies the at least one physical characteristic set out in the user preferences,
wherein the means for determining the optimum configuration of the manufacturing apparatus uses a machine learning algorithm in the prediction of the physical characteristics of a product manufactured according to the at least one optimal material configuration for a particular manufacturing apparatus.
3. An apparatus according to claim 1 or claim 2, further comprising:
means for determining an optimal sequence of control signals to be applied to actuators of the additive manufacturing system to enable the specified product to be manufactured according to the optimal material configuration, wherein the optimal sequence of control signals represents the implementation of a manufacturing process predicted to process the optimal material configuration using behaviour modelled by the machine learning algorithm; and means for applying the determined optimal sequence of control signals to the actuators of the additive manufacturing system.
4. An apparatus according to claim 3, wherein the means for determining a sequence of control signals is arranged to generate a plurality of sequences of control signals, and to determine the optimum sequence in accordance with a cost function specified in the user preferences.
5. An apparatus according to claim 3 or claim 4 comprising:
means for monitoring the output of a manufacturing process implemented by the additive manufacturing system;
means for updating the sequence of control signals if the monitored output deviates from the specified output.
6 An apparatus according to claim 5, further comprising means for updating behaviour modelled by the machine learning algorithm based on monitoring of the output of the manufacturing process.
7. An apparatus according to claim 5 or claim 6, wherein the means for monitoring the output of a manufacturing process comprises an imaging system implementing a machine vision algorithm to inspect mechanical properties of the output in real time.
8. An apparatus according to any one of claims 3 to 7, further comprising:
means for generating test data by modelling the expected output from a manufacturing process performed using the additive manufacturing system using a plurality of different manufacturing process parameters and material configurations, and for training the behaviour modelled by the machine learning algorithm using the test data.
9. An apparatus according to any one of the preceding claims, further comprising: means for determining an optimum geometry for manufacturing the specified product using behaviour modelled by the machine learning algorithm.
10. An apparatus according to any one of the preceding claims, wherein the optimal material configuration comprises at least two different materials.
11. An apparatus according to any one of the preceding claims, further comprising means for material allocation.
12. An apparatus according to any one of the preceding claims, further comprising means for selecting a production means that is suitable for use with the optimal material configuration, wherein the selection of the production means is undertaken by interrogation of a machines database, and wherein the apparatus further comprises means for selection of an operating procedure for operating the production means.
13. An additive manufacturing system comprising the apparatus of any one of the preceding claims.
14. An additive manufacturing system according to claim 13 comprising a twin screw extruder.
15. A method of configuring a manufacturing system, comprising:
the step of receiving a specification of a product to be manufactured, and receiving the user preferences for at least one physical characteristic of the product, and
the step of selecting an optimal material configuration to be used to manufacture the specified product, the optimal material configuration having been selected to provide the at least one physical characteristic set out in the user preferences, wherein the step of selecting the at least one optimal material configuration is undertaken by interrogation of a materials database,
the step of running a simulation to determine if a product manufactured from the optimal material configuration has a desired safety factor,
the step of running a material generator if the simulation indicates that the product will not have the desired safety factor, and
the step of creating a manufacturing solution suitable for export to a production means, wherein the materials database is populated with data obtained from an algorithm.
16. A method according to claim 14, further comprising:
determining an optimum configuration of an additive manufacturing system for manufacturing the product according to the at least one optimal material configuration, which satisfies at least one physical characteristic set out in the user preferences, uses a machine learning algorithm in the prediction of the configuration of a product manufactured according to the at least one optimal material configuration for a particular manufacturing apparatus.
17. A method of simulating manufacture of a product using a manufacturing system comprising:
configuring a manufacturing system according to claim 15 or claim 16;
determining an optimal sequence of control signals to be applied to actuators of the manufacturing system to enable the specified product to be manufactured according to the optimal material configuration, wherein the optimal sequence of control signals represents the implementation of a manufacturing process predicted to process the optimal material configuration using behaviour modelled by an algorithm;
simulating the application of the determined sequence of control signals to the manufacturing system; and
populating the algorithm with tests data generated by the simulation.
18. A computer program which, when executed by a processor, is arranged to execute the method of any one of claims 14 to 17.
PCT/GB2019/050844 2018-03-23 2019-03-25 A system and method for manufacture and material optimisation WO2019180466A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1804710.0A GB2572327A (en) 2018-03-23 2018-03-23 A system and method for manufacture and material optimisation
GB1804710.0 2018-03-23

Publications (1)

Publication Number Publication Date
WO2019180466A1 true WO2019180466A1 (en) 2019-09-26

Family

ID=62068151

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2019/050844 WO2019180466A1 (en) 2018-03-23 2019-03-25 A system and method for manufacture and material optimisation

Country Status (2)

Country Link
GB (1) GB2572327A (en)
WO (1) WO2019180466A1 (en)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111190945A (en) * 2020-01-16 2020-05-22 西安交通大学 High-temperature and high-speed lubricating grease design method based on machine learning
CN112446124A (en) * 2019-08-29 2021-03-05 比亚迪股份有限公司 Data processing method, device, equipment and medium for CAE simulation database
US20210107228A1 (en) * 2018-04-30 2021-04-15 Hewlett-Packard Development Company, L.P. A 3d printing computer application 3d printing using the same
CN112685911A (en) * 2021-01-12 2021-04-20 湖南大学 Material calculation framework, method and system and computer equipment
WO2021086310A1 (en) * 2019-10-28 2021-05-06 Hewlett-Packard Development Company, L.P. Generating structural models for additive manufacture of an object
CN112776344A (en) * 2020-12-31 2021-05-11 天津镭明激光科技有限公司 Molding shaft double-drive structure debugging control system of additive manufacturing equipment and control method thereof
EP3825928A3 (en) * 2019-11-21 2021-06-02 Omron Corporation Additional learning device, additional learning method, and additional learning program
WO2021173532A1 (en) * 2020-02-26 2021-09-02 Wisconsin Alumni Research Foundation Systems and methods for controlling additive manufacturing systems
US20210291459A1 (en) * 2020-03-23 2021-09-23 Seiko Epson Corporation Three-dimensional shaping apparatus and three-dimensional shaped article production method
CN113780907A (en) * 2020-06-10 2021-12-10 宝山钢铁股份有限公司 Consumable demand and inventory control method, device, system and storage medium
US20220001586A1 (en) * 2018-11-16 2022-01-06 Covestro Intellectual Property Gmbh & Co. Kg Method and system for improving a physical production process
WO2022036349A1 (en) * 2020-08-12 2022-02-17 Baker Hughes Oilfield Operations Llc Identifying candidate objects for additive manufacturing
US11267166B2 (en) 2019-12-18 2022-03-08 Toyota Motor Engineering & Manufacturing North America, Inc. Devices, systems, and methods for generating a single fiber path of a composite material
CN114690730A (en) * 2022-06-01 2022-07-01 南通科特森新材料科技有限公司 Automatic control method and system for process parameters in composite material production process
US20220309199A1 (en) * 2021-03-24 2022-09-29 Dassault Systemes Simulia Corp. Integrating calibrated models with computational physics simulations
WO2022253434A1 (en) * 2021-06-02 2022-12-08 Eaton Intelligent Power Limited Method and apparatus for additive manufacturing
WO2023197012A1 (en) * 2022-04-08 2023-10-12 Stoicheia, Inc. Function-informed materials structures
EP4322082A1 (en) * 2022-08-11 2024-02-14 Fehrmann Materials X GmbH Computer-implemented determination and qualification of material compositions

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018133092B3 (en) * 2018-12-20 2020-03-12 Volume Graphics Gmbh Computer-implemented method for analyzing measurement data from a measurement of an object
WO2020216458A1 (en) 2019-04-26 2020-10-29 Siemens Industry Software Nv Machine learning approach for fatigue life prediction of additive manufactured components
CN111259472B (en) * 2020-01-13 2023-03-14 上海思优建筑科技有限公司 Optimal design method and system for building structure
CN111674048B (en) * 2020-05-13 2022-05-06 广东工业大学 3D printer broken wire alarm device and alarm method based on machine vision
DE102020118979A1 (en) 2020-07-17 2022-01-20 Hans Weber Maschinenfabrik Gmbh Device for the extrusion-based production of at least one three-dimensional object
EP4000865A1 (en) * 2020-11-20 2022-05-25 Vito NV A system and method for extrusion based manufacturing of a structure
DE102021202312A1 (en) * 2021-03-10 2022-09-15 Robert Bosch Gesellschaft mit beschränkter Haftung Production of cameras with a reduced reject rate
CN117453216B (en) * 2023-11-03 2024-06-14 深圳市金石三维打印科技有限公司 Control software development and editing method and system based on 3D printing equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120053716A1 (en) * 2010-02-24 2012-03-01 Disney Enterprises, Inc. Design and fabrication of materials with desired characteristics from base materials having determined characteristics
US20150174828A1 (en) * 2013-12-20 2015-06-25 Hexagon Metrology, Inc. Integrated measuring and additive manufacturing apparatus and method
US20150331402A1 (en) * 2014-05-13 2015-11-19 Autodesk, Inc. Intelligent 3d printing through optimization of 3d print parameters
WO2017136206A1 (en) * 2016-02-01 2017-08-10 Seurat Technologies, Inc. Additive manufacturing simulation system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120053716A1 (en) * 2010-02-24 2012-03-01 Disney Enterprises, Inc. Design and fabrication of materials with desired characteristics from base materials having determined characteristics
US20150174828A1 (en) * 2013-12-20 2015-06-25 Hexagon Metrology, Inc. Integrated measuring and additive manufacturing apparatus and method
US20150331402A1 (en) * 2014-05-13 2015-11-19 Autodesk, Inc. Intelligent 3d printing through optimization of 3d print parameters
WO2017136206A1 (en) * 2016-02-01 2017-08-10 Seurat Technologies, Inc. Additive manufacturing simulation system and method

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210107228A1 (en) * 2018-04-30 2021-04-15 Hewlett-Packard Development Company, L.P. A 3d printing computer application 3d printing using the same
US11931964B2 (en) * 2018-04-30 2024-03-19 Hewlett-Packard Development Company, L.P. 3D printing computer application 3D printing using the same
US20220001586A1 (en) * 2018-11-16 2022-01-06 Covestro Intellectual Property Gmbh & Co. Kg Method and system for improving a physical production process
CN112446124A (en) * 2019-08-29 2021-03-05 比亚迪股份有限公司 Data processing method, device, equipment and medium for CAE simulation database
CN112446124B (en) * 2019-08-29 2023-06-13 比亚迪股份有限公司 Data processing method, device, equipment and medium of CAE simulation database
WO2021086310A1 (en) * 2019-10-28 2021-05-06 Hewlett-Packard Development Company, L.P. Generating structural models for additive manufacture of an object
EP3825928A3 (en) * 2019-11-21 2021-06-02 Omron Corporation Additional learning device, additional learning method, and additional learning program
US11267166B2 (en) 2019-12-18 2022-03-08 Toyota Motor Engineering & Manufacturing North America, Inc. Devices, systems, and methods for generating a single fiber path of a composite material
CN111190945B (en) * 2020-01-16 2023-05-23 西安交通大学 High-temperature high-speed lubricating grease design method based on machine learning
CN111190945A (en) * 2020-01-16 2020-05-22 西安交通大学 High-temperature and high-speed lubricating grease design method based on machine learning
WO2021173532A1 (en) * 2020-02-26 2021-09-02 Wisconsin Alumni Research Foundation Systems and methods for controlling additive manufacturing systems
US11701832B2 (en) 2020-02-26 2023-07-18 Wisconsin Alumni Research Foundation Systems and methods for controlling additive manufacturing systems
US20210291459A1 (en) * 2020-03-23 2021-09-23 Seiko Epson Corporation Three-dimensional shaping apparatus and three-dimensional shaped article production method
CN113780907A (en) * 2020-06-10 2021-12-10 宝山钢铁股份有限公司 Consumable demand and inventory control method, device, system and storage medium
CN113780907B (en) * 2020-06-10 2023-09-12 宝山钢铁股份有限公司 Consumable demand and inventory control method, device, system and storage medium
WO2022036349A1 (en) * 2020-08-12 2022-02-17 Baker Hughes Oilfield Operations Llc Identifying candidate objects for additive manufacturing
CN112776344A (en) * 2020-12-31 2021-05-11 天津镭明激光科技有限公司 Molding shaft double-drive structure debugging control system of additive manufacturing equipment and control method thereof
CN112776344B (en) * 2020-12-31 2022-09-06 天津镭明激光科技有限公司 Molding shaft double-drive structure debugging control system of additive manufacturing equipment and control method thereof
CN112685911A (en) * 2021-01-12 2021-04-20 湖南大学 Material calculation framework, method and system and computer equipment
US20220309199A1 (en) * 2021-03-24 2022-09-29 Dassault Systemes Simulia Corp. Integrating calibrated models with computational physics simulations
WO2022253434A1 (en) * 2021-06-02 2022-12-08 Eaton Intelligent Power Limited Method and apparatus for additive manufacturing
WO2023197012A1 (en) * 2022-04-08 2023-10-12 Stoicheia, Inc. Function-informed materials structures
CN114690730A (en) * 2022-06-01 2022-07-01 南通科特森新材料科技有限公司 Automatic control method and system for process parameters in composite material production process
EP4322082A1 (en) * 2022-08-11 2024-02-14 Fehrmann Materials X GmbH Computer-implemented determination and qualification of material compositions
WO2024033440A1 (en) * 2022-08-11 2024-02-15 Fehrmann Materials X Gmbh Computer-implemented determination and qualification of material compositions

Also Published As

Publication number Publication date
GB2572327A (en) 2019-10-02
GB201804710D0 (en) 2018-05-09

Similar Documents

Publication Publication Date Title
WO2019180466A1 (en) A system and method for manufacture and material optimisation
CN108237669A (en) For adjusting the method for molding machine
Wu et al. Quality control issues in 3D-printing manufacturing: a review
CN101203818B (en) Method for controlling the produce of technology with space correlated condition of product with space correlated character and system
Kashyap et al. Process parameter optimization of plastic injection molding: a review
WO2018127827A1 (en) Systems and methods for automatic three-dimensional object printing
JP5068637B2 (en) Operation and quality related analysis apparatus, analysis method, program, and computer-readable recording medium in manufacturing process
US20220246252A1 (en) Method for producing thermoplastic compositions for mechanically and/or thermally stressed components
JP6514622B2 (en) Molding support method for injection molding machine
KR102285242B1 (en) Screw shape estimation device, screw shape estimation method and screw shape estimation program
KR20200120525A (en) Fabrication optimization for composite parts
US20230364863A1 (en) Systems and methods for formulating material in a data-driven manner
CN113631667A (en) Method for producing a composition for paints, varnishes, printing inks, grinding resins, pigment concentrates or other coatings
Castillo et al. Scientometric analysis and systematic review of smart manufacturing technologies applied to the 3D printing polymer material extrusion system
Ren et al. Improved modeling of kinematics-induced geometric variations in extrusion-based additive manufacturing through between-printer transfer learning
Sini et al. A lean quality control approach for additive manufacturing
Banadaki On the use of machine learning for additive manufacturing technology in industry 4.0
Cadiou et al. A hybrid additive manufacturing platform based on fused filament fabrication and direct ink writing techniques for multi-material 3D printing
Zeaiter et al. Multivariate regression modeling for monitoring quality of injection moulding components using cavity sensor technology: Application to the manufacturing of pharmaceutical device components
Ng et al. Progress and opportunities for machine learning in materials and processes of additive manufacturing
Suo et al. The property palette: A rapid printing of performance-tunable blended polymers guided by artificial neural network
De Backer Multi-axis multi-material fused filament fabrication with continuous fiber reinforcement
Rescsanski et al. Heterogeneous Sensing and Bayesian Optimization for Smart Calibration in Additive Manufacturing Process
Tayalati et al. Application of supervised machine learning methods in injection molding process for initial parameters setting: prediction of the cooling time parameter
CN117453216B (en) Control software development and editing method and system based on 3D printing equipment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19714769

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19714769

Country of ref document: EP

Kind code of ref document: A1