Patents Assigned to National Instruments
-
Patent number: 7791671Abstract: A smart camera with modular expansion capabilities, including a housing, a camera directly attached to the housing for acquiring an image of an object, a functional unit comprised in the housing and coupled to the camera, where the functional unit is configurable to implement an image processing function, a backplane comprised in the housing and coupled to the functional unit to provide electrical communication, and one or more slots comprised in the housing, where each slot includes a connector that is electrically coupled to the backplane, and where each slot is adapted for receiving a function module. An inserted function module provides modular functionality to the smart camera, such as dedicated image processing functionality, pattern recognition, analysis, communication, sensor, sensor I/O, signal conditioning and/or conversion, control, measurement, and synchronization, among others. The function module may communicate a protocol to the functional unit which may be configured to implement the protocol.Type: GrantFiled: April 19, 2009Date of Patent: September 7, 2010Assignee: National Instruments CorporationInventors: Kevin L. Schultz, Perry Steger, Stefanie Breyer
-
Patent number: 7793273Abstract: System and method for implicit downcasting at compile time in a data flow program. A first data flow function in an object-oriented dataflow program is identified, where the first function includes an input of a parent data type and an output of the parent data type. The first function is analyzed to determine if the output preserves the run-time data type of the input. A second dataflow function in the object-oriented data flow program is identified, where the second function includes a program element that calls the first function, passing an input parameter of a child data type of the parent data type as input. If the analysis determines that an output parameter returned by the output of the first function will always be of the child data type, the program element is automatically configured at compile time to always downcast the output parameter from the parent data type to the child data type at run-time.Type: GrantFiled: November 8, 2005Date of Patent: September 7, 2010Assignee: National Instruments CorporationInventors: Stephen R. Mercer, Steven W. Rogers
-
Patent number: 7764619Abstract: System and method for analyzing routing in a system. Routing information for the system, received, e.g., from a user and/or tool, is analyzed, where the routing information specifies a plurality of routes in the system, and where each route comprises one or more routing resources in the system. A routing conflict between two routes of the plurality of routes is determined based on the analyzing, where the routing conflict is with respect to a routing resource comprised in each of the two routes, e.g., incompatible reservations and/or incompatible specified configuration of a routing resource included in each of the two routes. An error message useable in debugging routing for the system is output indicating the routing conflict, where the error message includes identification of the two routes, e.g., respective names, sources and destinations, and/or routing resource sequences, of the two routes, and may optionally include identification of the routing resource.Type: GrantFiled: June 24, 2005Date of Patent: July 27, 2010Assignee: National Instruments CorporationInventors: Roy P. Mathena, Robert W. Thurman
-
Patent number: 7765278Abstract: A system and method for deploying one or more graphical programs on a personal digital assistant (PDA). One or more selected graphical programs may be programmatically converted to an executable format that can be executed by the portable computing device. For example, the graphical programs may be initially represented as a plurality of data structures that define or specify the operation of the respective graphical programs, and conversion software program may operate to access these data structures from memory and convert the data structures to an executable format suitable for the portable computing device. The executable may be transferred to the portable computing device for execution.Type: GrantFiled: September 11, 2007Date of Patent: July 27, 2010Assignee: National Instruments CorporationInventors: Andrew Dove, Hugo Andrade, Darshan Shah
-
Patent number: 7765493Abstract: A system and method for navigating among hierarchies of palette windows displayed on a display. Palette windows may include one or more palette window selection items that, when selected, open child palette windows of the current palette window. Palette windows may include one or more items for navigating in the hierarchy. The navigation items may include back navigation items, forward navigation items, and up navigation items. The navigation items may be used in navigating to previously displayed palette windows and/or to higher palette windows in the hierarchy. A search mechanism for locating palette windows and/or palette window content may be provided. From the search mechanism, the user may locate and open palette windows in one or more hierarchies. The current palette window is closed when a new palette window is opened. Thus, at most one palette window in a hierarchy is displayed at one time.Type: GrantFiled: December 27, 2000Date of Patent: July 27, 2010Assignee: National Instruments CorporationInventors: Justin Chickles, Raghavendra Gururaj
-
Patent number: 7761802Abstract: One embodiment of the present invention comprises a method for displaying a diagram of a measurement system, in which various components in the diagram may be expanded or collapsed as desired. It may be desirable to allow the user to view various aspects of a measurement system at various levels of granularity. For example, the user may desire to view details regarding one or more components in the measurement system but may not want to see details for other components. Providing the ability to expand or collapse components in a measurement system diagram may allow the user to view a compact diagram illustrating the measurement system from a high level, or to expand various components in the diagram to “drill down” into particular sub-systems or components to view details regarding those sub-systems or components.Type: GrantFiled: December 23, 2002Date of Patent: July 20, 2010Assignee: National Instruments CorporationInventors: Mohammed Kamran Shah, Jeffrey N. Correll
-
Patent number: 7760238Abstract: Vision system and method. The system includes a vision system, including: a camera, a processor and memory, coupled to the camera, and an EtherCAT interface, coupled to the processor and memory, possibly contained in a chassis, and operable to couple to an EtherCAT network that provides for deterministic low-latency communication between the vision system and devices coupled to the EtherCAT network. The vision system may be configurable to operate as any of: an EtherCAT master device, an EtherCAT slave device, or a TCP/IP Ethernet device. One or more additional vision systems may couple to the EtherCAT network. The vision systems may be synchronized using an EtherCAT distributed clock technique, time-based triggered, and/or event triggered, via the EtherCAT network, e.g., in a multi-view vision, collaborative processing, control, I/O, or video servoing application, e.g., using an EtherCAT deterministic low latency closed loop feedback system, including processing, control, or I/O devices.Type: GrantFiled: July 25, 2007Date of Patent: July 20, 2010Assignee: National Instruments CorporationInventor: Robert J. B. Giesen
-
Patent number: 7761859Abstract: One embodiment of the invention comprises a system and method for aiding a user in specifying function parameter values in a computer program. An application development environment (ADE) may be operable to display parameter assistant user interfaces for aiding the user in specifying various function parameter values. Another embodiment of the invention comprises a system and method for automatically declaring variables passed as parameters in function calls.Type: GrantFiled: December 3, 2004Date of Patent: July 20, 2010Assignee: National Instruments CorporationInventor: Jared L. Low
-
Patent number: 7761846Abstract: A system and method for configuring a target hardware device. The system receives user input selecting instances of circuit-like primitives and instances of dataflow primitives. The user may wire the instances together using wires of various kinds to specify a graphical program. The wires are distinguished into types depending on whether or not they impose dataflow ordering dependencies and depending on the kind of data they are intended to carry. The circuit-like primitives may receive and/or generate digital signals to control the timing of processes or events such as A/D conversion, D/A conversion, digital input, digital output, pulse generation, etc. The circuit-like primitives and the dataflow primitives may communicate with each other through cast primitives and satellite nodes. Program code corresponding to the graphical program may be compiled to a format suitable for configuring a programmable hardware element or some other target device.Type: GrantFiled: August 8, 2006Date of Patent: July 20, 2010Assignee: National Instruments CorporationInventor: Timothy J. Hayles
-
Patent number: 7761847Abstract: A system and method for executing a plurality of graphical code portions as a timed sequence is described. The graphical code portions may be included in a graphical program and configured with information specifying a sequential order of execution and execution timing information. During execution of the graphical program, the graphical code portions are executed sequentially in the sequential order and in accordance with the execution timing information. In one embodiment a timed sequence structure node may be utilized to specify the timed sequence. For example, the user may include the timed sequence structure node in the graphical program and associate the plurality of graphical code portions with the timed sequence structure node such that the timed sequence structure node species a sequential order of execution for the graphical code portions. The user may also configure the timed sequence structure node with execution timing information for one or more of the graphical code portions.Type: GrantFiled: August 15, 2005Date of Patent: July 20, 2010Assignee: National Instruments CorporationInventors: Jacob Kornerup, Biren Shah, Aljosa Vrancic
-
Patent number: 7743362Abstract: System and method for generating an application domain specific graphical program. A graphical user interface (GUI) for specifying functionality of a graphical program in an application domain is displayed, where the GUI corresponds specifically to the application domain. User input to the GUI specifying the functionality of the graphical program is received, and the graphical program generated in response, where the graphical program is executable to perform the specified functionality, and comprises multiple interconnected graphical program nodes that visually represent the graphical program functionality. The GUI includes graphical interface elements operable to indicate and/or specify, e.g.Type: GrantFiled: May 6, 2004Date of Patent: June 22, 2010Assignee: National Instruments CorporationInventors: Joseph E. Peck, Matthew E. Novacek
-
Patent number: 7743335Abstract: A system and method for creating a graphical program which accesses registers of a hardware device. In one embodiment, a register access node or primitive may be included in a graphical program, such that when the graphical program is executed on the computer system, the register access node is operable to access (i.e., either read or write) registers of a hardware device in the computer system. The method may comprise first displaying a register access node in the graphical program in response to user input. For example, the user may select the register access node from a palette and drag and drop the register access node onto a window of the graphical program being created. The user may then configure the register access node to access one or more registers of a selected hardware device, e.g., by using a user interface for performing this configuration.Type: GrantFiled: August 9, 2006Date of Patent: June 22, 2010Assignee: National Instruments CorporationInventors: Steve Rogers, Jason King
-
Patent number: 7730450Abstract: System and method for automatic versioning and data mutation for user-defined data types. A program development environment may be operable to: create a first version of a data type definition in response to user input; instantiate and store an object of the first version of the data type, optionally including a version identifier indicating the version of the object; modify the first version of the data type definition in response to user input, thereby creating a second version of the data type definition; load the object from storage; and automatically (without user intervention) modify the object to conform to the second version of the data type definition. Successive modifications of the data type definition may generate successive versions of the data type. Objects instantiated and stored according to a previous version of the data type may be loaded from storage and automatically modified to conform to a specified subsequent version.Type: GrantFiled: January 31, 2005Date of Patent: June 1, 2010Assignee: National Instruments CorporationInventor: Stephen R. Mercer
-
Patent number: 7725877Abstract: A system and method for creating a graphical program utilizing one or more input/output (I/O) nodes. An I/O node may be displayed in a first graphical program, where the I/O node may include associated generation code for programmatically generating execution-time code associated with the I/O node in the first graphical program. First input may be received to select a first I/O source or target corresponding to the first I/O node, e.g., from various supported hardware resources, and the associated generation code may be executed to programmatically generate or modify the execution-time code, e.g., at compilation or prior to execution of the first graphical program, to provide I/O to or from the first I/O source or target.Type: GrantFiled: November 24, 2004Date of Patent: May 25, 2010Assignee: National Instruments CorporationInventors: Hugo A. Andrade, Matthew E. Novacek, Lukasz T. Darowski
-
Patent number: 7725874Abstract: A combination structure node is provided by a graphical programming development environment for use in a graphical program, where the combination structure node is operable to perform two or more control flow functions. For example, the combination structure node may be operable to perform two or more of: iteration, looping, conditional branching, sequencing, timed execution, event-driven execution, or other control flow functions. A user may include the combination structure node in a graphical program and associate a graphical code portion with the combination structure node. During execution of the graphical program, the combination structure node is operable to cause the associated graphical code portion to execute according to the two or more control flow functions performed by the combination structure node.Type: GrantFiled: August 15, 2005Date of Patent: May 25, 2010Assignee: National Instruments CorporationInventors: Jacob Kornerup, Biren Shah, Aljosa Vrancic, Matthew Curtis, Steve Rogers
-
Patent number: 7725627Abstract: System and method for performing distributed input/output (I/O). A distributed I/O device (the device) coupled to a controller may read data from a serial port, may determine if the data are framed by time, and if so, may handle the data according to a time-based protocol. If the data are not framed by time, the device may determine if the data are framed by delimiters, and if so, may determine an appropriate delimiter-based protocol for the data from a plurality of delimiter-based protocols, and handle the data according to the appropriate delimiter-based protocol. This process may be repeated in an iterative manner to read a stream of data from the serial port. The device may include or be coupled to one or more I/O modules (e.g., for DAQ, motion control, etc.), which themselves may be coupled to a unit under test or other external device or phenomenon via additional devices.Type: GrantFiled: November 15, 2006Date of Patent: May 25, 2010Assignee: National Instruments CorporationInventors: Charles E. Crain, II, Tony Widjaja
-
Patent number: 7725356Abstract: System and method for receiving purchase information for a client system, e.g., a measurement system. A configuration diagram visually representing a current configuration of the client system is displayed. Multiple product icons are displayed representing products (hardware and/or programs) available for use in the client system. User input is received graphically associating at least one first product icon with the configuration diagram, where the first product icon represents a first product, and the user input indicates a desire to purchase the first product. An updated configuration diagram is displayed representing the configuration of the client system after receiving the user input, including the first product icon. Pricing information for the first product is displayed in response to receiving the user input. User input initiating purchase of the first product may be received in response to displaying the pricing information, and the product may be provided to the user.Type: GrantFiled: September 12, 2005Date of Patent: May 25, 2010Assignee: National Instruments CorporationInventors: Mohammed Kamran Shah, David W Fuller, III, Jeffrey N. Correll, Brian H. Sierer
-
Implementing a data flow block diagram having a control flow node on a programmable hardware element
Patent number: 7707014Abstract: A computer-implemented system and method for generating a hardware implementation of graphical code. The method comprises first creating a graphical program. A first portion of the graphical program may optionally be compiled into machine code for execution by a CPU. A second portion of the graphical program is converted into a hardware implementation according to the present invention. The operation of converting the graphical program into a hardware implementation comprises exporting the second portion of the graphical program into a hardware description, wherein the hardware description describes a hardware implementation of the second portion of the graphical program, and then configuring a programmable hardware element utilizing the hardware description to produce a configured hardware element. The configured hardware element thus implements a hardware implementation of the second portion of the graphical program.Type: GrantFiled: December 18, 2006Date of Patent: April 27, 2010Assignee: National Instruments CorporationInventors: Jeffrey L. Kodosky, Hugo Andrade, Brian K. Odom, Cary P. Butler -
Patent number: 7703034Abstract: A system and method for viewing timing of one or more loops in a graphical program. A graphical program having one or more loops may be created. In one embodiment the one or more loops may include one or more timed loops, i.e., the loops may be configured to execute according to particular execution periods. The graphical program may be executed, and timing analysis data regarding timing of the one or more loops during execution of the graphical program may be stored. A graphical user interface (GUI) for viewing timing of the one or more loops during execution of the graphical program may be displayed. In various embodiments the GUI may display any of various kinds of information regarding timing of the one or more loops, and any kind of visual presentation may be used in displaying the information.Type: GrantFiled: July 16, 2004Date of Patent: April 20, 2010Assignee: National Instruments CorporationInventors: Jacob Kornerup, Biren Shah, Aljosa Vrancic, Bob Preis
-
Patent number: 7702417Abstract: System and method for utilizing drawing specifications for use in motion control. Elements in a drawing specification may be automatically identified. The drawing specification may include one or more drawings, digital files, AutoCAD drafting files, and/or drawing specifications. Code may be automatically generated based on the one or more elements in accordance with a schema, and may include instructions in a data representation language, e.g., a markup language such as HTML, XML, etc. The automatically generated code may include move operations, e.g., arc, contour, line, raise, lower, halt, begin, etc., with associated parameters, e.g., move constraints, digital outputs, position compares, etc. The schema may include one or more blocks, each associated with a portion of the drawing specification, one or more elements, each associated with a block, one or more move operations, each associated with an element, and one or more parameters, each associated with a move operation.Type: GrantFiled: January 31, 2006Date of Patent: April 20, 2010Assignee: National Instruments CorporationInventors: Sushrutha Ravish, Praveen Shivananda, Sundeep Chandhoke, Mahesh Ramchandani