Patent application number | Description | Published |
20090049424 | Type Generic Graphical Programming - A system and method for creating and using type generic graphical programs. The method may include storing a first graphical program on a memory medium. The first graphical program may have been created based on user input. The first graphical program may include a plurality of nodes and interconnections between the nodes, and the plurality of nodes and interconnections between the nodes may be type generic. User input may be received specifying one or more data types of at least one input and/or at least one output of the first graphical program. The data types may be associated with the first graphical program in response to said user input specifying the one or more data types. | 02-19-2009 |
20090178025 | GRAPHICAL PROGRAMMING ENVIRONMENT WITH FIRST MODEL OF COMPUTATION THAT INCLUDES A STRUCTURE SUPPORTING SECOND MODEL OF COMPUTATION - System and method for creating a graphical program that uses multiple models of computation (MoC). A first plurality of graphical program elements is assembled in a graphical program in response to first input, where the assembled first plurality of graphical program elements have a first MoC. A structure is displayed in the graphical program indicating use of a second MoC for graphical program elements comprised within the interior of the structure. A second plurality of graphical program elements is assembled within the structure in response to second input, where the assembled second plurality of graphical program elements have the second MoC. The graphical program is executable to perform a function, for example, by executing the assembled first plurality of graphical program elements in accordance with the first model of computation, and executing the assembled second plurality of graphical program elements in accordance with the second model of computation. | 07-09-2009 |
20090204937 | Conversion of a First Executable Diagram Having Interconnected Nodes to a Second Executable Diagram Using an Intermediate XML Representation - A system and method for programmatically generating a graphical program in response to state diagram information. The state diagram information may specify a plurality of states and state transitions, wherein each state transition specifies a transition from a first state to a second state. A graphical program generation program (GPG program), may receive the state diagram information and automatically, i.e., programmatically, generate a graphical program (or graphical program portion) based on the state diagram information. The GPG program may programmatically include graphical source code in a block diagram of the graphical program, which may serve as a framework of the states specified by the state diagram information and the state transitions among the states. The graphical source code framework automatically generated by the GPG program may include various “placeholders” or “containers” enabling the user to easily fill in the graphical program with source code that specifies execution instructions for each state and Boolean conditions for each state transition. The specific graphical source code that is automatically generated may depend on programming features supported by a particular graphical programming development environment with which the graphical program is associated. Examples of generating graphical source code for the LabVIEW graphical programming development environment are included. In one embodiment, the graphical program may be dynamically (programmatically) updated as the state diagram is being interactively constructed by the user. I.e., as the user performs various actions in a state diagram editor, such as adding or deleting states, adding or deleting transitions, etc., the corresponding graphical program may be dynamically (programmatically) updated to reflect the change. | 08-13-2009 |
20090204940 | Conversion of a First Diagram Having States and Transitions to a Graphical Data Flow Program Using an Intermediate XML Representation - A system and method for programmatically generating a graphical program in response to state diagram information. The state diagram information may specify a plurality of states and state transitions, wherein each state transition specifies a transition from a first state to a second state. A graphical program generation program (GPG program), may receive the state diagram information and automatically, i.e., programmatically, generate a graphical program (or graphical program portion) based on the state diagram information. The GPG program may programmatically include graphical source code in a block diagram of the graphical program, which may serve as a framework of the states specified by the state diagram information and the state transitions among the states. The graphical source code framework automatically generated by the GPG program may include various “placeholders” or “containers” enabling the user to easily fill in the graphical program with source code that specifies execution instructions for each state and Boolean conditions for each state transition. The specific graphical source code that is automatically generated may depend on programming features supported by a particular graphical programming development environment with which the graphical program is associated. Examples of generating graphical source code for the LabVIEW graphical programming development environment are included. In one embodiment, the graphical program may be dynamically (programmatically) updated as the state diagram is being interactively constructed by the user. I.e., as the user performs various actions in a state diagram editor, such as adding or deleting states, adding or deleting transitions, etc., the corresponding graphical program may be dynamically (programmatically) updated to reflect the change. | 08-13-2009 |
20090259972 | CONFIGURING A TEXTUAL LANGUAGE PROGRAM ON A FIRST DEVICE TO INVOKE A GRAPHICAL PROGRAM ON A SECOND DEVICE - A system and method for creating and using configuration diagrams for configuring distributed systems. The methods described herein may be used for various types of operations in configuring distributed systems, including creating programs, managing programs in the distributed system, deploying programs to various distributed devices, configuring remote execution or inter-operation of distributed programs, and executing distributed applications. Embodiments of the invention utilize graphical iconic-based techniques for performing the above operations. The configuration diagram may include device icons which represent devices and program icons which represent programs. Device icons and program icons may be associated with each other to accomplish various program creation and deployment operations. Device icons and program icons may also interact with graphical program nodes or icons. Context sensitive device connections and/or program connections are displayed. An asynchronous data flow node may be used to facilitate asynchronous data flow between two graphical programs. The distributed system may also support distributed graphical debugging. | 10-15-2009 |
20100005425 | CONFIGURATION DIAGRAM WITH CONNECTIONS THAT REPRESENT PHYSICAL COUPLINGS BETWEEN DEVICES - A system and method for creating and using configuration diagrams for configuring distributed systems. The methods described herein may be used for various types of operations in configuring distributed systems, including creating programs, managing programs in the distributed system, deploying programs to various distributed devices, configuring remote execution or inter-operation of distributed programs, and executing distributed applications. Embodiments of the invention utilize graphical iconic-based techniques for performing the above operations. The configuration diagram may include device icons which represent devices and program icons which represent programs. Device icons and program icons may be associated with each other to accomplish various program creation and deployment operations. Device icons and program icons may also interact with graphical program nodes or icons. Context sensitive device connections and/or program connections are displayed. An asynchronous data flow node may be used to facilitate asynchronous data flow between two graphical programs. The distributed system may also support distributed graphical debugging. | 01-07-2010 |
20100011311 | Automatically Generating a Configuration Diagram for a Measurement System - Creating and using configuration diagrams for configuring distributed systems. The methods described herein may be used for various types of operations in configuring distributed systems, including creating programs, managing programs in the distributed system, deploying programs to various distributed devices, configuring remote execution or inter-operation of distributed programs, and executing distributed applications. Embodiments of the invention utilize graphical iconic-based techniques for performing the above operations. The configuration diagram may include device icons which represent devices and program icons which represent programs. Device icons and program icons may be associated with each other to accomplish various program creation and deployment operations. Device icons and program icons may also interact with graphical program nodes or icons. Context sensitive device connections and/or program connections are displayed. An asynchronous data flow node may be used to facilitate asynchronous data flow between two graphical programs. The distributed system may also support distributed graphical debugging. | 01-14-2010 |
20100325571 | Graphically Specifying and Indicating Targeted Execution in a Graphical Program - System and method for distributed execution of a graphical program. A graphical program is displayed on a display of a computer system. Targeted execution of a first graphical program portion of the graphical program on an execution target is graphically specified. The graphical specification includes displaying a visual indication of the specified targeted execution on the display of the graphical program. During execution of the graphical program, the first graphical program portion executes on the specified execution target and a remainder of the graphical program executes on a default execution target. | 12-23-2010 |
20110088019 | Asynchronous Preemptive Edit Time Semantic Analysis of a Graphical Program - System and method for analyzing a graphical program. A graphical program is displayed on a display. A semantic edit operation is performed on the graphical program in response to user input. The semantic edit operation is performed by a first process. Semantic analysis of the graphical program is performed by a second process in response to performing the semantic edit operation, where the second process is asynchronous with respect to the first process. Results from the semantic analysis of the graphical program are displayed in response to completion of the semantic analysis. If during the semantic analysis, another semantic edit operation is performed on the graphical program, the semantic analysis may be preemptively terminated and re-initiated. Displaying results from the semantic analysis of the graphical program may then include displaying results from the re-initiated semantic analysis of the graphical program in response to completion of the re-initiated semantic analysis. | 04-14-2011 |
20110191753 | Incremental deployment and execution of a program on an embedded device - System and method for deploying and executing a program, e.g., a graphical program, on an embedded device. The program and a plurality of execution system components are stored on a host computer. The program is analyzed programmatically to determine a subset of the plurality of components required for execution of the program. The subset of components and the program are combined into a file while preserving execution order of the program. The file is transmitted to the device. The file is used to construct a combined program which includes executable code for the program and the subset of components. The device includes a minimal execution engine which executes the subset of components to execute the program. The file may be streamed to the device for streaming execution, where received portions of the subset of components needed for execution of received portions of the program are stored until no longer needed. | 08-04-2011 |
20110246963 | Race Structure for a Graphical Program - System and method for executing a graphical program. A first structure in a graphical program is displayed on a display. The first structure includes two or more frames, each configured to contain a respective portion of the graphical program. The respective portions of the graphical program are included in the two or more frames. During execution of the graphical program, the first structure executes the respective portions of the graphical program in the two or more frames in parallel via respective execution processes. When a first portion of the respective portions completes execution prior to all others of the portions, execution of the other portions is terminated. | 10-06-2011 |
20110321006 | Configuring a State Diagram with Graphical Source Code - A system and method for configuring a state diagram with graphical source code is described. The state diagram may be created in response to user input. The state diagram may include a plurality of state icons and a plurality of connector elements interconnecting the state icons, where the state icons represent a plurality of states and wherein the connector elements represent transitions between the states. Graphical source code may be associated with one or more of the state icons. | 12-29-2011 |
20120026173 | Transitioning Between Different Views of a Diagram of a System - Presenting different views of a system based on input from a user. A first view of a first portion of the system may be displayed. For example, the first portion may be a device of the system. User input specifying a first gesture may be received. In response to the first gesture, a second view of the first portion of the system may be displayed. For example, the first view may represent a first level of abstraction of the portion of the system and the second view may represent a second level of abstraction of the portion of the system. A second gesture may be used to view a view of a different portion of the system. Additionally, when changing from a first view to a second view, the first view may “morph” into the second view. | 02-02-2012 |
20120030496 | Specification of Isochronous Data Transfer in a Graphical Programming Language - System and method for transferring data. A system diagram is displayed, where the system diagram includes multiple device icons corresponding to respective devices, each device icon having associated executable function nodes specified for deployment on the corresponding device. The function nodes are interconnected to form a distributed graphical program that is deployable and executable in a distributed manner on the devices. User input is received to the system diagram specifying isochronous data transfer among the function nodes. Invocation timing relationships among the function nodes are automatically determined based on the specified isochronous data transfer, including phase relationships between execution of the function nodes. The determined invocation timing relationships are displayed among the function nodes. The graphical program is deployable and executable in a distributed manner on the devices according to the determined invocation timing relationships, where during execution of the graphical program, data are transferred isochronously between the function nodes. | 02-02-2012 |
20120030600 | Isochronous Data Transfer in a Graphical Program - System and method for transferring data. A system diagram is displayed, where the system diagram includes multiple device icons corresponding to respective devices, each device icon having associated executable function nodes specified for deployment on the corresponding device. The function nodes are interconnected to form a distributed graphical program that is deployable and executable in a distributed manner on the devices. User input is received to the system diagram specifying isochronous data transfer among the function nodes. Invocation timing relationships among the function nodes are automatically determined based on the specified isochronous data transfer, including phase relationships between execution of the function nodes. The determined invocation timing relationships are displayed among the function nodes. The graphical program is deployable and executable in a distributed manner on the devices according to the determined invocation timing relationships, where during execution of the graphical program, data are transferred isochronously between the function nodes. | 02-02-2012 |
20120254845 | Vectorizing Combinations of Program Operations - System and method for vectorizing combinations of program operations. Program code is received that includes a combination of individually vectorizable program portions that collectively implement a first computation. Each individually vectorizable program portion has at least one array input and at least one array output. The combination of individually vectorizable program portions is transformed into a single vectorizable program portion that is or includes a functional composition of the combination of individually vectorizable program portions. Vectorized executable code implementing the first computation is generated based on the single vectorizable program portion. The generated executable code is directed to SIMD (Single-Instruction-Multiple-Data) computing units of a target processor. | 10-04-2012 |
20130031494 | Type Generic Graphical Programming - A system and method for creating and using type generic graphical programs. The method may include storing a first graphical program on a memory medium. The first graphical program may have been created based on user input. The first graphical program may include a plurality of nodes and interconnections between the nodes, and the plurality of nodes and interconnections between the nodes may be type generic. User input may be received specifying one or more data types of at least one input and/or at least one output of the first graphical program. The data types may be associated with the first graphical program in response to said user input specifying the one or more data types. | 01-31-2013 |
20130031501 | Weighted Zoom within a Diagram of a System - Providing zooming within a system diagram. Initially, a diagram of a system may be displayed. The diagram may include a plurality of icons representing physical components of the system. These plurality of icons may be initially displayed at a first level of magnification. User input to zoom on a first physical component in the diagram may be received. Accordingly, the first physical component may be displayed at a second level of magnification and other ones of the physical components may be displayed at a third level of magnification. The second level of magnification may be greater than the first level of magnification and the third level of magnification may be less than the first level of magnification. Alternatively, or additionally, different representations for various components of the system may be displayed in the diagram during or after the zoom. | 01-31-2013 |
20130031508 | Semantic Zoom within a Diagram of a System - Providing zooming within a system diagram. Initially, a diagram of a system may be displayed. The diagram may include a plurality of icons representing physical components of the system. These plurality of icons may be initially displayed at a first level of magnification. User input to zoom on a first physical component in the diagram may be received. Accordingly, the first physical component may be displayed at a second level of magnification and other ones of the physical components may be displayed at a third level of magnification. The second level of magnification may be greater than the first level of magnification and the third level of magnification may be less than the first level of magnification. Alternatively, or additionally, different representations for various components of the system may be displayed in the diagram during or after the zoom. | 01-31-2013 |
20130145312 | Wiring Method for a Graphical Programming System on a Touch-Based Mobile Device - A touch-gesture wiring method for connecting data flow wires to input/output terminals of nodes in a graphical program is described. The method may be implemented by a graphical programming application that executes on a mobile device that includes a touch-sensitive screen configured to receive user input as touch gestures. The method may aid the user by displaying a magnified view of the input/output terminals that makes it easier (relative to the default view of the graphical program) for the user to see the input/output terminals and/or easier to select a desired one of the input/output terminals. | 06-06-2013 |
20140040792 | Physics Based Graphical Program Editor - System and method for editing a graphical diagram. A graphical diagram, such as a graphical program, is displayed on a display device. User input may be received editing the graphical diagram, thereby generating an edited graphical diagram. Placement of one or more elements in the graphical diagram may be adjusted in response to the editing based on determined forces applied to the one or more elements in the edited graphical diagram based on the said editing, resulting in an adjusted edited graphical diagram. The adjusted edited graphical diagram may be displayed on the display device, which may include displaying an animation illustrating the movement of the elements to an equilibrium state in which the forces balance and movement ceases. The editing, adjusting, and displaying may be performed sequentially and/or concurrently, as desired. | 02-06-2014 |
20140040798 | Physics Based Diagram Editor - System and method for editing a graphical diagram. A graphical diagram, such as a graphical program, is displayed on a display device. User input may be received editing the graphical diagram, thereby generating an edited graphical diagram. Placement of one or more elements in the graphical diagram may be adjusted in response to the editing based on determined forces applied to the one or more elements in the edited graphical diagram based on the said editing, resulting in an adjusted edited graphical diagram. The adjusted edited graphical diagram may be displayed on the display device, which may include displaying an animation illustrating the movement of the elements to an equilibrium state in which the forces balance and movement ceases. The editing, adjusting, and displaying may be performed sequentially and/or concurrently, as desired. | 02-06-2014 |
20140359589 | Graphical Development and Deployment of Parallel Floating-Point Math Functionality on a System with Heterogeneous Hardware Components - System and method for configuring a system of heterogeneous hardware components, including at least one: programmable hardware element (PHE), digital signal processor (DSP) core, and programmable communication element (PCE). A program, e.g., a graphical program (GP), which includes floating point math functionality and which is targeted for distributed deployment on the system is created. Respective portions of the program for deployment to respective ones of the hardware components are automatically determined. Program code implementing communication functionality between the at least one PHE and the at least one DSP core and targeted for deployment to the at least one PCE is automatically generated. At least one hardware configuration program (HCP) is generated from the program and the code, including compiling the respective portions of the program and the program code for deployment to respective hardware components. The HCP is deployable to the system for concurrent execution of the program. | 12-04-2014 |
20140359590 | Development and Deployment of Parallel Floating-Point Math Functionality on a System with Heterogeneous Hardware Components - System and method for configuring a system of heterogeneous hardware components, including at least one: programmable hardware element (PHE), digital signal processor (DSP) core, and programmable communication element (PCE). A program, e.g., a graphical program (GP), which includes floating point math functionality and which is targeted for distributed deployment on the system is created. Respective portions of the program for deployment to respective ones of the hardware components are automatically determined. Program code implementing communication functionality between the at least one PHE and the at least one DSP core and targeted for deployment to the at least one PCE is automatically generated. At least one hardware configuration program (HCP) is generated from the program and the code, including compiling the respective portions of the program and the program code for deployment to respective hardware components. The HCP is deployable to the system for concurrent execution of the program. | 12-04-2014 |