Semantic Ontology-Based Internet Scale Communication Method of Machine Tools for Providing Remote Operational Services
20200351352 ยท 2020-11-05
Assignee
Inventors
- Xiaoqing Liu (Fayetteville, AR, US)
- S M Nahian Al Sunny (Fayetteville, AR, US)
- Md Rakib Shahriar (Fayetteville, AR, US)
Cpc classification
H04L67/025
ELECTRICITY
Y02P90/02
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
Y02P80/10
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
G05B2219/23051
PHYSICS
H04L67/125
ELECTRICITY
G05B19/182
PHYSICS
G05B2219/31241
PHYSICS
International classification
G05B19/418
PHYSICS
Abstract
A system and method of connecting remotely located machine tools over the Internet. An agent-adapter architecture is used to transform the machine tools into IoT devices in a connected group that communicates with each other for exchanging their status information and executing operations remotely over the Internet.
Claims
1. A system of connected devices comprising: a plurality of machine tools, said machine tools adapted to communicate with one another; at least one agent and at least one adapter; and said at least one agent and at least one adapter both configured to form an agent-adapter architecture, said agent-adapter architecture adapted to incorporate said plurality of machine tools into a connected group that directly communicates with each other for exchanging their status information and remotely over the Internet; and said executed operations are actions to be performed by a machine tool and are communicated directly between said machine tools.
2. (canceled)
3. The system of claim 1 wherein said machine tools are from the group consisting of CNC machines, robots, and 3D printers, each using different machine specific languages.
4. The system of claim 1 wherein said machine tools are configured to be capable of remote on-line monitoring and operations over a network by exchanging messages of corresponding data in XML format.
5. The system of claim 1 further including semantic ontological representations of said machine tools for supporting both monitoring and operation of said machine tools.
6. The system of claim 1 wherein each machine tool has a dedicated adapter that has direct access to said machine tool.
7. The system of claim 6 wherein said adapter is configured to accesses a machine tool to collect data from the machine tool and to send operational commands to the machine tool.
8. The system of claim 7 wherein the adapter collects raw monitoring data and operation status directly from the machine tool in machine specific language.
9. The system of claim 8 wherein said agent is a bridge that connects one or more machine tools to a network for execution of their operations over the network.
10. The system of claim 9 wherein said agent works both as a translator and a server.
11. The system and method of claim 10 wherein said agent uses schemas to perform the XML conversion.
12. The system of claim 11 wherein said agent receives status data from an adapter as a key-value pair based text dictionary and then converts said dictionary into a standard XML format.
13. The system of claim 12 wherein said agent is adapted to receive an operation request having an XML document, said agent validates and verifies said operation request and then parses said XML document and produces a text-based dictionary in a sequence of key-value pairs for said adapter; said adapter receives the dictionary and sends commands to said machine tool to perform the received operation.
14. The system of claim 1 further including a semantic ontology which is designed to represent manufacturing resources and services.
15. The system of claim 1 further including a semantic ontology that provides information about the status and operation of said machine tools.
16. A system of connected devices comprising: a plurality of machine tools to be connected; at least one agent and at least one adapter; said at least one agent and at least one adapter both configured to form an agent-adapter architecture, said agent-adapter architecture adapted to transform said machine tools into a connected group that communicate directly with each other for exchanging their status information and executing operations remotely over a network; and said executed operations are actions to be performed by a machine tool and are communicated directly between said machine tools.
17. The system of claim 16 wherein said system each machine tool has a dedicated adapter that has direct access to said machine tool; said adapter is configured to accesses one or more machine tools to collect raw monitoring data collect data from said machine tools and to send operational command to said machine tools; said agent is a bridge that connects one or more machine tools to a network for execution of their operations over the network and works both as a translator and a server.
18. The system claim 17 wherein said agent uses schemas to perform the XML conversion.
19. The system of claim 17 wherein said agent receives status data from an adapter as a key-value pair based text dictionary and then converts said dictionary into a standard XML format.
20. The system of claim 17 wherein said agent is adapted to receive an operation request having an XML document, said agent validates and verifies said operation request and then parses said XML document and produces a text-based dictionary in a sequence of key-value pairs for said adapter; said adapter receives the dictionary and sends commands to said machine tool to perform the received operation.
Description
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0030] In the drawings, which are not necessarily drawn to scale, like numerals may describe substantially similar components throughout the several views. Like numerals having different letter suffixes may represent different instances of substantially similar components. The drawings illustrate generally, by way of example, but not by way of limitation, a detailed description of certain embodiments discussed in the present document.
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
DETAILED DESCRIPTION OF THE INVENTION
[0043] Detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention, which may be embodied in various forms. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the present invention in virtually any appropriately detailed method, structure or system. Further, the terms and phrases used herein are not intended to be limiting, but rather to provide an understandable description of the invention.
[0044] Establishing an IoT enabled CPMC system with different sorts of manufacturing machine tools faces a number of hindrances. Different machine tools use different machine-specific languages. Both monitoring data and operational commands vary from machine tool to machine tool. Moreover, some machine tools use manufacturer specific proprietary languages and communication protocols. This makes the communication both among the machine tools and between the machine tools and cloud very complex. One probable solution to this problem is to make the cloud capable of understanding every available manufacturing machine languages and communication protocols. But to do this, the cloud would require a more sophisticated architecture and additional resources.
[0045] Developing a communication method that will communicate with the manufacturing machine tools in their own specific languages and will communicate with other machine tools and the cloud in a common structured machine-readable formats, such as XML and JSON, is more feasible and cost-effective. As shown in
[0046] In one embodiment, the adapter can be considered as an operator of a machine tool. It is the only component in the CPMC that has direct access to the machine tools. It performs as a gateway for the machine tools. The adapter is responsible for both collecting status data from a connected machine tool and sending commands to a connected machine tool for its operations. A machine tool requires its own adapter as a machine tool of a specific type typically has its own data format and a set of its own operations. The construction of the adapter can be different from machine tool to machine tool and it can be implemented as software, or a combination of hardware and software.
[0047] Adapter programs should be custom-written because semantics, units, and values of data usually differ from machine tool to machine tool and device to device. The interface between the adapter and machine tool can also be varied.
[0048] To acquire information on the status of a machine tool, the adapter is configured to collect raw monitoring data directly from the machine tool in a machine specific language. Common types of data are machine tool's availability, the position of the axes, temperatures, progress rate, and estimated time of the ongoing process, etc. The data acquisition process is dependent on the type of machine tools. For example, since many 3D printers and CNC machines use G-code, their adapters may send G-code based query and collects their responses. After acquiring the data from the machine, the adapter converts the acquired data into a key-value pair based text dictionary. The importance of this conversion is twofold. Firstly, it guarantees that data in various forms from machines or devices manufactured by many different vendors are presented to the agent in one common format. The design of adapter enables one agent to work with many types of adapters. Secondly, the dictionary makes it easier for the agent to convert the available data into a common machine-readable format. Once the dictionary is created, it is sent to the agent for additional processing. The data acquisition can be performed periodically. The time period between each cycle of data acquisition is determined by designer of the adapter. The process of operating machine tools using the adapter is in a reverse order. In order to perform an operation of the machine tool over the Internet, the adapter either sends a command to the machine tool to perform the requested operation or execute a program to complete the operation. Both processes of data acquisition and operation of the adapter with intermediate states are shown in
[0049] The one or more agents of the present invention are responsible for the bulk of the communications and act as a bridge that connects a machine tool to another machine tool or to the Internet. It is primarily a software program that works both as a translator and a server. In a data acquisition process, it first receives status data from the adapter as a key-value pair based text dictionary as previously described. It then converts this dictionary into a document in a standard XML format. This conversion is done based on the semantic ontology used which is designed to represent manufacturing resources and operations.
[0050] In other embodiments, schemas may be developed and used to perform XML conversion. The schemas are based on the semantic ontology of MTComm. The agent hosts an HTTP server to publish the status data in XML format across the Internet and to receive operation requests from agents of other machine tools or the cloud. Thus, the agent adds IoT capabilities to the machine tool. Functionalities of agents are provided as RESTful web services.
[0051] In other aspects of the present invention, when initiating an operation of a particular machine tool, a request for the operation is sent to its agent. The request message is represented in XML format. Upon receipt, the agent validates and verifies the incoming request in order to ensure the safety of the machine. Once verified, the agent translates the request into a text-based dictionary and sends it to the adapter. The actual operation is carried out by an adapter associated with the tool.
[0052] The agent needs to have sufficient buffer storage for storing both status data and operation. If the buffer becomes overfilled, the agent deletes older and unnecessary data and operations. All web services hosted by the agent are RESTful. The state diagram of the agent is shown in
[0053] In other aspects, the present invention uses a semantic ontology to represent a manufacturing machine tools' data and operations. Machine tool data may include but is not limited to machine configuration data, machine characteristics data, machine diagnosis data, manufacturing service data, and manufacturing process data. Operations include commands and their parameters. This ontology is regarded as an upper ontology, which is a lightweight ontology limited to concepts that are abstract and generic enough to address a broad range of objects in the domain of interest. Therefore, while providing a level of standardization, an upper ontology has sufficient flexibility and extendibility necessary for the conceptualization of highly heterogeneous and dynamic domains. In a preferred embodiment, the ontology represents the structure of machine tools and their components and contains their data and operations in a top-down fashion.
[0054]
[0055] In the hierarchical representation of manufacturing machine tools, a machine tool consists of multiple components and/or subcomponents. A machine tool or component can have one or more dataitems and operations. A dataitem represents a piece of status information that can be collected from the machine tool or its components. An operation represents a manufacturing activity that can be performed by the machine tool or its components. A dataitem has several attributes such as name, id, data type, category, and unit type. Types of operations are shown in
[0056] As this ontology is primarily designed for Internet-based communication of machine tools, all information transferred over the Internet is represented in XML format. XML provides an interchangeable data format over the Internet based on a scalable hierarchical data structure. It is easy for machines and applications to read and parse data in XML format. The ontology provides a hierarchical representation of both monitoring data and operations of machine tools.
[0057] In other embodiments, the data acquisition process of the present invention may involve three different types of services and XML documents for monitoring: 1) probe, which provides configuration information of a machine tool including all available monitoring data types and operations.
[0058] The machine tool itself may be described as a device. The device tag may have attributes that represent characteristics of one or more machine tools. In the probe protocol and document, dataitems are defined and categorized. The basic attributes of dataitems and operations are id, name, category, and type. The ontology defines the most basic structure of the XML document, and it can be expanded. For example, in the example of probe document, the components are classified into Axes and Sensor. The probe document is accessible from an agent.
[0059] Data about the current status of a machine tool are collected by an adapter and converted to a text dictionary. The agent converts this data into an XML document using schemas and makes it available to agents of other machine tools and cloud applications over the Internet. A sample of current document is shown in
[0060] These protocols can be used independently or in cyber manufacturing. In a cyber-physical manufacturing cloud environment, when a machine tool is registered with a cyber-physical manufacturing cloud, its web services are added in the cloud's service repository. It contains information of these web services, such as URL of each service. The cloud sends an HTTP GET request for both probe and current with the corresponding URL.
[0061] The operations of the present invention are of two types: 1) JOB which is a machine tool level operation, and 2) ACTION which is a component specific operation. Operations of a machine tool can be performed by sending an operation request to its agent directly from another machine tool or a cyber-physical manufacturing cloud. In a cyber-physical manufacturing cloud environment, a user can perform a probe service to obtain configuration information of the machine tool and a list of its operations. An operation service and XML document contain the specification of the requested operation, such as the type of operation and its parameters. The embodiments of the present invention may be configured to support multiple operation requests in one single message. The agent performs validation and verification of an operation request in XML to avoid damages of invalid operations.
[0062] Once the operation request is validated and verified, the agent parses its operation XML document and produces a text-based dictionary in a sequence of key-value pairs for the adapter. Once the adapter receives the dictionary, it sends commands to the machine tool to perform the operation. As the machine starts the operation, the status of the machine tool is changed from AVAILABLE to BUSY.
[0063] The performance and effectiveness of the of the present invention were tested with a testbed of the CPMC. The structure of the testbed is shown in
[0064] The testbed consists of three separate testing cells. Two cells are located at one location and another is remotely located. The purpose of having three testing cells is to demonstrate the capability of the present invention to connect and operate manufacturing resources from different locations over the Internet. One location has three machinesan X-Carve CNC machine from Inventables, a small robotic arm from UFactory, and a RepRapc 3D printer from Ultimaker. Another cell has a robotic arm from UFactory and a custom-made RepRap 3D printer called Core XZ. The other cell from the other location consists of two machinesa small robotic arm and a RepRap 3D printer from Bukobot. All these machines are based on open-source software. Each cell may have a dedicated local server. The local servers work as gateways between the cells and the cloud. All communications between the machine tools and the cloud are transferred through the servers. Each machine tool is connected to a Raspberry Pi (RPi) which works as a controller of that machine tool. Both the agent and adapter programs are deployed in the RPi. These programs may be developed in python. The programs use the RPi's memory as their buffer storages. The RPis are connected to the local network via Ethernet and Wi-fi. The connection types between the RPis and the machines are variedvia USB, Bluetooth or Wireless network card.
[0065] The embodiments of the present invention were tested with a variety machine tools. The schemas have been developed for the 3D printers, CNC machine, and Robot arms. Each machine tool provides a certain number of services. The 3D printer can print three types of objects with gray colored thermoplastic Polylactide (PLA)a cup, a clip and a ring. The other 3D printer can produce 2 objects with violet colored PLAa square box and a circular ball. The CNC machine can drill and curve 3 kinds of designs into wood and plastic boards. The robotic arm is used to remove the produced object from other machines. In this case, the verification process of the operation request is carried out by the agent. The associated files for these operations are stored in the RPis' memory. The cloud has a service repository that keeps track of all the registered machine tools with the address of the associated local server. Alongside the device level job (printing for the 3D printers and drilling for the CNC machine), the machine tools of the testbed also support several additional JOBs, such as RESETresetting a machine to default idle state, STOPstopping an ongoing operation, PAUSEhalting an operation, and RESUMEresuming a paused operation. The robotic arms can remove an object from a pre-specified location to another location through the REMOVE operation. Also, several ACTION type operations are also available for the machine tools like changing the x, y and z-axis position, and changing the temperature of the extruder and heat bed (for 3D printers)
[0066] Several manufacturing experiments were conducted using several scenarios: 1) All machine tools are AVAILABLE; 2) some of them are AVAILABLE; and 3) All of them are BUSY. The machine tools have successfully completed their requested operations and the cloud has displayed the status of the machine tools correctly in all the scenarios. The requests have been placed remotely from multiple locations. Experiments conducted demonstrate effectiveness of the present invention to perform requested manufacturing operations remotely.
[0067] The present invention provides an Internet scale communication method of machine tools for exchanging manufacturing services and enabling operations of machine tools over the Internet through RESTful web services in addition to their monitoring services. The semantic ontology of the present invention provides a uniform representation of configuration and operations of heterogeneous machine tools so that they can exchange their information and services. The agent-adapter architecture of the present invention enables machine tools to communicate with each other or through a cyber-physical manufacturing cloud. The communication method facilitates remote on-line monitoring and operations of the machines at both device level and component level. The tests conducted with a testbed of a cyber-physical manufacturing cloud demonstrate the feasibility and effectiveness of the present invention for both acquisition of status information of machine tools and operations across the Internet.
[0068] The embodiments of the present invention may be used in a wide variety of applications other than those described above. Other uses or applications include, but are not limited to, online additive manufacturing marketplaces; the offering that effect trade services over the Internet using digital manufacturing machines such as CNC machines, 3D printers, robotic arms, etc.; Internet Of Things products (IoT) and services; cloud-based manufacturing services and Manufacturing Execution Systems (MES); and Internet enabled equipment for power grids, water supplies and gas supplies.
[0069] While the foregoing written description enables one of ordinary skill to make and use what is considered presently to be the best mode thereof, those of ordinary skill will understand and appreciate the existence of variations, combinations, and equivalents of the specific embodiment, method, and examples herein. The disclosure should therefore not be limited by the above-described embodiments, methods, and examples, but by all embodiments and methods within the scope and spirit of the disclosure.