IP Library Granted Patent US 8,205,188
Granted Patent B2
US 8,205,188 · App. 11/930,784 · Granted Jun 19, 2012

Automatically generating a second graphical program based on a first graphical program

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 8,205,188
App. No.
11/930,784
Granted
Jun 19, 2012
Kind
B2
Abstract

System and method for programmatically generating a second graphical program associated with a second programming development environment based on a first graphical program associated with a first programming development environment. The second graphical program may be generated programmatically, without relying on user input, or may prompt for user input to determine various options to use in generating the second graphical program. The second graphical program may implement the functionality of, or a portion of the functionality of, the first graphical program. The method preferably generates the second graphical program such that the second programming development environment is operable to treat the second graphical program identically to a graphical program interactively developed by a user using the second programming development environment. Thus, once the second graphical program has been generated, the user may use the second programming development environment to edit the second graphical program, execute the second graphical program, etc.

Claims (47)

1. A non-transitory computer accessible memory medium for automatically generating a second graphical program based on a first graphical program, the memory medium comprising program instructions executable by a processor to perform:

receiving information specifying the first graphical program, wherein the first graphical program includes a first plurality of interconnected nodes which perform a first functionality, and wherein the first graphical program is associated with a first programming development environment; and

automatically generating the second graphical program based on the information, wherein the second graphical program implements functionality of the first graphical program, wherein the second graphical program includes a second plurality of interconnected nodes which perform the first functionality, wherein the second graphical program is associated with a second programming development environment, and wherein the second programming development environment is different from the first programming development environment;

wherein said automatically generating the second graphical program is performed without direct user input specifying the second graphical program.

2. The non-transitory computer accessible memory medium of claim 1 , wherein said automatically generating the second graphical program is performed without direct user input selecting the second plurality of nodes and without user input specifying interconnections between the second plurality of nodes.

3. The non-transitory computer accessible memory medium of claim 1 , wherein the second graphical program implements only a portion of functionality of the first graphical program.

4. The non-transitory computer accessible memory medium of claim 1 , wherein the first plurality of interconnected nodes in the first graphical program visually indicate the first functionality of the first graphical program; and

wherein the second plurality of interconnected nodes in the second graphical program visually indicate the first functionality of the second graphical program.

5. The non-transitory computer accessible memory medium of claim 1 , wherein the first graphical program includes a first block diagram and a first user interface; and

wherein the second graphical program includes a second block diagram and a second user interface.

6. The non-transitory computer accessible memory medium of claim 1 , wherein the first graphical program is developed according to the first programming development environment; and

wherein the second graphical program is automatically generated according to the second programming development environment.

7. The non-transitory computer accessible memory medium of claim 1 , wherein the first graphical program is developed according to a first graphical programming language; and

wherein the second graphical program is automatically generated according to a second graphical programming language, wherein the second graphical programming language is different than the first graphical programming language.

8. The non-transitory computer accessible memory medium of claim 7 , wherein the first graphical programming language is the G language.

9. The non-transitory computer accessible memory medium of claim 7 , wherein the second graphical programming language is the G language.

10. The non-transitory computer accessible memory medium of claim 1 , further comprising:

executing the second graphical program, wherein the second graphical program performs functionality of the first graphical program.

11. The non-transitory computer accessible memory medium of claim 1 , further comprising:

compiling the second graphical program; and

downloading the second graphical program to a hardware device.

12. The non-transitory computer accessible memory medium of claim 1 , wherein the first graphical program is one of a Simulink program, a VEE program, or a LabVIEW program.

13. The non-transitory computer accessible memory medium of claim 1 , wherein the second graphical program is one of a Simulink program, a VEE program, or a LabVIEW program.

14. The non-transitory computer accessible memory medium of claim 1 , wherein the received information specifying the first graphical program comprises one or more of text information and binary information.

15. The non-transitory computer accessible memory medium of claim 1 , wherein the received information specifying the first graphical program comprises abstract information describing the first graphical program.

16. The non-transitory computer accessible memory medium of claim 1 , wherein the received information specifying the first graphical program comprises a model file describing the first graphical program.

17. The non-transitory computer accessible memory medium of claim 1 , wherein the first graphical program includes a first node;

wherein said receiving information specifying the first graphical program comprises receiving information specifying the first node; and

wherein said automatically generating the second graphical program comprises automatically including a second node corresponding to the first node in the second graphical program.

18. The non-transitory computer accessible memory medium of claim 1 , wherein the information specifying the first graphical program comprises the first graphical program.

19. The non-transitory computer accessible memory medium of claim 1 , wherein the first graphical program is a first type of data flow diagram; and

wherein the second graphical program is a second type of data flow diagram.

20. A method for automatically generating a second graphical program based on a first graphical program, the method comprising:

utilizing a computer to perform:

receiving information specifying the first graphical program, wherein the first graphical program includes a first plurality of interconnected nodes which perform a first functionality, and wherein the first graphical program is associated with a first programming development environment; and

automatically generating the second graphical program based on the information, wherein the second graphical program implements functionality of the first graphical program, wherein the second graphical program includes a second plurality of interconnected nodes which perform the first functionality, wherein the second graphical program is associated with a second programming development environment, and wherein the second programming development environment is different from the first programming development environment;

wherein said automatically generating the second graphical program is performed without direct user input specifying the second graphical program.

21. The method of claim 20 , wherein said automatically generating the second graphical program is performed without direct user input selecting the second plurality of nodes and without user input specifying interconnections between the second plurality of nodes.

22. The method of claim 20 ,

wherein the first graphical program includes a first block diagram and a first user interface; and

wherein the second graphical program includes a second block diagram and a second user interface.

23. The method of claim 20 ,

wherein the first graphical program is one of a Simulink program, a VEE program, or a LabVIEW program; and

wherein the second graphical program is another, different, one of a Simulink program, a VEE program, or a LabVIEW program.

24. The method of claim 20 , wherein the information specifying the first graphical program comprises the first graphical program.

25. The method of claim 20 , wherein the first plurality of interconnected nodes in the first graphical program visually indicate the first functionality of the first graphical program; and

wherein the second plurality of interconnected nodes in the second graphical program visually indicate the first functionality of the second graphical program.

Assignments (4)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →