IP Library Granted Patent US 9,110,653
Granted Patent B2
US 9,110,653 · App. 13/364,368 · Granted Aug 18, 2015

Generating PLC code from CAD models

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,110,653
App. No.
13/364,368
Granted
Aug 18, 2015
Kind
B2
Abstract

Product data management systems, methods, and mediums. A method includes receiving a functional model, and identifying a plurality of elements of the functional model. Each element corresponds to one or more machine operations. The method includes identifying concurrencies between elements to determine at least one set of elements. The method includes creating an execution thread for each of the sets of elements. The method can include generating a rule-based programmable logic controller (PLC) program corresponding to the functional model, based on the execution threads.

Claims (42)

1. A method performed by a product data management (PDM) data processing system, comprising:

receiving a functional model;

identifying a plurality of elements of the functional model, by the PDM data processing system, each element corresponding to one or more machine operations;

identifying concurrencies between elements, by the PDM data processing system, to determine a plurality of sets of elements, each set of elements including elements that are dependent on each other and each set being independent of each other set;

creating an execution thread for each of the sets of elements, by the PDM data processing system, based on the identified concurrencies; and

generating a programmable logic controller (PLC) program corresponding to the functional model, based on the execution threads.

2. The method of claim 1 , wherein the PDM data processing system applies rules from a rules database to select PLC code from a code repository.

3. The method of claim 2 , wherein the PLC program is synthesized from the selected PLC code.

4. The method of claim 1 , wherein the PDM data processing system also creates a symbol table that includes known and unknown variables.

5. The method of claim 1 , wherein the PDM data processing system also identifies cycles in each set of elements.

6. The method of claim 1 , wherein the PDM data processing system also produces a schedule for each element.

7. The method of claim 1 , wherein the PDM data processing system also identifies the context of the at least one set of elements.

8. A product data management (PDM) data processing system, comprising:

at least one processor; and

an accessible memory, wherein the PDM data processing system is configured to:

receive a functional model;

identify a plurality of elements of the functional model, each element corresponding to one or more machine operations;

identify concurrencies between elements to determine a plurality of sets of elements, each set of elements including elements that are dependent on each other and each set being independent of each other set;

create an execution thread for each of the sets of elements; based on the identified concurrencies, and

generate a programmable logic controller (PLC) program corresponding to the functional model, based on the execution threads.

9. The PDM data processing system of claim 8 , wherein the PDM data processing system applies rules from a rules database to select PLC code from a code repository.

10. The PDM data processing system of claim 9 , wherein the PLC program is synthesized from the selected PLC code.

11. The PDM data processing system of claim 8 , wherein the PDM data processing system also creates a symbol table that includes known and unknown variables.

12. The PDM data processing system of claim 8 , wherein the PDM data processing system also identifies cycles in each set of elements.

13. The PDM data processing system of claim 8 , wherein the PDM data processing system also produces a schedule for each element.

14. The PDM data processing system of claim 8 , wherein the PDM data processing system also identifies the context of the at least one set of elements.

15. A non-transitory computer-readable medium encoded with executable instructions that, when executed, cause a product data management (PDM) data processing system to:

receive a functional model;

identify a plurality of elements of the functional model, each element corresponding to one or more machine models;

identify concurrencies between elements to determine a plurality of sets of elements, each set of elements including elements that are dependent on each other and each set being independent of each other set;

create an execution thread for each of the sets of elements, based on the identified concurrencies; and

generate a programmable logic controller (PLC) program corresponding to the functional model, based on the execution threads.

16. The computer-readable medium of claim 15 , wherein the PDM data processing system applies rules from a rules database to select PLC code from a code repository.

17. The computer-readable medium of claim 16 , wherein the PLC program is synthesized from the selected PLC code.

18. The computer-readable medium of claim 15 , wherein the PDM data processing system also creates a symbol table that includes known and unknown variables.

19. A product data management (PDM) data processing system, comprising:

means for receiving a functional model;

means for identifying a plurality of elements of the functional model, each element corresponding to one or more machine operations;

means for identifying concurrencies between elements to determine a plurality of sets of elements, each set of elements including elements that are dependent on each other and each set being independent of each other set;

means for creating an execution thread for each of the sets of elements, based on the identified concurrencies; and

means for generating a programmable logic controller (PLC) program corresponding to the functional model, based on the execution threads.

20. The PDM data processing system of claim 19 , wherein the PDM data processing system applies rules from a rules database to select PLC code from a code repository, and wherein the PLC program is synthesized from the selected PLC code.

Assignments (4)
CHANGE OF NAME Recorded Dec 3, 2019
From: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 051171/0024 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2012
From: MARTINEZ CANEDO, ARQUIMEDES
To: SIEMENS CORPORATION
Reel/Frame 027638/0747 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2012
From: LU, LINGYUN
To: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
Reel/Frame 027638/0753 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2012
From: SIEMENS CORPORATION
To: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
Reel/Frame 027638/0827 →