The present disclosure relates to molding machines, and in particular to programming a protection device for a molding machine.
A molding machine may have many independently actuatable components whose actuation must be precisely coordinated to prevent interference between the components. Interference between machine components occurs when one machine component obstructs movement of another or when the two components collide. Interference between machine components may also be considered to occur when a molded article associated with a machine component obstructs, or is obstructed by, another machine component, or when a molded article associated with one machine component collides with another machine component. Interference between machine components is generally undesirable as it may result in damage to the machine, lost productivity or machine down-time.
One example of a molding machine having multiple independently actuatable components is an injection molding machine for molding a preform. This type of injection molding machine typically includes a mold with two complementary halves: a first mold half having a female cavity piece and a second mold half having a male core piece.
During a first stage of a molding sequence, the two mold halves are mated and clamped, with the female cavity piece and the male core piece collectively defining a preform-shaped molding cavity. Melted molding material is injected into the molding cavity and then cooled until the molding material hardens.
During a second stage of the molding sequence, the mold halves are separated from one another for molded article (preform) removal. Because cooling typically causes the molded article to shrink within the molding cavity, the molded article may remain associated with the core piece of the mold when the mold halves are separated. To facilitate ejection, an ejection mechanism such as a stripper sleeve or ejector pin may be actuated to dislodge the molded article from the core piece.
Premature actuation of the ejection mechanism could cause the actuated machine component (the stripper sleeve or ejector pin), or the ejected preform, to undesirably collide or otherwise interfere with another mold component, such as the opposing mold half. Such interference could result in damage to the preform or machine components and may force the molding machine to be shut down.
To guard against such eventualities, a protection device may be used to ensure that the mold halves have separated by a sufficient amount before the ejection mechanism is activated. A protection device may for example take the form of a controller that has been programmed to coordinate actuation of the molding machine components to avoid interference. Whenever an interference arises, e.g. due to variations in cycle times or incremental changes in relative component positions over successive machine cycles, the protection device (controller) may stop the machine to avoid possible damage thereto.
An ejection mechanism is one example of a component of a molding machine whose actuation may warrant coordination with that of other machine components to avoid interference, but many other examples of such machine components exist. For instance, some molding machines employ a take-off device or “end-of-arm tool” to facilitate removal and cooling of freshly molded articles from a mold half. Relative movement between the mold halves and the take-off device may warrant precise control to avoid interference between them. Other independently actuatable injection molding machine components include stripping devices (e.g. stripper sleeves or stripper rings) and multi-position mold cores.
Beyond injection molding machines, other molding machines having independently actuatable machine components whose actuation may warrant precise control to avoid interference may include compression molding machines, injection-compression molding machines, and blow-molding machines.
Conventional mechanisms for programming a protection device (e.g. controller) to guard against machine component interference may be cumbersome, e.g. requiring specialized knowledge of programming languages used for programming programmable logic controllers (such as IEC 61131-3), or may be very specific (“hard-coded”) to a particular molding machine implementation.
According to one aspect of the present disclosure, there is provided a system comprising: a controller for actuating a plurality of actuators of a molding machine in an actuation sequence, each distinct actuation of one of the actuators during the actuation sequence constituting a respective machine component actuation of an associated machine component; and a human-machine interface ‘HMI’ operable to: present a graphical user interface ‘GUI’ specific to a chosen machine component actuation; and for each of a plurality of other machine component actuations, define within the GUI, based on operator input, a rule specifying a state of the chosen machine component actuation relative to a state of the other machine component actuation for preventing interference between the two machine component actuations; wherein the controller is configured, based on the rules defined within the GUI, to trigger an action, upon violation of any one of the rules, for reducing a risk of interference between the chosen machine component actuation and a respective one of the other machine component actuations.
In another aspect of the present disclosure, there is provided a method of programming a controller for a molding machine, the controller for actuating a plurality of actuators of the molding machine in an actuation sequence, each distinct actuation of one of the actuators during the actuation sequence constituting a respective machine component actuation, the method comprising: presenting a graphical user interface ‘GUI’ specific to a chosen machine component actuation; for each of a plurality of other machine component actuations, defining within the GUI, based on operator input, a rule specifying a state of the chosen machine component actuation relative to a state of the other machine component actuation for preventing interference between the two machine component actuations; and configuring the controller, based on the rules defined within the GUI, to trigger an action, upon violation of any one of the rules, for reducing a risk of interference between the chosen machine component actuation and a respective one of the other machine component actuations.
In some embodiments, the action is interrupting the actuation sequence or generating a user notification at the HMI.
In some embodiments, the GUI comprises a table and each rule is represented as a row within the table.
In some embodiments, each rule specifies a temporal relationship between the state of the chosen machine component actuation and the state of the other machine component actuation for preventing interference between two machine component actuations. The temporal relationship may be expressed using a BEFORE or AFTER operator.
In some embodiments, the state of the chosen machine component actuation is expressed, within the GUI, as a position of the associated machine component actuated by the chosen machine component actuation, e.g. as an offset from a reference position of the machine component.
In some embodiments, the state of the other machine component actuation is expressed, within the GUI, as a position of the associated machine component actuated by the other machine component actuation, e.g. as an offset from a reference position of the other machine component
In some embodiments, the state of the chosen machine component actuation or the state of the other machine component actuation is expressed, within the GUI, as completed.
In some embodiments, the molding machine is an injection molding machine and the plurality of other machine component actuations are selected from a set of machine component actuations comprising: mold opening; mold closing; ejector forward; ejector back; stripping device forward; stripping device back; take-off device forward; take-off device back; mold core moving from a first molding position to a second molding position; and mold core moving from the second molding position to the first molding position.
In another aspect of the present disclosure, there is provided a computer-readable medium storing instructions that, when executed by a processor of a computing device associated with a controller of a molding machine, the controller operable to actuate a plurality of actuators of the molding machine in an actuation sequence, each distinct actuation of one of the actuators during the actuation sequence constituting a respective machine component actuation, cause the processor to: present a graphical user interface ‘GUI’ specific to a chosen machine component actuation; for each of a plurality of other machine component actuations, define within the GUI, based on operator input, a rule specifying a state of the chosen machine component actuation relative to a state of the other machine component actuation for preventing interference between the two machine component actuations; and
configure the controller, based on the rules defined within the GUI, to trigger an action, upon violation of any one of the rules, for reducing a risk of interference between the chosen machine component actuation and a respective one of the other machine component actuations.
In some embodiments, the controller is part of the computing device.
Other features will become apparent from the drawings in conjunction with the following description.
In the figures, which illustrate non-limiting example embodiments:
In the description that follows, terms such as “upper,” “lower,” “lowermost,” “forward,” and “back,” used with respect to system components in the drawings should not be understood to necessarily connote a particular orientation of the components during use.
The human machine interface (HMI) 40 is a mechanism that allows a human operator to enter user input for specifying machine protection constraints 42 in the manner described below. A machine protection constraint is a rule regarding a state of actuation of one machine component relative to a state of actuation of another component for avoiding an interference between the machine components. In this description, all references to interference between (molding) machine components should be understood to include interference between associated molded articles and machine components. The HMI 40 may also have other related functions, such as displaying an operational state of molding machine 100 and presenting user notifications regarding possible or actual interference between machine components arising during the operation of molding machine 100.
The HMI 40 includes a display, such as a liquid crystal display (LCD), for presenting a graphical user interface (GUI) and a user input mechanism, such as a keyboard and pointing device (e.g. a touchscreen or mouse), for entering user input, none of which are expressly depicted in
The controller 50 is a control system generally responsible for controlling the operation of molding machine 100. To that end, the controller 50 issues machine control commands 72 to the molding machine 100, including commands for actuating various components of the molding machine 100 in an actuation sequence (e.g. an injection molding sequence or cycle). The commands are communicated from the controller 50 to the molding machine 100 over a connection 70, which may for example be an electrical cable (e.g. a shielded Ethernet category 5e cable). The controller 50 also periodically or continuously receives, via connection 70, machine state information 74 indicative of the operational state of the molding machine 100, such as the current positions of various actuated machine components.
The controller 50 also acts as a protection device for the molding machine 100. In that capacity, the controller 50 continuously monitors the state of various independently actuatable components of molding machine 100 and, upon detection of imminent or actual interference between two or more machine components, takes measures for protecting the molding machine 100. The measures may for example include ceasing the operation of the molding machine 100 or issuing one or more user notifications 64 to an operator of the molding machine 100 urging remedial action. The user notifications may for example be audible alarms, visual indicators, haptic notifications, or combinations of these. The remedial actions may include ceasing operation of the molding machine 100 or effecting other protection measures.
In support of its machine protection function, the controller 50 is configured to receive, from the HMI 40, machine protection constraints 42 indicative of permissible states of actuation of components of the molding machine 100, relative to one another, for avoiding interference between the components. The controller 50 is further designed to configure itself (or, more generally, to be configured), according to the received constraints 42, to perform molding machine protection, as will be described.
In the present embodiment, the molding machine 100 is an injection molding machine for molding a flip-top closure of the type used for closing shampoo bottles for example. The injection molding machine 100 is depicted, in different states of operation, in
Referring to
The injection molding machine 100 also has, among other features, four independently actuatable machine components.
The first independently actuatable machine component of molding machine 100 is mold half 102. Mold half 102 reciprocates between a mold open position, as depicted in
The second independently actuatable machine component of molding machine 100 is ejector 154. Ejector 154 reciprocates between an ejection configuration (shown in
The third independently actuatable machine component of molding machine 100 is stripper ring 124 (a form of stripping device). Stripper ring 124 reciprocates between a retracted configuration, depicted in
The fourth independently actuatable machine component of molding machine 100 is in-mold lid closing device 106. The in-mold closing device 106 is a mechanism used to close the lid 14 of a freshly molded flip-top closure 10 before ejection of the closure from the mold. The in-mold closing device 106 reciprocates between a retracted or molding configuration, depicted in
In the fully extended configuration, a lid-closing tool 200 portion of in-mold closing device 106 is extended to close the lid 14 of the flip-top closure 10. As it transitions between the retracted and the fully extended configurations, the in-mold closing device 106 causes the distal lid-closing tool 200 to trace a two-dimensional lid closing path 210 as depicted in
The four independently actuatable components recited above may be actuated by a variety of different actuators, such as hydraulic, pneumatic, or electric actuators, at least some of which are not expressly depicted in
Referring to
The memory 84 stores HMI software 88 and controller software 90.
The HMI software 88 is generally responsible for presenting user interface screens for defining one or more machine protection constraints 42, as described below. The HMI software 88 may for example be developed in a high-level programming language such as C++, C #, or visual basic using suitable software libraries and software frameworks.
The controller software 90 is generally responsible for configuring the controller 50 to send appropriate machine control commands 72 (
Either one or both of the HMI software 88 and controller software 90 may be loaded into memory 84 from a tangible computer-readable medium 92 (
Referring to
Initially, a graphical user interface (GUI) specific to a chosen machine component actuation is presented (operation 602,
An example GUI 700 that may be presented in operation 602 is illustrated in
The example GUI 700 includes a table 704. Each row 706, 708 in table 704 represents a distinct machine protection constraint, i.e. a distinct rule regarding a state of the chosen machine component actuation (here, ejector forward) relative to a state of actuation of another machine component, for enforcement by the protection device (controller 50) to prevent interference between the two machine component actuations (i.e. to prevent interference between the two machine component actuations and/or associated molded articles).
Subsequently, for each of a plurality of other machine component actuations (i.e. for multiple machine component actuations other than the chosen machine component actuation identified in the title bar 702), a rule is defined within the GUI 700, based on operator input. The rule specifies a state of the chosen machine component actuation (which, again, is ejector forward in this example) relative to a state of the other machine component actuation for preventing interference between the two machine component actuations (operation 604,
For example, the first row 706 of
To define rule 706, a user interacting with GUI 700 may have initially selected an “Add Rule” button 750 (or a similar GUI construct), which may have caused row 706, initially blank, to be added to the table 704. The user may have thereafter employed the user input mechanism of HMI 40 to specify the values shown in fields 710, 712, 714, and 716 of
In the illustrated embodiment, pull-down menu buttons 718, 720 (
It will be appreciated that, in GUI 700, the state of each machine component actuation is expressed as, or with reference to, a position (e.g. 1.0 mm, 10.0 mm) of the relevant machine component (e.g. ejector 154, mold half 104). In the illustrated example, the position is expressed as an offset from a reference position (e.g. a start or molding position) of the relevant molding machine component. However, the state of each machine component actuation may be specified in other ways in alternative embodiments. For example, a machine component's state could be expressed relative to the activation state of one or more proximity switches. In a specific example, a core slider component of another molding machine could have respective proximity switches for each of a “back” position, a “forward” position, and an intermediate position between the two. A controller could monitor signals from the proximity switches to determine machine component actuation state. In a corresponding GUI, each of the distinct positions could be expressed using a respective unique textual identifier, e.g. “back,” “forward,” or “intermediate.” Alternatively, machine component actuation state could be specified in terms of elapsed time from the time an actuation command was issued. For example, a machine component may be considered to have achieved a predetermined state (e.g. being in a “forward” position) if the actuation signal for moving the component in a particular direction or trajectory has been on for a predetermined period of time (e.g. one second). The GUI in such an embodiment could reference the predetermined states using unique textual identifiers or using an elapsed time since actuation was commenced.
The second row 708 of
Although not expressly shown in
If removal of a rule from table 704 were desired, the user could select the corresponding row within the table 704 followed by the “Remove Rule” button 752 (or a similar GUI construct). Selection of the “Cancel” button 754 may permit the GUI 700 to be exited without any change to a current configuration of the protection device.
Additional GUIs may be used to define rules specific to other machine component actuations (e.g. as shown in
Thereafter, based on the rules defined within the GUI 700 (and possibly other GUIs, such as GUIs 900, 1000, and 1100 of
In a first stage of operation 606, the machine protection constraints 42 (rules) defined by the GUI(s) are communicated to the controller 50. In the present embodiment, the machine protection constraints 42 take the form of a data structure 800 generated by the HMI software 88 (
Referring to
The containing table 802 has six rows, each representing a distinct machine component actuation of molding machine 100. Table 802 may be implemented as an array of structures (records) for example, where each structure in the array corresponds to one row of the table 802. The table 802 may include additional rows for actuations of other components of molding machine 100 (e.g. stripper ring 124) that are not expressly shown.
The columns of table 802 represent fields. The first field (first column) contains unique identifiers for each distinct machine component actuations. The second field (second column) identifies the relevant machine component. The third field (third column) identifies the relevant actuation of the component identified in the second field. The second and third fields could be implemented as enumerated types for example. The fourth field (fourth column) contains machine protection constraints (rules) for the machine component actuation represented by the row. The fourth field may for example be implemented as a subordinate or nested data structure, e.g. an array of structures (records). In this example, the fourth field of table 802 contains, in the first four rows of table 802, data structures represented by tables 820, 840, 860 and 880 respectively.
Each of tables 820, 840, 860 and 880 represents data entered using a respective one of GUIs 700, 900, 1000 and 1100, i.e. corresponds to a distinct machine component actuation (referred to herein as the “current” machine component actuation). Each row in one of these tables represents a distinct rule regarding a permissible state of the current machine component actuation, relative to another machine component actuation, for avoiding interference between the machine component actuations (between components and/or associated molded articles).
The four tables 820, 840, 860 and 880 adopt a uniform structure in which columns represent fields. The first field (first column) contains unique identifiers for each distinct rule in any of the tables 820, 840, 860 or 880. The second “Own State” field (second column) indicates how the state of the current machine component actuation is characterized. This field may for example be implemented as an enumerated type, e.g. whose value may be one of “Position” (meaning that the state is characterized as a position relative to a reference position), “Proximity” (meaning that the state is characterized in reference to the activation of a proximity switch), or “Completed” (meaning that the state is characterized as completion of the relevant machine component actuation). The third “Own Position” field (third column) contains a value representing a position (e.g. a real number representing millimeters of offset from a reference position) in cases where the value of the second “Own State” field is “Position.” The fourth “Operator” field (fourth column) contains an operator (e.g. “After” or “Before”) defining a temporal relationship between attainment of the current machine component actuation state and attainment of the state of the other machine component actuation defined by the fifth, sixth and seventh fields (described below) for avoiding interference between the two machine component actuations. The fifth “Other Component—Actuation” field identifies the other machine component actuation that is relevant to the rule represented by the row. The fifth field could for example be implemented as a pointer to one of the unique rows of table 802. The sixth and seventh “Other State” and “Other Position” fields respectively are analogous to the “Own State and “Own Position” fields described above, but pertain to the other machine component actuation rather than the current machine component actuation. Each of the tables 820, 840, 860 and 880 may for example be implemented as an array of structures, where each row in one of the tables corresponds to a single structure within the array.
The generated data structure 800 may then be communicated from HMI 40 to controller 50 via operative coupling 60 (
In a second stage of operation 606, the controller 50 may use data structure 800 to configure itself to effect the rules specified in table 704 (
In some embodiments, the action that is triggered by the controller 50, upon violation of any of the rules of table 704, is an interruption of an actuation sequence of the machine components at the injection molding machine 100 (e.g. interrupting an injection molding cycle). In some embodiments, the action that is triggered by the controller 50, upon violation of any of the rules of table 704, is the generation of a user notification at the HMI 40. In one example, the user notification may be a textual message such as “Ejector forward verification failed (Mold stroke 10.0 mm).” The user notification may include additional information or instructions, possibly in the form of text, images, or video.
Operation 600 of
It will be appreciated that defining molding machine protection rules using a GUI that is specific not only to a particular machine component, but also to a particular actuation of that machine component, may afford various benefits. A first possible benefit is that permissible relationships between machine component actuations may be defined differently for different directions or types of actuations of the same component (e.g. movement forward versus movement backward), possibly to account for asymmetric machine component actuations in opposing directions (see e.g.
Another benefit is that the GUI may provide a convenient “at a glance” view of all machine protection constraints relevant to a particular machine component actuation. Additionally, the likelihood of correctly expressing machine protection constraints may be improved, e.g. in comparison to historical methods of defining molding machine protection rules (e.g. using IEC 61131-3), because the GUI may be more readily comprehensible and intuitive to the human operator and may demand fewer skills to use. The GUI may also beneficially allow many relationships (rules) between machine component actuations to be defined without having to consider unrelated machine component actuations, thereby achieving a good compromise between flexibility and simplicity.
Another GUI 900 that may be presented in operation 602 for another machine component actuation is depicted in
As illustrated, the first row 906 of table 904 in
Yet another example GUI 1000 that may be presented in operation 602 for another machine component actuation is depicted in
The first row 1006 of table 1004 in
The second row 1008 of table 1004 in
The third row 1010 of table 1004 in
A final example GUI 1100 that may be presented in operation 602 for another machine component actuation is depicted in
The first row 1106 of table 1104 in
The second row 1108 of table 1104 in
It will be appreciated that techniques similar to those described above may be used to define machine protection constraints for actuatable components of molding machines besides those specifically recited above, such as mold cores movable into multiple positions during a single molding cycle or take-off devices used to remove and cool freshly molded articles.
Various alternative embodiments are possible.
For example, although the various example of machine component actuations described herein primarily result in translation of machine components through three-dimensional space, it will be appreciated that actuation need not be limited to translation-type movement. For example, machine component actuation in alternative embodiments may impart rotational movement to the respective machine components, possibly in combination with translation-type movement.
In the example GUIs 700, 900, 1000 and 1100, rules are expressed using table rows. In alternative embodiments, rules may be expressed using different UI constructs, e.g. using graphical icons representing machine component actuations and sliders for setting threshold positions, a text-based natural language that is parsed, or others.
In the foregoing descriptions, some machine component actuation states are described using positions (e.g. 10.0 mm) that, as noted above, are offsets from a reference position. In some embodiments, the reference position may be 0, in which case the states may be considered to be expressed as absolute positions.
It is not required for the protection device (e.g. controller) to be configured to implement machine protection constraints by interpreting or parsing a data structure (e.g. data structure 800) communicated from the HMI. The protection device could be configured to implement machine protection constraints in other ways, e.g. by receiving, from the HMI, a program governing the overall operation of molding machine 100, within which the machine protection constraints are incorporated or subsumed. Such a program could for example be encoded using a programming language such as IEC 61131-3 or a similar language.
All of the illustrated embodiments are specific to injection molding machines. It will be appreciated that, in alternative embodiments, the molding machine 100 may be something other than an injection molding machine, such as a compression molding machine, an injection-compression molding machine, or a blow-molding machine.
Other variations are possible within the scope of the claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CA2018/050694 | 6/11/2018 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2019/014749 | 1/24/2019 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5375991 | Rydmann et al. | Dec 1994 | A |
5493503 | Richards | Feb 1996 | A |
6432334 | Keller | Aug 2002 | B1 |
6925354 | Morwald | Aug 2005 | B2 |
9937650 | Dimmler | Apr 2018 | B2 |
20030075818 | Morwald et al. | Apr 2003 | A1 |
20060157880 | Hehl | Jul 2006 | A1 |
20080031992 | Matsuo et al. | Feb 2008 | A1 |
20190358879 | Taruya | Nov 2019 | A1 |
Number | Date | Country |
---|---|---|
102010046274 | Mar 2012 | DE |
0269204 | Jun 1988 | EP |
58116138 | Jul 1983 | JP |
3207628 | Sep 1991 | JP |
2015033793 | Feb 2015 | JP |
9213311 | Aug 1992 | WO |
2011063439 | Jun 2011 | WO |
WO-2012038491 | Mar 2012 | WO |
Entry |
---|
English Machine Translation of Foreign Reference WO-2012038491-A1, 2012 (Year: 2012). |
PCT International Search Report; Cuerrier, Pierre; dated Jul. 13, 2018, 2 pages. |
SPI Pendant Interface Manual, Product Manual [online], Yaskawa America, Inc., 2015 [retrieved on Jul. 11, 2018], retrieved from <https://cdn2.hubspot.net/hubfs/366775/downloads/documentation/172881-1 CD.pdf?t=1469555590506>. |
“Selogica—the control unit for all Allrounder injection moulding machines”, XP002305034 May 1, 2002. |
Number | Date | Country | |
---|---|---|---|
20200215735 A1 | Jul 2020 | US |
Number | Date | Country | |
---|---|---|---|
62535358 | Jul 2017 | US |