BACKGROUNDThe present disclosure generally relates to enabling devices within an industrial automation system to become aware of certain attributes pertaining to the industrial automation system or a component of the industrial automation system, in which the devices are located. More specifically, the present disclosure relates to systems and methods for industrial automation devices to analyze received data with respect to various components of the industrial automation system or the industrial automation system as a whole.
This section is intended to introduce the reader to various aspects of art that may be related to various aspects of the present techniques, which are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present disclosure. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.
SUMMARYA summary of certain embodiments disclosed herein is set forth below. It should be understood that these aspects are presented merely to provide the reader with a brief summary of these certain embodiments and that these aspects are not intended to limit the scope of this present disclosure. Indeed, this present disclosure may encompass a variety of aspects that may not be set forth below.
In a first embodiment, a non-transitory computer-readable medium includes computer-executable instructions that, when executed, cause one or more processors of a first electronic device to perform operations including sending a request for asset data associated with an asset of an industrial automation system and receiving a set of telemetry data, a set of operational data, a set of inventory data, and a set of customer data associated with the asset, wherein the set of operational data includes one or more operational parameters associated with the asset, wherein the set of telemetry data includes a set of metadata associated with a communication network communicatively coupled to the asset, wherein the set of inventory data includes data indicative of one or more parts associated with the asset, and wherein the set of customer data includes an industrial process associated with the asset. In the embodiment, the method includes selecting an asset model from a set of asset models associated with the asset based on the set of telemetry data, the set of operational data, the set of inventory data, and the set of customer data, wherein each asset model of the set of asset models corresponds to a particular task performed by the asset and generating a mapping hierarchy based on the selected asset model, wherein the mapping hierarchy includes a representation of a plant layout associated with the asset.
In a second embodiment, a non-transitory computer-readable medium includes computer-executable instructions that, when executed, cause one or more processors of a first electronic device to perform operations including receiving a service inquiry associated with at least one component of the plurality of components. In the second embodiment, the method may include, in response to receiving the service inquiry, retrieving a set of application asset data associated with the at least one component, wherein the application asset data is indicative of a task performed by the at least one component and retrieving a mapping hierarchy based on the set of application asset data, wherein the mapping hierarchy includes a representation of a plant layout associated with the at least one component. In the second embodiment, the method includes sending a request to confirm the mapping hierarchy; receiving a confirmation of the mapping hierarchy; determining a trust factor associated with the mapping hierarchy based on the confirmation, wherein the trust factor is indicative of an accuracy of the mapping hierarchy; and updating the service inquiry based on the mapping hierarchy.
In a third embodiment, a method may include receiving, via one or more processors: a service inquiry indicative of an issue associated with a component of an industrial automation system and a set of application asset data associated with the component, wherein the application asset data is indicative of a task performed by the component. In the third embodiment, the method also includes determining, via the one or more processors, an operational history associated with the component based on the set of application asset data, wherein the operational history includes a set of maintenance or repair actions performed on the component and comparing, via the one or more processors, the operational history associated with the component and an expected workflow, wherein the expected workflow includes a set of preventive maintenance actions expected to have been performed on the component. In the third embodiment, the method also includes determining, via the one or more processors, based on the comparison, a component status associated with the component, wherein the component status is indicative of an operational health of the component, wherein the operational health is indicative of a remaining lifecycle of the component and generating, via the one or more processors, a maintenance workflow based on the component status, wherein the maintenance workflow includes a set of maintenance actions performed by the component to resolve the issue.
BRIEF DESCRIPTION OF THE DRAWINGSThese and other features, aspects, and advantages of the present disclosure will become better understood when the following detailed description is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
FIG. 1 illustrates a block diagram representing example hierarchical levels of an industrial automation system, in accordance with an embodiment presented herein;
FIG. 2 illustrates a block diagram of an example control system that may be employed within the industrial automation system ofFIG. 1, in accordance with an embodiment presented herein;
FIG. 3 illustrates an example of the industrial automation system ofFIG. 1, in accordance with an embodiment presented herein;
FIG. 4 illustrates a block diagram of a data analysis system that may be employed in the industrial automation system ofFIG. 1, in accordance with an embodiment presented herein;
FIG. 5 illustrates a block diagram of a data analysis system, in accordance with an embodiment presented herein;
FIG. 6 illustrates a data communication system, in accordance with an embodiment presented herein;
FIG. 7 illustrates a flow diagram of a process for communicating data within the data analysis system ofFIG. 5 and the data communication system ofFIG. 6, in accordance with an embodiment presented herein;
FIG. 8 illustrates a flow diagram of a process for processing data received with the common data pipeline ofFIG. 5 andFIG. 6, in accordance with an embodiment presented herein;
FIG. 9 is a flowchart corresponding to asset data retrieval operations associated with a customer service and maintenance (CSM) system, in accordance with an embodiment;
FIG. 10 is a flowchart corresponding to updating service inquiries with retrieved asset data with a CSM system, in accordance with an embodiment; and
FIG. 11 is a flowchart corresponding to diagnosing issues based on service inquiries with a CSM system, in accordance with an embodiment.
DETAILED DESCRIPTIONEmbodiments of the present disclosure are generally directed towards an industrial automation system that may employ a number of industrial automation components to perform various industrial processes. In one embodiment, each of the industrial automation components may be capable of connecting to an industrial automation network that may facilitate communication between each of the connected industrial automation components as well as different entities. The industrial automation network may include any wired or wireless network that may be implemented as a local area network (LAN), a wide area network (WAN), and the like. Accordingly, an industrial automation component (e.g., a controller) associated with one entity (e.g., a factory) may communicate with a computing device, such as a computing device maintained by another party located outside of the factory. As an example, the factory may include an industrial automation system that communicates with one or more computing devices of another party (e.g., consumer, different manufacturer) that provides services for the industrial automation, such as data analysis, data management, diagnostic services, security services, or maintenance services. Because there are a wide variety of different automation devices which may be manufactured by different entities, communicate using varying communications protocols, or both, a party receiving data may be unable to discern or analyze data that is received from another party. For example, one or more automation components may provide data associated with an automation system or components thereof, but the computing devices receiving the data may not know the function of the devices or even what the devices are. Furthermore, because relatively large quantities of data may be transmitted between parties, transferring data constantly between parties may reduce available network bandwidth.
The present disclosure describes retrieving and/or receiving data to assist in diagnosing service issues for a component of an industrial automation system. For example, as discussed herein, a customer support and maintenance system may generate a mapping hierarchy including a visualization and/or representation of a plant floor of an industrial automation system and may generate a maintenance workflow to initiate at least one maintenance action performed by the component.
As additionally described herein, various types of data may be grouped (e.g., packaged) and encoded before being communicated, which may reduce congestion across networks as well as enable the data to be transferred securely. A computing device that receives such data may decode the data, aggregate the data, align the data, and the like. The aligned/aggregated data may be organized or tagged, thereby enabling recipient devices to subscribe to the data output by the source or any type of data present on the common data pipeline. For example, data related to preventative maintenance may be provided as alerts via the common data pipeline using subscription services. As such, as data is made available via microservices or the like, the data may be tagged with a device identifier and include a payload representing the raw data. The data may be organized or aggregated with other available data for encryption and then transmission via the common data pipeline. Furthermore, on the egress side, based on the tags, the data may be routed to an appropriate device. For example, a cloud computing device may analyze metadata such as data tags to determine where data should be routed, and the data may be routed accordingly. As such, the techniques described herein enable data to be shared across devices in a uniform and secure manner while also providing context for the underlying data being communicated.
By way of introduction,FIG. 1 depicts a block diagram of an example of hierarchical levels that may represent anindustrial automation system10. Theindustrial automation system10 may be any system in the material handling, packaging industries, manufacturing, processing, batch processing, or any technical field that employs the use of one or more industrial automation components. In one embodiment, theindustrial automation system10 may include afactory12 that may encompass part of the entireindustrial automation system10. As such, theindustrial automation system10 may includeadditional factories14 that may be employed with thefactory12 to perform an industrial automation process or the like.
Each factory12 (or factory14) may be divided into a number ofareas16, which may, for example, include different production processes that use different types of industrial automation components. In one example, onearea16 may include a sub-assembly production process and anotherarea16 may include a core production process. In another example, eacharea16 may be related to a different operation being performed in the manufacturing process. For instance, in a jelly bean manufacturing system, theareas16 may include a jelly bean making area, a packaging area, a water filtration area, and the like. In yet another example, the area may include a production line in which a particular industrial process may be performed. Referring back to the jelly bean manufacturing system example, the production line may include a cooking line in which the jelly beans may be created, a sorting line where the jelly beans may be sorted according to a respective flavor, and a packaging line where the sorted jelly beans may be packaged into boxes or the like.
Thearea16 may also be associated with physical locations of a number ofcomponents20 with respect to theindustrial automation system10. Theareas16 may also be related to different discipline areas of theindustrial automation system10, such as batch operation areas, continuous operation areas, discrete operation areas, inventory operation areas, and the like.
Theareas16 may be subdivided into smaller units, orcells18, which may be further subdivided intocomponents20. Using the example described above, the sub-assemblyproduction process area16 may be subdivided intocells18 that may denote a particular group ofindustrial automation components20 that may be used to perform one aspect of the sub-assembly production process. As such, thecell18 may include a portion of thearea16 such as first part of a production line. Thecell18 may also include different parts of a particular procedure.
Thesecells18 may then be further subdivided intocomponents20, which may correspond to individual industrial automation components, such as controllers, input/output (I/O) modules, motor control centers, motors, human machine interfaces (HMIs), operator interfaces, contactors, starters, sensors, drives, relays, protection devices, switchgear, compressors, network switches (e.g., Ethernet switches, modular-managed, fixed-managed, service-router, industrial, unmanaged, etc.) and the like. Although thefactory12, thefactories14, theareas16, and thecells18 are termed as factories, areas, and cells, it should be noted that in various industries these groupings may be referred to differently in different industries or the like. For instance, the groupings may be termed as units, areas, sites, and the like.
Thecomponents20 may also be related to various industrial equipment such as mixers, machine conveyors, tanks, skids, specialized original equipment manufacturer machines, and the like. Thecomponents20 may also be associated with devices used by the equipment such as scanners, gauges, valves, flow meters, and the like. In one embodiment, every aspect of thecomponent20 may be controlled or operated by a single controller (e.g., control system). In another embodiment, the control and operation of each aspect of thecomponent20 may be distributed via multiple controllers (e.g., control system).
Thecomponents20 may be used within the correspondingcell18,area16, orfactory12 to perform various operations for therespective cell18,area16, orfactory12. In certain embodiments, thecomponents20 may be communicatively coupled to each other, to anindustrial control system22, or the like. Additionally, theindustrial control system22 may also be communicatively coupled to one or more control systems that may monitor and/or control the operations of eachrespective cell18,area16, orfactory12.
As such, theindustrial control system22 may be a computing device that may include communication abilities, processing abilities, and the like. For example, theindustrial control system22 may be a controller, such as a programmable logic controller (PLC), a programmable automation controller (PAC), or any other controller that may monitor, control, and operate an industrial automation device or component. Theindustrial control system22 may be incorporated into any physical device (e.g., the industrial automation components20) or may be implemented as a stand-alone computing device (e.g., general purpose computer), such as a desktop computer, a laptop computer, a tablet computer, a mobile device computing device, or the like.
In certain embodiments, theindustrial control system22 may be implemented within devices that enableindustrial automation components20 to connect and communicate with each other. For instance, theindustrial control system22 may be implemented within network routers and/or switches. In this manner, the network routers and/or switches may host theindustrial control system22 that may be used to control and operate theindustrial control components20 that may be communicatively coupled to the respective network router and/or switch. Since network routers and/or switches may serve as a hub for data transfers between theindustrial automation components20, theindustrial control system22 embedded within the routers/and or switches may be strategically positioned within a data network to have access or receive data associated with variousindustrial automation components20. As such, theindustrial control system22 may perform various types of analyses on the received data and may then control and operate the respectiveindustrial automation components20 more efficiently or effectively based on the results of the analyses.
In addition to the physical devices mentioned above, theindustrial control system22 may include a software-based emulation of any of the aforementioned physical devices. For example, theindustrial control system22 may be implemented as software modules that may perform similar operations as certain hardware controllers, devices, and the like. As such, theindustrial control system22 may create virtual instances of the hardware components (e.g., controllers, I/O modules). These virtual instances may provide more flexible ways in which theindustrial control system22 may be implemented to monitor and control theindustrial automation components20.
In one embodiment, theindustrial control system22 may be implemented virtually in a cloud-accessible platform (i.e., cloud-computing system), one or more servers, in various computing devices (e.g., general purpose computers), and the like. As such, theindustrial control system22 may operate as a soft controller or as a control engine running in the cloud-computing system. By virtually implementing theindustrial control system22 in a cloud-computing system, the industrial control system may use a distributed computing architecture to perform various analyses and control operations. As more data associated with theindustrial automation components20, thecells18, theareas16, and thefactories14 become available, the distributed computing architecture in the cloud-computing system may enable data analysis to be performed more efficiently. That is, since the cloud-computing system may incorporate numerous computing systems and processors to perform the data analysis, the results of the analysis may be available more quickly. In this way, the respective operations of theindustrial automation components20, thecells18, theareas16, and thefactories14 may be controlled in real-time or near real-time.
Keeping the foregoing in mind, it should be understood that theindustrial control system22, as mentioned throughout this disclosure, may be implemented as physical components and/or virtual components (i.e., software-based) used to monitor and/or operate theindustrial automation components20, thecells18, theareas16, and thefactories14. Moreover, by providing the ability to incorporate theindustrial control system22 into various types of environments, theindustrial automation system10 may be well suited to expand and grow with the addition of newindustrial automation components20.
FIG. 2 illustrates anexample control system23 that may be employed with theindustrial control system22. As shown inFIG. 2, theindustrial control system22 may be communicatively coupled to anoperator interface24, which may be used to modify and/or view the settings and operations of theindustrial control system22. Theoperator interface24 may be a user interface that may include a display and an input device used to communicate with theindustrial control system22. The display may be used to display various images generated byindustrial control system22, such as a graphical user interface (GUI) for operating theindustrial control system22. The display may be any suitable type of display, such as a liquid crystal display (LCD), plasma display, or an organic light emitting diode (OLED) display, for example. Additionally, in one embodiment, the display may be provided in conjunction with a touch-sensitive mechanism (e.g., a touch screen) that may function as part of a control interface for theindustrial control system22. In some embodiments, theoperator interface24 may be characterized as a human-machine interface, a human-interface machine, or the like.
Theindustrial control system22 may also be communicatively coupled to input/output (I/O)modules25. The I/O modules25 may enable theindustrial control system22 to communicate with various devices in the industrial automation system. Moreover, the I/O modules25 may enable theindustrial control system22 to receive information from the various devices, such that the information may provide reference points and other details regarding the industrial automation system to assist theindustrial control system22 to become aware of the environment in which theindustrial control system22 may be operating.
Generally, theindustrial control system22 may also be communicatively coupled to a certain device that may be used to control or manage the operation of the industrial automation system. For instance, in one embodiment, theindustrial control system22 may be coupled to adrive26. Thedrive26 may be an electrical drive that may convert an input alternating current (AC) voltage into a controllable AC voltage using a rectifier circuit and an inverter circuit. Theindustrial control system22, in one embodiment, may be a controller that may control the operation of thedrive26. Thedrive26 may be coupled to amotor27, which may operate a component such as aconveyor28 or the like. In one embodiment, theindustrial control system22 may be communicatively coupled to theoperator interface24, the I/O module25, thedrive26, or the like via a communication network such as EtherNet/IP, ControlNet, DeviceNet, or any other industrial communication network protocol.
Keeping theexample control system23 in mind and referring toFIG. 1, thedrive26, themotor27, and theconveyor28 may each be considered to be asingle component20. However, thedrive26, themotor27, and theconveyor28 may also be considered to be a part of aparticular cell18,area16, andfactory12. Accordingly, theindustrial control system22 may have the ability to adjust the operation of thecomponent20, thecell18, thearea16, and thefactory12. For example, by adjusting the operation of thedrive26, theindustrial control system22 may adjust the operation of themotor27 and theconveyor28. Consequently, theindustrial control system22 may adjust the operation of thecell18, thearea16, and thefactory12 having theconveyor28 as a component. By understanding how eachcomponent20 may be related to theindustrial automation system10 with respect to eacharea16, eachcell18, and eachcomponent20, theindustrial control system22 may begin to become capable to manage the operations (e.g., production, energy usage, equipment lifecycle) of theindustrial automation system10 more efficiently.
As mentioned above, theindustrial control system22 may be a controller or any computing device that may include communication abilities, processing abilities, and the like. For instance, as illustrated inFIG. 2, theindustrial control system22 may include acommunication component32, aprocessor34, amemory36, astorage38, input/output (I/O)ports40, and the like. Thecommunication component32 may be a wireless or wired communication component that may facilitate communication between theindustrial automation components20, the control systems for thefactory12, thearea16, thecell18, and the like. Theprocessor34 may be any type of computer processor or microprocessor capable of executing computer-executable code. Theprocessor34 may also include multiple processors that may perform the operations described below. Thememory36 and thestorage38 may be any suitable articles of manufacture that can serve as media to store processor-executable code, data, or the like. These articles of manufacture may represent computer-readable media (i.e., any suitable form of memory or storage) that may store the processor-executable code used by theprocessor34 to perform the presently disclosed techniques. Thememory36 and thestorage38 may also be used to store the data, analysis of the data, and the like. Thememory36 and thestorage38 may represent non-transitory computer-readable media (i.e., any suitable form of memory or storage) that may store the processor-executable code used by theprocessor34 to perform various techniques described herein. It should be noted that non-transitory merely indicates that the media is tangible and not a signal.
The I/O ports40 may be interfaces that may couple to the I/O modules25 discussed above. Moreover, while theindustrial control system22 is illustrated as including thecommunication component32,processor34,memory36,storage38, and input/output (I/O)ports40, it should be noted that the control system for thefactory12, thearea16, thecell18, and the like may also include the same components to perform the various techniques described herein.
Keeping the foregoing in mind, theindustrial control system22 may use thecommunication component32 to communicatively couple to one or more control systems. Theindustrial control system22 may also monitor and/or control the operations of eachrespective component20,cell18,area16, orfactory12. For example, theindustrial control system22 may receive data received from assets, controllers, and the like (e.g., the components20) that may be located in thefactory12, theareas16, or thecells18. In one embodiment, theindustrial control system22 or a control system for eacharea16,cell18, orcomponent20 may receive information related to how theindustrial automation system10 may be subdivided, how eacharea16,cell18, andcomponent20 may interact with each other, whichcomponents20 are part of eachfactory12,area16, orcell18, or the like. For example, eacharea16 may be related to a particular process of a manufacturing process. As such, the information received by the respective control system may detail which processes performed incertain areas16 may depend on other processes being completed inother areas16.
In certain embodiments, the respective control system may determine how eachcomponent20 may relate to arespective cell18 orarea16 based on data received from eachrespective component20. For instance, a control system of afirst component20 may receive data from multipleother components20, such as a motor for a conveyer belt and a compressor for some industrial automation device. Upon receiving the data from asecond component20 that corresponds to the motor for the conveyer belt, the control system of thefirst component20 may determine that thesecond component20 is associated with somecell18, which may be part of somearea16, based on a speed in which the motor may be operating. That is, the control system of thefirst component20 may refer to information, such as system design parameters for theindustrial automation system10, and determine where the motor is located by identifying a motor with operating parameters, as specified by the system design parameters, having a substantially similar speed as the received speed. In certain embodiments, the speed at which the motor may be operating may not be sufficient to identify a particular motor if other motors in theindustrial automation system10 are operating at the same speed. As such, the control system may identify a motor by monitoring a speed profile (i.e., speed curve over time) of each motor in theindustrial automation system10. Additional ways in which a control system may identifyparticular components20 may include monitoring an operating mode (e.g., running/stopped/paused) of eachcomponent20, examining network related information (e.g. IP addresses, MAC addresses, sub-net masks, or a combination of any of these, etc.) associated with eachcomponent20, monitoring operating temperatures of eachcomponent20 if available (e.g.,components20 incertain cells18 are exposed to more heat/cold than others cells18), monitoring energy consumption data associated with each component (e.g., larger drives could be part of and used incertain cells18 while smaller drives are used in other cells18), and so forth.
In any case, after analyzing the data associated with eachcomponent20, the control system of thefirst component20 may determine its relationship withother components20 of the industrial automation system with respect to the various scopes or hierarchical levels of theindustrial automation system10. By understanding the relationship toother components20 with respect to various scopes of theindustrial automation system10, the control system of thefirst component20 may become aware of conditions occurring in processes,areas16, orcells18 that may directly or indirectly affect the operations of thefirst component20. As such, the control system of thefirst component20 may adjust its operations and send commands toother components20 to adjust their respective operations to compensate or minimize negative consequences that may occur due to the conditions in theareas16, thecells18, or the like. For example, production capacity of upstream or downstream cells being automatically adjusted by control systems in the respective cells by monitoring production levels of the cells adjacent to or related to the respective control system. As a result, the control systems may optimize production of theindustrial automation system10 by reducing the effects of bottlenecks cells that may lead to over or under production. In another example, sections of a conveyor used to transport materials may start adjusting their respective speeds based on other sections of the conveyor or production variances associated with thearea16, thecells18, or theentire factory12. In yet another example, the control system of thefirst component20 may take into account energy consumption data associated with a second component to adjust the operation of the first component20 (e.g. go to a lower energy consumption mode to maintain overall consumption constant, etc.). Additionally, after eachcomponent20 becomes aware of the presence or existence of anothercomponent20, some of thecomponents20 may negotiate and determine an optimal production rates for eachcomponent20 based on pre-determined criteria such as energy consumption/rates, production mix, production levels, and the like. Keeping the foregoing in mind, an exampleindustrial automation system10 of apackaging factory50 and how thepackaging factory50 may be divided and sub-divided intoareas16 andcells18 are depicted inFIG. 3. As illustrated inFIG. 3, thepackaging factory50 may represent an exemplary high-speed packaging line that may be employed in the food and beverage industry that may process beverage containers (i.e., a beverage line). As such, thepackaging factory50 may include industrial automation components that, for example, may enable machine components to fill, label, package, or palletize containers. Thepackaging factory50 may also include one or more conveyor sections that may transport, align, or buffer containers between the machine components. AlthoughFIG. 3 illustrates a packaging factory, it should be noted that the embodiments described herein are not limited for use with a packaging factory. Instead, it should be understood that the embodiments described herein may be employed in any industrial automation environment.
As illustrated inFIG. 3, thepackaging factory50 may include machine components configured to conduct a particular function with respect the beverage packaging process. For example, the beverage packaging process begins at aloading station52, where pallets of empty cans or bottles to be filled are fed intopackaging factory50 via aconveyor section54. Theconveyor section54 transports the empty cans from theloading station52 to awashing station56, where the empty cans and bottles are washed and prepared for filling. As the washed cans and bottles exit thewashing station56, theconveyor section54 may gradually transition into an aligningconveyor section58, such that the washed cans and bottles enter a filling and sealingstation60 in a single-file line.
The filling and sealingstation60 may function at an optimal rate when the washed cans and bottles enter the filling and sealingstation60 in a steady, uniform stream. However, if the transition between theconveyor section54 and the aligningconveyor section58 is erratic or faster than desired, the filling and sealingstation60 may not function at an optimal rate. As such, optimizing performance parameters (e.g., speed, size, function, position/arrangement, or quantity) of the conveyor sections (i.e.,conveyor section54 or aligning conveyor section58) may be beneficial to the efficiency of thepackaging factory50.
As the sealed cans exit the filling and sealingstation60, abuffering conveyor section62 may hold the sealed cans to delay their entry into the next station. In addition, thebuffering conveyor section62 may transport the sealed cans in a single-file line so that the sealed cans arrive at asterilization station64 or alabeling station66 at a desired time with the desired quantity of cans. Similar to the filling and sealingstation60, thepackaging station64 or thelabeling station66 functions efficiently when thebuffering conveyor section62 operates at optimal performance parameters (e.g., optimal speed, size, function, position/arrangement, or quantity). After the cans and bottles have been sterilized and/or labeled, they are packaged into cases (e.g., 6-pack, 24-pack, etc.) at apackaging station68, before they are palletized for transport atstation70 or stored in awarehouse72. Clearly, for other applications, the particular system components, the conveyors and their function will be different and specially adapted to the application.
Thepackaging factory50 may also include theindustrial control system22, which may be located in acontrol room74 or the like. Theindustrial control system22 may be coupled to one ormore sensors76, which may monitor various aspects of the machine components or conveyor sections of thepackaging factory50. Thesensors76 may include any type of sensor, such as a pressure sensor, an accelerometer, a heat sensor, a motion sensor, a voltage sensor, and the like. Thesensors76 may be located in various positions within thepackaging factory50 and may measure a parameter value of interest relating to the beverage packaging process during the operation of thepackaging factory50. For example, in certain embodiments, thesensors76 may include sensors configured to measure the rate of bottles or containers per minute (BPM) entering or leaving a machine component (i.e.,stations54,56,58,64,66,68 or70), or the rate of accumulation of bottles on a portion of a conveyor section (e.g.,conveyor section54 or62). In general, anysensors76 capable of measuring a parameter value of interest relating to the beverage packaging process of the packaging factory50 (e.g., rate, pressure, speed, accumulation, density, distance, position/arrangement, quantity, size, and so forth) may be used.
In some embodiments, thepackaging factory50 may include a number of industrialautomation power components78 that may be used to control power used by various machine components in thepackaging factory50. Thepower components78 may include devices, such as drives, motors, inverters, switch gear, and the like, which may be used to operate a corresponding machine component. For example, theconveyor section54 may rotate using a motor, which may be controlled via apower component78, such as a variable frequency drive.
Thepower component78 may include a control system that may monitor and control the operations of therespective power component78. As such, thepower component78 may correspond to thecomponent20 described above with respect toFIG. 1. Referring back to the example above, the control system of thepower component78, such as the drive used to control the motor rotating theconveyor section54, may monitor a voltage provided to the motor and may determine the speed at which theconveyor section54 may be moving. In one embodiment, the control system of thepower component78 may send the data related to the speed at which theconveyor section54 may be moving to theindustrial control system22 or to other control systems that may controlother components20. In this manner, theindustrial control system22 or other control systems may be aware of the operations of thepower component78 and may account for these operations when determining how its respective component should operate.
Keeping thepackaging factory50 ofFIG. 3 in mind, theindustrial control system22 may receive data frommultiple power components78 dispersed throughout thepackaging factory50. Theindustrial control system22 may then contextualize the received data with respect to different scopes or hierarchical levels as described above with reference toFIG. 1.
In one embodiment, the scopes of thepackaging factory50 may be categorized based on functions of thecomponents20 and thecells18 of thepackaging factory50. For instance, referring to bothFIGS. 3 and 4, theloading station52 may be categorized ascell1, thewashing station56 may be categorized ascell2, the sealingstation60 may be categorized ascell3, thesterilization station64 may be categorized ascell4, the labeling station may be categorized ascell5 and thepackaging station68 may be categorized ascell6. As shown inFIG. 4, eachcomponent20 may correspond to aparticular cell18. That is, eachcomponent20 that may be used by the respective station may be categorized as part of therespective cell18.
In the same manner, theareas16 may be categorized based on functions of thecells18 of thepackaging factory50. For instance, cells1-3 of thepackaging factory50 may correspond to a preparation process and cells4-6 of thepackaging factory50 may correspond to a packaging process. As such, cells1-3 may be categorized asarea1 and cells4-6 may be categorized asarea2.
In one embodiment, theindustrial control system22 may determine the categories or scopes of theindustrial automation system10 based on a factory diagram or specification that describes the various processes employed by theindustrial automation system10 and thecomponents20 used for the respective processes. In another embodiment, each control system for eachcomponent20 may include information indicating the function of thecomponent20, a location of thecomponent20 with respect to theindustrial automation system10, a part of a manufacturing process that thecomponent20 is associated with, or the like. Here, each respective control system of eachrespective component20 may send this information to theindustrial control system22 or to other control systems ofnearby components20. The control system that receives the information may then determine how thecomponent20 that transmitted the information may relate to the various scopes of theindustrial automation system10, how thecomponent20 that received the information may be related to thecomponent20 that transmitted the information with respect to the various scopes of theindustrial automation system10, and the like. In certain embodiments, each control system may send information related to the scopes of theindustrial automation system10, information detailing a relationship between each scope of theindustrial automation system10, information detailing a relationship between eachcomponent20 in the industrial automation system with respect to each scope of theindustrial automation system10, and the like to adatabase80, which may be accessible by each control system as a centralized database or a database distributed between a number of machines, computers, or the like.
Common Data PipelineAdditionally, theindustrial control system22 may communicate with other computing devices, such as computing devices not included in thefactory12 that may be controlled by other entities. For example,FIG. 5 depicts adata analysis system84 that includes the factory12 (which includes the industrial control system22), thedatabase80, anedge computing device86, acloud computing device88, and one or moreother computing devices90. Theindustrial control system22 anddatabase80 may communicate with one another as discussed above. Moreover, theindustrial control system22 anddatabase80 may be communicatively coupled to theedge computing device86, which may be a computing device such as a computer, server, router, routing switch, or integrated access device (IAD) that manages the flow of data into and out of a network, such as industrial automation network included in the factory12 (e.g., a network utilized by theindustrial control system22 to communicate with the components of theindustrial automation system10 and the database80). Accordingly, theedge computing device86 may be included within theindustrial automation system10. Furthermore, whileFIG. 5 includes a singleedge computing device86, in other embodiments, thedata analysis system84 may include more than oneedge computing device86.
Thecomputing devices90 may include computers, servers, or the like that are operated or managed by other entities. For example, the computing devices may be associated with other factories or an entity that provides one or more services for the factory12 (or industrial automation system10), such as data management, data analysis, security services, or diagnostic services (e.g., to determine or resolve potential errors associated with theindustrial automation system10 or the operation thereof). Thecomputing devices90 may communicate with the industrial automation system10 (e.g., via the industrial control system22) anddatabase80 via thecloud computing device88 and theedge computing device86 utilizing a common data pipeline that may be partially implemented viacommunication link92. Thecommunication link92 may include communication infrastructure, such as a wired connection, wireless connection, or both that communicatively couples theedge computing device86, thecloud computing device88, and thecomputing devices90 to one another. The common data pipeline generally refers to a communication infrastructure (e.g., the communication link92) as well as one or more processes utilized to send, receive, and characterize data that is communicated using the communication infrastructure. As such, the techniques described herein may be implemented using already existing communication infrastructure (e.g., wired networks, wireless networks, or a combination thereof), thereby avoiding adding more communication infrastructure in potentially already crowded industrial environments.
Theedge computing device86, the cloud computing device, and thecomputing devices90 may each include one or more processors that execute computer-readable instructions, such as instructions that may be stored in memory or a storage device that theedge computing device86, the cloud computing device, and thecomputing devices90 may also include. By executing such instructions, the one or more processors included in theedge computing device86, the cloud computing device, and thecomputing devices90 may communicate with one another via the common data pipeline, which is discussed below in more detail with respect toFIG. 6. In other words, theedge computing device86, thecloud computing device88, and thecomputing devices90 may include thecommunication component32,processor34,memory36,storage38, and input/output (I/O)ports40 described above and utilize these components to enable communication via the common data pipeline. Before proceeding to discuss the common data pipeline in more detail, it should be noted that, in other embodiments, thedata analysis system84 may not include thecloud computing device88. In such embodiments, thecomputing devices90 may communicate with theindustrial control system22 anddatabase80 via just theedge computing device86. Furthermore, in some embodiments, thecloud computing device88 may be implemented in the form of a system that includes more than one computing device.
Theindustrial control system22 and thedatabase80 may share various types of data with thecomputing devices90 using the common data pipeline. Likewise, thecomputing devices90 may communicate with theindustrial control system22 and thedatabase80 via the common data pipeline. For example, theindustrial control system22 anddatabase80 may share data regarding the factory12 (anddata94 regardingfactories14 in the case of the database80) or components thereof with theedge computing device86, which may selectively communicate the data to thecloud computing device88. For instance, as described in more detail below, theedge computing device86 may group data received from the industrial automation system10 (e.g., viaindustrial control system22 or the database80), applymetadata104A (e.g., data tags) to the received data, or both as part of a protocol before sending the data to thecloud computing device88. By doing so, data associated with the factory12 (or factories14) may be characterized in a way that enables thecloud computing device88 to determine which of thecomputing devices90 to which to send the data. Moreover, characterizing the data enables thecomputing devices90 and thecloud computing device88 to interpret the data. For instance, as described above, the data associated with thefactory12 may pertain to a plethora of different devices that are made by different manufacturers and communicate using different protocols, such as FactoryTalk Live Data, EtherNet/IP, Common Industrial Protocol (CIP), OPC Direct Access (e.g., machine to machine communication protocol for industrial automation developed by the OPC Foundation), or any suitable communication protocol (e.g. DNP3, Modbus, Profibus, LonWorks, DALI, BACnet, KNX, EnOcean). By characterizing the data, thecomputing devices90 and thecloud computing device88 can determine what each particular portion of the data is. This may enable thecomputing devices90 andcloud computing device88 to determine a layout of thefactory12, the automation devices included in the factory12 (or factories14), and what the various forms of received data are (e.g., power consumption data, log files, or other data associated with the factory12 (or factories14).
To help elaborate,FIG. 6 illustrates adata communication system100 that includes thecommunication link92 as well as theindustrial automation system10, thedatabase80, theedge computing device86, thecloud computing device88, and thecomputing devices90.Data102A from theindustrial automation system10 and thedatabase80 may be shared with thecomputing devices90 via the common data pipeline, which can entail thedata102A being provided to theedge computing device86 and cloud computing device88 (e.g., via the communication link92). For example, for communication from the industrial automation system10 (or database80) to thecomputing devices90, theedge computing device86 may function as an ingress to the communication link92 (and common data pipeline). Theedge computing device86 may communicate thedata102A in a secure manner (e.g., by encrypting thedata102A) with thecloud computing device88, which functions as an egress from the communication link92 (and the common data pipeline). Thecloud computing device88 orcomputing devices90 may decrypt the receiveddata102A.
Thedata102A may include a variety of different types of data that can be associated with theindustrial automation system10 or components thereof (e.g., theindustrial control system22, components included in thefactory12, or other electronic devices included in the industrial automation system10). For example, thedata102A may include, but is not limited to, image data (e.g., video data) collected by one or more cameras included in theindustrial automation system10, audio data collected by one or more audio sensors (e.g., microphones) included in theindustrial automation system10, log files generated by theindustrial control system22, data regarding the components of theindustrial automation system10, information regarding software utilized by theindustrial automation system10 or components thereof, and inventory data. Log files may include files that provide information about the components of theindustrial automation system10, such as operation histories, maintenance histories, electrical power consumption data, and the like. Log files may also include information about users who access (e.g., physically or electronically) theindustrial automation system10, information related to security (e.g., security audit log data), and events associated with components of theindustrial automation system10 or software utilized to operate or control the components of the industrial automation system10 (e.g., message logs, syslogs). Additionally, the data regarding the components of theindustrial automation system10 may include the log data or be indicative of the types of components within theindustrial automation system10, functions of components within theindustrial automation system10, the placement of components the industrial automation system10 (e.g., a physical location within the factory12), operating schedules of the components theindustrial automation system10, and the hierarchical levels of theindustrial automation system10.
Conversely, thecomputing devices90 may senddata102B to the industrial automation system10 (and database80) utilizing the common data pipeline. For example, thecomputing devices90 may send thedata102B to thecloud computing device88, which may group thedata102B, characterize thedata102B (e.g., by applyingmetadata104B to thedata102B), encrypt thedata102B, or a combination thereof before providing thedata102B to theedge computing device86. Theedge computing device86 may receive thedata102B, decrypt thedata102B, and provide thedata102B to theindustrial automation system10, theindustrial control system22, thedatabase80, or a combination thereof.
Thedata102B may include, but is not limited to, data resulting from analyzing thedata102A and updates for software that may be authored by an entity or organization in control of one or more of thecomputing devices90. As an example, thecomputing devices90 may process thedata102A to make various determinations regarding thedata102A. This may include making determinations regarding security within the industrial automation system10 (e.g., based on analyzing audio data, video data, security audit log data or a combination thereof), diagnosing or troubleshooting errors or potential errors within the industrial automation system, maintenance operations recommended to be performed within theindustrial automation system10 or a portion thereof (e.g., on a particular component or within a particular hierarchical level of the industrial automation system10), a combination thereof. As further examples, thedata102B may include telemetry data, network communication data, and data pertaining to alarms or events. For instance, based on analyzing thedata102A, thecomputing devices90 may determine that an alarm should be triggered in theindustrial automation system10, whether a particular event occurred within theindustrial automation system10, or determine (e.g., diagnose) why an alarm or event occurred within theindustrial automation system10. Additionally, thedata102B may be data that is sent to alter the configuration of theedge computing device86, to alter the configuration of thecloud computing device88, or to add, remove, or configure one or more sources of thedata102A (e.g., one or more components of the industrial automation system10).
By utilizing the common data pipeline, thedata102A,102B may be communicated between thecomputing devices90 and industrial automation system10 (and database80) in an encrypted form and in which the communicated data may be grouped, characterized (e.g., tagged with metadata), or both, thereby enabling thedata102A,102B to be communicated in a manner that is secure, enables receiving devices to understand the data regardless of the format of the data, and may reduce congestion over communication networks. To help describe how thedata102A,102B may be shared using the common data pipeline,FIG. 7 is provided. In particular,FIG. 7 is a flow diagram of aprocess120 for communicating data within thedata analysis system84 anddata communication system100. Theprocess120 may be performed by the edge computing device86 (e.g., usingdata102A) or the cloud computing device88 (e.g., usingdata102B) by processing circuitry (e.g. one or more processors included in theedge computing device86 or the cloud computing device88) executing computer-readable instructions stored on memory or storage of theedge computing device86 or thecloud computing device88. Additionally, thecomputing devices90 may also perform any of the operations of theprocess120 described below as being performed by thecloud computing device88. Furthermore, in some embodiments, the operations of theprocess120 may be performed in an order different than the order discussed below, operations of theprocess120 may be omitted, or both. Theprocess120 generally includes receiving data (process block122), grouping the received data (process block124), characterizing the data (process block126), encrypting the data (process block128), and sending the encrypted data to another device (process block130).
Atprocess block122, data is received. For instance, theedge computing device86 may receive thedata102A from anindustrial component20 in the industrial automation system10 (or database80). As another example, thecloud computing device88 may receive thedata102B from thecomputing devices90. The data may include data from a number ofindustrial components20 located in different hierarchical levels or locations within theindustrial automation system10. In some embodiments, the data may be requested from anotherindustrial component20, from an external computing device, or the like. Alternatively, theindustrial component20 may periodically send thedata102A according to a subscription service, an event being present (e.g., data above a threshold), or some other methodology.
Atprocess block124, the received data may be grouped or arranged, for instance, based on a type of the data, a component with which the data is associated, a hierarchical level with which the data is associated, or a combination thereof. For example, received data may be rearranged to group similar types of data together. More specifically, in the example of theedge computing device86 receiving thedata102A, theedge computing device86 may reorganize thedata102A to group log files together (which may even be sub-grouped based on the type of log file), group audio data together, group video data together, and group data regarding theindustrial automation system10 together. For example, data regarding the layout of thefactory12, hierarchical levels of organization of theindustrial automation system10, and information pertaining to the components of the industrial automation system or the operation thereof may be grouped. When grouping the data by component, theedge computing device86 may rearrange received data packets so that data common to a particular component is grouped together. Similarly, the data for a hierarchical level may also be grouped together. For instance, data may be grouped by hierarchical level (e.g. a cell) and include the data for each component included within the hierarchical level. Within the grouped data, the data may be sub-grouped by component so that the data pertaining to each component is grouped together. As another example, data may also be grouped by hierarchical level and type. For instance, the data generated by, or associated with, components in a hierarchical level may be grouped. Within such groupings, the data may be further arranged by type. In such an example, energy consumption data for each component in a hierarchical level may be grouped together, and each other form of data for each of the components may be grouped together.
In the example of thecloud computing device88 receiving thedata102B, thecloud computing device88 may rearrange thedata102B based on the type of data or by the portion of theindustrial automation system10 to which thedata102B pertains, or a combination thereof. For instance, when grouping data by type, diagnostic data may be grouped together, potential or recommended maintenance operations may be grouped together, security determinations may be grouped together, and software updates may be grouped together. As another example, when arranging data based on the portion of theindustrial automation system10 to which thedata102B pertains, data associated with a specific component may be grouped together or data may be grouped based on the hierarchical levels of theindustrial automation system10. For example, portions of thedata102B pertaining to aparticular component20,cell18, orarea16 may be grouped together.
In some embodiments, the grouping of the portions of thedata102A or thedata102B may be pre-defined according to a particular order or arrangement defined by the common data pipeline. That is, thedata102A or thedata102B may be organized such that packets that make up thedata102A or thedata102B are organized in a particular order (e.g., ordering packets of data by data type, a component with which the data is associated, a hierarchical level with which the data is associated, or a combination thereof). In this case, if datasets are not present for thedata102A or thedata102B, the respective packets may be null or include an indicator that data for that portion does not exist. For example, data packets may be reordered so that data for each component or type of data is organized together in a pre-defined order (e.g., based on an identifier associated with a component or type of data). When data for a component or type of data is missing, the grouped data may reflect that there is no data for that particular component or type of data. By organizing thedata102A and thedata102B in a consistent order, thevarious components20 may extract or comprehend thedata102A or thedata102B in an efficient manner. Similarly, thecomputing devices90 may also access and interpret data associated with the industrial automation system10 (e.g.,data102A) regardless of the source of thedata102A or a communication, a manufacturer of the components that generate thedata102A, formats of thedata102A, and communication protocols utilized by the components that generate thedata102A.
Atprocess block124, the data may be characterized. More specifically, theedge computing device86 may analyze thedata102A and applymetadata104A (e.g., data tags or headers) to portions of thedata102A to characterize thedata102A. Likewise, thecloud computing device88 may analyze thedata102B and may applymetadata104B (e.g., data tags or headers) to thedata102B to characterize thedata102B. In the example of theedge computing device86 applyingmetadata104A to thedata102A, themetadata104A may be indicative of a particular context associated with a particular portion of thedata102A, such as a component, hierarchical level, factory, or combination thereof within theindustrial automation system10 with which the particular portion of thedata102A is associated. For instance, themetadata104A may be indicative of an origin of thedata102A at several different levels. For example, portions of thedata102A associated with a particular component may be tagged withmetadata104A indicating the component as well as one or more hierarchical levels of theindustrial automation system10 in which the component is included (e.g., a particular cell, area, factory or combination thereof). Themetadata104A may be indicative of a type of thedata102A. For instance, each log file may be tagged with one or more data tags indicating that the log file is a log file and that the log file includes a particular type of log data. As another example, themetadata104A may indicate that the data is video data, audio data, information about software (e.g., a version of software utilized by theindustrial automation system10 or a component thereof) or another type of data generated or collected by the industrial automation system10 (including data generated or collected by the industrial control system22).
Similarly, thecloud computing device88 may apply themetadata104B to thedata102B to indicate what type of data thedata102B is. For instance, themetadata104B may be utilized to indicate that a particular portion of thedata102B relates to software (e.g., software updates), a particular type of analysis performed on thedata102B (e.g., security determinations, maintenance determinations, diagnostic operations, and the like), or a particular recommendation (e.g., a diagnostic or maintenance operation recommended to be performed based on analyzing thedata102B). Furthermore, thecloud computing device88 may applymetadata104B to indicate a particular hierarchical level or component associated with thedata102B. For instance, when sending data relating to the analysis of a particular component or a recommended action to be performed associated with the particular component, thecloud computing device88 may include themetadata104B to also indicate that thedata102B relates the particular component or hierarchical level in which the component is included. Likewise, when thedata102B relates to a hierarchical level that encompasses several components (e.g., a cell or area within a factory), themetadata104B may also be applied to indicate one or more hierarchical levels to which the data pertains.
Atprocess block128, thedata102A,102B is encrypted. In other words, data that has been packaged (e.g., grouped), characterized (e.g., tagged with metadata), or both may be encrypted by theedge computing device86 and thecloud computing device88. The data may be encrypted in accordance with one or several encryption or cryptographic algorithms or protocols, such as Transport Layer Security (TLS), Secure Sockets Layer (SSL), Triple Data Encryption Algorithm (TDEA), Advanced Encryption Standard (AES), or public key system (e.g., Rivest-Shamir-Adleman (RSA) system, elliptic-curve cryptography (ECC)). Furthermore, thedata102A,102B may be encrypted based on hierarchical levels, components, or a type of data. For example, data packets of thedata102A,102B may be encrypted in an order (e.g., a pre-defined or random order) that is determined based on hierarchical levels, components, or a type of data. As such, thedata102A,102B may be encrypted based on an order or arrangement of thedata102A,102B (e.g., as grouped or reordered as described above with respect to process block124).
Atprocess block130, the encrypted data is sent to another device. For example, theedge computing device86 may send thedata102A to thecloud computing device88. As another example, thecloud computing device88 may send thedata102B to theedge computing device86. Thedata102A anddata102B may be sent using an Internet connection, such as an Internet connection made via a wired network or wireless network. Furthermore the encrypted data may include a cryptographic key or other type of data that may enable devices received the encrypted data to decrypt the received data.
Having discussed how data can be packaged, characterized, encrypted, and sent using the common data pipeline, the discussion will now turn toFIG. 8, which is a flow diagram of aprocess140 for processing data received via the common data pipeline. Theprocess140 may be performed by the edge computing device86 (e.g., usingdata102B) or the cloud computing device88 (e.g., usingdata102A) by processing circuitry (e.g. one or more processors included in theedge computing device86 or the cloud computing device88) executing computer-readable instructions stored on memory or storage of theedge computing device86 or thecloud computing device88. Additionally, thecomputing devices90 may also perform any of the operations of theprocess140 described below as being performed by thecloud computing device88. Furthermore, in some embodiments, the operations of theprocess140 may be performed in an order different than the order discussed below, operations of theprocess140 may be omitted, or both. Theprocess140 generally includes receiving and decrypting data (process block142), analyzing the received data, metadata included with the data, or both (process block144), determining a destination for the data based on the analysis performed at process block142 (process block146), and sending the data to the determined location (process block148).
Atprocess block142, data may be received and decrypted. For example, theedge computing device86 may receivedata102B sent by thecloud computing device88. As another example, thecloud computing device88 may receivedata102A sent by theedge computing device86. Additionally, theedge computing device86 andcloud computing device88 may decrypt the received data in accordance with the encryption or cryptographic algorithms or protocols discussed above with respect to process block130 ofFIG. 7.
Atprocess block144, the received data, metadata included with the data, or both the data and metadata may be analyzed. For instance, in the example of theedge computing device86 receivingdata102B (that includesmetadata104B) from thecloud computing device88, theedge computing device86 may analyze thedata102B, themetadata104B or both. The analysis may include determining to which component, hierarchical level, factory, or combination thereof thedata102B pertains. The analysis may also include determining what type of the data thedata102B, which may be indicated by themetadata104B included with the data, by a filename extension of thedata102B, or both.
In the example of thecloud computing device88 receiving the data from theedge computing device86, thecloud computing device88 may analyze thedata102A, metadata104A, or both to make various determinations regarding the data. For example, thecloud computing device88 may determine a context for thedata102A based on themetadata104A, which may indicate a type of the data, which portion (e.g., a specific component, hierarchical level, or factory) of theindustrial automation system10 thedata102A pertains to, or both. As another example, thecloud computing device88 may determine that a new device or component has been added to theindustrial automation system10. For instance,metadata104A may be indicative of a portion of thedata102A pertaining to a device or component of that thecloud computing device88 does not recognize as being included in theindustrial automation system10. Based on themetadata104A, thecloud computing device90 may determine the device or component has been added to the industrial automation system, one or more contexts (e.g., hierarchical levels) associated with the device or component, and one or more functions performed by the device or component. Thus, while thedata102A itself may not include any context for what thedata102A is or what portion of theindustrial automation system10 the data is associated with, thecloud computing device88 may nevertheless be able to determine the context for the data by analyzing themetadata104A (e.g., data tags) previously applied to thedata102A. Accordingly, by utilizing metadata that is included with data before it is communicated, thecloud computing device88 is able to receive data from several factories (e.g.,factory12 and factories14) and determine a particular component in a particular factory that thedata102A pertains to even in cases when thecloud computing device88 may otherwise be unable to make such a determination (e.g., in cases where different communication protocols are used, file extensions are not recognized, or the like).
Atprocess block146, a destination for the received data may be determined based on analyzing the data, metadata included with the data, or both. For example, in the case of theedge computing device86 receiving thedata102B, theedge computing device86 may determine whether to provide the received data to thedatabase80, a particular portion of theindustrial automation system10, or both. For example, thedata102B may include a header (e.g., previously added asmetadata104B) indicating where thedata102B should be directed. As another example, theedge computing device86 may provide thedata102B to a controller (e.g., a controller included in the industrial control system22) that is responsible for controlling a particular component or hierarchical level within theindustrial automation system10 that is indicated by themetadata104B.
In the case of thecloud computing device88 receiving thedata102A, thecloud computing device88 may determine to which particular computing device of thecomputing devices90 thedata102A should be provided. Such a determination may be made by analyzing a header that may have been previously applied to thedata102A asmetadata104A by theedge computing device86. Thecomputing devices90 may include computing devices that are associated with different entities. For example, thecomputing devices90 may belong to or be associated with an entities that provide different various services for the industrial automation system, such as, but not limited to security services, data analysis or management services, and maintenance services. Themetadata104A may indicate a particular service or entity. In such a case, the cloud computing device may provide thedata102A to the computing device associated with the indicated entity or service. Furthermore, it should be noted that different portions of thedata102A,102B may pertain to different components or services. Theedge computing device86 andcloud computing device88 may determine different destinations for the various portions of thedata102A,102B.
Atprocess block148, the data may be sent to the determined destination. More specifically, theedge computing device86 may provide thedata102B to thedatabase80, a particular portion of theindustrial automation system10, or both, based on the analysis performed atprocess block146. Similarly, thecloud computing device88 may send thedata102A to aparticular computing device90 based on the determination performed atprocess block146. Additionally, in cases in which different portions of thedata102A,102B are determined to be sent to different locations, theedge computing device86 and thecloud computing device88 may provide the respective portions of data to the respective destinations determined for each of the portions of thedata102A,102B.
By utilizing the common data pipeline in accordance with theprocess120 and theprocess140, data may be communicated between theindustrial automation system10 and thecomputing devices90 in a secure (e.g., encrypted) manner in which the data is organized and characterized. As such, a device receiving the data is able to analyze the data and provide the data to another device regardless of the type of device associated with the data or from which the data originates, the manufacturer of such devices, or communication protocols that such devices may otherwise use. Furthermore, because devices outside of automation systems are able to determine one or more contexts associated with data received from an automation system (e.g., industrial automation system10), the external devices (e.g., computing devices90) may be able to perform enhanced data analysis specific to a particular portion (e.g., factory, hierarchical level, or component) included in theindustrial automation system10. For example, because thecomputing devices90 are better able to understand the relationship between different devices included in theindustrial automation system10 and how received data relates to the industrial automation system10 (or a particular portion thereof), thecomputing devices90 may be utilized to perform more specific and accurate analyses of data provided by theindustrial automation system10. Additionally, because thecomputing devices90 are better able to understand the relationship between different devices included in theindustrial automation system10 and how received data relates to the industrial automation system10 (or a particular portion thereof), thecomputing devices90 may be able to further contextualize data or enhance data packages (e.g., groups of data packets) generated and provided by the computing devices90 (e.g., data packages included in thedata102B).
Moreover, using the techniques described herein, external devices may be able to request and receive data specific to particular devices or portions of theindustrial automation system10. For example, because thecomputing devices90 are able to determine the context(s) associated with received data, thecomputing devices90 can determine that received data is a particular type of data associated with a particular component, hierarchical level, factory, or combination thereof. Accordingly, thecomputing devices90 may request specific types of data, data pertaining to a specific portion of theindustrial automation system10, or both. Somewhat similarly, thecomputing devices90 may be able to subscribe to data channels specific to a particular type of data or a specific component, hierarchical level, or factory within the industrial automation system, thereby enabling thecomputing devices90 to receive specific data.
Furthermore, by grouping data before sending the data, the techniques disclosed herein my reduce traffic over networks, thereby reducing the occurrence of network congestion. For example, theedge computing device86 andcloud computing device88 may aggregate data before sending it. In other words, theedge computing device86 andcloud computing device88 may limit use of communication networks for example, because theedge computing device86 andcloud computing device88 may not transmit data until the data has been grouped. Accordingly, because theedge computing device86 andcloud computing device88 may less constantly utilize networks to send data, the techniques described herein may reduce network congestion.
Additionally, because thedata102A,102B is arranged in a particular arrangement (e.g., grouped as discussed above with respect toFIG. 7), theedge computing device86 andcloud computing device88 may be able to more quickly aggregate received data, which may enable the received data to be analyzed more quickly. For example, because similar data may be organized together in data before it is transmitted from one device to another, fewer processing resources may be utilized by the receiving device when analyzing the received data or making determinations regarding the received data. Moreover, while data is being aggregated (e.g., grouped) or after data has been aggregated, theedge computing device86 andcloud computing device88 may send one or more portions of the aggregated data to components of theindustrial automation system10 or one ormore computing devices90 that subscribe to the data (e.g., a data feed that includes any updates regarding particular types of the data or data associated with a particular component or hierarchical level). Thus, theedge computing device86 may coordinate data traffic across theindustrial automation system10 to limit network use while still being able to receive data from the devices included in theindustrial automation system10.
In some embodiments, one or more of thecomputing devices90 may be included as part of thecloud computing device88 or thecloud computing device88 may be utilized to encrypt data, decrypt data, and analyze data. As such, while theprocess120 and theprocess140 are described above as being performed utilizing data originating from the industrial automation system10 (e.g., in an embodiment of theprocess140 illustrated inFIG. 8) as well as data to be sent to thecomputing devices90 or originating from the computing devices90 (e.g., in embodiments of theprocess120 illustrated inFIG. 7), thecloud computing device88 may perform the various operations discussed above with respect to thecomputing devices90. For example, thecloud computing device88 may receive thedata102A, decrypt thedata102A, analyze thedata102A, generate thedata102B, encrypt thedata102B, and send thedata102B to theedge computing device86.
Additionally, it should be noted that thedata102B may enable a user to remotely access theindustrial automation system10 or components thereof, for example, to perform troubleshooting or to configure theindustrial automation system10 or components thereof. Accordingly, while thedata102A may include data generated byindustrial automation system10, thedata102B may be data sent regarding an analysis of thedata102A or data sent to gain access to theindustrial automation system10 or components thereof. For example, thecloud computing device88 orcomputing devices90 may receive and decrypt thedata102A, analyze the data102, and send thedata102B to gain remote access to the industrial automation system10 (or components thereof) and make changes to theindustrial automation system10 or components thereof.
Furthermore, while hierarchical levels of theindustrial automation system10 discussed above include factories (e.g.,factory12 and factories14) includeareas16,cells18, andcomponents20, in other embodiments, different hierarchical levels may be utilized, and the amount of hierarchical levels utilized may also differ. For example, in another embodiment, theindustrial automation10 may include factory-level hierarchical levels, area-level hierarchical levels, location-level hierarchical levels, machine-level hierarchical levels, line-level hierarchical levels, panel-level hierarchical levels, device-level hierarchical levels, component-level hierarchical levels, or any combination thereof. Factory-level hierarchical levels may include individual factories, such as thefactory12 or one of thefactories14. Area-level hierarchical levels may correspond toareas16. Location-level hierarchical levels may be physical areas related to physical portions (e.g., rooms, floors, or other subsections) of a factory. In some cases, location-level hierarchical levels may include components associated with a particular portion of a process associated with anarea16. Accordingly, the location-level hierarchical levels may corresponds tocells18. Machine-level hierarchical levels may include individual machines that are utilized to perform a function within theindustrial automation system10, and component or device-level hierarchical levels may include devices or components included in a machine-level hierarchical level or devices or components that are otherwise not included in machine-level hierarchical level. Line-level hierarchical levels may include machines, devices, and components that are associated with a particular assembly line within a factory. Panel-level hierarchical levels may include devices, components, or machines that are associated with a particular panel, such as a particular HMI or operator interface that is physically closest to the devices, components, or machines or which an operator may use to control or interact with the devices, components, or machines. Accordingly, operations discussed above relating to hierarchical levels, such as grouping data by hierarchical level, may be performed utilized these hierarchical levels in addition to, or as an alternative to, utilizing factory, area, cell, and component-level hierarchical levels.
Customer Support and Maintenance SystemWhen an asset or item of equipment in a facility (e.g., a component within the industrial automation system10) malfunctions, experiences issues, or otherwise encounters problems, customers may submit a service inquiry to a customer support and maintenance (CSM) system. In some embodiments, the CSM system may be implemented by thecloud computing device88. For example, thecloud computing device88 may include the CSM system or implement the CSM system by executing computer-readable instructions. Equipment manufacturers may use the CSM system to organize service inquiries received from customers. The CSM system may enable agents to keep track of service inquiries and other customer-care related issues. For example, the CSM system may generate a service ticket to represent the service inquiry and may assign the service ticket to an agent of the CSM system to work on and resolve issues associated with the service inquiry. In some instances, the CSM system may receive service inquiries with incomplete and/or inconsistent information that may prevent an agent from resolving the issue or may result in an incorrect resolution. For example, the service inquiry may identify a particular asset associated with an industrial plant system, such asindustrial automation system10, but may not specify a function (e.g., job) performed by the asset, relationships to other assets within the industrial plant system, connections to other assets within the industrial plant system, a maintenance history for the asset, or the like. For example, the CSM system may receive and/or retrieve different types of data (e.g., telemetry data, inventory data) and the associated metadata. Different departments within the equipment manufacturer may have additional data associated with the asset that may be useful in assessing and diagnosing issues associated with service inquiries and may assist in resolving service inquiries. As a result, it may be helpful to integrate additional data from different departments associated with the asset manufacturer. The asset may also be capable of providing additional data associated with operation of the asset. The CSM system may receive additional data from any number of sources and may analyze the data to assess and diagnose issues associated with a service inquiry.
With the foregoing in mind,FIG. 9 is a flowchart of amethod150 performed by a CSM system to retrieve application asset data (e.g., from thedatabase80 and/or an asset associated with the service inquiry). Although themethod150 is described below as performed by a CSM system, it should be noted that themethod150 may be performed by any suitable processor that processes asset data, such as thecloud computing device88. Furthermore, certain described steps may be implemented by executing instructions stored in a memory, using any suitable processing circuitry, such as processing circuitry included in a CSM system or thecloud computing device88. In some embodiments, the memory may include one or more tangible, non-transitory computer-readable media that store instructions executable by any suitable processing circuitry and/or data to be processed by any suitable processing circuitry. For example, the memory may include random access memory (RAM), read only memory (ROM), rewritable non-volatile memory, such as flash memory, hard drives, optical discs, and/or the like. Moreover, although themethod150 is described in a particular order below, it should be noted that themethod150 may be performed in any suitable order.
Atprocess block152, the CSM system may receive a request to retrieve asset data associated with an asset. For example, the request may be received from acomputing device90 in response to a service inquiry associated with the asset. Thecomputing device90 may include a graphical user interface (GUI) and/or a display configured to receive an input from a technician. The service inquiry may include one or more data fields containing information associated with the asset, such that a technician may input information associated with an asset and fill a service inquiry form. For example, the service inquiry may include an operating issue data field, a customer name data field, an asset type data field, or any other suitable data field containing information associated with the asset. In certain embodiments, the CSM system may generate the request to retrieve asset data in response to receiving a service inquiry associated with an asset. For example, the CSM system may determine the service inquiry includes one or more missing data fields, such as an operational mode of the asset, one or more relationships to additional assets, a physical location of the asset in an industrial plant system, or any other suitable data associated with the asset.
After the request is received, the CSM system may send the request to the corresponding asset (process block154). In certain embodiments, the CSM system may be configured to act as a passthrough between a requesting device and the asset associated with the asset data. For example, the CSM system (e.g., implemented by the cloud computing device88) may be communicatively coupled to the asset (e.g., a component of the industrial automation system10) and the requesting device (e.g., computing device90) and utilize thecommon data pipeline92 to communicate data therebetween. In some embodiments, the CSM system may also be communicatively coupled to a communication network of theindustrial automation system10. One or more components of the communication network may be communicatively coupled to the asset and may be configured to act as a passthrough between the CSM system and the asset. For example, as discussed above, theindustrial control system22 andedge computing device86 may serve as intermediaries between components (e.g., automation devices) of theindustrial automation system10 and thecloud computing device88.
In response to requesting the asset data, atprocess block156, the CSM system may receive telemetry data obtained by measuring and/or sensing real-time operational parameters (e.g., motor frequency, voltage, current, rotor speed, energy consumption, operating duration, network communication data, number of widgets produced by the asset and/or a process associated with the asset, rate of widget production, and the like) for an asset. In certain embodiments, the telemetry data may be transmitted by the asset in response to receiving the request. For example, one or more data packets transmitted by the asset may include a signal and/or a signature (e.g.,metadata104A) embedded therein. In some embodiments, the data packets may be routed between the asset and the CSM system by one or more components (e.g., gateway, router, edge computing device86) of a communication network and/or via thecommon data pipeline92.
The CSM system may make various determinations using the telemetry data. For instance, the CSM system may determine a location of the asset in the communication network based on the telemetry data. More specifically, components of the communication network may embed any number of signatures within one or more data packets routed between the asset and the CSM system. In certain embodiments, the CSM system may analyze the signatures embedded within the one or more data packets to determine a routing of the one or more data packets from the asset to the CSM system. For example, a signature may include a time stamp indicative of when the component embedded the signature within the data packet. As such, the CSM system may determine an order that the data packet passes from the asset through the components of the communication network and to the CSM system based on the timestamps of the signatures and determine a location of the asset relative to other components of the communication network. Additionally or alternatively, the signatures may be embedded in a chronological order within a data packet. The CSM system may determine a first signature embedded within the data packet based on the order and/or the timestamps. As a result, the CSM system may determine a first component in the communication network associated with a first signature in the chronological order. In certain embodiments, the CSM system may determine a physical location of the asset based on the first component. For example, the CSM system may determine a location of the first component and/or may receive the location from the first component. As such, the CSM system may determine the physical location of the asset based on the location of the first component. For example, the CSM system may determine the physical location of the asset is within a communication range of the first component. In some embodiments, the CSM system may determine how production is affected based on the telemetry data. For example, the CSM system may determine a number of lost widget production based on a rate of widget production associated with the asset and an expected downtime for repair and/or maintenance of the asset.
Additionally or alternatively, the signal and/or the signature may be indicative of one or more relationships between the asset and one or more additional assets. For example, the relationship may be indicative of a communication protocol between the asset and an additional asset, an electrical connection between the asset and the additional asset, an order of operations performed by one or more assets in a manufacturing process, and/or any other suitable relationship. For example, a first asset may be a conveyor capable of moving parts from a manufacturing asset to a packaging asset. In certain embodiments, the relationship may be indicative of the location of the conveyor between the manufacturing asset and the packaging asset.
Atprocess block158, the CSM system may receive operational data (e.g., operational statuses) associated with operational parameters of the asset including voltage, current, temperature, electrical load, energy consumption, operating status operating durations of the asset (e.g., an amount of time the asset has had a particular operating status), operating times of the asset (e.g., historically or according to a schedule), a type of the asset, and the like. For example, the asset or a controller associated with the asset (e.g., a controller included in the industrial control system22) may transmit operational data associated with the asset through an industrial automation network and/or via thecommon data pipeline92 to the CSM system in response to receiving the request for asset data. In some embodiments, the operational data may include associated metadata, such as a time stamp, a location of the asset within the facility, a location of the asset within an industrial plant system, such asindustrial automation system10, and the like. In certain embodiments, the operational data may include hierarchical data such as a hierarchical level of the asset within an industrial plant system.
Atprocess block160, the CSM system may receive inventory data associated with the asset. For example, the CSM system may receive inventory data from a database (e.g., database80) associated with a different department than the customer service and maintenance department associated with the CSM system. In some embodiments, the inventory data may include orders of parts, installation of parts, and/or replacement of parts. For example, the CSM system may receive inventory data indicative of a number of times a particular part of an asset has been replaced. In some embodiments, the inventory data may include a listing of all parts associated with the asset, a number of parts associated with the asset, and the like. Additionally or alternatively, the inventory data may include an order date for a corresponding part, an installation date for a corresponding part, an asset associated with the part, or any other suitable inventory data. In some embodiments, the inventory data may include associated metadata (e.g.,metadata104A).
Atprocess block162, the CSM system may receive customer data associated with the asset. In certain embodiments, the customer data may be retrieved from a database associated with a different department of the asset manufacturer. Additionally or alternatively, customer data may be provided by the asset and/or a component of a communication network associated with the asset (e.g., the edge computing device86). The customer data may include a customer name, an industry associated with the customer, a location of a facility associated with the asset, a location of the asset within the facility, an industrial (e.g., packaging, manufacturing) process associated with the customer and/or the asset, and/or a location of the asset within an industrial plant system.
Atprocess block164, the CSM system may identify an asset model that corresponds to the asset data. A set of asset models may be stored in a database, such asdatabase80, and the CSM system may retrieve the set of asset models. Each asset model may include asset type information, such as a model number or name of an asset and/or a product line associated with an asset. Each asset model may be associated with a particular job performed by the asset. For instance, in certain embodiments, the asset model may include a job performed by the asset, such as one or more steps of a manufacturing process. For example, the asset model may include a packaging step, an assembly step, and/or any other suitable step of a manufacturing process as described herein. In some embodiments, the asset model may include time durations associated with the job. For example, the asset model may include a typical operating time duration for one or more steps of a manufacturing process. Additionally or alternatively, the asset model may include parts data associated with the asset and/or the job. For example, the asset model may include information associated with a wear life of a part of the asset (e.g., an expected amount of time before the part should be maintenance, repaired, or replaced). In certain embodiments, the wear life of the part may vary based on a particular job being performed by the asset. Additionally or alternatively, each asset model may include a set of baseline operational parameters (e.g., electrical load, current, voltage, energy consumption, and so forth) associated with the corresponding job performed by the asset. For example, the set of baseline operational parameters may include a range of values for each operational parameter. As such, the CSM system may compare the asset data to the set of baseline operational parameters to determine a particular job being performed by the asset. The CSM system may select an asset model corresponding to the asset data based a comparison between the operational data associated with the asset and the baseline operational parameters. For example, the CSM system may determine whether the operational data falls within a range of a corresponding baseline operational parameter. In certain embodiments, the CSM system may identify and select an asset model based on a comparison between the inventory data and an expected lifecycle of a part associated with a particular job. An expected lifecycle may be a total expected operational time before breakdown for an associated part. In certain embodiments, the expected lifecycle may include any number of threshold percentage lifecycles associated with a part. For example, a fifty percent lifecycle may be a total operational time at which fifty percent of a particular part would be expected to break down, a seventy five percent lifecycle may be a total operational time at which seventy five percent of a particular part would be expected to break down, and the like. In certain embodiments, the asset model may include a set of instructions to properly shut off and prevent further startup of the asset prior to completion of a set of maintenance actions (e.g., lock out/tag out procedure).
The CSM system may generate a set of asset data based on the received telemetry data, operational data, inventory data, customer data, and/or any other suitable data associated with the asset. In some embodiments, the CSM system may store the set of asset data in a memory. Additionally or alternatively, the set of asset data may be published to a virtual ledger, such as a blockchain. The virtual ledger may include a plurality of encoded blocks that represent the set of asset data. Each block may be recorded in chronological order and encoded or hashed to incorporate data in blocks that come before it. The CSM system may determine an asset type based on the set of asset data and may retrieve a set of asset models based on the determined asset type. For example, the CSM system may determine the asset type is a power converter of an industrial plant system and may retrieve a set of asset models associated with power converters. The CSM system may compare the set of asset data to the set of asset models to identify an asset model corresponding to the asset data. For example, the CSM system may compare parts orders with wear life of a particular part of an asset, such that parts orders of a particular part may be within a threshold time of an expected wear life of the particular part. As such, the CSM system may determine how often a particular part is replaced and compare the part replacement with an expected lifecycle for the particular part, such that the CSM system may select an asset model based on the comparison. In certain embodiments, the CSM system may analyze how often and/or how many times a particular part is replaced and may compare that to an expected lifecycle of the part and/or the operational time of the asset. In some embodiments, the CSM system may determine an expected number of times one or more parts are replaced based on the expected lifecycle of the corresponding part and the total operational time associated with the asset.
Atprocess block166, the CSM system may determine application asset data based on the asset model. The application asset data may be asset data corresponding to a particular job (e.g., task) performed by the asset. In certain embodiments, the application asset data may include a job performed by the asset. For example, the CSM system may determine a job being performed by the asset by comparing the number of times a particular part is replaced to an expected number of times based on the expected lifecycle of the part and the total operational time of the asset. In some embodiments, the CSM system may determine a type of asset based on operational parameters of the asset (e.g., electrical load, current, voltage, energy consumption, and so forth). For example, the CSM system may determine one or more operational parameters fall within an expected range of values for a particular type of asset. Additionally or alternatively, the CSM system may determine a particular model of asset based on operational parameters of the asset data. For example, the CSM system may determine one or more operational parameters fall within an expected range of values for a particular model of asset.
Atprocess block168, the CSM system may generate a mapping hierarchy based on the application asset data. The mapping hierarchy may be a hierarchical organization of an industrial plant system, such asindustrial automation system10, and may indicate a location of any number of assets, relationships (e.g., connections) between assets, and/or ranking of any number of assets within the industrial plant system. In certain embodiments, the CSM system may utilize the mapping hierarchy to determine additional asset data associated with the asset. For example, the CSM system may analyze the mapping hierarchy to determine connections between the associated asset and other assets on the plant floor. As such, the CSM system may analyze the connections to determine a particular job or task being performed by the associated asset. In certain embodiments, the mapping hierarchy may include a representation and/or a visualization of a plant floor. The CSM system may identify a physical location of the asset according to the mapping hierarchy. The mapping hierarchy may identify assets as subordinates of one or more other assets. Additionally or alternatively, the mapping hierarchy may include International Society of Automation (ISA) 88 standard hierarchy model or ISA-95 standard hierarchy model. The CSM system may retrieve an industrial plant system analysis from a database, and the industrial plant system analysis may provide information regarding one or more assets and conditions (e.g., statuses, wear lives) of the one or more assets. In certain embodiments, the industrial plant system analysis may include one or more assets associated with the industrial plant system, a layout of the one or more assets of the industrial plant system, a maintenance status of the one or more assets, a repair status of the one or more assets, and/or an inventory status of the one or more assets. Additionally or alternatively, the industrial plant system analysis may include an environmental condition associated with one or more assets, a protection condition (e.g., voltage protection) associated with one or more assets, a risk condition associated with one or more assets (e.g., lifetime expectancy), a wiring condition, a grounding condition, a ventilation condition associated with in industrial plant system, and the like.
Atprocess block170, the CSM system may update the set of application asset data based on the mapping hierarchy. For example, the CSM system may update the application asset data with any information associated with the mapping hierarchy. In other words, the hierarchical relationships of assets to another may be reflected in the set of asset of data. For instance, a component level, cell level, area, and factory of theindustrial automation system10 for each of the assets may be indicated in the set of application asset data.
Atprocess block172, the CSM system may store the updated set of application asset data. For example, the CSM system may store the updated set of application asset data in a database, such asdatabase80, associated with the CSM system. In certain embodiments, the updated set of application asset data may be published to a virtual ledger, such as a blockchain. The virtual ledger may include a plurality of encoded blocks that represent the application asset data. Each block may be recorded in chronological order and encoded or hashed to incorporate data in blocks that come before it. Accordingly, the CSM system may aggregate asset data and thedatabase80 may store the asset data for later retrieval when a service inquiry is received regarding the asset or any other asset associated with the same industrial plant system, such asindustrial automation system10. As such, the CSM system may retrieve additional information and asset data when a service inquiry is received to assist in diagnosing issues associated with an associated asset. Additionally or alternatively, the CSM system may log a time stamp associated with the updated set of application asset data and the time stamp may be indicative of when the application asset data was updated, when the asset data was retrieved by the CSM system, when the application asset data was stored, and the like.
When a service inquiry is received, the CSM system may retrieve stored application asset data in response. Equipment manufacturers may request verification of the application asset data. Different customer employees may provide differing levels of verification for the application asset data. For example, a plant manager may be able to verify an entire mapping of the industrial plant system, while a plant engineer may only be able to verify a particular asset. Verification may ensure accurate application asset data. As a result, the verified application asset data may assist the CSM system in producing more accurate assessments and/or correctly diagnosing issues corresponding to service inquiries.
Keeping the foregoing in mind,FIG. 10 is a flowchart of amethod180 performed by a CSM system to verify and/or update application asset data. Although themethod180 is described below as performed by a CSM system, it should be noted that themethod180 may be performed by any suitable processor that processes asset data. Furthermore, certain described steps may be implemented by executing instructions stored in a memory, using any suitable processing circuitry, such as a CSM system implemented by thecloud computing device88. In some embodiments, the memory may include one or more tangible, non-transitory computer-readable media that store instructions executable by any suitable processing circuitry and/or data to be processed by any suitable processing circuitry. For example, the memory may include random access memory (RAM), read only memory (ROM), rewritable non-volatile memory, such as flash memory, hard drives, optical discs, and/or the like. Moreover, although the following description of themethod180 is described in a particular order, it should be noted that themethod180 may be performed in any suitable order.
Atprocess block182, the CSM system may receive a service inquiry associated with an asset. In some embodiments, the service inquiry may be received from a customer. The CSM system may generate a ticket in response to receiving the service inquiry and may assign the ticket to an agent of the CSM system. In certain embodiments, the agent may be a virtual agent of the CSM system. The CSM system may be communicatively coupled to a communication network associated with the customer and/or the asset. In some embodiments, the asset may generate and transmit the service inquiry in response to detecting an issue. For example, the asset may monitor operational parameters and generate the service inquiry in response to one or more of the operational parameters exceeding one or more parameter thresholds. Additionally or alternatively, one or more components of a communication network communicatively coupled to the asset may monitor operational parameters associated with the asset and may generate the service inquiry. In certain embodiments, the CSM system may monitor operational parameters in response to receipt of the service inquiry. For example, the CSM system may transmit a request to access operational parameters to the asset and/or to one or more components of the communication network. In response, the asset and/or one or more components of the communication network may transmit, dynamically update, and/or periodically update the CSM system with operational parameters of the asset.
Atprocess block184, the CSM system may identify an asset associated with the service inquiry. In certain embodiments, the service inquiry may include one or more data fields completed by the customer. The service inquiry may include information indicative of an asset. For example, the service inquiry may include an asset type data field, an asset model data field, or the like. In certain embodiments, a graphical user interface (GUI) of software or an application used to generate the service inquiry may include a drop-down menu for selecting an asset type and/or an asset model.
Atprocess block186, the CSM system may retrieve application asset data associated with the identified asset. In some embodiments, the CSM system may retrieve the application asset data from a memory associated with the CSM system and/or a distributed ledger. Additionally or alternatively, the CSM system may determine the application asset data, as described in themethod150 inFIG. 9. In certain embodiments, the application asset data may include inventory data, customer data, telemetry data, operational data, and the like.
Atprocess block188, the CSM system may determine a mapping hierarchy based on the application asset data. In some embodiments, the CSM system may analyze relationships between the asset and one or more other assets associated with an industrial plant system. For example, the CSM system may determine the asset is communicatively coupled, electrically coupled, and shares a power source with one or more other assets. In certain embodiments, the CSM system may receive telemetry data associated with a communication network communicatively coupled to the asset. The telemetry data may include one or more signatures indicative of one or more assets associated with an industrial plant system. In certain embodiments, the CSM system may determine a location of the one or more assets, as described above with reference toFIG. 9. In certain embodiments, the mapping hierarchy may include a representation and/or a visualization of a plant floor associated with an industrial plant system. The CSM system may identify a physical location of the asset according to the mapping hierarchy. The mapping hierarchy may identify assets as subordinates of one or more other assets. Additionally or alternatively, the mapping hierarchy may include International Society of Automation (ISA) 88 standard hierarchy model or ISA-95 standard hierarchy model. The CSM system may retrieve an industrial plant system analysis from a database and the industrial plant system analysis may provide information regarding one or more assets and conditions of the one or more assets. In certain embodiments, the industrial plant system analysis may include one or more assets associated with the industrial plant system, a layout of the one or more assets of the industrial plant system, a maintenance status of the one or more assets, a repair status of the one or more assets, and/or an inventory status of the one or more assets. Additionally or alternatively, the industrial plant system analysis may include an environmental condition associated with one or more assets, a protection condition (e.g., voltage protection) associated with one or more assets, a risk condition associated with one or more assets (e.g., lifetime expectancy), a wiring condition, a grounding condition, a ventilation condition associated with in industrial plant system, and the like. In certain embodiments, the mapping hierarchy may be previously determined, such as by the CSM system implemented by thecloud computing device88, and/or may be stored on a database communicatively coupled to the CSM system implemented by thecloud computing device88, such asdatabase80. As such, the CSM system may retrieve the stored mapping hierarchy from the database.
Atdecision block190, the CSM system may determine whether a trust factor is necessary. In some embodiments, the CSM system may present a user interface to an agent of the CSM system. For example, the user interface of a program or application on auser device90 used to access the CSM system may include a drop-down menu and the agent may select YES or NO in response to whether a trust factor is necessary. In certain embodiments, the CSM system may analyze the mapping hierarchy to determine whether a trust factor is necessary. For example, the CSM system may determine the asset has few (e.g., less than 2) connections to additional assets in the mapping hierarchy. As a result, the CSM system may determine the mapping hierarchy has missed potential assets. At process block192 (the YES path of decision block190), the CSM system may send a request for mapping validation to (please fill in). In certain embodiments, the CSM system may publish the mapping hierarchy and the asset data on a virtual ledger such as a blockchain. In some embodiments, the CSM system may send the request to a remote device associated with the customer. The remote device may display the mapping hierarchy and prompt a user of the remove device to confirm the mapping hierarchy.
Atprocess block194, the CSM system may receive a confirmation associated with the request. In certain embodiments, the confirmation may be published to a virtual ledger, such as a blockchain. As such, the CSM system may retrieve the confirmation from the virtual ledger. The confirmation may include an identity (e.g., employment title, name, username) associated with the party or individual providing the confirmation. The confirmation may include a representation and/or a visualization of a plant floor associated with an industrial plant system. In certain embodiments, only a portion of the mapping hierarchy may receive a confirmation. For example, the confirming party may provide a confirmation for only a number of assets the confirming party works on. Additionally or alternatively, the confirmation may include a revised representation and/or a revised visualization of the plant floor associated with an industrial plant system. For example, the revised representation may include additional assets, altered locations of assets, altered connection between assets, and the like.
Atprocess block196, the CSM system may generate a trust factor based on the confirmation. The trust factor may indicate an accuracy of the confirmation. In some embodiments, the CSM system may generate the trust factor based on an identity (e.g., position or title) of the party providing the confirmation. For example, the CSM system may retrieve the identity of the confirming party from a virtual ledger storing the confirmation and/or the mapping hierarchy. In certain embodiments, the CSM system may analyze the identity of the confirming party to generate the trust factor. For example, a plant manager may be more familiar with a plant floor layout of an industrial plant system than a receptionist. Additionally or alternatively, the CSM system may generate the trust factor based on a length of employment of the confirming party. For example, the longer the confirming party has worked at the plant, the greater the trust factor generated by the CSM system. In some embodiments, the CSM system may generate the trust factor based on a comparison between the physical location of the asset and an employment location of the confirming party. For example, if the asset is located in Building C, a confirming party that works in Building C may generate a greater trust factor than a confirming party that works in Building A.
Atdecision block198, the CSM system may determine whether the trust factor exceeds a threshold trust factor. The threshold trust factor may be based on the service inquiry, the asset type, the application asset data, the mapping hierarchy, and the like. In certain embodiments, the threshold trust factor may be based on the mapping hierarchy. For example, the threshold trust factor may be higher for critical components in a manufacturing process. In some embodiments, the threshold trust factor may be based on the application asset data. For example, the CSM system may determine the asset is frequently used based on the operational durations in the application asset data. As such, the CSM system may determine the asset is a critical component in a manufacturing process. When the CSM system determines that the trust factor does not exceed the threshold trust factor, the CSM system may return to decision block192 and send an additional request for mapping validation.
At process block200 (the YES path of decision block198), the CSM system may update the mapping hierarchy based on the confirmation. For example, the CSM system may update the mapping hierarchy to include additional assets associated with the confirmation, revise and/or confirm the location of one or more assets associated with the mapping hierarchy, revise and/or confirm connections between one or more assets, and the like. The CSM system may publish the updated mapping hierarchy to the virtual ledger.
When the CSM system determines that a trust factor isn't necessary (at decision block198), such as when the retrieved application asset data was recently updated (e.g., analyzing a timestamp and/or log associated with the application asset data) the CSM system may update (at process block202) the service inquiry associated with the asset based on the mapping hierarchy. For example, the CSM system may update the service inquiry with the representation of the plant floor. As a result, an agent of the CSM system may visualize connections between the asset and other assets/components on the plant floor to better assess the cause of the issue associated with the service inquiry. For example, the service inquiry may indicate a lack of sufficient power being supplied to the asset.
Atprocess block204, the CSM system may send the updated service inquiry to the asset. In certain embodiments, the updated service inquiry may include a request for additional data, such as an additional data field to be completed. For example, the CSM system may determine the issue associated with the service inquiry is related to a failed part. The updated service inquiry may include a request for a specific model number of the part, when the part was last replaced, any maintenance actions performed on the part, and so forth. In certain embodiments, the asset may include a graphical user interface capable of displaying the updated service inquiry and/or the mapping hierarchy. The asset may generate and transmit additional data in response to receiving the updated service inquiry. In certain embodiments, the updated service inquiry may include a request for a customer mapping hierarchy. The customer mapping hierarchy may include a timestamp associated with when the customer mapping hierarchy was generated and/or last updated. The customer mapping hierarchy may be a hierarchical organization of an industrial plant system, such asindustrial automation system10, indicative of a visualization and/or representation of a plant floor.
Atprocess block206, the CSM system may receive asset data that corresponds to the service inquiry. In certain embodiments, the CSM system may update the service inquiry based on the received asset data. In some embodiments, the asset data may include a second mapping hierarchy, such as the customer mapping hierarchy. The CSM system may compare the customer mapping hierarchy with a generated mapping hierarchy. In certain embodiments, the CSM system may update the generated mapping hierarchy with the customer mapping hierarchy. For example, the CSM system may revise a location of one or more assets, may revise connections between one or more assets, and may update the generated mapping hierarchy with one or more additional assets.
Atprocess block208, the CSM system may convert asset data based on the (updated) mapping hierarchy. In some embodiments, the CSM system may determine a conversion between the generated mapping hierarchy and the customer mapping hierarchy. In certain embodiments, the CSM system may determine a preferred mapping hierarchy. For example, an agent of the CSM system may select the customer mapping hierarchy or the generated mapping hierarchy for the representation of the plant floor. In certain embodiments, the CSM system may convert asset data based on the selected mapping hierarchy.
As such, the CSM system may convert application asset data according to a customer mapping hierarchy to provide more detailed analysis and/or provide particular maintenance and/or repair tasks according to a customer's desired mapping hierarchy. Additionally or alternatively, the CSM generated mapping hierarchy may be compared with the customer mapping hierarchy to validate and/or generate a trust factor associated with the generated mapping hierarchy.
In some instances, the CSM system may receive service inquiries lacking information about preventative maintenance measures taken by customers. As a result, it may be helpful to integrate additional data associated with maintenance action and/or parts replacements. The asset may also be capable of providing additional data associated with operation and/or maintenance of the asset. The CSM system may receive additional data from any number of sources and may analyze the data to assess and diagnose issues associated with a service inquiry and provide more accurate solutions to the service inquiry.
Keeping the foregoing in mind,FIG. 11 is a flowchart of amethod210 performed by the CSM system to determine maintenance action to be performed on an asset based on operational history. Although themethod210 is described below as performed by the CSM system, it should be noted that themethod210 may be performed by any suitable processor that process asset data. Furthermore, certain described steps may be implemented by executing instructions stored in a memory, using any suitable processing circuitry, such as the CSM system. In some embodiments, the memory may include one or more tangible, non-transitory computer-readable media that store instructions executable by any suitable processing circuitry and/or data to be processed by any suitable processing circuitry. For example, the memory may include random access memory (RAM), read only memory (ROM), rewritable non-volatile memory, such as flash memory, hard drives, optical discs, and/or the like. Moreover, although the following description of themethod210 is described in a particular order, it should be noted that themethod210 may be performed in any suitable order.
Atprocess block212, the CSM system may receive a service inquiry associated with an asset. For example, the CSM system may receive the service inquiry from the asset or a controller (e.g., in the industrial control system22) that controls the asset. More specifically, the asset orindustrial control system22 may automatically generate and may transmit the service inquiry in response to detecting an issue or potential issue associated with the asset (e.g., operational parameter greater than a threshold parameter value). In some embodiments, the CSM system may receive the service inquiry from a component of a communication network associated with the customer, such as theedge computing device86.
Atprocess block214, the CSM system may identify an asset associated with the service inquiry. In certain embodiments, the service inquiry may include one or more data fields completed by the customer. The service inquiry may include information indicative of an asset. For example, the service inquiry may include an asset type data field, an asset model data field, or the like. In certain embodiments, the service inquiry may include a drop-down menu for selecting an asset type and/or an asset model.
Atprocess block216, the CSM system may retrieve asset data from the asset. In certain embodiments, the CSM system may send a request for asset data. For example, the CSM system may transmit the request to the asset or theindustrial control system22. In some embodiments, the CSM system may receive operational data, customer data, inventory data, telemetry data, and any other suitable data as described herein. Additionally or alternatively, the CSM system may retrieve asset data from a database associated with the asset manufacturer. For instance, because the CSM system may determine a manufacturer of the asset based on the inquiry that may identify the manufacturer (e.g., via a data field completed by the customer ormetadata104A that may be included in the service inquiry), the CSM system may request the asset data from the manufacturer of the asset. In some embodiments, the CSM system may retrieve asset data from a distributed ledger, such as a blockchain.
Atprocess block218, the CSM system may determine an operational history based on the asset data. The operational history may include a record of maintenance actions performed on the asset. In certain embodiments, the record of maintenance actions may include part replacements, software updates, asset shutoff procedures, periodic maintenance actions, and the like. In some embodiments, the operational history may include a set of completed workflows. Each completed workflow may include a set of actions performed on the asset, a timestamp associated with the beginning of the workflow, a timestamp associated with an ending of the workflow, a timestamp associated with a beginning of each action of the set of actions, a time stamp associated with an ending of each action of the set of actions, and the like. In some embodiments, the operational history may include a record of maintenance actions performed on one or more other assets associated with an industrial plant system.
Atprocess block220, the CSM system may compare the operational history to an expected workflow. An expected workflow may include any number of expected maintenance actions to be performed on the asset. For example, a schedule of expected maintenance actions may be based on an operational lifecycle of the asset, an operational lifecycle of a part associated with the asset, a total operational duration associated with the asset, a total operational duration associated with a part, a periodic maintenance procedure (e.g., weekly, monthly, annually), and the like. For example, the asset manufacturer may recommend a set of maintenance actions be performed when a part is replaced and/or after a part is used for a particular amount of time or number of operations. As additional examples, the asset manufacturer may recommend a set of maintenance actions be performed based on a percentage (e.g., five percent, ten percent, twenty percent, fifty percent) of the operational lifecycle of the asset and/or a percentage of the operational lifecycle of a part associated with the asset.
Atprocess block222, the CSM system may determine an asset status based on the comparison and the service inquiry. The asset status may be indicative of an operational health of the asset. For example, the CSM system may generate an operational health report based on the total operational duration of the asset and the expected lifecycle of the asset. The operational health report may include a remaining lifecycle for the asset, a remaining lifecycle for any number of parts associated with the asset, a workflow (e.g., set of maintenance actions to be performed) based on the remaining lifecycle for the asset and/or a remaining lifecycle for a corresponding part, and the like. In some embodiments, the operational health report may be based on a remaining lifecycle for any number of parts associated with the asset. For example, the operational health report may include a percent (e.g., five percent, ten percent, twenty five percent, fifty percent, and so on) of operational lifecycle remaining for any number of parts Additionally or alternatively, the CSM system may determine the operational health based on a set of operational health factors, such as an expected lifecycle of the asset itself and the total operational duration of the asset, an expected lifecycle of a part associated with the asset and the total operational duration of the part, a set of maintenance actions yet to be performed, and the like. In certain embodiments, the CSM system may determine the asset status based on the least operationally healthy aspect of the asset. For example, the CSM system may determine the asset has fifty percent remaining in its lifecycle and a part included in the asset has ten percent remaining in its lifecycle. As a result, the CSM system may determine the operational health of the asset based on the remaining lifecycle of the part. Additionally or alternatively, the CSM system may determine the asset requires additional maintenance based on a set of missed maintenance actions. In certain embodiments, the CSM system may determine a set of missed maintenance actions correspond to an issue associated with the service inquiry. For example, the set of missed maintenance actions may be intended to prevent and/or remedy the issue associated with the service inquiry. In certain embodiments, the CSM system may weight the set of operational health factors. For example, the expected lifecycle of the asset may be weighted more heavily than a set of missed maintenance actions. Additionally or alternatively, the CSM system may determine a projected change to the operational health report based on a set of maintenance actions. For example, the CSM system may determine how the operational health of an associated asset is affected by performing any number of maintenance actions (e.g., replacing a worn part), such that the CSM system may determine and/or select any number of maintenance actions corresponding to a threshold change (e.g., above a threshold percentage) in the operational health of the associated asset. Additionally or alternatively, the CSM system may select a maintenance action corresponding to a greatest change in operational health associated with the asset. In certain embodiments, the CSM system may include the selected maintenance action(s) in a workflow to be performed on the associated asset.
Atprocess block224, the CSM system may generate a diagnostic report based on the asset status. For example, the diagnostic report may include the set of missed maintenance actions, a remaining lifecycle associated with one or more parts of an asset, a remaining lifecycle of the asset based on the total operational duration of the asset, the asset status, the operational health, and the like. In some embodiments, the CSM system may store the diagnostic report on a database and/or on a virtual ledger. In certain embodiments, CSM system may transmit the diagnostic report. For example, the CSM system may transmit the diagnostic report to the asset, and the asset may include a graphical user interface for displaying the diagnostic report. Additionally or alternatively, the CSM system may transmit the diagnostic report to a remote device associated with the customer, such as a computing device included in thecontrol room74.
Atprocess block226, the CSM system generate a workflow based on the diagnostic report. In certain embodiments, the workflow may include a set of steps to be performed to address and/or correct the issue that is the subject of the received service inquiry. For example, the workflow may include a shutoff step, a lockout step, a part replacement step, a software reset step, a software update step, and/or any other suitable step. In some embodiments, the workflow may include a number of recommended maintenance steps. For example, maintenance steps may be recommended based on an operational lifetime of the asset, an operational lifetime of a part of the asset, an expected lifecycle of the asset, an expected lifecycle of a component of the asset, and so forth. In certain embodiments, the workflow may include a schedule for the workflow to be performed. Additionally or alternatively, a maintenance action may include ordering and/or shipping a new part associated with the asset to replace a worn part. In certain embodiments, the set of maintenance actions may include a set of safety actions such that the asset may be properly shut down and/or prevented from restarting before completion of a maintenance workflow (e.g., lock out/tag out procedure). For example, a safety action may include isolating a power source associated with the asset and/or attaching a safety device to prevent activation of a switch, valve, button, or any other suitable startup control from being used to startup the asset.
Atprocess block228, the CSM system may send the workflow to the asset, theindustrial control system22, or theedge device86. The CSM system may also provide a notification indicative of the workflow. In certain embodiments, the CSM system may send the workflow and a notification to the asset, and a display of the asset (or a display communicatively coupled to the asset) may display a first step of the workflow. In certain embodiments, the CSM system may send the notification to a control system associated with the asset (e.g., industrial control system22). Additionally or alternatively, the control system may control the operating parameters of the asset in response to receiving the notification. That is, the control system may adjust the operation of the asset based on the workflow.
As such, the CSM system may retrieve asset data in response to a service inquiry to more accurately diagnose issues associated with the service inquiry and provide a suggested set of maintenance and repair actions (e.g., replacement of worn parts) to be carried out on the asset and/or performed by the asset.
Technical effects of the present disclosure include techniques for receiving and/or retrieving asset data including telemetry data, inventory data, operational data, and the like in response to receiving a service inquiry associated with an asset and generating a mapping hierarchy for an industrial plant system including any number of assets. As such, the mapping hierarchy may be utilized by a CSM system to more accurately diagnose issues identified in a service inquiry.
While only certain features of the presently disclosed embodiments have been illustrated and described herein, many modifications and changes will occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the embodiments described herein.