IP Library Granted Patent US 10,530,832
Granted Patent B2
US 10,530,832 · App. 15/094,974 · Granted Jan 7, 2020

Embedded web server

Inventors: Joseph J. Dziezanowski (Salisbury, NH); Serge Limondin (Milford, NH); Erik S. Lewerenz (Coeur d' Alene, ID); Matthew Van Bogart (Issaquah, WA)
Assignee: OMRON Corporation
H04L67/02G06F16/958G06F16/9554H04L67/1095H04L67/1097H04L67/2804H04L67/2842H04L69/14G06F2201/84
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,530,832
App. No.
15/094,974
Granted
Jan 7, 2020
Kind
B2
Abstract

Methods, systems and an apparatus for an embedded web server in a data acquisition device to facilitate access to data acquired by the data acquisition device by one or more web-enabled devices. The embedded web server packages the data for enhanced access by the client over two or more communication pathways using standard data communication protocols and without disrupting the operation of the data acquisition device in which the web server is embedded.

Claims (74)

1. A method for a web server embedded in a data acquisition device, the method comprising:

in a data acquisition device, performing an acquisition process in response to a trigger to acquire data captured during a processing cycle;

enhancing access to the acquired data by one or more client devices, including:

performing a data process, the data process including:

generating data related to the acquired data captured during the processing cycle,

correlating data related to the same processing cycle, and

accumulating the correlated data for access by a client device;

providing multiple communication channels for transmitting data to and from the client devices; and

responding to requests from the client devices for access to any one or more of the acquired data, generated data, correlated data and accumulated data using different communication channels by temporarily modifying a priority of performing the data process, wherein temporarily modifying the priority of performing the data process comprises:

establishing a default hierarchical priority level for performing, in order of priority from high to low, the acquisition process, an event acknowledgement process, the data process, and an event handling process,

receiving any one or more asynchronous events from any one or more clients requesting data from the data acquisition device,

determining whether to prioritize the event handling process over the data process depending on any one or more of a type and frequency of the asynchronous events,

temporarily handling the asynchronous events after determining that prioritizing the event handling process over the data process can be performed, and

reverting to the default hierarchical priority level when prioritizing the event handling process over the data process cannot be performed.

2. The method of claim 1 , wherein correlating data related to the same processing cycle includes assigning a unique ID to data related to the same processing cycle.

3. The method of claim 2 , wherein correlating data related to the same processing cycle further includes:

generating historical data of any one or more of parameters and performance information in effect during the processing cycle;

storing the historical data for subsequent access by the client; and

transmitting the historical data to an intermediary storage server for any one of access by the client on demand or for serving to any one or more interested clients after transmitting is completed.

4. The method of claim 1 , wherein accumulating the correlated data for access by the client includes:

generating a data bundle containing a cycle report referencing data captured during the processing cycle and information for controlling a view of the referenced data in a display on the client device;

storing the data bundle for subsequent access by the client; and

transmitting the stored data bundle to an intermediary storage server for any one of access by the client on demand or for serving to any one or more interested clients after transmitting is completed.

5. The method of claim 4 , further comprising transmitting the cycle report referencing data captured during the processing cycle to the client unconditionally at the end of the processing cycle.

6. The method of claim 4 , further comprising transmitting the data bundle to the client on demand.

7. A system for an embedded web server, the system comprising:

a data acquisition device configured to provide multiple communication channels for transmitting data to and from one or more client devices;

the data acquisition device having a processor configured perform, in response to a trigger, an acquisition process to acquire data captured during a processing cycle, the processor further configured to enhance access to the acquired data by the one or more client devices, wherein to enhance causes the processor to:

perform a data process, the data process causing the processor to:

generate data related to the acquired data captured during the processing cycle,

correlate data related to the same processing cycle, and

accumulate the correlated data for access by the one or more client devices; and

respond to requests from the one or more client devices for access to any one or more of the acquired data, generated data, correlated data and accumulated data using the multiple communication channels by temporarily modifying a priority of performing the data process, wherein temporarily modifying the priority of performing the data process comprises:

establishing a default hierarchical priority level for performing, in order of priority from high to low, the acquisition process, an event acknowledgement process, the data process, and an event handling process,

receiving any one or more asynchronous events from any one or more clients requesting data from the data acquisition device,

determining whether to prioritize the event handling process over the data process depending on any one or more of a type and frequency of the asynchronous events,

temporarily handling the asynchronous events after determining that prioritizing the event handling process over the data process can be performed, and

reverting to the default hierarchical priority level when prioritizing the event handling process over the data process cannot be performed.

8. The system of claim 7 , wherein to correlate data related to the same processing cycle includes assigning a unique ID to data related to the same processing cycle.

9. The system of claim 7 , wherein to accumulate the correlated data for access by the client further causes the processor to:

generate a data bundle containing a cycle report referencing data captured during the processing cycle and information for controlling a view of the referenced data in a display on the client device;

store the data bundle for subsequent access by the client; and

transmit the stored data bundle to an intermediary storage server for any one of access by a client on demand or for serving to any one or more interested clients.

10. The system of claim 9 , wherein the data process further causes the processor to transmit the cycle report referencing data captured during the processing cycle to the client unconditionally at the end of the processing cycle.

11. The system of claim 9 , further comprising transmitting the data bundle to the client on demand.

12. The system of claim 7 , wherein to correlate data related to the same processing cycle further causes the processor to:

generate historical data of any one or more of parameters and performance information in effect during the processing cycle;

store the historical data for subsequent access by the client; and

transmit the historical data to an intermediary storage server for any one of access by the client on demand or for serving to any one or more interested clients after transmitting is completed.

13. At least one non-transitory computer-readable storage medium including instructions that, when executed in a processor operating on a data acquisition device in communication with a client device, cause the processor to implement a method to:

perform an acquisition process in response to a trigger to acquire data captured during a processing cycle;

enhance access to the acquired data by one or more client devices, including causing the processor to:

perform a data process, the data process causing the processor to:

generate data related to the acquired data captured during the processing cycle,

correlate data related to the same processing cycle, and

accumulate the correlated data for access by a client device;

provide two or more different communication channels for transmitting data to and from the client devices; and

respond to requests from the client devices for access to any one or more of the acquired data, generated data, correlated data and accumulated data using the two or more different communication channels by temporarily modifying a priority of performing the data process, wherein the instructions to temporarily modify the priority of performing the data process comprise instructions to:

establish a default hierarchical priority level for performing, in order of priority from high to low, the acquisition process, an event acknowledgement process, the data process, and an event handling process,

receive any one or more asynchronous events from any one or more clients requesting data from the data acquisition device,

determine whether to prioritize the event handling process over the data process depending on any one or more of a type and frequency of the asynchronous events,

temporarily handle the asynchronous events after determining that prioritizing the event handling process over the data process can be performed, and

revert to the default hierarchical priority level when prioritizing the event handling process over the data process cannot be performed.

14. The computer readable medium of claim 13 , wherein to correlate data related to the same processing cycle causes the processor to assign a unique ID to data related to the same processing cycle.

15. The computer readable medium of claim 14 , wherein to correlate data related to the same processing cycle further causes the processor to:

generate historical data of any one or more of parameters and performance information in effect during the processing cycle;

store the historical data for subsequent access by the client; and

transmit the historical data to an intermediary storage server for any one of access by the client on demand or for serving to any one or more interested clients after transmitting is completed.

16. The computer readable medium of claim 13 , wherein to accumulate the correlated data for access by the client causes the processor to:

generate a data bundle containing a cycle report referencing data captured during the processing cycle and information for controlling a view of the referenced data in a display on the client device;

store the data bundle for subsequent access by the client; and

transmit the stored data bundle to an intermediary storage server for any one of access by the client on demand or for serving to any one or more interested clients after transmitting is completed.

17. The computer readable medium of claim 16 , further causing the processor to transmit the cycle report referencing data captured during the processing cycle to the client unconditionally at the end of the processing cycle.

18. The computer readable medium of claim 16 , further causing the processor to transmit the data bundle to the client on demand.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2019
From: OMRON MICROSCAN SYSTEMS, INC.
To: OMRON CORPORATION
Reel/Frame 051048/0533 →
CHANGE OF NAME Recorded Oct 29, 2019
From: MICROSCAN SYSTEMS, INC.
To: OMRON MICROSCAN SYSTEMS, INC.
Reel/Frame 050860/0019 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2016
From: DZIEZANOWSKI, JOSEPH J.; LIMONDIN, SERGE; LEWERENZ, ERIK S.; VAN BOGART, MATTHEW
To: MICROSCAN SYSTEMS, INC
Reel/Frame 039285/0702 →
Continuity (2)
Provisional Application 62145401 · Apr 9, 2015
Related Publication 20160301773A1 · Oct 13, 2016
Cited By (1)
US 12,323,481