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
D01G31/00
TEXTILES; PAPER
D01H13/32
TEXTILES; PAPER
G06F2009/45595
PHYSICS
G05B19/4184
PHYSICS
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]
[0030]
[0031]
[0032]
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]
[0035] As illustrated in
[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
[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
[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]
[0053]
[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
[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
[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]
[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