A MACHINE CONTROLLER FOR CONTROLLING OPERATION OF A MACHINE OF A SPINNING MILL, AS WELL AS AN ELECTRONIC DEVICE AND A METHOD FOR UPDATING SUCH MACHINE CONTROLLERS

20250101641 ยท 2025-03-27

    Inventors

    Cpc classification

    International classification

    Abstract

    A machine controller for operation of a spinning mill machine includes a storage of an operating system code, container daemon code, and a plurality of container images. A processor section performs the following: provide a running operating system based on the operating system code; provide a running container daemon based on the container daemon code; and provide running containers based on the plurality of container images. The running operating system includes access functions for accessing the machine of the spinning mill and each one of a set of the running containers provides a service for controlling operation of the spinning mill machine. The running container daemon concurrently interfaces services of the running containers with access functions of the running operating system. The machine controller further includes an update service that updates the container images of the machine controller.

    Claims

    1-16: (canceled)

    17. A machine controller for controlling operation of a machine of a spinning mill, the machine controller comprising: a storage that stores operating system code, container daemon code, and a plurality of container images; a processor section configured to perform the following: provide a running operating system based on the operating system code; provide a running container daemon based on the container daemon code; provide running containers based on the plurality of container images; wherein the running operating system includes access functions for accessing the machine of the spinning mill; wherein each one of a set of the running containers provides a service for controlling operation of the machine of the spinning mill; wherein the running container daemon concurrently interfaces services of the set of the running containers with access functions of the running operating system for controlling operation of the machine of the spinning mill by the set of the running containers; and wherein the machine controller further includes an update service that updates the container images of the machine controller.

    18. The machine controller of claim 17, wherein the update service enables one or more of a push service or a pull service for updating the container images.

    19. The machine controller of claim 17, wherein the update service is configured to enable one or more of: stopping one or more of the running containers; starting one of the container images; restarting one or more of the running containers after the updating thereof; perform a predefined verification after starting one or more of container images; or perform a predefined verification after restarting one or more of running container images.

    20. The machine controller of claim 17, wherein the update service is a part of one or more of: the running operating system; the running container daemon; or one or more of the running containers.

    21. The machine controller of claim 17, wherein the processor section is further configured to provide a further set of running containers that operate and administer one or more of the container images, the container daemon code, the operating system code, the running containers, the running container daemon, the running operating system, or the machine of the spinning mill.

    22. The machine controller of claim 17, wherein one or more of the running containers provide a service for: basic machine control; recipe management; user management; log collection; alerts; notifications; shift service; or distributed processing.

    23. The machine controller of claim 17, wherein one or more of the running containers provide a service for controlling operation of: a bale opener machine; a blow room machine; a card machine; a draw frame machine; a comber machine; a roving frame machine; a ring spinning machine; a compact spinning machine; a rotor spinning machine; an air-jet spinning machine; an automation machine; a winding machine; or a texturing machine.

    24. The machine controller of claim 17, wherein the operating system is one of a: UNIX; a Linux; a Windows; or a MacOS operating system or kernel, or a virtualization thereof.

    25. The machine controller of claim 17, wherein the container daemon code and the container images comply with one or more of: Open Container Initiative; Docker; Appc; LXD; CRI-O; Railcar; RKT; LXC; or CNCF.

    26. The machine controller of claim 17, wherein the running containers provide for one or more of a service-oriented architecture or an event-driven architecture.

    27. A system configured for controlling operation of spinning mill machines, comprising: a plurality of spinning mill machines, each of the spinning mill machines comprising a machine controller; each of the machine controllers comprising: a storage that stores operating system code, container daemon code, and a plurality of container images; a processor section configured to perform the following: provide a running operating system based on the operating system code; provide a running container daemon based on the container daemon code; provide running containers based on the plurality of container images; wherein the running operating system includes access functions for accessing the spinning mill machine; wherein each one of a set of the running containers provides a service for controlling operation of the spinning mill machine; wherein the running container daemon concurrently interfaces services of the set of the running containers with access functions of the running operating system for controlling operation of the spinning mill machine by the set of the running containers; an update service that updates the container images; and an electronic device in communication with the machine controllers and comprising a container repository configured for update the container images of the machine controllers.

    28. The system of claim 27, wherein the container repository is configured to be accessed based on one or more of: a version number of container images; a type identifier of the machine controllers; or a version number of the machine controllers.

    29. The system of claim 27, wherein the electronic device is configured to update the container images upon receipt of updated container images at the container repository.

    30. The system of claim 27, wherein the electronic device is configured to update respective container images upon request from the machine controllers.

    31. A method for updating container images of machine controllers of spinning mill machines, the method comprising: using the system according to claim 27 to: cooperating with one or more update services; accessing the container repository of the electronic device for updating respective container images of the machine controllers.

    32. The method according to claim 31, wherein the process of accessing the container repository of the electronic device is based on one or more of: a version number of the container images; a type identifier of the respective machine controllers; or a version number of the respective machine controllers.

    Description

    BRIEF DESCRIPTION OF DRAWINGS

    [0028] The invention will be better understood with the aid of the description of an embodiment given by way of example an illustrated by the figures, in which:

    [0029] FIG. 1 schematically illustrates a machine controller for controlling operation of a machine of a spinning mill;

    [0030] FIG. 2 schematically illustrates an electronic device for updating machine controllers for controlling operation of machines of a spinning mill;

    [0031] FIG. 2a schematically illustrates an electronic device for updating machine controllers for controlling operation of machines of an alternative configuration of a spinning mill; and

    [0032] FIG. 3 schematically illustrates possible method steps for updating machine controllers for controlling operation of machines of a spinning mill.

    DETAILED DESCRIPTION OF THE INVENTION

    [0033] Reference will now be made to embodiments of the invention, one or more examples of which are shown in the drawings. Each embodiment is provided by way of explanation of the invention, and not as a limitation of the invention. For example features illustrated or described as part of one embodiment can be combined with another embodiment to yield still another embodiment. It is intended that the present invention include these and other modifications and variations to the embodiments described herein.

    [0034] FIG. 1 schematically illustrates a machine controller 1 according to the present invention for controlling operation of a machine 51 of a spinning mill 5. For example, as schematically illustrated in FIG. 1, the machine 51 relates to a ring spinning machine. However, the present disclosure is not limited to any particular type of a machine of a spinning mill and also relates to, for example, bale opener machines, blow room machines, draw frame machines, rowing frame machines, air jet spinning machines, robots, air-conditioning systems, etc. In some embodiments, as illustrated in FIG. 1, the machine controller 1 is arranged externally from the machine 51 of the spinning mill 5, and is connected via a signal line(s) with the machine 51 of the spinning mill 5. The signal line(s) may relate to a wired or wireless signal line for transmitting electronic signals and/or electronic messages between the machine 51 of the spinning mill 5 and the machine controller 1 for controlling operation of the machine 51 of the spinning mill 5. In other embodiments (not illustrated in FIG. 1), the machine controller 1 is a part of or is attached to the machine 51 of the spinning mill 5. In some embodiments, as illustrated in FIG. 1 with dotted lines, the textile machine 51 is a part of a spinning mill 5 which typically comprises a plurality of textile machines and other machines. In some embodiments, the machine 51 of the spinning mill 5 is a textile machine which receives textile material from an upstream textile machine (not illustrated in FIG. 1), and which delivers processed textile material to a downstream textile machine (not illustrated in FIG. 1).

    [0035] As illustrated in FIG. 1, the machine controller 1 includes a storage 11. The storage 11 has stored operating system code 111, container daemon code 112 and a plurality of container images 113. For example, the storage 11 relates to a HDD (hard disk drive), to an SSD (solid state disk), etc., or any combination thereof, i.e., to a non-volatile storage. In some embodiments, the storage 11 is arranged remote from the machine controller 1, wherein the machine controller 1 has access to the remotely arranged storage 11 via a network, for example.

    [0036] In some embodiments, operating system code 111 relates to a UNIX operating system, to a Linux operating system, to a Windows operating system, to a MacOS operating system, to a kernel of such an operating system, to any other operating system, or to a virtualization thereof. In case the operating system code relates to a kernel, typical operating system functions such as networking may be provided by running containers 123 (running containers 123 will be described further below). A virtualization of an operating system is based on a hypervisor and/or a virtual machine which run the virtualization/emulation of an operating system for providing functionalities of the operating system. For example, a virtual machine may run on a Linux operating system, wherein within the virtual machine a Windows operating system may be run for providing functionalities of the Windows operating system, for example for running application programs which are designed for the Windows operating system. In some embodiments, the operating system is an operating system as available at the filing date of the present disclosure. In some embodiments, the virtual machine is a virtual machine as available at the filing date of the present disclosure. In some embodiments, the operating system code 111 relates to a stripped-down version which provides only required access functions, in particular in order to avoid the need to update the operating system code 111. In some embodiments, the operating system code 111 includes executable programs, libraries, configuration files, etc.

    [0037] In some embodiments, container daemon code 112 and the container images 113 relate to Open Container Initiative, Docker, Appc (Advanced Program to Program Communication), LXD (Learning experience design), CRI-O (an open source, community-driven container engine), Railcar, RKT (an application container engine), LXC (Linux Containers), or CNCF (cloud native computing foundation). In other embodiments, container daemon code 112 and the container images 113 relate to any other technology providing the functionalities as described in the present disclosure. In some embodiments, container daemon code 112 relates to container daemon code as available at the filing date of the present disclosure. In some embodiments, the container images 113 relate to container images as available at the filing date of the present disclosure. Each one of the container images 113 is configured to provide a service for controlling operation of the machine 51 of the spinning mill 5, as will be described in more detail below. Container images may include different versions of a particular service. In some embodiments, the container daemon code 112 and/or the container images 113 include executable programs, libraries, configuration files, etc. In some embodiments, the container images 113 are self-contained.

    [0038] As illustrated in FIG. 1, the machine controller 1 includes a processor section 12. The processor section 12 is configured to provide a running operating system 121 based on the operating system code 111, and to provide a running container daemon 122 based on the container daemon code 112, and to provide one or more running containers 123 based on one or more of the plurality of container images 113. In some embodiments, the processor section 12 includes one or more processors and a volatile memory. In some embodiments, the one or more processors relate to one or more CPUs (central processing unit), GPUs (Graphics Processing Units), microcontrollers, etc., or a combination thereof. In some embodiments, the volatile memory relates to a RAM (random access memory) module. The processor section 12 is configured to load and run operation system code 111, container daemon code 112 and container images 113 in order to provide a running operating system 121, a running container daemon 122 and running containers 123. For example, the running containers 123 run on top of and/or make use of the running container daemon 122, which runs on top of and/or makes use of the running operation system 121.

    [0039] The processor section 12 may include or may be connected to further electronic circuits, such as network interfaces, logic boards, etc., for providing functions described in the present disclosure. For example, electronic circuits such as network interfaces may provide functions for connecting with the machine 51 of the spinning mill 5 for accessing the machine 51, for example for accessing sensors and/or actors of the machine 51.

    [0040] The running operating system 121 includes access functions for accessing the machine 51, in particular for accessing sensors and/or actors of the machine 51.

    [0041] For example, the running operating system 121 includes access functions for setting machine parameters of the machine 51, such as setting an actor signal, for example for setting a rotation speed. For example, the running operating system 121 includes access functions for reading machine parameters of the machine 51, such as reading a sensor signal, for example for reading a doff time. In some embodiments, the operating system includes respective application programming interfaces (APIs), libraries, etc. which provide access functions for accessing the machine 51. In some embodiments, such APIs, libraries, etc. are designed in accordance with a machine type of the machine 51. For example, other APIs, libraries, etc. may be involved for controlling operation of a draw frame machine than for controlling operation of a ring spinning machine.

    [0042] Each one of a set of the running containers 123 provides a service for controlling operation of the machine 51 of the spinning mill 5. The set of running containers 123 may include one or more running containers 123. Typically, the set of running containers 123 includes a plurality of running containers 123. In some embodiments, services of running containers 123 relate to recipe management, user management, log collection, alerts, notifications, shift service, and/or distributed processing. In some embodiments, services of running containers 123 relate to controlling operation of a bale opener machine, a blow room machine, a card machine, a draw frame machine, a comber machine, a roving frame machine, a ring spinning machine, a compact spinning machine, a rotor spinning machine, an air-jet spinning machine, an automation machine, a winding machine, and/or a texturing machine. For example, one of the running containers 123 may relate solely to recipe management, while another one of the running containers 123 may relate solely to log collection. For example, running containers 123 may be shut down when not needed, and restarted when needed. For example, a running container 123 relating to log collection may only be provided when log collection services are required, for example at regular time intervals.

    [0043] In some embodiments, one or more of a further set of running containers 123 provide services for operating and/or administering the container images 113, container daemon code 112, running container images 123, running container daemon 122, the machine 51, etc. For example, a running container 123 may provide services in the form of a watchdog to regularly verify a status of running containers 123. For example, a running container 123 may provide services to check for available updates for container images (e.g. form a repository within the mill (edge) or within the internet (cloud)), to check on known security threats by querying a database on edge or on cloud containing known security threads, to analyze traffic between the containers or between the container and the mill network for checking network performance (throughput, round-trip-times, etc.) and/or for scanning for open ports and/or for analyzing the open ports for security threats, etc.

    [0044] The running container daemon 122 concurrently interfaces services of the set of running containers 123 with access functions of the running operating system 121 for controlling operation of the machine 51 of the spinning mill 5 by the set of the running containers 123. For example, one of the running containers 123 may relate to services for recipe management, wherein the running container daemon 122 interfaces respective recipe management services with access functions of the running operating system 121, for example for setting an actor signal, such as for setting a rotation speed. For example, one of the running containers 123 may relate to services for log collection, wherein the running container daemon 122 interfaces respective log collection services with access functions of the running operating system 121, for example for reading a sensor signal, such as for reading a doff time.

    [0045] As illustrated in FIG. 1, the machine controller 1 further includes an update service 13 for updating container images 113 of the machine controller 1. The update service 13 enables updating one or more container images 113 at a time. Updating of the machine controller 1 is simplified, because updating is limited to specific container images 113, contrary to the prior art which suggests updating of application programs as a whole of machine controllers of a spinning mill. For example, in case of improved recipe management, only container images 113 are updated which include services for recipe management, contrary to the prior art which requires updating of the whole application program. Updating individual container images 113 reduces the risk of undesired side effects. Updating individual container images 113 reduces the need to touch old code. In some embodiments, the update service 13 cooperates with an electronic device 2 as described in the present disclosure for updating container images 113.

    [0046] In some embodiments, the update service 13 enables a push service and/or a pull service for updating container images 113. For example, the update service 13 cooperates with an electronic device 2 as described in the present disclosure, wherein the electronic device 2 pushes updates of container images 113 to the machine controller 1 (push service), for example as soon as updates are available. For example, the update service 13 checks at an electronic device 2 as described in the present disclosure whether updates of container images 113 are available, and pulls updates, if applicable (pull service), for example at regular time intervals.

    [0047] In some embodiments, the update service 13 enables restarting a running container 123 after updating the respective container image 113. For example, the update service 13 enables shutting down a running container 123, receiving a respective updated container image 113 and storing the updated container image 113 in the storage 11, and restarting the updated container image 113 for providing an updated running container 123.

    [0048] In some embodiments, the update service 13 enables to start an updated container image 113 in parallel with a respective previously running container 123, and to switch from the previously running container 123 to the updated running container 123 before shutting down the no longer needed previously running container 123. In other embodiments, the previously running container 123 is kept running for a predefined time period before shutting down the previously running container 123, for example after receipt of a confirmation, for example from a watchdog as described above, that the updated running container 123 runs correctly, and to switch back to the previously running container 123 in case of problems with the updated running container 123.

    [0049] In some embodiments, the update service 13 is a part of the running operating system 121, the running container daemon 122 and/or one or more of the running containers 123. Some operating systems may have included update services, which may be used for updating container images 113. The running container daemon 122 may detect incompatibilities between a running operating system 121 and running containers 123, and initiate updating of container images 113, if applicable. One or more running containers 113 may include functions for updating container images 113.

    [0050] In some embodiments, the running containers 123 provide for a service-oriented architecture and/or an event-driven architecture. Flexibly designing an environment with running containers 123 according to a predefined or desired architecture is enabled.

    [0051] In a possible scenario, on the basis of a first running operating system 121 (respectively a first operating system code 111), a machine controller 1 has been properly configured for controlling operation of a machine 51 of a spinning mill 5, i.e., a set of container images 113 has been properly configured to provide running containers 123 providing required services for controlling operation of the machine 51 and a first container daemon code 112 has be properly configured for interfacing the running containers 123 with the first operating system 121. In order to make use of a second running operating system 121 (respectively a second operating system code 111), it is sufficient to provide a second container daemon code 112 for interfacing the running containers 123 with the second running operating system 121, while the container code 113 of the running containers 123 can remain unchanged. The second running operating system 121 can relate to an existing operating system. The second running operating system 121 can relate to a new release of an operating system. Accordingly, making use of an existing operating system and/or adaption to a new release of an operating system are simplified.

    [0052] FIG. 2 schematically illustrates an electronic device 2 for updating machine controllers 1.51, 1.52, 1.53, 1.54, 1.55, 1.56 for controlling operation of machines 51, 52, 53, 54, 55, 56 of a spinning mill 5. In the exemplary configuration illustrated in FIG. 2, the spinning mill 5 includes a ring spinning machine 51, an air jet spinning machine 54, two rowing frame machines 52, 53, and two draw frame machines 55, 56. However, the invention relates to any configuration of a spinning mill 5. For example, FIG. 2a illustrates a configuration of a spinning mill 5 which additionally includes winding machines 57, 58. The rowing frame machines 52, 53 and the draw frame machines 55, 56 receive textile material from upstream machines (not illustrated in FIG. 2, 2a), and deliver processed textile material to the ring spinning machine 51 and the air jet spinning machine 54, which deliver processed textile material to further downstream textile machines. For example, the ring spinning machine 51 delivers processed textile material to winding machines 57, 58 illustrated in FIG. 2a, which receive textile material from the ring spinning machine 51 in a first form of transportable textile assemblies, such as yarn wound on cops, for producing a second form of transportable textile assemblies, such as larger bobbins with rewound yarn. The spinning mill 5 may include one or more superordinated machine controllers (not illustrated in FIG. 2, 2a), such as a control room computer, for controlling operation of the machines 51, 52, 53, 54, 55, 56, 57, 58 of the spinning mill 5.

    [0053] FIG. 2, 2a illustrates machine controllers 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58 which are included in respective machines 51, 52, 53, 54, 55, 56, 57, 58 of the spinning mill 5. However, machine controllers 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58 may be arranged externally from machines 51, 52, 53, 54, 55, 56, 57, 58 and/or machine controllers may be arranged for controlling operation of groups of machines of the spinning mill (not illustrated in FIG. 2, 2a).

    [0054] Machine controllers 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58 are configured as described in the present disclosure, in particular as described in connection with FIG. 1.

    [0055] The electronic device 2 is connected via network n with machine controllers 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58. Network n may relate to a wired or wireless network for transmitting electronic signals and/or electronic messages between the electronic device 2 and machine controllers 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58.

    [0056] The electronic device 2 and the network n may relate to a computerized device and a computerized network. The computerized network may relate to a wired network, a wireless network, etc. The computerized network enables transmission of control signals, monitor signals, electronic messages, etc. between the electronic device 2 and the machine controllers 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58. For example, network n may relate to an IP (Internet Protocol) network, for example enabling transmission control protocol (TCP) streams and/or user datagram protocol (UDP) datagrams. The computerized device may relate to a microcontroller, a computer, etc. The computerized device may include one or more processors and program instructions stored in a memory, which program instructions, when executed by the one or more processors, provide the functions as described in the present disclosure. The electronic device may include a user interface such as graphical user interfaces (GUI) for enabling displaying information to an operator and/or for enabling receiving commands from an operator. For example, the electronic device 2 may relate to a control and monitoring device of a spinning mill.

    [0057] In some embodiments, the electronic device 2 is arranged within the spinning mill 5 (EDGE). In some embodiments, the electronic device 2 is arranged on a server arranged in the Internet (CLOUD). In some embodiments, the electronic device 2 relates to a distributed system, wherein a container repository 213 as described further below is arranged in the CLOUD, which becomes cached in the EDGE for distributing updates on the machines.

    [0058] As illustrated in FIG. 2, 2a, the electronic device 2 has access to a container repository 213. The container repository 213 may relate to a storage of the electronic device 2, in particular a non-volatile storage such as a HDD, SSD, etc. The container repository 213 may relate to a database. The container repository 213 may be arranged remote from the electronic device 2, for example in a datacenter of a customer, of a supplier, of a cloud server, etc., wherein access is to the container repository 213 is enabled via a network (not illustrated in FIG. 2, 2a).

    [0059] The container repository 213 has stored a plurality of container images. The electronic device 2 is configured to access one or more container images from the container repository 213 for updating respective container images of machine controllers 1.51, 1.52, 1.53, . . . . For example, the electronic device 2 contacts a machine controller 1.51, requests information about a particular container image stored in the storage of the machine controller 1.51, and transmits an updated container image from the container repository 213 to the machine controller 1.51, if applicable.

    [0060] The container images stored in the container repository 213 and stored in the machine controllers 1.51, 1.52, 1.53, . . . may include unique identification information, such as a version number, an image hash, machine information, machine controller information, interface specification, etc. for differentiating container images. For example, identification information may enable differentiating container images as regards updated features, bug fixes, etc. Container images may be designed for a particular machine type, machine controller version, etc. Container images may be the same for all machines or for a group of machines/models, etc. For example, a machine controller for controlling operation of a bale opener may include different electronic circuits than a machine controller for controlling operation of a ring spinning machine, wherein different container images are required for controlling operation. For example, machine controllers may differ in their storage and/or memory spaces, processor performances, etc., wherein particular container images may require specific limits as regards for example a minimal amount of memory, a minimal processor performance, etc.

    [0061] The electronic device 2 may access container images stored in the container repository 213 based on a verification of a version number, a type identifier of respective machine controllers, a version number of respective machine controllers, etc. Accordingly, the electronic device 2 enables adapting the update of container images to respective machine controllers, to container images already stored in machine controllers, etc.

    [0062] In some embodiments, the electronic device 2 is configured to provide a push service and/or a pull service for updating container images of machine controllers 1.51, 1.52, 1.53, . . . . For example, the electronic device 2 may detect installation of an updated container image in the container repository 213, which for example is performed manually by a machine operator, and accordingly transmit respective container images to respective machine controllers (push service). For example, the update service at a machine controller service may detect an idle running container, may check and request for a respective updated container image at the electronic device 2, and, if applicable, may shut down the idle running container and may restart the updated container image for providing an updated running container (pull service).

    [0063] FIG. 3 schematically illustrates possible method steps for updating machine controllers 1.51, 1.52, 1.53, . . . for controlling operation of machines 51, 52, 53, . . . of a spinning mill 5. The method comprises at an electronic device 2 as described in the present disclosure cooperating with one or more update services 13 of machine controllers 1.51, 1.52, 1.53, . . . as described in the present disclosure. The method further comprises at the electronic device 2 accessing the container repository 213 of the electronic device 2 for updating respective container images of machine controllers 1.51, 1.52, 1.53, . . .

    [0064] The present invention is not limited to the embodiments shown and described. Modifications within the scope of the claims are possible, as is a combination of the features, even if these are shown and described in different embodiments.

    REFERENCE NUMERALS/SIGNS

    [0065] 1 machine controller [0066] 11 storage [0067] 111 operating system code [0068] 112 container daemon code [0069] 113 container images [0070] 12 processor section [0071] 121 running operating system [0072] 122 running container daemon [0073] 123 running containers [0074] 13 update service [0075] 5 spinning mill [0076] 51, 52, 53, . . . machines of the spinning mill [0077] 1.51, 1.52, 1.53, . . . machine controllers of machines of the spinning mill [0078] 2 electronic device [0079] 213 container repository