System and method for collecting real-time manufacturing data using an IoT factory gateway
By using a two-way server architecture and machine communication module (MCM) to handle the communication protocol of multi-generational factory machines, the problem of difficult multi-generation machine integration and security in the prior art is solved, and the safe and efficient integration and data collection of factory machines are achieved.
Patent Information
- Application Number
- CN201980079564.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-11-01
- Filing Date
- 2019-11-01
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2039-11-01
AI Technical Summary
The difficulty in effectively integrating and standardizing multi-foundation machines in the prior art, especially in the absence of public data, certification or authorization security, makes automation system development complex and integration processes difficult.
Using a two-way server architecture gateway, the data server provides a secure and convenient way to access factory machine data through a data server, and uses the Machine Communication Module (MCM) to process multiple industrial and proprietary communication protocols to realize the integration and standardization of multi-generation machines.
It realizes safe isolation of factory machines and robust encryption, authentication and authorization security, simplifies the development and integration of automation systems, and improves the efficiency of collection and analysis of manufacturing data.
Smart Images

Figure CN113196189B_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims priority to U.S. Provisional Application No. 62 / 754,376, filed on November 1, 2018, the entire contents of which are incorporated herein by reference as if fully set forth. Background Art Technical Field
[0003] The present disclosure relates to manufacturing, and more particularly, to systems and methods for collecting manufacturing data using an Internet of Things factory gateway. Background Art
[0005] Today's manufacturing companies compete on a worldwide scale. Any improvements in manufacturing processes, material speed, product quality, testing, packaging, and shipping can have a significant impact on a manufacturer's competitiveness.
[0006] The Internet of Things (IoT) can provide manufacturing planners with insights into real-time, actionable manufacturing data. The ability to analyze manufacturing data in real time can have a significant positive impact on manufacturing costs, quality, and time to market. Summary of the invention
[0007] The gateway may include a data server that provides a convenient and secure way to access factory machine data. The gateway may be a two-way server architecture that acquires data from the machine and makes that data available to a variety of factory, enterprise, and cloud applications. It may also acquire command and control information from the application and directly control the operation of the factory line machine.
[0008] The factory machine environment has little or no data, authentication, or authorization security. Robust security is required on the enterprise side. The gateway provides secure isolation on the factory machine side and robust encryption, authentication, and authorization security on the enterprise side.
[0009] The gateway architecture can take into account multiple generations of machines. A factory has many machines that have been purchased for several years. The machines may have differences in make / model / variation that make integration difficult. The disclosed MCM allows all machines in the factory to be integrated and standardized to a single common platform. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] The disclosed non-limiting embodiments are discussed with respect to the accompanying drawings, which form a part hereof, wherein like reference numerals represent like elements, and wherein:
[0011] Figure 1 is an illustration of an embodiment of the present disclosure;
[0012] Figure 2is an illustration of an embodiment of the present disclosure;
[0013] Figure 3 is an illustration of an embodiment of the present disclosure;
[0014] Figure 4A , B and C are illustrations of embodiments of the present disclosure;
[0015] Figure 5 is an illustration of an embodiment of the present disclosure; and
[0016] Figure 6 is an illustration of an embodiment of the present disclosure.
[0017] Figure 7 is an illustration of an embodiment of the present disclosure. DETAILED DESCRIPTION
[0018] The accompanying drawings and descriptions provided herein may have been simplified to illustrate the aspects related to the device, system and method described herein, and for the sake of clarity, other aspects that can be found in typical similar equipment, system and method have been eliminated. Therefore, those skilled in the art will recognize that other elements and / or operations may be desirable and / or necessary for realizing the device, system and method described herein. But because such elements and operations are known in the art, and because they do not promote a better understanding of the present disclosure, for the sake of brevity, the discussion of such elements and operations may not be provided herein. However, the present disclosure is considered to still include all such elements, variations and modifications to the described aspects known to those of ordinary skill in the art.
[0019] Embodiments are provided throughout the text so that the present disclosure is fully thorough and the scope of the disclosed embodiments is fully conveyed to those skilled in the art. Many specific details, such as examples of specific components, devices and methods, are set forth to provide a thorough understanding of the embodiments of the present disclosure. However, it is apparent to those skilled in the art that certain specific disclosed details do not need to be adopted, and embodiments may be provided in different forms. Therefore, the embodiments should not be construed as limiting the scope of the present disclosure. As described above, in some embodiments, known processes, known equipment structures and known technologies may not be described in detail.
[0020] The terms used herein are only for the purpose of describing specific embodiments, rather than being intended to be limiting. For example, as used herein, the singular forms "one", "an" and "the" may also be intended to include plural forms, unless the context clearly indicates otherwise. The terms "include", "comprise", "contain", and "have" are inclusive, and therefore specify the presence of the features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or their groups. Unless specifically determined to be a preferred or required execution order, the steps, processes and operations described herein should not be interpreted as necessarily requiring them to be performed in the specific order discussed or shown. It should also be understood that additional or alternative steps may be used to replace the disclosed aspects or to be combined with the disclosed aspects.
[0021] When an element or layer is referred to as being "on," "engaged to," "connected to," or "coupled to" another element or layer, unless otherwise clearly indicated, it may be directly on, engaged to, connected to, or coupled to another element or layer, or there may be intermediate elements or layers. Conversely, when an element is referred to as being "directly on," "directly engaged to," "directly connected to," or "directly coupled to" another element or layer, there may be no intermediate elements or layers. Other words used to describe the relationship between elements should be interpreted in a similar manner (e.g., "between" versus "directly between," "adjacent" versus "directly adjacent," etc.). In addition, as used herein, the term "and / or" includes any and all combinations of one or more associated listed items.
[0022] In addition, although the term first, second, third etc. can be used to describe various elements, components, regions, layers and / or parts here, these elements, components, regions, layers and / or parts should not be limited by these terms. These terms are only used to distinguish an element, component, region, layer or part from another element, component, region, layer or part. Unless the context clearly indicates, the terms such as "first", "second" and other numerical terms do not imply order or sequence when used in this article. Therefore, without departing from the teaching of the embodiment, the first element, component, region, layer or part discussed below can be referred to as the second element, component, region, layer or part.
[0023] Embodiments include a method for conveniently collecting Internet of Things (IoT) data from a manufacturing facility having various machines and manufacturing processes. Embodiments easily and securely capture manufacturing data that can be used as input to various manufacturing execution systems (MES), enterprise resource planning systems (ERP), process control, and manufacturing analytics.
[0024] Management of multiple machines in an automated environment is extremely challenging. Multiple machines may lack common data and command / control standards. Often, complex workarounds are required to extract, simulate, or replicate machine data. The workarounds complicate the development of automated systems and make the integration process more difficult. Embodiments allow for easy and rapid integration of automated machine inventories with machine execution systems (MES) and enterprise resource planning (ERP) automation systems and cloud-based applications.
[0025] like Figure 1 As shown, the gateway 10 thus provided may include a software data gateway server 12 between the automated factory machine 14 and the MES, ERP and / or other factory applications 16. On the factory network side, the server creates a secure isolated connection 20 between the machine and the gateway. The connection uses a machine communication module (MCM) architecture to handle multiple industrial and proprietary communication protocols. The gateway 12 can not only extract machine data, but also use the connection to control the machine automation process.
[0026] On the enterprise network side, embodiments provide a convenient and secure application programming interface (API) to access machine data 22, and the factory applications 16 accessing the data "see" a public interface without the need for machine knowledge.
[0027] The above enables plant engineers to customize the gateway for special data needs. The gateway provides a convenient cloud-based streaming data subscription service. This allows cloud applications to easily access automated plant data.
[0028] This easily enables integration and connection of various automated factory machines with factory, enterprise, and cloud applications.An embodiment provides several services that make application and machine integration easier.
[0029] Embodiments automate the collection of big data 26, the performance of its analysis, and the making of real-time related decisions thereto. More specifically, factory data collection typically takes two forms - historical and real-time. For example, historical data is data collected at the end of a shift, day, week, month, quarter, or year. However, if historical data is used exclusively, analysis and decision making are always after the fact. As a result, historical data capture and decision making are typically slow, which in turn positively impacts the manufacturing process.
[0030] Real-time data collection collects data and makes it available instantly. However, due to slow data networks and access to fast computing resources in many factories, analysis of real-time data is often problematic.
[0031] Factory analysis can be categorized into Statistical Process Control (SPC) and Progressive Process Improvement (PPI). SPC is used to measure key manufacturing metrics to better manage product yield, efficiency, and quality. Using statistical process models, production line data is collected and analyzed. The output from the model is usually in the form of statistical variance. Out-of-tolerance processes and problems may be prominent. However, SPC is limited to only one or two statistical correlations, so SPC only provides limited insight into the data or process.
[0032] PPI analyzes multiple dependencies and provides more insights for manufacturing process improvements. Figure 2 As shown in , PPI analysis 100 is popular due to the improvement of algorithms and the introduction of the Internet of Things (IoT) and low-cost cloud computing. The algorithms include advanced machine learning, artificial intelligence (AI), and deep AI.
[0033] The PPI algorithms in the embodiment are categorized into four analytical categories of increasing complexity; descriptive 102, diagnostic 104, predictive 106, and prescriptive 108. Descriptive and diagnostic algorithms are currently used in a variety of manufacturing processes. Predictive and prescriptive have recently been applied by manufacturers who are looking for hidden value and competitive advantage in manufacturing processes.
[0034] Descriptive analytics focuses on what happened and uses the output to correct process failures. Descriptive analytics focuses on process failures. Diagnostic analytics focuses on why failures occurred and determines the root causes of failures. Diagnostic analytics also helps identify process failures so that the root failures do not occur again. Predictive analytics predict future events. They generate predictions by combining technical and process insights with data insights, preventing downtime, reducing warranty expenses, and improving overall productivity. Algorithms often include complex machine learning algorithms.
[0035] Prescriptive analytics understand the complex hidden value of manufacturing processes. They identify future actions focused on cost reduction, quality improvement, and new revenue opportunities. Algorithms typically include machine learning, artificial intelligence (AI), and deep AI.
[0036] Big data and analytics are increasingly becoming a significant competitive advantage for manufacturers. These new approaches give manufacturers new insights into the value of their end-to-end manufacturing processes. The concepts of big data and incremental process improvement analytics can have a significant impact on all aspects of manufacturing.
[0037] Real-time actionable data is the process of integrating huge streams of manufacturing data with MES software for fast real-time decision making. It leverages large-scale IoT, high-performance computing clusters, very fast communication networks, and advanced PPI analysis. Automated processing decisions can be made almost instantly. Real-time actionable data algorithms integrated with MES and ERP software can catch problems and obstacles in the manufacturing process long before they become apparent.
[0038] Figure 3 Real-time actionable data processing 200 is shown. Data is collected simultaneously from many manufacturing sensors 202. Data is collected 204 and then transmitted 206 to a computing facility. First the data is stored 208 and then cleansed 210. Cleansing is the process of fixing errors that have been injected into the data stream. The data is then processed using PPI analysis 212. The results 214 are used to make actionable process decisions 216. This process is typically repeated thousands of times per second.
[0039] Real-time actionable data requires a constant stream of data. Using IoT is a very effective means of collecting and creating data streams. However, many machines used in manufacturing today lack data and communication standards to effectively integrate with large enterprises. Another issue is the complete lack of security and the ability to integrate into a federated enterprise security environment.
[0040] Figure 4A , B and C show the gateway 300 discussed above, which securely collects data from a variety of different machines using IoT with a modular connection method 302. This supports all data and communication standards based on LAN or WiFi, including network connections via the Internet, and makes the data conveniently and securely available on a joint secure collaborative enterprise network.
[0041] The gateway provides a secure IoT data collection portal 402a, 402b. It collects data from various machines using standard and proprietary communication protocols. It provides a variety of data services that scrub, cleanse, filter, and repackage the data into a common message model. It makes the data conveniently available 304 to any application throughout the enterprise, cloud, or across a network such as the Internet.
[0042] The gateway utilizes industry standard data, communication and security standards to simplify enterprise integration. The gateway uses a modular data interface scheme for each machine to manage communication, data and security, allowing virtually any machine with Ethernet LAN or WAN capabilities to exchange data with the gateway.
[0043] A factory is typically a collection of many machines, both old and new. A factory may purchase many machines from many vendors over a period of several years. Machine models evolve over time with new or different features. Newer machines may include new standards and features. Older machines may not include all interfaces. The gateway uses modular connectivity to manage the differences between multiple machines. Each unique machine type has its own unique connectivity module that manages the communication and data mode differences. This allows integration of both old and new machines.
[0044] Data standardization allows the gateway module to provide a consistent application programming interface (API). It manages differences in features and differences in data schemas so that applications do not need to be aware of machine vendor / model / version. As a result, the gateway fully supports factory inventory interoperability.
[0045] The gateway can be a built-in gateway server. Figure 5 As highlighted in , the machine side 502 of the server collects data from various factory machines. On the enterprise network side 504, it provides a secure IoT portal for many factory and enterprise applications.
[0046] As a non-limiting example, the gateway 300 may internally include five components; a machine connectivity module (MCM), a message queuing services (MQS), a factory container application (FCA), a secure communications portal (SCP), and a cloud interface (AMQP).
[0047] MQS, SCP and AMQP services are static ports and are fixed during compilation. MCM and FCA modules are dynamic. They are loaded at runtime and use dynamic IP port networking to connect to the gateway service. An abstract framework is provided for container class services and interoperability.
[0048] The gateway architecture can be configured to any machine environment by using dynamic loading services. Therefore no system compilation is required. This allows very versatile applications that can dynamically adapt to any factory environment.
[0049] The gateway may include a dual LAN hardware connection. The machine-side LAN connection may have its own local domain IP address. A local LAN is a local virtual LAN configured as a domain without a corporate LAN or Internet access. The corporate LAN connection may also have its own address and be connected to the corporate LAN.
[0050] A Machine Connection Module (MCM) may provide each machine's unique connection requirements and a common data message queuing interface. An MCM may be a bidirectional module, i.e., it collects data from the machine and also sends command and control information. An MCM may be unique to each machine vendor / model / version.
[0051] That is, some versions of MCM may be needed to support different machine models / versions. The machine side of MCM supports TCP / IP sockets and / or Open Database Connectivity (ODBC), for example, for connecting to SQL databases and HTTP / HTTPS. The messaging side of MCM supports the MQTT messaging protocol. MCM messaging is published to MQS. The pattern can be different for each MCM type. MCM can also obtain command and control information by subscribing to a unique MQS topic. MCM is a dynamic container microservice that can be loaded at runtime.
[0052] Message Queuing Service (MQS) can provide message multiplexing between MCMs and FCAs. Each MCM publishes data identified by a unique topic to MQS. FCAs subscribe to topics and extract messages. FCAs can subscribe to multiple topics. MQS reduces the complexity of multiplexing multiple messages between MCMs and FCAs. MQS also passes command and control messages from FCAs and MCMs. MQS is a static container microservice. Microservices are defined at compile time and have a fixed set of DNS names for publish and subscribe ports.
[0053] The Factory Container Application (FCA) is the microservice responsible for interfacing directly with various factory, enterprise or cloud applications. The FCA subscribes to one or more MQS topics and forwards the data to the Secure Communication Portal (SCP). The SCP forwards the messages to their respective applications. Factory, enterprise or cloud applications can also send command and control data directly to the machines through the FCA.
[0054] FCA receives command and control information from SCP and repackages it into MQTT messages. It then forwards the message to MQS. The appropriate MCM finally gets the command and control message and forwards it to the machine. FCA is a dynamic container and is loaded at runtime. FCA can provide dedicated data for various applications.
[0055] The Secure Communications Portal (SCP) handles all secure access to the corporate LAN. The data sent to the application is embedded within the HTTPS header. The security token is added to the header, and the data is encrypted and sent to the application. The security token provides authentication and authorization credentials to the application. The application checks the token credentials, and if valid, processes the request. If the credentials are invalid, the application ends the session with an HTTP 401 error code. The application can also pass command and control information to the machine through SCP. SCP decrypts the data and extracts the security token. SCP verifies the credentials, and if valid, allows the command. If the credentials are invalid, the session is ended with an HTTP 401 error.
[0056] The gateway also provides cloud streaming AMQP messaging services. AMQP messages can be streamed to the data service center. Factory, cloud, and enterprise applications can access AMQP endpoints and subscribe to specific data topics. The streaming service is supported by the AMQP container microservice. AMQP containers are dynamic services and are loaded at runtime. AMQP subscribes to various topics from MQS. Extract data and send it to the runtime engine. The runtime engine packages the data into AMQP messages and sends them to the central service running in the cloud. The runtime engine also provides several additional services, including configuration, messaging, device security, and authentication and authorization. The center running in the cloud provides several backend processing services and application data endpoints.
[0057] The gateway provides several service container microservices. The network administrator is a secure web portal that allows administrators to view the gateway status, provision services, and configure / edit service tables. The persistent storage is mainly used to save status information and configuration tables. The remote VPN service allows access to the private LAN within the gateway.
[0058] Gateway 300 may be a "built-in" server as discussed herein. Figure 6 As shown, gateway 300 provides data connectivity from on-site machines 602 to factory MES, enterprise applications 604 , and cloud-based applications 606 .
[0059] The MCM side of the gateway is connected directly to the factory machine LAN. Each machine uses a socket with a proprietary protocol running on top of the socket TCP / IP. As mentioned earlier, the MCM manages the individual machine proprietary socket protocols and machine data. The gateway does not provide any network or application security facilities on the factory LAN.
[0060] The SCP side of the gateway is connected to the factory enterprise LAN. The connected interfaces can include SCP, network management portal, remote VPN, and AMQP streaming message service. The SCP interface handles all real-time connections for all factory applications. The AMQP interface is a messaging protocol that is streamed in real time to a cloud-based center. The center manages publish and subscribe requests. The network management portal is the status and debug port. It provides gateway status information, current status, and viewing / editing of orchestration and configuration tables. Finally, a remote VPN is provided to allow direct access to private IP services within the gateway.
[0061] The SCP side of the gateway is highly secure. All interfaces can apply encryption, authentication, and authorization to all outbound and inbound connections. SCP and the web management portal can be encrypted using HTTPS. For authentication and authorization, encrypted temporary tokens created can be used.
[0062] The gateway can thus obtain data from various machines on the factory floor and securely transmit it to the application. The gateway can also process command and control information from the application and route it to the factory machine. There can be 3 categories of gateway applications; factory applications, enterprise and reporting applications, and analytical applications.
[0063] Factory applications may run on factory servers and may require real-time data and commands and control of line machines. Enterprise and reporting applications often run in the cloud and may extract data from AMQP messages.
[0064] Analytics applications can fall into two categories; historical and real-time process control. Historical process control analyzes data over a specific time period. The output from the analytics is used to modify a large number of processes. Real-time analytics extracts data in real time and makes process changes in real time. Both application categories typically use AMQP messaging to send and receive data, but also apply command and control to modify machine operations.
[0065] The disclosed gateway architecture can be used as a bidirectional data collection server for unsecured surface mount technology (SMT) machines. It multiplexes data to various modular data cleaning and filtering services, and then securely forwards the data to various manufacturing execution system (MES), cloud or Internet-based applications via the enterprise LAN. Therefore, it is a secure portal that allows factory, cloud and Internet applications to control and access SMT machine data. The data is used by analytical applications for real-time statistical process control (SPC) and to feedback commands to the machine to modify processes and behaviors. The gateway can virtualize all operations using modular microservice containers. IP virtualization enables significant flexibility for integrating new SMT machine operations without the need to recompile the system.
[0066] Most SMT lines do not employ common integrated data communication standards. This makes it difficult to collect and analyze data and use the output to drive process decisions. The ability to modify or even change a manufacturing process very quickly can be a significant competitive advantage.
[0067] Furthermore, SMT manufacturing facilities have many machines from different vendors, models, and different versions. Any solution that takes into account the integration of a large inventory of machines must be able to handle the differences of each machine. Individual SMT machines all have their own unique data, data schemas, and communication protocols. The gateway takes these factory differences into account and uses the concept of unique machine module (UMM) data capture. That is, a small unique module is coded for each machine vendor, model, and machine type. This module can be used multiple times for multiple similar machines. Configuration files can be used to identify each machine type on the SMT line.
[0068] The UMM can capture data using a machine-unique interface. The UMM interfaces with the Abstract Device Object (ADO) module. ADO takes data from the UMM and normalizes it into a standard message format before sending it to the message multiplexer. This enables multiple machines from multiple vendors to have a common messaging interface.
[0069] In addition, SMT machines have very poor security. The gateway can interface with every unsecured SMT machine on the unsecured LAN. It takes the data and pushes it securely to the secure enterprise network LAN. That is, the gateway can have a very secure interface on the enterprise network LAN side.
[0070] The gateway can therefore collect data from multiple machines. Machines can be grouped by specific functions. For example, machines such as Pick and Place P&P or Solder Screen Printers SSP report very similar data. The UMM extracts data from each machine and then standardizes that data. This standardization allows all devices to have a common interface to factory applications. Each of these common data types is mapped to a specific topic tag. Data is collected and standardized to its common data type. This data is then given a specific topic tag and messages are published using that tag. Applications requesting public information can use the tag as a subscription topic to extract data from the message multiplexer.
[0071] The collected data can be delivered to various enterprise applications - some factory MES applications, some cloud-based analytical applications, and other Internet-based applications. These applications can obtain their data from the Factory Container Application (FCA). Although the gateway is a general data collection and distribution application, a specific manufacturing facility may require very specific information from factory machines. This specific collection data mechanism is the responsibility of the FCA.
[0072] SMT's FCA can be a containerized microservice that is architected to be designed, written, tested, and deployed in just a few weeks. Plant engineers can develop FCAs that create data unique to the plant and plant applications. FCAs extract data from message multiplexers using topic subscriptions. Using public DNS addressing, FCAs can be dynamically loaded and access data using dynamic TCP / IP addressing without the need to compile a new version of the IoT plant gateway.
[0073] Factory MES applications for SMT (or other applications) may require real-time data from a variety of machines. The Internet of Things (IoT) factory gateway provides a convenient programming model that uses FCA and a secure access portal to access multiple machines simultaneously. The gateway provides a single secure and convenient interface instead of having to access multiple machines to collect data.
[0074] Plant Status Dashboard( dashboards ) need real-time data from various machines. The gateway provides a convenient programming model using a common machine interface and FCA to collect data through a single data portal. The gateway provides a single secure and convenient interface instead of having to access multiple machines to collect data.
[0075] In addition, the gateway provides a convenient programming model using public machine interfaces and FCA to collect real-time data through a single data portal. Therefore, the Internet of Things (IoT) factory gateway provides a single secure and convenient interface instead of having to access multiple machines to collect data.
[0076] The machines can be connected to the cloud-based gateway using a secure remote VPN connection. The VPN server can be placed in the factory and all the machines will be virtually connected to the remote VPN. The gateway connects to the factory VPN and can access the machines as if the server was running locally in the factory. Running the gateway in the cloud requires fewer servers to be provisioned in the factory. In addition, managing cloud resources is much easier than managing deployed physical servers.
[0077] Furthermore, modern manufacturing facilities, such as SMT facilities, are typically a large collection of automated machines with varying degrees of communication compatibility - older machines, newer machines, and recently purchased machines. When the machine inventory is a patchwork of old and new machines, integrating all the machines in a factory, especially a global factory, is a considerable challenge. The gateway solves this problem by using an innovative architecture and using (MCM) machine communication modules. MCMs are dedicated software microservices that support specific machine communication interfaces. MCMs are highly specific to specific machine types. They convert data and machine-specific attributes into standardized data formats. MCMs then provide a public API interface so that multiple programs can communicate with the MCM modules. MCMs provide a common data schema so that all applications do not have to know the machine manufacturer, model, accessories, or serial number of the connected machine.
[0078] A method for collecting IoT SMT line data:
[0079] The IoT Factory Gateway is a bidirectional data collection server for unsecured surface mount technology (SMT) machines. It multiplexes data to a variety of modular data cleansing and filtering services, and then securely forwards the data to a variety of Manufacturing Execution System (MES), cloud or Internet-based applications over the enterprise LAN. It is a secure portal that allows factory, cloud and Internet applications to control and access SMT machine data. The data is used by analytical applications for real-time statistical process control (SPC) and to feedback commands to the machine to modify its processes and characteristics. Internally, the IoT Factory Gateway uses modular microservice containers to virtualize all operations. IP virtualization enables significant flexibility for integrating new SMT machine operations without the need to recompile the system.
[0080] A general approach to factory data capture:
[0081] Most SMT lines do not adopt common integrated data communication standards. This makes it difficult to collect and analyze data and use the output data to drive process decisions. Another key consideration is that manufacturing facilities have many machines from different vendors, models, and different versions. Any solution that takes into account the integration of a large inventory of machines must be able to handle the differences of each machine. Individual SMT machines have their own unique data, data schemas, and communication protocols. The Internet of Things (IoT) Factory Gateway takes into account factory differences and uses the concept of unique machine communication module (MCM) data capture. Small unique code modules are written for each machine vendor, model, and machine type. There may even be unique modules that handle differences between machine types due to release versions of hardware or software. This module can be used multiple times for multiple similar machines. Configuration files are used to identify each machine type on the SMT line. The modules are loaded using configuration files for each machine. The configuration files also help with the setup of each module, each module handling unique machine characteristics. Each of these modules publishes data to the message multiplexer. The message multiplexer uses topics to tag each specific message. The IoT Factory Gateway then subscribes to the messages using multiple special Factory Container Applications (FCAs) that use the topics assigned to the messages. The FCAs reconstruct, erase, and filter the message data. They then securely forward the data to the factory, cloud, or Internet application. A unique aspect is that this allows the integration of all factory machines regardless of manufacturer, model, serial number, or revision level. MCM integrates all factory machines into one data collection center. There may be some newer standard interfaces, but the majority of the inventory of factory machines will not have the ability to utilize that standard. The IoT Factory Gateway together with the MCM allows for almost instantaneous integration of a varying number of factory machines.
[0082] Abstract device object:
[0083] UMM data captures data using machine-unique interfaces. UMM interfaces with the Abstract Device Object (ADO) module. ADO takes data from the UMM and normalizes it into a standard messaging format before it is sent to the message multiplexer. This enables multiple machines from multiple vendors to have a common messaging interface. FCA does not have to have unique knowledge of each machine interface or machine type. FCA does not care if it is communicating with machine make A or machine make B. This makes the development of FCA and enterprise applications easier.
[0084] To couple an unsecured network with a secure network:
[0085] SMT machines have very poor security. The IoT Factory Gateway interfaces with each insecure SMT machine on the insecure LAN. It takes the data and pushes it securely to the secure corporate network LAN. By design, the IoT Factory Gateway has no physical or virtual connection between the two LANs. Instead, the IoT Factory Gateway has a very secure interface on the corporate network LAN side. It utilizes HTTPS to protect data entering and leaving the gateway. It also uses secure OAUTH2 temporary tokens to pass authentication and resource authentication credentials. The IoT Factory Gateway uses authentication and authorization certificates to prevent unauthorized access on both sides of the data network. By using an isolated LAN on the SMT side and managing access on the corporate side, the IoT Factory Gateway provides a highly secure interface to the very insecure manufacturing SMT network.
[0086] Secure Internet of Things (IoT) Factory Gateway Interface:
[0087] The IoT factory gateway has 2 main interfaces called REST interface and AMQP interface. These interfaces are used by all applications to securely access data and control all factory machines. The REST and AMQP interfaces use X.509 certificates to create a secure HTTPS encrypted connection between the gateway and the application. The secure connection is created during a session connection called a TLS handshake. Both REST and AMQP interfaces also use SAML to obtain a security token from an OAUTH2 security token server established by the enterprise. A token is an encrypted data structure that includes application authentication and authorization certificates, a validity time (Time Alive) and a one-time random number (Nonce). The authentication certificate contains the resource ID. The authorization certificate describes what resources the application can access. The validity time verifies how long the token is valid. Once the validity time expires, the token can no longer be accepted. The one-time random number is a random number that scrambles the digital signature of the token, so no 2 tokens are the same. The advantage of a token is that an application only needs to obtain a single token within a predetermined period of time. Once a token expires, a new token must be re-acquired. If a token is obtained by an unauthorized application, it is only valid for a short period of time. The IoT Factory Gateway server receives the token, decrypts it, verifies the token security component, and if correct, allows access to the IoT Factory Gateway services, machine data, and machine controls.
[0088] Multiplexed routing of IoT data topics:
[0089] The IoT Factory Gateway collects data from multiple machines. Machines are grouped by specific functions. Machines such as Place & Place (P&P) or Screen Printer (SSP) report very similar data. There are some minor differences, but for the most part the data is very similar. The UMM extracts data from each machine and then normalizes that data. This normalization allows all devices to have a common interface to the factory application. Each of these common data types is mapped to a specific topic tag. Data is collected and normalized to its common data type. It is then given a specific topic tag and messages are published using that tag. Applications requesting common information can use the tag as a subscription topic to extract data from the message multiplexer. This concept of the IoT Factory Gateway implements a fire and forget messaging system. It eliminates the need for complex redirection tables. The use of message multiplexing can also significantly increase the reliability of messaging by only deleting the message after the FCA confirms that it has been received.
[0090] Internet of Things (IoT) Factory Container Application and Public Interface:
[0091] The IoT factory gateway collects data from various SMT machines. The data collected is ultimately delivered to various enterprise applications (some factory MES applications, some cloud-based analytical applications, and other Internet-based applications). These applications obtain their data from the factory container application (FCA). Although the IoT factory gateway is a general data collection and distribution application, a specific manufacturing facility may require very specific information from factory machines. This specific data collection mechanism is the responsibility of the FCA. The FCA is a containerized microservice that is architected to be designed, written, tested, and deployed in just a few weeks. Factory engineers can develop their own FCAs that create data unique to the factory and factory applications. The FCA extracts data from the message multiplexer using topic subscriptions. Using public DNS addressing, the FCA can be dynamically loaded and access data using dynamic TCP / IP addressing without compiling a new version of the IoT factory gateway.
[0092] A method for a factory manufacturing execution system (MES) application to acquire data:
[0093] Factory MES applications require real-time data from a variety of machines. The IoT Factory Gateway provides a convenient programming model using FCA and a secure access portal to access multiple machines simultaneously. The IoT Factory Gateway provides a single secure and convenient interface instead of having to access multiple machines to collect data.
[0094] A method for collecting data for a plant status dashboard:
[0095] The factory status dashboard requires real-time data from various machines. The IoT Factory Gateway provides a convenient programming model using public machine interfaces and FCA to collect data through a single data portal. The IoT Factory Gateway provides a single secure and convenient interface instead of having to access multiple machines to collect data.
[0096] A method for collecting real-time plant data for real-time plant process control:
[0097] Factory process control requires real-time data to manage and update machine controls. The IoT Factory Gateway provides a convenient programming model using public machine interfaces and FCA to collect real-time data through a single data portal. The IoT Factory Gateway provides a single secure and convenient interface instead of having to access multiple machines to collect data.
[0098] Cloud-based VPN IoT Factory Gateway:
[0099] The IoT Factory Gateway is described as a “built-in” server. This means that a unique server and associated network hardware are required to run this resource in the factory. The Cloud-based VPN IoT Factory Gateway will instead run the IoT Factory Gateway functionality in the cloud. The machines will be connected to the Cloud-based IoT Factory Gateway with a secure remote VPN connection. The VPN server will be placed in the factory and all the machines will be virtually connected to the remote VPN. The IoT Factory Gateway will connect to the factory VPN and can access the machines as if the server was running locally in the factory. Running the IoT Factory Gateway in the cloud requires fewer servers to be provisioned in the factory. In addition, managing cloud resources is much easier than managing deployed physical servers.
[0100] A way to connect to multiple legacy machines:
[0101] Modern manufacturing facilities are often a large collection of automated machines (older machines, newer machines, and recently purchased machines) with varying degrees of communication compatibility. When the machine inventory is a patchwork of old and new machines, integrating all the machines in a factory, especially a global factory, is a considerable challenge. If you focus only on the latest machines, the large inventory of factory machines may not be connected to the Internet of Things (IoT) network. If you focus on only one standard, you may miss many machines. This problem can be a nightmare for manufacturing facility planning. The Internet of Things (IoT) Factory Gateway solves this problem by using an innovative architecture using MCM-Machine Communication Modules. MCMs are dedicated software microservices that support specific machine communication interfaces. MCMs are highly specific to specific machine types. The Internet of Things (IoT) Factory Gateway uses configuration tables to dynamically load all the necessary MCMs required to support all factory Internet of Things (IoT) communication integration. As soon as an MCM is connected to a machine, it converts its data and machine-specific attributes into a standardized data format. The MCM then provides a public API interface so that multiple programs can communicate with the MCM module. The MCM provides a common data schema so that all applications do not have to know the connected machine manufacturer, model, accessories, or serial number. It handles all data normalization and provides a common interface to factory applications, making integration of large factory machines much simpler.
[0102] Embodiments may use an exemplary computing system, such as a computing and processing system, for discussion in association with the systems and methods described herein. A computing system is a computer that executes and is capable of executing software, such as an operating system (OS) and / or one or more computing applications / algorithms, such as the applications discussed herein, by sending data and using data on one or more I / O ports.
[0103] The operation of the exemplary computing system is primarily controlled by computer-readable instructions, such as instructions stored in a computer-readable storage medium (such as a hard disk drive (HDD), an optical disk such as a CD or DVD, a solid-state drive such as a USB "thumb drive", etc.). These instructions can be executed within a central processing unit (CPU) to cause the computing system to perform the operations discussed throughout this document. In many known computer servers, workstations, personal computers, etc., the CPU is implemented in an integrated circuit called a processor.
[0104] The memory devices coupled to store data for use by the CPU may include random access memory (RAM) and / or read only memory (ROM).Such memory includes circuits that allow information to be stored and retrieved.
[0105] Additionally, the computing system may be coupled to an external communication network, which may include or provide access to the Internet, an intranet, an extranet, etc. The communication network may also provide users of the computing system with access to electronically communicate and transfer software and information.
[0106] It is understood that the exemplary computing system discussed is only an illustration of a computing environment in which the systems and methods described herein can operate, and does not limit the implementation of the systems and methods described herein in computing environments with different components and configurations. That is, the concepts described herein can be implemented in various computing environments using various components and configurations.
[0107] In the foregoing detailed description, various features may be grouped together in various embodiments for the purpose of streamlining the disclosure. This method of disclosure should not be interpreted as reflecting an intention that any subsequently claimed embodiment requires more features than expressly recited.
[0108] In addition, the description of the present disclosure is provided to enable any person skilled in the art to make or use the disclosed embodiments. Various modifications to the present invention will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other variations without departing from the spirit or scope of the present invention. Therefore, the present disclosure is not intended to be limited to the examples and designs described herein, but should conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A system for collecting real-time manufacturing data from a factory having a plurality of machines using Internet of Things (IoT) connectivity, comprising: at least one gateway, including at least one server, the at least one gateway receiving data from the plurality of machines; at least one machine communication module (MCM) that applies at least factory, enterprise, and analytics applications to the received data and outputs command and control information from the applications to the at least one gateway to directly control the operation of the plurality of machines; wherein the gateway provides security isolation at the machine side of the gateway and provides encryption, authentication and authorization security at the machine communication module (MCM) side of the gateway; and wherein the machine communication module (MCM) provides a common API interface and a common data model, and the application processes and standardizes data from at least multiple types and generations of the multiple machines, The machine communication module (MCM) includes modular microservices, which are modularized according to the types of the multiple machines. The at least one gateway uses a configuration table to dynamically load all necessary machine communication modules (MCMs) required to support all factory Internet of Things (IoT) communication integrations. The at least one gateway can be configured into any machine environment by using a dynamic loading service to allow general applications to dynamically adapt to any factory environment.
2. The system according to claim 1, wherein: The analytical applications include at least descriptive, diagnostic, predictive, and prescriptive analytics.
3. The system according to claim 1, further comprising: A plurality of hardware sensors providing the data for the plurality of machines.
4. The system according to claim 1, wherein: The plurality of machines may at least partially comprise conventional machines.
5. The system according to claim 1, wherein: The command and control information is generated by substantially continuous feedback.
6. The system according to claim 1, wherein: At least one of the applications is cloud-based.
7. The system according to claim 1, wherein: Receiving the data from the plurality of machines occurs wirelessly.
8. The system according to claim 1, wherein: Receiving the data from the plurality of machines is wired.
9. The system of claim 1, wherein the at least one gateway further comprises a message queuing service (MQS), a factory container application (FCA), a secure communication portal (SCP), and a cloud interface (AMQP), The message queuing service (MQS), the secure communication portal (SCP) and the cloud interface (AMQP) are static ports, the machine communication module (MCM) is a dynamic container microservice loaded at runtime, and the factory container application (FCA) is a dynamic container loaded at runtime for directly interfacing with multiple factories, enterprises or cloud applications.
10. The system according to claim 9, wherein the machine end of the machine communication module (MCM) supports TCP / IP sockets and / or open database interconnection (ODBC), the message transceiver end of the machine communication module (MCM) supports the MQTT message transceiver protocol, the message transceiver of the machine communication module (MCM) is published to the message queuing service (MQS), and the machine communication module (MCM) obtains command and control information by subscribing to the message queuing service (MQS) topic; The message queuing service (MQS) provides message multiplexing between the machine communication module (MCM) and the factory container application (FCA) to reduce the complexity of multiplexing multiple messages between the machine communication module (MCM) and the factory container application (FCA), and the message queuing service (MQS) also transmits command and control messages from the factory container application (FCA) and the machine communication module (MCM); The factory container application (FCA) subscribes to one or more message queuing service (MQS) topics and forwards data to the secure communication portal (SCP), and the factory container application (FCA) sends command and control data directly to the machine; The Secure Communication Portal (SCP) forwards the message to the respective application, either plant, enterprise or cloud application.
Citation Information
Patent Citations
Intelligent industrial security cloud gateway equipment system and method
CN107040459A
Apparatus for managing factories in internet of things
KR1020180001650A