IP Library Granted Patent US 9,954,733
Granted Patent B2
US 9,954,733 · App. 14/912,735 · Granted Apr 24, 2018

Systems and methods for virtualizing a programmable logic controller

Inventors: John David Jones (Johnson City, TN); Kellie Culp (Jonesborough, TN); Christopher Edward Noe (Johnson City, TN)
Assignee: SIEMENS AKTIENGESELLSCHAFT
H04L41/0806G05B19/056G06F17/30864
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 9,954,733
App. No.
14/912,735
Granted
Apr 24, 2018
Kind
B2
Abstract

In some embodiments, a method ( 200 ) is provided for creating a virtual programmable logic controller (PLC) based on a physical PLC. The method ( 200 ) includes (1) connecting to the physical PLC over a network ( 201 ); (2) obtaining configuration data from the physical PLC over the network ( 202 ); (3) if an expansion module is coupled to the physical PLC, obtaining configuration data for the expansion module over the network ( 204 ); (4) storing configuration data for the physical PLC in a configuration medium ( 206 ); and (5) if configuration data for the expansion module is obtained, storing configuration data for the expansion module in the configuration medium ( 206 ). Numerous other embodiments are provided.

Claims (46)

1. A method of creating a virtual programmable logic controller (PLC) based on a physical PLC comprising:

connecting to the physical PLC over a network;

obtaining configuration data from the physical PLC over the network;

if an expansion module is coupled to the physical PLC, obtaining configuration data for the expansion module over the network;

storing configuration data for the physical PLC in a configuration medium; and

if configuration data for the expansion module is obtained, storing configuration data for the expansion module in the configuration medium,

wherein obtaining configuration data from the physical PLC includes querying the physical PLC to obtain physical characteristics of the physical PLC, configuration data for inputs and outputs of the physical PLC, and identification of expansion modules coupled to the physical PLC.

2. The method of claim 1 , further comprising creating the virtual PLC based on the stored configuration data.

3. The method of claim 2 , wherein creating the virtual PLC based on the stored configuration data includes:

accessing the stored configuration data for the physical PLC;

creating the virtual PLC based on the stored configuration data; and

creating a virtual expansion module based on expansion module configuration data stored in the configuration medium.

4. The method of claim 1 , wherein connecting to the physical PLC includes connecting to the physical PLC over an Ethernet connection.

5. The method of claim 1 , wherein storing configuration data for the physical PLC includes storing a representation of the configuration data for the physical PLC in an XML-based file.

6. The method of claim 1 , wherein the configuration medium is an XML-based file stored in a memory of a computer system.

7. A non-transitory computer-readable storage medium with an executable program stored thereon, wherein the program instructs a processor to:

connect to a physical PLC over a network;

obtain configuration data from the physical PLC over the network;

if an expansion module is coupled to the physical PLC, obtain configuration data for the expansion module over the network;

store configuration data for the physical PLC in a configuration medium; and

if configuration data for the expansion module is obtained, store configuration data for the expansion module in the configuration medium,

further comprising computer program code configured to query the physical PLC to obtain physical characteristics of the physical PLC, configuration data for inputs and outputs of the physical PLC, and identification of expansion modules coupled to the physical PLC.

8. The computer-readable storage medium of claim 7 , further comprising computer program code configured to create a virtual PLC based on the stored configuration data.

9. The computer-readable storage medium of claim 8 , further comprising computer program code configured to:

access the stored configuration data for the physical PLC;

create the virtual PLC based on the stored configuration data; and

create a virtual expansion module based on expansion module configuration data stored in the configuration medium.

10. The computer-readable storage medium of claim 7 , further comprising computer program code configured to connect to the physical PLC over an Ethernet connection.

11. The computer-readable storage medium of claim 7 , further comprising computer program code configured to store a representation of the configuration data for the physical PLC in an XML-based file.

12. A system for creating a virtual programmable logic controller (PLC) based on a physical PLC comprising:

a physical PLC coupled to a communications network; and

a computer system coupled to the communications network and configured to:

connect to the physical PLC over the communications network;

obtain configuration data from the physical PLC over the communications network;

if an expansion module is coupled to the physical PLC, obtain configuration data for the expansion module over the communications network;

store configuration data for the physical PLC in a configuration medium; and

if configuration data for the expansion module is obtained, store configuration data for the expansion module in the configuration medium,

wherein the computer system is configured to query the physical PLC to obtain physical characteristics of the physical PLC, configuration data for inputs and outputs of the physical PLC.

13. The system of claim 12 , wherein the computer system is further configured to create the virtual PLC based on the stored configuration data.

14. The system of claim 13 , wherein the computer system is configured to:

access the stored configuration data for the physical PLC;

create the virtual PLC based on the stored configuration data; and

create a virtual expansion module based on expansion module configuration data stored in the configuration medium.

15. The system of claim 12 , wherein the computer system is configured to connect to the physical PLC over an Ethernet connection.

16. The system of claim 12 , wherein the computer system is configured to query the physical PLC to obtain identification of expansion modules coupled to the physical PLC.

17. The system of claim 12 , wherein the computer system is configured to store a representation of the configuration data for the physical PLC in an XML-based file.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2016
From: SIEMENS INDUSTRY, INC.
To: SIEMENS AKTIENGESELLSCHAFT
Reel/Frame 037912/0010 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 29, 2016
From: JONES, JOHN DAVID; CULP, KELLIE; NOE, CHRISTOPHER EDWARD
To: SIEMENS INDUSTRY, INC.
Reel/Frame 037851/0198 →
Continuity (1)
Related Publication 20160197778A1 · Jul 7, 2016