US20200363935A1 - Device-to-device communication in an industrial automation environment - Google Patents
Device-to-device communication in an industrial automation environment Download PDFInfo
- Publication number
- US20200363935A1 US20200363935A1 US16/983,363 US202016983363A US2020363935A1 US 20200363935 A1 US20200363935 A1 US 20200363935A1 US 202016983363 A US202016983363 A US 202016983363A US 2020363935 A1 US2020363935 A1 US 2020363935A1
- Authority
- US
- United States
- Prior art keywords
- peer
- industrial
- computing system
- communication session
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/046—Interoperability with other network applications or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Definitions
- aspects of the disclosure are related to computing hardware and software technology.
- Software applications that run on computing systems commonly provide some type of user client interface to present information to the user and receive user inputs.
- an application running on a client computing system receives data transmitted from a server over a communication network for display to the user on the user client interface.
- Industrial automation environments utilize machines during the industrial manufacturing process. These machines typically have various moving parts and other components that continually produce operational data over time, such as pressure, temperature, speed, and other metrics. Reviewing and monitoring this operational data is of high importance to those involved in operating an industrial enterprise.
- the operational data may be provided for display on a variety of systems and devices, such as notebook or tablet computers running standalone applications, web browsers, and the like, in order to present the information to the user.
- a tablet computer could receive a constant stream of the operational data over a network and display this information dynamically, such as by providing live tiles, icons, charts, trends, and other graphical representations which continually receive updated operational data from external data sources, which are typically located in the industrial automation environment.
- GUI graphical user interface
- FIG. 1 is a block diagram that illustrates an operation of a communication system in an exemplary implementation.
- FIG. 2 is a flow diagram that illustrates an operation of a computing system in an exemplary implementation.
- FIG. 3 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation.
- FIG. 4 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation.
- FIG. 5 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation.
- FIG. 6 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation.
- FIG. 7 is a block diagram that illustrates an operational scenario involving a computing system in an industrial automation environment in an exemplary implementation.
- FIG. 8 is a block diagram that illustrates a computing system in an exemplary implementation.
- Implementations disclosed herein provide for direct device-to-device communication in industrial automation environments.
- Most industrial operations typically generate noise and electrical interference that adversely effect wireless communications, resulting in varying levels of connectivity throughout a plant.
- many industrial automation environments have not deployed network infrastructure necessary to support plant-wide communications. Because of this lack of networking equipment and the harsh conditions in an industrial setting, communication between individual operators can be difficult.
- the techniques disclosed herein help to overcome these problems by enabling users to communicate with mobile communication devices, such as smartphones, tablets, laptops, or industrial plant management hardware, without the use of intermediary servers, services, or cloud infrastructure.
- a graphical user interface (GUI) of an industrial application is displayed on a display system of a computing system.
- the computing system wirelessly connects to a remote computing system and engages in a peer-to-peer communication session, typically from within the GUI of the industrial application.
- Industrial data associated with the industrial application may be displayed within the peer-to-peer communication session, enabling the users to discuss the data being displayed as it changes in real time.
- FIG. 1 illustrates a communication system and an operational scenario in which computing systems engage in direct device-to-device communications.
- FIG. 2 is a flow diagram that illustrates a communication process that may be performed by a computing system.
- FIG. 3 illustrates an operational scenario involving a chat session launched within an incident report in an exemplary implementation
- FIG. 4 illustrates an operational scenario of a chat feature available within an industrial application in another exemplary implementation.
- FIG. 5 illustrates an operational scenario of a chat session and industrial data displayed simultaneously in an exemplary implementation
- FIG. 6 illustrates an operational scenario of a chat session having an industry-specific keyboard in another exemplary implementation.
- FIG. 7 illustrates an exemplary industrial automation environment that includes a computing system that may be used to execute a communication process
- FIG. 8 illustrates an exemplary computing system that may be used to perform any of the communication processes and operational scenarios described herein.
- Communication system 100 includes computing systems 101 and 102 .
- Computing system 101 and computing system 102 communicate over communication link 121 .
- FIG. 1 An exemplary operation of communication system 100 is illustrated in FIG. 1 .
- computing systems 101 and 102 establish direct device-to-device communication over communication link 121 without the use of intermediate servers, routers, or other network equipment.
- computing system 101 and 102 could communicate over communication link 121 using peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), and other wireless protocols.
- computing systems 101 and 102 could be part of a node-based infrastructure in a wireless mesh network.
- the users of computing systems 101 and 102 engage in a communication session within an industrial application.
- the users could communicate using peer-to-peer chat that is displayed along with other features and functionality of an industrial application.
- the communication session is typically displayed within the same graphical user interface (GUI) that is associated with the industrial application.
- GUI graphical user interface
- FIG. 2 is a flow diagram that illustrates an operation 200 of a computing system in an exemplary implementation.
- the operation 200 shown in FIG. 2 may also be referred to as communication process 200 herein.
- the steps of the operation are indicated below parenthetically.
- the following discussion of operation 200 will proceed with reference to computing systems 101 and 102 of FIG. 1 in order to illustrate its operations, but note that the details provided in FIG. 1 are merely exemplary and not intended to limit the scope of process 200 to the specific implementation of FIG. 1 .
- Operation 200 may be employed to operate a computing system to facilitate communication between users in an application associated with an industrial automation environment. However, operation 200 could also be employed by a computing system to facilitate user communication for any software application irrespective of its purpose or functionality, including a website or webpages provided by a server for viewing in a web browser, mobile applications for execution on a mobile device, editing and design tools, media players, simulation software, or any other application.
- computing system 101 wirelessly connects to remote computing system 102 using a peer-to-peer protocol ( 201 ).
- the peer-to-peer protocol could comprise any wireless protocol capable of facilitating direct device-to-device communication between computing systems 101 and 102 .
- computing system 101 and 102 could wirelessly connect using peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), and other wireless protocols.
- computing system 101 wirelessly connecting to remote computing system 102 could be handled by other software components and libraries to establish the connection, such as operating system functions, hardware drivers, and the like.
- computing systems 101 and 102 could be part of a node-based infrastructure in a wireless mesh network.
- GUI graphical user interface
- the application directs computing system 101 to display the GUI on the display system.
- the GUI provides the user with an interface to view and interact with graphical content and other data associated with the industrial application that is displayed by computing system 101 .
- Computing system 101 engages in a peer-to-peer communication session with remote computing system 102 , wherein the peer-to-peer communication session is displayed within the GUI of the industrial application ( 203 ).
- the peer-to-peer communication session typically comprises a text-based chat session between the users of computing systems 101 and 102 , although alternative forms of communication could also be used, including video, audio, images, and others.
- the peer-to-peer communication session could comprise any technique of direct communication between computing systems 101 and 102 without the use of additional servers, switches, routers, or other intermediary networking equipment.
- the peer-to-peer communication session is displayed by computing system 101 within the GUI of the industrial application, and thus is typically, although not necessarily, incorporated as a feature or module within the industrial application itself.
- the peer-to-peer communication session is launched from within the industrial application.
- the peer-to-peer communication session could also be launched from within an incident report associated with the industrial application.
- the peer-to-peer chat session is also displayed within an instance of the industrial application running on remote computing system 102 .
- a user-specific keyboard could also be displayed within the peer-to-peer communication session having characters associated with a user's organizational role in the industrial automation environment.
- Computing system 101 displays industrial data associated with the industrial application within the peer-to-peer communication session ( 204 ).
- the industrial data displayed within the communication session could comprise any data for an industrial application associated with the industrial automation environment.
- the industrial data could comprise operational data, machine data, screen graphics data, screen captures, video data, tag data, alarms, drive configurations, key performance indicators (KPIs), charts, trends, and other graphical content, simulation data, or any other data associated with an industrial automation environment, including combinations thereof.
- the industrial data associated with the industrial application could comprise a live trend displaying current operational data as it is generated.
- the industrial data is typically displayed in response to a user request, but the data could also be displayed by the industrial application automatically on a scheduled or periodic basis, or in response to alarms and other events to notify the user of potential problems.
- computing system 101 could display the industrial data associated with the industrial application within the peer-to-peer communication session in response to a user selection of the industrial data for display within the peer-to-peer communication session.
- the industrial data may also be displayed within the peer-to-peer communication session on remote computing system 102 .
- computing system 101 could be configured to display the industrial data within the peer-to-peer communication session on the display system of computing system 101 , and transfer the industrial data to remote computing system 102 for display within the peer-to-peer communication session on remote computing system 102 .
- Remote computing system 102 could also receive the industrial data for display within the peer-to-peer communication session from other network resources.
- an application server typically collects and retrieves the industrial data for the industrial application and transfers the data to computing system 101 and/or 102 , but note that the industrial data could be received from various different systems which may be in geographically diverse locations.
- the application server could comprise a system located on-premise and accessible over a local network connection, or running in a cloud-based environment accessed over a wide area network such as the Internet, or any other deployment scheme, including combinations thereof.
- the industrial data displayed within the peer-to-peer communication session could be stored locally within computing system 101 and/or 102 .
- Other system and network architectures are possible and within the scope of this disclosure.
- computing systems 101 and 102 can engage in a peer-to-peer communication session within the context of an industrial application.
- direct device-to-device communication the users of computing systems 101 and 102 are able to communicate even in harsh industrial environments and without intermediate networking components. Displaying the industrial data associated with the industrial application within the peer-to-peer communication session also provides valuable context and interactivity to the conversation, thereby facilitating operations management and troubleshooting.
- An example of a graphical user interface provided by an application that illustrates one possible implementation of the techniques disclosed herein will now be discussed with respect to FIG. 3 .
- FIG. 3 is a block diagram that illustrates an operational scenario of computing system 300 in an exemplary implementation.
- Computing system 300 includes display system 301 which displays graphical user interface (GUI) 309 of an industrial application.
- display system 301 comprises a touch screen that displays GUI 309 for the user to interact with and accepts input commands from the user via the user's touches on the surface of the touch screen.
- GUI graphical user interface
- FIG. 3 two different view states are shown displayed on display system 301 , labeled 305 A and 305 B. The different view states show the changes that occur to GUI 309 as the user makes selections and interacts with GUI 309 and its associated application.
- the user has created a new incident report within the industrial application.
- the incident report relates to a problem or issue with industrial operations.
- the user has specified the title of the incident as “System Down” and has entered a description of the incident as “System crash. Production line halted.”
- the user has also included a photo image attachment to the incident report.
- the “Related Information” section indicates that five chat sessions have commenced related to the incident, there is one related pressure trend, and four related incidents.
- GUI 309 on view state 305 A the user is presented with an option to launch a chat session from within the industrial application related to the incident report.
- the chat option is provided by the small chat bubble graphical icon appearing on GUI 309 , which loads a chat session within the application. The user selects the chat bubble icon, which brings up a chat session as shown in view state 305 B.
- View state 305 B illustrates an exemplary chat session window that is displayed within the context of the incident report in the industrial application.
- the user when selecting the chat option, the user is prompted to identify a target user or users for the chat session, and the industrial application would responsively direct computing system 300 to connect directly to the mobile devices of the target users over a peer-to-peer protocol to establish direct device-to-device communication.
- the title of the incident, “System Down”, is displayed at the top of the chat session.
- the chat session is also displayed within GUI 309 of the industrial application, which beneficially ensures that the context of the incident in the industrial application is not lost, and the user does not need to close the industrial application or load an additional application to engage in the chat session.
- An exemplary implementation of another communication process associated with industrial applications will now be discussed with respect to FIG. 4 .
- FIG. 4 is a block diagram that illustrates an operational scenario of computing system 400 in an exemplary implementation.
- two different view states are shown displayed on display system 401 , labeled 405 A and 405 B.
- view state 405 A computing system 400 executes an industrial application which generates graphical content in the form of GUI 409 for display on display system 401 .
- GUI 409 is associated with an industrial application catalog that allows the user to view and select from new software releases and updates.
- the user “Tom” has launched a chat session to inquire about a new human-machine interface (HMI) software release.
- HMI human-machine interface
- computing system 400 engages in a chat session with at least one other mobile computing device using direct device-to-device communication.
- user “Joe” has responded to the request by providing a link to the new HMI software knowledge base.
- Tom clicks the “Open Article” link that Joe provided in his chat response, which results in computing system 400 loading GUI 410 of the HMI software application knowledge base as shown in view state 405 B.
- View state 405 B illustrates a different industrial application than the application catalog that was previously displayed on display system 401 of computing system 400 in view state 405 A.
- view state 405 B depicts computing system 400 executing an HMI software application which generates graphical content in the form of GUI 410 for display on display system 401 .
- GUI 410 is associated with a knowledge base for the HMI software application, which provides documentation for the software and known issues.
- the “Documentation” tab is selected, which provides a Quick Start, User Guide, Troubleshooter, Product Profile, and Technical Data for the HMI software application.
- the user is provided with a chat feature within the HMI software application.
- the user can select the chat feature from within the application in order to discuss any questions or issues related to the HMI software application with other users of the application while remaining within the context of the application.
- An exemplary implementation of a chat session that includes industrial data within the session will now be discussed with respect to FIG. 5 .
- FIG. 5 is a block diagram that illustrates an operational scenario of computing system 500 in an exemplary implementation.
- Computing system 500 includes display system 501 which displays GUI 509 of an industrial application.
- the industrial application associated with GUI 509 comprises a network performance monitor application.
- a chat session has been established between two users, Joe and Paul. The users are able to insert industrial data for display within the chat session.
- an industrial application may initially display industrial data and a chat session could be loaded alongside that data.
- Joe has included a trend diagram within the chat session that shows live data of the network performance in real time.
- Both Joe and Paul are able to view the live graph in real time within the chat session on their respective mobile computing devices, which provides the benefit of enabling these users to discuss the drop in network performance as it happens in real time.
- An exemplary implementation of a chat session that includes an industry-specific keyboard will now be discussed with respect to FIG. 6 .
- FIG. 6 is a block diagram that illustrates an operational scenario of computing system 600 in an exemplary implementation.
- Computing system 600 includes display system 601 which displays GUI 609 of an industrial application.
- GUI 609 An industry-specific keyboard is illustrated at the bottom of GUI 609 , which provides the user with a library of industrial automation-specific images, fonts, and symbols for use in the chat session.
- the keyboard could be unique to the user, providing characters and symbols associated with the user's organizational role in an industrial automation environment.
- the keyboard for the chat session could be associated with the industrial application within which the chat session is occurring, thereby offering functions, symbols, and characters associated with that particular industrial application. In this manner, users are able to chat within the context of a particular industrial application, and have access to industry-specific characters, fonts, symbols, operators, and the like for use within the chat session.
- computing systems 101 and 102 each separately comprise a processing system and communication transceiver.
- Computing systems 101 and 102 may also include other components such as a user interface, data storage system, and power supply.
- Computing systems 101 and 102 may each reside in a single device or may be distributed across multiple devices.
- Examples of computing systems 101 and 102 include mobile computing devices, such as cell phones, tablet computers, laptop computers, notebook computers, and gaming devices, as well as any other type of mobile computing devices and any combination or variation thereof.
- Examples of computing systems 101 and 102 also include desktop computers, server computers, and virtual machines, as well as any other type of computing system, variation, or combination thereof.
- computing systems 101 and 102 could comprise mobile devices capable of operating in a server-like fashion which, among other uses, could be utilized in a wireless mesh network.
- Communication link 121 uses metal, air, space, optical fiber such as glass or plastic, or some other material as the transport medium—including combinations thereof.
- Communication link 121 could use various communication protocols, such as time-division multiplexing (TDM), Internet Protocol (IP), Ethernet, telephony, optical networking, wireless mesh networks (WMN), communication signaling, wireless protocols such as peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), or some other communication format, including combinations thereof.
- TDM time-division multiplexing
- IP Internet Protocol
- Ethernet Ethernet
- telephony optical networking
- WSN wireless mesh networks
- communication signaling wireless protocols such as peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), or some other communication format, including combinations thereof.
- Industrial automation environment 700 provides an example of an industrial automation environment that may be utilized to implement the communication processes disclosed herein, but other environments could also be used.
- Industrial automation environment 700 includes computing system 710 , machine system 720 , industrial controller 725 , database system 730 , and application integration platform 735 .
- Machine system 720 and controller 725 are in communication over a communication link
- controller 725 and database system 730 communicate over a communication link
- database system 730 and application integration platform 735 communicate over a communication link
- application integration platform 735 and computing system 710 are in communication over a communication link. Note that there would typically be many more machine systems in most industrial automation environments, but the number of machine systems shown in FIG. 7 has been restricted for clarity.
- Industrial automation environment 700 comprises an automobile manufacturing factory, food processing plant, oil drilling operation, microprocessor fabrication facility, or some other type of industrial enterprise.
- Machine system 720 could comprise a sensor, drive, pump, filter, drill, motor, robot, fabrication machinery, mill, printer, or any other industrial automation equipment, including their associated control systems.
- a control system comprises, for example, industrial controller 725 , which could include automation controllers, programmable logic controllers (PLCs), programmable automation controllers (PACs), or any other controllers used in automation control.
- PLCs programmable logic controllers
- PACs programmable automation controllers
- machine system 720 could comprise other industrial equipment, such as a brew kettle in a brewery, a reserve of coal or other resources, or any other element that may reside in an industrial automation environment 700 .
- Machine system 720 continually produces operational data over time.
- the operational data indicates the current status of machine system 720 , such as parameters, pressure, temperature, speed, energy usage, operational equipment effectiveness (OEE), mean time between failure (MTBF), mean time to repair (MTTR), voltage, throughput volumes, times, tank levels, or any other performance status metrics.
- the operational data may comprise dynamic charts or trends, real-time video, or some other graphical content.
- Machine system 720 and/or controller 725 is capable of transferring the operational data over a communication link to database system 730 , application integration platform 735 , and computing system 710 , typically via a communication network.
- Database system 730 could comprise a disk, tape, integrated circuit, server, or some other memory device. Database system 730 may reside in a single device or may be distributed among multiple memory devices.
- Application integration platform 735 comprises a processing system and a communication transceiver.
- Application integration platform 735 may also include other components such as a router, server, data storage system, and power supply.
- Application integration platform 735 may reside in a single device or may be distributed across multiple devices.
- Application integration platform 735 may be a discrete system or may be integrated within other systems—including other systems within industrial automation environment 700 .
- application integration platform 735 could comprise a FactoryTalk® VantagePoint server system provided by Rockwell Automation, Inc.
- the communication links over which data is exchanged between machine system 720 , industrial controller 725 , database system 730 , application integration platform 735 , and communication interface 708 of computing system 710 could use metal, air, space, optical fiber such as glass or plastic, or some other material as the transport medium—including combinations thereof.
- the communication links could comprise multiple network elements such as routers, gateways, telecommunication switches, servers, processing systems, or other communication equipment and systems for providing communication and data services.
- These communication links could use various communication protocols, such as TDM, IP, Ethernet, telephony, optical networking, packet networks, wireless mesh networks (WMN), local area networks (LAN), metropolitan area networks (MAN), wide area networks (WAN), hybrid fiber coax (HFC), communication signaling, wireless protocols, communication signaling, peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), or some other communication format, including combinations thereof.
- the communication links could be direct links or may include intermediate networks, systems, or devices.
- Computing system 710 may be representative of any computing apparatus, system, or systems on which the display processes disclosed herein or variations thereof may be suitably implemented.
- Computing system 710 provides an example of a computing system that could be used as a either a server or a client device in some implementations, although such devices could have alternative configurations.
- Examples of computing system 710 include mobile computing devices, such as cell phones, tablet computers, laptop computers, notebook computers, and gaming devices, as well as any other type of mobile computing devices and any combination or variation thereof.
- Examples of computing system 710 also include desktop computers, server computers, and virtual machines, as well as any other type of computing system, variation, or combination thereof.
- computing system 710 could comprise a mobile device capable of operating in a server-like fashion which, among other uses, could be utilized in a wireless mesh network.
- Computing system 710 includes processing system 701 , storage system 703 , software 705 , communication interface 708 , and user interface 709 .
- Processing system 701 is operatively coupled with storage system 703 , communication interface 708 , and user interface 709 .
- Processing system 701 loads and executes software 705 from storage system 703 .
- Software 705 includes application 706 and operating system 707 .
- Application 706 may include communication process 200 in some examples.
- software 705 directs computing system 710 to operate as described herein for communication process 200 or variations thereof.
- user interface 709 includes display system 711 , which itself may be part of a touch screen that also accepts user inputs via touches on its surface.
- Computing system 710 may optionally include additional devices, features, or functionality not discussed here for purposes of brevity.
- Computing system 800 provides an example of computing systems 101 , 300 , 400 , 500 , 600 , or any computing system that may be used to execute communication process 200 or variations thereof, although such systems could use alternative configurations.
- Computing system 800 includes processing system 801 , storage system 803 , software 805 , communication interface 807 , and user interface 809 .
- User interface 809 comprises display system 808 .
- Software 805 includes application 806 which itself includes communication process 200 . Communication process 200 may optionally be implemented separately from application 806 .
- Computing system 800 may be representative of any computing apparatus, system, or systems on which application 806 and communication process 200 or variations thereof may be suitably implemented.
- Examples of computing system 800 include mobile computing devices, such as cell phones, tablet computers, laptop computers, notebook computers, and gaming devices, as well as any other type of mobile computing devices and any combination or variation thereof. Note that the features and functionality of computing system 800 may apply as well to desktop computers, server computers, and virtual machines, as well as any other type of computing system, variation, or combination thereof.
- Computing system 800 includes processing system 801 , storage system 803 , software 805 , communication interface 807 , and user interface 809 .
- Processing system 801 is operatively coupled with storage system 803 , communication interface 807 , and user interface 809 .
- Processing system 801 loads and executes software 805 from storage system 803 .
- software 805 directs computing system 800 to operate as described herein for communication process 200 or variations thereof.
- Computing system 800 may optionally include additional devices, features, or functionality not discussed herein for purposes of brevity.
- processing system 801 may comprise a microprocessor and other circuitry that retrieves and executes software 805 from storage system 803 .
- Processing system 801 may be implemented within a single processing device but may also be distributed across multiple processing devices or sub-systems that cooperate in executing program instructions. Examples of processing system 801 include general purpose central processing units, application specific processors, and logic devices, as well as any other type of processing device, combinations, or variations thereof.
- Storage system 803 may comprise any computer readable media or storage media readable by processing system 801 and capable of storing software 805 .
- Storage system 803 may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.
- Storage system 803 may be implemented as a single storage device but may also be implemented across multiple storage devices or sub-systems co-located or distributed relative to each other.
- Storage system 803 may comprise additional elements, such as a controller, capable of communicating with processing system 801 .
- storage media examples include random access memory, read only memory, magnetic disks, optical disks, flash memory, virtual memory and non-virtual memory, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and that may be accessed by an instruction execution system, as well as any combination or variation thereof, or any other type of storage media.
- the storage media a propagated signal.
- processing system 801 loads and executes portions of software 805 , such as communication process 200 , to render a graphical user interface for application 806 for display by display system 808 of user interface 809 .
- Software 805 may be implemented in program instructions and among other functions may, when executed by computing system 800 in general or processing system 801 in particular, direct computing system 800 or processing system 801 to wirelessly connect to a remote computing system using a peer-to-peer protocol.
- Software 805 may further direct computing system 800 or processing system 801 to display a graphical user interface (GUI) associated with an industrial application on display system 808 of computing system 800 .
- GUI graphical user interface
- software 805 directs computing system 800 or processing system 801 to engage in a peer-to-peer communication session with the remote computing system, wherein the peer-to-peer communication session is displayed within the GUI of the industrial application.
- software 805 may direct computing system 800 or processing system 801 to display industrial data associated with the industrial application within the peer-to-peer communication session.
- Software 805 may include additional processes, programs, or components, such as operating system software or other application software. Examples of operating systems include Windows®, iOS®, and Android®, as well as any other suitable operating system. Software 805 may also comprise firmware or some other form of machine-readable processing instructions executable by processing system 801 .
- software 805 may, when loaded into processing system 801 and executed, transform computing system 800 overall from a general-purpose computing system into a special-purpose computing system customized to facilitate communication between users in an industrial application as described herein for each implementation.
- encoding software 805 on storage system 803 may transform the physical structure of storage system 803 .
- the specific transformation of the physical structure may depend on various factors in different implementations of this description. Examples of such factors may include, but are not limited to the technology used to implement the storage media of storage system 803 and whether the computer-readable storage media are characterized as primary or secondary storage.
- software 805 may transform the physical state of the semiconductor memory when the program is encoded therein.
- software 805 may transform the state of transistors, capacitors, or other discrete circuit elements constituting the semiconductor memory.
- a similar transformation may occur with respect to magnetic or optical media.
- Other transformations of physical media are possible without departing from the scope of the present description, with the foregoing examples provided only to facilitate this discussion.
- computing system 800 is generally intended to represent a computing system with which software 805 is deployed and executed in order to implement application 806 and/or communication process 200 (and variations thereof). However, computing system 800 may also represent any computing system on which software 805 may be staged and from where software 805 may be distributed, transported, downloaded, or otherwise provided to yet another computing system for deployment and execution, or yet additional distribution. For example, computing system 800 could be configured to deploy software 805 over the internet to one or more client computing systems for execution thereon, such as in a cloud-based deployment scenario.
- Communication interface 807 may include communication connections and devices that allow for communication between computing system 800 and other computing systems (not shown) or services, over a communication network 811 or collection of networks. In some implementations, communication interface 807 receives dynamic data 821 over communication network 811 . Examples of connections and devices that together allow for inter-system communication may include network interface cards, antennas, power amplifiers, RF circuitry, transceivers, and other communication circuitry. The aforementioned network, connections, and devices are well known and need not be discussed at length here.
- User interface 809 may include a voice input device, a touch input device for receiving a gesture from a user, a motion input device for detecting non-touch gestures and other motions by a user, and other comparable input devices and associated processing elements capable of receiving user input from a user.
- Output devices such as display system 808 , speakers, haptic devices, and other types of output devices may also be included in user interface 809 .
- the aforementioned user input devices are well known in the art and need not be discussed at length here.
- User interface 809 may also include associated user interface software executable by processing system 801 in support of the various user input and output devices discussed above. Separately or in conjunction with each other and other hardware and software elements, the user interface software and devices may provide a graphical user interface, a natural user interface, or any other kind of user interface.
Abstract
Description
- This application is a continuation of and claims the benefit of and priority to U.S. patent application Ser. No. 14/723,131 entitled “DEVICE-TO-DEVICE COMMUNICATION IN AN INDUSTRIAL AUTOMATION ENVIRONMENT,” filed on May 27, 2015, which is hereby incorporated by reference in its entirety for all purposes.
- Aspects of the disclosure are related to computing hardware and software technology.
- Software applications that run on computing systems commonly provide some type of user client interface to present information to the user and receive user inputs. In a typical client-server architecture, an application running on a client computing system receives data transmitted from a server over a communication network for display to the user on the user client interface.
- Industrial automation environments utilize machines during the industrial manufacturing process. These machines typically have various moving parts and other components that continually produce operational data over time, such as pressure, temperature, speed, and other metrics. Reviewing and monitoring this operational data is of high importance to those involved in operating an industrial enterprise.
- In some cases, the operational data may be provided for display on a variety of systems and devices, such as notebook or tablet computers running standalone applications, web browsers, and the like, in order to present the information to the user. For example, a tablet computer could receive a constant stream of the operational data over a network and display this information dynamically, such as by providing live tiles, icons, charts, trends, and other graphical representations which continually receive updated operational data from external data sources, which are typically located in the industrial automation environment.
- Techniques to facilitate communication between users in an industrial application associated with an industrial automation environment are disclosed herein. In at least one implementation, a graphical user interface (GUI) associated with the industrial application is displayed on a display system of the computing system. The computing system engages in a peer-to-peer communication session with a remote computing system, wherein the peer-to-peer communication session is displayed within the GUI of the industrial application. Industrial data associated with the industrial application is displayed within the peer-to-peer communication session.
- This Overview is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. It should be understood that this Overview is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
- Many aspects of the disclosure can be better understood with reference to the following drawings. While several implementations are described in connection with these drawings, the disclosure is not limited to the implementations disclosed herein. On the contrary, the intent is to cover all alternatives, modifications, and equivalents.
-
FIG. 1 is a block diagram that illustrates an operation of a communication system in an exemplary implementation. -
FIG. 2 is a flow diagram that illustrates an operation of a computing system in an exemplary implementation. -
FIG. 3 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation. -
FIG. 4 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation. -
FIG. 5 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation. -
FIG. 6 is a block diagram that illustrates an operational scenario of a computing system in an exemplary implementation. -
FIG. 7 is a block diagram that illustrates an operational scenario involving a computing system in an industrial automation environment in an exemplary implementation. -
FIG. 8 is a block diagram that illustrates a computing system in an exemplary implementation. - The following description and associated figures teach the best mode of the invention. For the purpose of teaching inventive principles, some conventional aspects of the best mode may be simplified or omitted. The following claims specify the scope of the invention. Note that some aspects of the best mode may not fall within the scope of the invention as specified by the claims. Thus, those skilled in the art will appreciate variations from the best mode that fall within the scope of the invention. Those skilled in the art will appreciate that the features described below can be combined in various ways to form multiple variations of the invention. As a result, the invention is not limited to the specific examples described below, but only by the claims and their equivalents.
- Implementations disclosed herein provide for direct device-to-device communication in industrial automation environments. Most industrial operations typically generate noise and electrical interference that adversely effect wireless communications, resulting in varying levels of connectivity throughout a plant. In addition, many industrial automation environments have not deployed network infrastructure necessary to support plant-wide communications. Because of this lack of networking equipment and the harsh conditions in an industrial setting, communication between individual operators can be difficult. The techniques disclosed herein help to overcome these problems by enabling users to communicate with mobile communication devices, such as smartphones, tablets, laptops, or industrial plant management hardware, without the use of intermediary servers, services, or cloud infrastructure.
- In at least one implementation, a graphical user interface (GUI) of an industrial application is displayed on a display system of a computing system. The computing system wirelessly connects to a remote computing system and engages in a peer-to-peer communication session, typically from within the GUI of the industrial application. Industrial data associated with the industrial application may be displayed within the peer-to-peer communication session, enabling the users to discuss the data being displayed as it changes in real time. By enabling direct device-to-device communication between users in an industrial environment within the context of industrial applications, the users are better able to resolve issues and manage industrial operations.
- Referring now to the drawings,
FIG. 1 illustrates a communication system and an operational scenario in which computing systems engage in direct device-to-device communications.FIG. 2 is a flow diagram that illustrates a communication process that may be performed by a computing system.FIG. 3 illustrates an operational scenario involving a chat session launched within an incident report in an exemplary implementation, whileFIG. 4 illustrates an operational scenario of a chat feature available within an industrial application in another exemplary implementation.FIG. 5 illustrates an operational scenario of a chat session and industrial data displayed simultaneously in an exemplary implementation, whileFIG. 6 illustrates an operational scenario of a chat session having an industry-specific keyboard in another exemplary implementation.FIG. 7 illustrates an exemplary industrial automation environment that includes a computing system that may be used to execute a communication process, andFIG. 8 illustrates an exemplary computing system that may be used to perform any of the communication processes and operational scenarios described herein. - Turning now to
FIG. 1 , an operational scenario ofcommunication system 100 is illustrated in an exemplary implementation.Communication system 100 includescomputing systems Computing system 101 andcomputing system 102 communicate overcommunication link 121. - An exemplary operation of
communication system 100 is illustrated inFIG. 1 . In this example,computing systems communication link 121 without the use of intermediate servers, routers, or other network equipment. For example,computing system communication link 121 using peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), and other wireless protocols. In some implementations,computing systems - After establishing a direct connection, the users of
computing systems computing system 101 will now be described in greater detail with respect toFIG. 2 . -
FIG. 2 is a flow diagram that illustrates anoperation 200 of a computing system in an exemplary implementation. Theoperation 200 shown inFIG. 2 may also be referred to ascommunication process 200 herein. The steps of the operation are indicated below parenthetically. The following discussion ofoperation 200 will proceed with reference to computingsystems FIG. 1 in order to illustrate its operations, but note that the details provided inFIG. 1 are merely exemplary and not intended to limit the scope ofprocess 200 to the specific implementation ofFIG. 1 . -
Operation 200 may be employed to operate a computing system to facilitate communication between users in an application associated with an industrial automation environment. However,operation 200 could also be employed by a computing system to facilitate user communication for any software application irrespective of its purpose or functionality, including a website or webpages provided by a server for viewing in a web browser, mobile applications for execution on a mobile device, editing and design tools, media players, simulation software, or any other application. - As shown in the operational flow of
process 200,computing system 101 wirelessly connects toremote computing system 102 using a peer-to-peer protocol (201). The peer-to-peer protocol could comprise any wireless protocol capable of facilitating direct device-to-device communication betweencomputing systems computing system computing system 101 wirelessly connecting toremote computing system 102 could be handled by other software components and libraries to establish the connection, such as operating system functions, hardware drivers, and the like. In some implementations,computing systems - A graphical user interface (GUI) associated with an industrial application is displayed on a display system of computing system 101 (202). Typically, when the industrial application is launched, either by the user or an operating system or some other process, the application directs
computing system 101 to display the GUI on the display system. The GUI provides the user with an interface to view and interact with graphical content and other data associated with the industrial application that is displayed by computingsystem 101. -
Computing system 101 engages in a peer-to-peer communication session withremote computing system 102, wherein the peer-to-peer communication session is displayed within the GUI of the industrial application (203). The peer-to-peer communication session typically comprises a text-based chat session between the users of computingsystems computing systems system 101 within the GUI of the industrial application, and thus is typically, although not necessarily, incorporated as a feature or module within the industrial application itself. Thus, in some implementations, the peer-to-peer communication session is launched from within the industrial application. The peer-to-peer communication session could also be launched from within an incident report associated with the industrial application. In at least one implementation, the peer-to-peer chat session is also displayed within an instance of the industrial application running onremote computing system 102. In some implementations, a user-specific keyboard could also be displayed within the peer-to-peer communication session having characters associated with a user's organizational role in the industrial automation environment. -
Computing system 101 displays industrial data associated with the industrial application within the peer-to-peer communication session (204). The industrial data displayed within the communication session could comprise any data for an industrial application associated with the industrial automation environment. In some examples, the industrial data could comprise operational data, machine data, screen graphics data, screen captures, video data, tag data, alarms, drive configurations, key performance indicators (KPIs), charts, trends, and other graphical content, simulation data, or any other data associated with an industrial automation environment, including combinations thereof. In at least one example, the industrial data associated with the industrial application could comprise a live trend displaying current operational data as it is generated. The industrial data is typically displayed in response to a user request, but the data could also be displayed by the industrial application automatically on a scheduled or periodic basis, or in response to alarms and other events to notify the user of potential problems. For example,computing system 101 could display the industrial data associated with the industrial application within the peer-to-peer communication session in response to a user selection of the industrial data for display within the peer-to-peer communication session. - The industrial data may also be displayed within the peer-to-peer communication session on
remote computing system 102. For example, to display the industrial data,computing system 101 could be configured to display the industrial data within the peer-to-peer communication session on the display system ofcomputing system 101, and transfer the industrial data toremote computing system 102 for display within the peer-to-peer communication session onremote computing system 102.Remote computing system 102 could also receive the industrial data for display within the peer-to-peer communication session from other network resources. For example, an application server (not shown) typically collects and retrieves the industrial data for the industrial application and transfers the data tocomputing system 101 and/or 102, but note that the industrial data could be received from various different systems which may be in geographically diverse locations. In some examples, the application server could comprise a system located on-premise and accessible over a local network connection, or running in a cloud-based environment accessed over a wide area network such as the Internet, or any other deployment scheme, including combinations thereof. In at least one implementation, the industrial data displayed within the peer-to-peer communication session could be stored locally withincomputing system 101 and/or 102. Other system and network architectures are possible and within the scope of this disclosure. - Advantageously,
computing systems systems FIG. 3 . -
FIG. 3 is a block diagram that illustrates an operational scenario ofcomputing system 300 in an exemplary implementation.Computing system 300 includesdisplay system 301 which displays graphical user interface (GUI) 309 of an industrial application. In this example,display system 301 comprises a touch screen that displaysGUI 309 for the user to interact with and accepts input commands from the user via the user's touches on the surface of the touch screen. InFIG. 3 , two different view states are shown displayed ondisplay system 301, labeled 305A and 305B. The different view states show the changes that occur toGUI 309 as the user makes selections and interacts withGUI 309 and its associated application. - In
view state 305A, the user has created a new incident report within the industrial application. The incident report relates to a problem or issue with industrial operations. In this case, the user has specified the title of the incident as “System Down” and has entered a description of the incident as “System crash. Production line halted.” The user has also included a photo image attachment to the incident report. The “Related Information” section indicates that five chat sessions have commenced related to the incident, there is one related pressure trend, and four related incidents. - At the bottom of
GUI 309 onview state 305A, the user is presented with an option to launch a chat session from within the industrial application related to the incident report. In this example, the chat option is provided by the small chat bubble graphical icon appearing onGUI 309, which loads a chat session within the application. The user selects the chat bubble icon, which brings up a chat session as shown inview state 305B. -
View state 305B illustrates an exemplary chat session window that is displayed within the context of the incident report in the industrial application. In some implementations, when selecting the chat option, the user is prompted to identify a target user or users for the chat session, and the industrial application would responsively directcomputing system 300 to connect directly to the mobile devices of the target users over a peer-to-peer protocol to establish direct device-to-device communication. As illustrated inview state 305B, the title of the incident, “System Down”, is displayed at the top of the chat session. The chat session is also displayed withinGUI 309 of the industrial application, which beneficially ensures that the context of the incident in the industrial application is not lost, and the user does not need to close the industrial application or load an additional application to engage in the chat session. An exemplary implementation of another communication process associated with industrial applications will now be discussed with respect toFIG. 4 . -
FIG. 4 is a block diagram that illustrates an operational scenario ofcomputing system 400 in an exemplary implementation. InFIG. 4 , two different view states are shown displayed ondisplay system 401, labeled 405A and 405B. Inview state 405A,computing system 400 executes an industrial application which generates graphical content in the form ofGUI 409 for display ondisplay system 401. In particular,GUI 409 is associated with an industrial application catalog that allows the user to view and select from new software releases and updates. Within the application catalog application, the user “Tom” has launched a chat session to inquire about a new human-machine interface (HMI) software release. When selecting the chat option from within the application catalog, the user could select the target users for the chat session, or the application could attempt to connect to the devices of any users within range ofcomputing system 400 in some examples. Regardless of how the target users for the chat session are selected,computing system 400 engages in a chat session with at least one other mobile computing device using direct device-to-device communication. In this example, user “Joe” has responded to the request by providing a link to the new HMI software knowledge base. Tom then clicks the “Open Article” link that Joe provided in his chat response, which results incomputing system 400loading GUI 410 of the HMI software application knowledge base as shown inview state 405B. -
View state 405B illustrates a different industrial application than the application catalog that was previously displayed ondisplay system 401 ofcomputing system 400 inview state 405A. In particular,view state 405B depictscomputing system 400 executing an HMI software application which generates graphical content in the form ofGUI 410 for display ondisplay system 401.GUI 410 is associated with a knowledge base for the HMI software application, which provides documentation for the software and known issues. In this example, the “Documentation” tab is selected, which provides a Quick Start, User Guide, Troubleshooter, Product Profile, and Technical Data for the HMI software application. At the bottom ofGUI 410, the user is provided with a chat feature within the HMI software application. The user can select the chat feature from within the application in order to discuss any questions or issues related to the HMI software application with other users of the application while remaining within the context of the application. An exemplary implementation of a chat session that includes industrial data within the session will now be discussed with respect toFIG. 5 . -
FIG. 5 is a block diagram that illustrates an operational scenario ofcomputing system 500 in an exemplary implementation.Computing system 500 includesdisplay system 501 which displaysGUI 509 of an industrial application. In this example, the industrial application associated withGUI 509 comprises a network performance monitor application. Within the application, a chat session has been established between two users, Joe and Paul. The users are able to insert industrial data for display within the chat session. In some implementations, an industrial application may initially display industrial data and a chat session could be loaded alongside that data. In this example, Joe has included a trend diagram within the chat session that shows live data of the network performance in real time. Both Joe and Paul are able to view the live graph in real time within the chat session on their respective mobile computing devices, which provides the benefit of enabling these users to discuss the drop in network performance as it happens in real time. An exemplary implementation of a chat session that includes an industry-specific keyboard will now be discussed with respect toFIG. 6 . -
FIG. 6 is a block diagram that illustrates an operational scenario ofcomputing system 600 in an exemplary implementation.Computing system 600 includesdisplay system 601 which displaysGUI 609 of an industrial application. In this example, a user is engaging in a chat session with another user from within the industrial application. An industry-specific keyboard is illustrated at the bottom ofGUI 609, which provides the user with a library of industrial automation-specific images, fonts, and symbols for use in the chat session. In some implementations, the keyboard could be unique to the user, providing characters and symbols associated with the user's organizational role in an industrial automation environment. In at least one implementation, the keyboard for the chat session could be associated with the industrial application within which the chat session is occurring, thereby offering functions, symbols, and characters associated with that particular industrial application. In this manner, users are able to chat within the context of a particular industrial application, and have access to industry-specific characters, fonts, symbols, operators, and the like for use within the chat session. - Referring back to
FIG. 1 ,computing systems Computing systems Computing systems computing systems computing systems computing systems -
Communication link 121 uses metal, air, space, optical fiber such as glass or plastic, or some other material as the transport medium—including combinations thereof.Communication link 121 could use various communication protocols, such as time-division multiplexing (TDM), Internet Protocol (IP), Ethernet, telephony, optical networking, wireless mesh networks (WMN), communication signaling, wireless protocols such as peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), or some other communication format, including combinations thereof. - Turning now to
FIG. 7 , a block diagram that illustrates anindustrial automation environment 700 in an exemplary implementation is shown.Industrial automation environment 700 provides an example of an industrial automation environment that may be utilized to implement the communication processes disclosed herein, but other environments could also be used.Industrial automation environment 700 includescomputing system 710,machine system 720, industrial controller 725,database system 730, andapplication integration platform 735.Machine system 720 and controller 725 are in communication over a communication link, controller 725 anddatabase system 730 communicate over a communication link,database system 730 andapplication integration platform 735 communicate over a communication link, andapplication integration platform 735 andcomputing system 710 are in communication over a communication link. Note that there would typically be many more machine systems in most industrial automation environments, but the number of machine systems shown inFIG. 7 has been restricted for clarity. -
Industrial automation environment 700 comprises an automobile manufacturing factory, food processing plant, oil drilling operation, microprocessor fabrication facility, or some other type of industrial enterprise.Machine system 720 could comprise a sensor, drive, pump, filter, drill, motor, robot, fabrication machinery, mill, printer, or any other industrial automation equipment, including their associated control systems. A control system comprises, for example, industrial controller 725, which could include automation controllers, programmable logic controllers (PLCs), programmable automation controllers (PACs), or any other controllers used in automation control. Additionally,machine system 720 could comprise other industrial equipment, such as a brew kettle in a brewery, a reserve of coal or other resources, or any other element that may reside in anindustrial automation environment 700. -
Machine system 720 continually produces operational data over time. The operational data indicates the current status ofmachine system 720, such as parameters, pressure, temperature, speed, energy usage, operational equipment effectiveness (OEE), mean time between failure (MTBF), mean time to repair (MTTR), voltage, throughput volumes, times, tank levels, or any other performance status metrics. The operational data may comprise dynamic charts or trends, real-time video, or some other graphical content.Machine system 720 and/or controller 725 is capable of transferring the operational data over a communication link todatabase system 730,application integration platform 735, andcomputing system 710, typically via a communication network.Database system 730 could comprise a disk, tape, integrated circuit, server, or some other memory device.Database system 730 may reside in a single device or may be distributed among multiple memory devices. -
Application integration platform 735 comprises a processing system and a communication transceiver.Application integration platform 735 may also include other components such as a router, server, data storage system, and power supply.Application integration platform 735 may reside in a single device or may be distributed across multiple devices.Application integration platform 735 may be a discrete system or may be integrated within other systems—including other systems withinindustrial automation environment 700. In some examples,application integration platform 735 could comprise a FactoryTalk® VantagePoint server system provided by Rockwell Automation, Inc. - The communication links over which data is exchanged between
machine system 720, industrial controller 725,database system 730,application integration platform 735, andcommunication interface 708 ofcomputing system 710 could use metal, air, space, optical fiber such as glass or plastic, or some other material as the transport medium—including combinations thereof. The communication links could comprise multiple network elements such as routers, gateways, telecommunication switches, servers, processing systems, or other communication equipment and systems for providing communication and data services. These communication links could use various communication protocols, such as TDM, IP, Ethernet, telephony, optical networking, packet networks, wireless mesh networks (WMN), local area networks (LAN), metropolitan area networks (MAN), wide area networks (WAN), hybrid fiber coax (HFC), communication signaling, wireless protocols, communication signaling, peer-to-peer networking over Bluetooth, Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), or some other communication format, including combinations thereof. The communication links could be direct links or may include intermediate networks, systems, or devices. -
Computing system 710 may be representative of any computing apparatus, system, or systems on which the display processes disclosed herein or variations thereof may be suitably implemented.Computing system 710 provides an example of a computing system that could be used as a either a server or a client device in some implementations, although such devices could have alternative configurations. Examples ofcomputing system 710 include mobile computing devices, such as cell phones, tablet computers, laptop computers, notebook computers, and gaming devices, as well as any other type of mobile computing devices and any combination or variation thereof. Examples ofcomputing system 710 also include desktop computers, server computers, and virtual machines, as well as any other type of computing system, variation, or combination thereof. In some implementations,computing system 710 could comprise a mobile device capable of operating in a server-like fashion which, among other uses, could be utilized in a wireless mesh network. -
Computing system 710 includesprocessing system 701,storage system 703,software 705,communication interface 708, and user interface 709.Processing system 701 is operatively coupled withstorage system 703,communication interface 708, and user interface 709.Processing system 701 loads and executessoftware 705 fromstorage system 703.Software 705 includesapplication 706 andoperating system 707.Application 706 may includecommunication process 200 in some examples. When executed by computingsystem 710 in general, andprocessing system 701 in particular,software 705 directscomputing system 710 to operate as described herein forcommunication process 200 or variations thereof. In this example, user interface 709 includesdisplay system 711, which itself may be part of a touch screen that also accepts user inputs via touches on its surface.Computing system 710 may optionally include additional devices, features, or functionality not discussed here for purposes of brevity. - Turning now to
FIG. 8 , a block diagram is shown that illustratescomputing system 800 in an exemplary implementation.Computing system 800 provides an example ofcomputing systems communication process 200 or variations thereof, although such systems could use alternative configurations.Computing system 800 includesprocessing system 801,storage system 803,software 805,communication interface 807, and user interface 809. User interface 809 comprisesdisplay system 808.Software 805 includesapplication 806 which itself includescommunication process 200.Communication process 200 may optionally be implemented separately fromapplication 806. -
Computing system 800 may be representative of any computing apparatus, system, or systems on whichapplication 806 andcommunication process 200 or variations thereof may be suitably implemented. Examples ofcomputing system 800 include mobile computing devices, such as cell phones, tablet computers, laptop computers, notebook computers, and gaming devices, as well as any other type of mobile computing devices and any combination or variation thereof. Note that the features and functionality ofcomputing system 800 may apply as well to desktop computers, server computers, and virtual machines, as well as any other type of computing system, variation, or combination thereof. -
Computing system 800 includesprocessing system 801,storage system 803,software 805,communication interface 807, and user interface 809.Processing system 801 is operatively coupled withstorage system 803,communication interface 807, and user interface 809.Processing system 801 loads and executessoftware 805 fromstorage system 803. When executed by computingsystem 800 in general, andprocessing system 801 in particular,software 805 directscomputing system 800 to operate as described herein forcommunication process 200 or variations thereof.Computing system 800 may optionally include additional devices, features, or functionality not discussed herein for purposes of brevity. - Referring still to
FIG. 8 ,processing system 801 may comprise a microprocessor and other circuitry that retrieves and executessoftware 805 fromstorage system 803.Processing system 801 may be implemented within a single processing device but may also be distributed across multiple processing devices or sub-systems that cooperate in executing program instructions. Examples ofprocessing system 801 include general purpose central processing units, application specific processors, and logic devices, as well as any other type of processing device, combinations, or variations thereof. -
Storage system 803 may comprise any computer readable media or storage media readable byprocessing system 801 and capable of storingsoftware 805.Storage system 803 may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.Storage system 803 may be implemented as a single storage device but may also be implemented across multiple storage devices or sub-systems co-located or distributed relative to each other.Storage system 803 may comprise additional elements, such as a controller, capable of communicating withprocessing system 801. Examples of storage media include random access memory, read only memory, magnetic disks, optical disks, flash memory, virtual memory and non-virtual memory, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and that may be accessed by an instruction execution system, as well as any combination or variation thereof, or any other type of storage media. In no case is the storage media a propagated signal. - In operation, in conjunction with user interface 809,
processing system 801 loads and executes portions ofsoftware 805, such ascommunication process 200, to render a graphical user interface forapplication 806 for display bydisplay system 808 of user interface 809.Software 805 may be implemented in program instructions and among other functions may, when executed by computingsystem 800 in general orprocessing system 801 in particular,direct computing system 800 orprocessing system 801 to wirelessly connect to a remote computing system using a peer-to-peer protocol.Software 805 may further directcomputing system 800 orprocessing system 801 to display a graphical user interface (GUI) associated with an industrial application ondisplay system 808 ofcomputing system 800. In addition,software 805 directscomputing system 800 orprocessing system 801 to engage in a peer-to-peer communication session with the remote computing system, wherein the peer-to-peer communication session is displayed within the GUI of the industrial application. Finally,software 805 may directcomputing system 800 orprocessing system 801 to display industrial data associated with the industrial application within the peer-to-peer communication session. -
Software 805 may include additional processes, programs, or components, such as operating system software or other application software. Examples of operating systems include Windows®, iOS®, and Android®, as well as any other suitable operating system.Software 805 may also comprise firmware or some other form of machine-readable processing instructions executable by processingsystem 801. - In general,
software 805 may, when loaded intoprocessing system 801 and executed, transformcomputing system 800 overall from a general-purpose computing system into a special-purpose computing system customized to facilitate communication between users in an industrial application as described herein for each implementation. For example,encoding software 805 onstorage system 803 may transform the physical structure ofstorage system 803. The specific transformation of the physical structure may depend on various factors in different implementations of this description. Examples of such factors may include, but are not limited to the technology used to implement the storage media ofstorage system 803 and whether the computer-readable storage media are characterized as primary or secondary storage. - In some examples, if the computer-readable storage media are implemented as semiconductor-based memory,
software 805 may transform the physical state of the semiconductor memory when the program is encoded therein. For example,software 805 may transform the state of transistors, capacitors, or other discrete circuit elements constituting the semiconductor memory. A similar transformation may occur with respect to magnetic or optical media. Other transformations of physical media are possible without departing from the scope of the present description, with the foregoing examples provided only to facilitate this discussion. - It should be understood that
computing system 800 is generally intended to represent a computing system with whichsoftware 805 is deployed and executed in order to implementapplication 806 and/or communication process 200 (and variations thereof). However,computing system 800 may also represent any computing system on whichsoftware 805 may be staged and from wheresoftware 805 may be distributed, transported, downloaded, or otherwise provided to yet another computing system for deployment and execution, or yet additional distribution. For example,computing system 800 could be configured to deploysoftware 805 over the internet to one or more client computing systems for execution thereon, such as in a cloud-based deployment scenario. -
Communication interface 807 may include communication connections and devices that allow for communication betweencomputing system 800 and other computing systems (not shown) or services, over acommunication network 811 or collection of networks. In some implementations,communication interface 807 receivesdynamic data 821 overcommunication network 811. Examples of connections and devices that together allow for inter-system communication may include network interface cards, antennas, power amplifiers, RF circuitry, transceivers, and other communication circuitry. The aforementioned network, connections, and devices are well known and need not be discussed at length here. - User interface 809 may include a voice input device, a touch input device for receiving a gesture from a user, a motion input device for detecting non-touch gestures and other motions by a user, and other comparable input devices and associated processing elements capable of receiving user input from a user. Output devices such as
display system 808, speakers, haptic devices, and other types of output devices may also be included in user interface 809. The aforementioned user input devices are well known in the art and need not be discussed at length here. User interface 809 may also include associated user interface software executable by processingsystem 801 in support of the various user input and output devices discussed above. Separately or in conjunction with each other and other hardware and software elements, the user interface software and devices may provide a graphical user interface, a natural user interface, or any other kind of user interface. - The functional block diagrams, operational sequences, and flow diagrams provided in the Figures are representative of exemplary architectures, environments, and methodologies for performing novel aspects of the disclosure. While, for purposes of simplicity of explanation, methods included herein may be in the form of a functional diagram, operational sequence, or flow diagram, and may be described as a series of acts, it is to be understood and appreciated that the methods are not limited by the order of acts, as some acts may, in accordance therewith, occur in a different order and/or concurrently with other acts from that shown and described herein. For example, those skilled in the art will understand and appreciate that a method could alternatively be represented as a series of interrelated states or events, such as in a state diagram. Moreover, not all acts illustrated in a methodology may be required for a novel implementation.
- The above description and associated drawings teach the best mode of the invention. The following claims specify the scope of the invention. Some aspects of the best mode may not fall within the scope of the invention as specified by the claims. Also, while the preceding discussion describes embodiments employed specifically in conjunction with the monitoring and analysis of industrial processes, other applications, such as the mathematical modeling or monitoring of any man-made or naturally-existing system, may benefit from use of the concepts discussed above. Further, those skilled in the art will appreciate that the features described above can be combined in various ways to form multiple variations of the invention. As a result, the invention is not limited to the specific embodiments described above, but only by the following claims and their equivalents.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/983,363 US20200363935A1 (en) | 2015-05-27 | 2020-08-03 | Device-to-device communication in an industrial automation environment |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/723,131 US10732804B2 (en) | 2015-05-27 | 2015-05-27 | Device-to-device communication in an industrial automation environment |
US16/983,363 US20200363935A1 (en) | 2015-05-27 | 2020-08-03 | Device-to-device communication in an industrial automation environment |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/723,131 Continuation US10732804B2 (en) | 2015-05-27 | 2015-05-27 | Device-to-device communication in an industrial automation environment |
Publications (1)
Publication Number | Publication Date |
---|---|
US20200363935A1 true US20200363935A1 (en) | 2020-11-19 |
Family
ID=56096502
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/723,131 Active 2036-04-14 US10732804B2 (en) | 2015-05-27 | 2015-05-27 | Device-to-device communication in an industrial automation environment |
US16/983,363 Abandoned US20200363935A1 (en) | 2015-05-27 | 2020-08-03 | Device-to-device communication in an industrial automation environment |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/723,131 Active 2036-04-14 US10732804B2 (en) | 2015-05-27 | 2015-05-27 | Device-to-device communication in an industrial automation environment |
Country Status (3)
Country | Link |
---|---|
US (2) | US10732804B2 (en) |
EP (1) | EP3098766A1 (en) |
CN (1) | CN106209573A (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150134317A1 (en) * | 2013-11-08 | 2015-05-14 | Rockwell Automation Technologies, Inc. | Interface for data exchange between industrial controllers and simulation applications for simulating a machine |
US20180231954A1 (en) * | 2017-02-14 | 2018-08-16 | Honeywell International Inc. | Apparatus and method supporting an interactive chat feature for relaying on-demand information to a user from an industrial process control and automation system |
US20190146637A1 (en) * | 2017-11-15 | 2019-05-16 | Rockwell Automation Technologies, Inc. | Mobile data snapshots |
US10721223B2 (en) | 2018-04-12 | 2020-07-21 | Rockwell Automation Technologies, Inc. | Method and apparatus for secure device provisioning in an industrial control system |
US11579764B1 (en) * | 2019-10-21 | 2023-02-14 | Splunk Inc. | Interfaces for data monitoring and event response |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPQ605800A0 (en) * | 2000-03-06 | 2000-03-30 | Silverbrook Research Pty Ltd | Printehead assembly |
US6745090B1 (en) * | 2000-07-14 | 2004-06-01 | Rockwell Automation Technologies, Inc. | Page back system and method for remote paging in a control system |
US7133900B1 (en) * | 2001-07-06 | 2006-11-07 | Yahoo! Inc. | Sharing and implementing instant messaging environments |
US20030046398A1 (en) * | 2001-08-29 | 2003-03-06 | Charles Buckley | Method and system for managing a plurality of console devices in a network |
US20030208545A1 (en) * | 2002-05-01 | 2003-11-06 | Eaton Eric Thomas | Instant message communication system for providing notification of one or more events and method therefor |
US7539724B1 (en) * | 2002-06-04 | 2009-05-26 | Rockwell Automation Technologies, Inc. | Instant messaging for event notification and exchanging data in an industrial controller environment |
US7464272B2 (en) * | 2003-09-25 | 2008-12-09 | Microsoft Corporation | Server control of peer to peer communications |
EP1873633A3 (en) * | 2006-06-29 | 2008-01-23 | Rockwell Automation Technologies, Inc. | Automation HMI visualization utilizing GUI function blocks |
CN2929853Y (en) * | 2006-07-29 | 2007-08-01 | 重庆邮电大学 | On-site grade Zigbee radio meter recorder |
US20090089682A1 (en) * | 2007-09-27 | 2009-04-02 | Rockwell Automation Technologies, Inc. | Collaborative environment for sharing visualizations of industrial automation data |
EP2133765B1 (en) * | 2008-06-11 | 2019-11-27 | Siemens Aktiengesellschaft | User interface and a method thereof |
CN101425948B (en) * | 2008-10-23 | 2011-10-26 | 上海大学 | Industrial wireless network access industrial Ethernet, multi-protocol gateway of field bus and protocol conversion method |
US9438648B2 (en) | 2013-05-09 | 2016-09-06 | Rockwell Automation Technologies, Inc. | Industrial data analytics in a cloud platform |
US9864963B2 (en) * | 2013-10-08 | 2018-01-09 | General Electric Company | System and method for providing content-based user interface cards |
US9870545B2 (en) * | 2013-10-08 | 2018-01-16 | General Electric Company | System and method for providing user interface cards |
US9548894B2 (en) * | 2014-06-06 | 2017-01-17 | Yokogawa Electric Corporation | Proximity based cross-screen experience App framework for use between an industrial automation console server and smart mobile devices |
US20160147971A1 (en) * | 2014-11-26 | 2016-05-26 | General Electric Company | Radiology contextual collaboration system |
-
2015
- 2015-05-27 US US14/723,131 patent/US10732804B2/en active Active
-
2016
- 2016-05-27 EP EP16171669.1A patent/EP3098766A1/en not_active Ceased
- 2016-05-27 CN CN201610365938.2A patent/CN106209573A/en active Pending
-
2020
- 2020-08-03 US US16/983,363 patent/US20200363935A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20160349966A1 (en) | 2016-12-01 |
EP3098766A1 (en) | 2016-11-30 |
CN106209573A (en) | 2016-12-07 |
US10732804B2 (en) | 2020-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200363935A1 (en) | Device-to-device communication in an industrial automation environment | |
US20230393725A1 (en) | Industrial automation visualization dashboard creation paradigm | |
EP3098764A1 (en) | Presentation of tasks to a user | |
US11816312B2 (en) | Mobile scalable compute module | |
EP3318941B1 (en) | Industrial automation system machine analytics for a connected enterprise | |
US10809681B2 (en) | Data collection for assistance in an industrial automation environment | |
US10571879B2 (en) | Portable human-machine interface device | |
US20160349967A1 (en) | Offline investigation in an industrial automation environment | |
US10545747B2 (en) | Application module deployment | |
US11442704B2 (en) | Computerized system and method for a distributed low-code / no-code computing environment | |
US11151503B2 (en) | Mobile computing application for industrial automation manufacturing data | |
US9838832B2 (en) | Wireless communication device linking in an industrial automation environment | |
US20210349435A1 (en) | Presentation of graphical visualizations and control mechanisms in-line with programming logic | |
EP3154011A1 (en) | Identification of industrial equipment using micro-location services | |
US20190146637A1 (en) | Mobile data snapshots | |
US20170108851A1 (en) | Industrial automation electronic pinboard | |
US11009848B2 (en) | Scalable intelligent query-based interface to navigate and find industrial information on a visual interface | |
US20220100174A1 (en) | Streamlining the commission of network identifiers | |
US20230290170A1 (en) | Systems and methods for providing extraction on industrial diagrams and graphics |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ROCKWELL AUTOMATION TECHNOLOGIES, INC., OHIO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ERICSSON, MATTHEW R.;ANAND, ASHISH;OHLSEN, MICHAEL;AND OTHERS;SIGNING DATES FROM 20150522 TO 20150527;REEL/FRAME:053384/0033 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |