IP Library Granted Patent US 10,516,737
Granted Patent B2
US 10,516,737 · App. 15/197,276 · Granted Dec 24, 2019

Monitoring and controlling of distributed machines

Inventors: Donald Cyril Ferencz, Jr. (Cleveland, OH); Kevin David Hostelley (Strongsville, OH); Justin Wesley Conrad (Columbiana, OH)
Assignee: CONTROL SOLUTIONS ENTERPRISES, INC.
H04L67/12B61L3/127B61L15/0018B61L15/0072B61L27/0005B61L27/0077B61L27/0094H04L51/06B61L2027/005
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,516,737
App. No.
15/197,276
Granted
Dec 24, 2019
Kind
B2
Abstract

According to various aspects, exemplary embodiments are disclosed of apparatus and methods for monitoring and controlling distributed machines. In an exemplary embodiment, a network includes machines each having sensor(s) and/or actuator(s). Each machine has a node resident on the machine and/or in communication with the machine and that provides raw data from the sensor(s) and/or actuator(s). Each node has a network interface, and a processor and memory configured as a node agent to embed the raw data in message(s) without reformatting the raw data. An engine receives and reformats messages from the node agents without reformatting raw data embedded in the messages. The engine directs the reformatted messages including the raw data to user device(s) for use in managing machine activity and/or status. The engine also sends a message from a user device to a node of a given machine, for use in controlling activity and/or status of the given machine.

Claims (35)

1. A network comprising:

a plurality of machines each having one or more sensors and/or one or more actuators, each machine having a node resident on the machine and/or in communication with the machine, each node having a network interface and configured to provide raw data from the one or more sensors and/or one or more actuators, each node having a processor and memory configured as a node agent to embed the raw data in one or more messages without reformatting the raw data, each of the one or more messages including a topic and a subtopic;

an engine configured to:

receive the messages from the node agents;

reformat the messages from the node agents without reformatting the raw data embedded in the messages, wherein the engine is configured to, in connection with the reformatting, preserve a binary form of the raw data;

direct the reformatted messages including the raw data to one or more user devices for use in managing activity and/or status of one or more of the plurality of the machines, wherein the one or more user devices are remote from the one or more of the plurality of the machines; and

send a message from at least one of the user devices to the node of a given machine of the plurality of the machines, for use in controlling activity and/or status of the given machine; and

a data handler in communication with the engine, the data handler configured to:

obtain the raw data included in at least one of the messages reformatted by the engine;

process the raw data into a format interpretable by an application on at least one of the one or more remote user devices to which the at least one of the messages is directed by the engine; and

send the processed data to the at least one of the one or more remote user devices;

wherein the engine is configured, as a broker of a publish/subscribe messaging system, to receive the raw data included in the message from the node agents of the plurality of machines and send the raw data via one of a plurality channels selected based on the topics specified in the messages, and

wherein the data handler includes a data processor configured to process the raw data obtained by the data handler into the format interpretable by the application based on the subtopic specified in the at least one of the messages.

2. The network of claim 1 , wherein the engine is further configured to communicate with each of the node agents using point-to-point communication and Web Socket protocol.

3. The network of claim 1 , wherein the node agents are configured to push the messages to the engine.

4. The network of claim 1 , wherein the engine is configured to push the reformatted messages to the one or more user devices.

5. The network of claim 1 , wherein the engine is configured, as the broker of a publish/subscribe messaging system; and

wherein the agents and/or one or more user applications on the one or more user devices are configured to subscribe as clients to the publish/subscribe messaging system.

6. The network of claim 5 , wherein the plurality of channels include a status channel, a data channel, and an alert channel;

wherein the broker is configured to:

send, via the status channel, real-time status information associated with a remote control locomotive (RCL);

transport and/or persist, via the data channel, individual RCL event archive records; and

send, via the alert channel, real-time information to generate system alerts indicating conditions and push, via the alert channel, alerts to one or more user applications.

7. The network of claim 1 , wherein the data handler is configured to add units to the raw data in the message.

8. The network of claim 1 , wherein the plurality of machines comprise a plurality of remotely controlled locomotives.

9. The network of claim 1 , wherein one or more of the following are provided as the raw data from the one or more sensors and/or one or more actuators: GPS coordinates, velocity, velocity set point, direction, brake pressure, and throttle output.

10. A method of managing a plurality of distributed machines, the method comprising the following steps:

embedding in a message raw data from one or more sensors and/or one or more actuators of one of the machines, the embedding performed by a node residing on and/or in communication with the one of the machines, the message including a topic and a subtopic;

receiving the message from the node and reformatting the message without reformatting the raw data, and directing the reformatted message including the raw data to a user device, the receiving, reformatting and directing performed by an engine of a network, the engine remote from the node and the user device, the network including the node and the user device, the engine, in connection with the reformatting, preserving a binary form of the raw data; and

obtaining the raw data included in the message reformatted by the engine, processing the raw data into a format interpretable by an application on the user device based on the subtopic specified in the message, and sending the processed data to the user device, the obtaining, processing, and sending performed by a data handler in communication with the engine and remote from the node and the user device;

the user device sending a message responsive as to the raw data and/or the format interpretable by the application through the engine to the node for use in controlling performance of the one of the machines;

the engine receiving the raw data included in the message from the node and sending the raw data via one of a plurality channels selected based on the topic specified in the message.

11. The method of claim 10 , wherein the engine performs the receiving, reformatting and directing steps as a broker of a publish/subscribe message system in which an agent of the node publishes the message.

12. The method of claim 11 , wherein the engine and node communicate with each other using point-to-point communication and Web Socket protocol.

13. The method of claim 10 , wherein the plurality of distributed machines includes a plurality of locomotives.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2019
From: CONTROL SOLUTIONS ENTERPRISES, INC.
To: CATTRON NORTH AMERICA, INC.
Reel/Frame 051346/0653 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2019
From: LAIRD HOLDINGS LIMITED; LAIRD LIMITED; LAIRD TECHNOLOGIES, INC.
To: CONTROL SOLUTIONS ENTERPRISES, INC.
Reel/Frame 049075/0203 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2017
From: FERENCZ, DONALD CYRIL, JR.; HOSTELLEY, KEVIN DAVID; CONRAD, JUSTIN WESLEY
To: LAIRD TECHNOLOGIES, INC.
Reel/Frame 044178/0382 →
Continuity (2)
Provisional Application 62187007 · Jun 30, 2015
Related Publication 20170001653A1 · Jan 5, 2017