Patents Assigned to National Instruments Corporation
  • Patent number: 6754850
    Abstract: A method for creating a computer program to be executed by a plurality of threads, in which the method utilizes a technique for execution synchronization referred to herein as a batch synchronization section. According to this technique, a plurality of threads may be associated with one another as a “batch” of threads. Each thread in the plurality (batch) of threads may execute the computer program simultaneously. The batch synchronization section may specify a portion of the computer program for which the execution of the portion by the plurality of threads is to be synchronized. In one embodiment different types of batch synchronization sections may be specified, wherein each type of batch synchronization section performs a different type of execution synchronization. In one embodiment the method may enable execution synchronization behavior for multiple concurrent executions of a test executive test sequence to be specified.
    Type: Grant
    Filed: March 2, 2001
    Date of Patent: June 22, 2004
    Assignee: National Instruments Corporation
    Inventors: James Grey, Douglas Melamed, Jon Bellin
  • Patent number: 6751653
    Abstract: A Data Socket client and associated applications and/or tools which provide programs with access to data from various sources and having various types or formats, wherein the access is provided invisibly to the user. The Data Socket client allows the user or program to access any data source available on the user's machine as well as data anywhere on a network, such as a LAN, WAN or the Internet. In the preferred embodiment, the Data Socket client addresses data sources or I/O sources using a URL (uniform resource locator), much the way that a URL is used to address web pages anywhere in the world. The present invention also includes new Data Socket URLs which allow the user to access I/O sources.
    Type: Grant
    Filed: April 29, 2003
    Date of Patent: June 15, 2004
    Assignee: National Instruments Corporation
    Inventor: Paul F. Austin
  • Patent number: 6745175
    Abstract: An improved method and system for high speed logging and trending of data. Logging of data may include: receiving data; and storing the data, and an index to the data, in a shared memory location coupled to a database. Trending of data may include: retrieving requested data from the shared memory location using the index of the requested data, and displaying the retrieved data. User configurable frequencies may be provided for various actions on the data. The data may be measurement data, including a stream of data comprising a plurality of entries. The logging and trending may be: (1) performed substantially concurrently; (2) implemented using shared memory templates. The database may reside on a first computer system, and the logging and trending may be performed on the first computer system or on a second computer system coupled to the first computer system via a network.
    Type: Grant
    Filed: August 2, 2001
    Date of Patent: June 1, 2004
    Assignee: National Instruments Corporation
    Inventors: David Mark Pierce, Maxim Mark Tomashevsky, Anthony George Roach
  • Patent number: 6721673
    Abstract: A system and method for estimating parameters of multiple tones in an input signal. The method includes receiving samples of the input signal, generating a frequency transform (FT) of the samples, identifying multiple amplitude peaks in the FT corresponding to the tones, and determining parameter estimates characterizing each of the multiple tones based on the peaks. For each tone, the effects of the other tones are removed from the FT of the peak of the tone using the parameter estimates of the other tones to generate modified FT data for the tone. Single tone estimation is applied to the modified FT data to generating refined parameter estimates of the tone, which is used to update the parameter estimates of the tone. After refining the estimates for each tone, the entire process may be repeated one or more times using successive refined estimates to generate final estimates for the parameters.
    Type: Grant
    Filed: January 3, 2002
    Date of Patent: April 13, 2004
    Assignee: National Instruments Corporation
    Inventor: Yong Rao
  • Patent number: 6721677
    Abstract: A method and system for modular storage of measurement streams using a hierarchy of stream-processing objects. A first application may log measurement data of a plurality of data types to a shared memory location on a first computer, independent of the data type. Both the data and an index to the data may be logged. A second application may trend the data substantially concurrently as the data is logged. Both applications may include a plurality of filter objects, including a hierarchy of stream processing objects, which may operate to log/trend the data. Trending may include: (1) generating a query; (2) determining the location using the index; (3) accessing the data from the shared memory; and (4) displaying the data. The data may be replicated to an archival database, independent of the type of data. The replicated data may be transmitted to a plurality of computers.
    Type: Grant
    Filed: August 2, 2001
    Date of Patent: April 13, 2004
    Assignee: National Instruments Corporation
    Inventors: David Mark Pierce, Dudley Wayne Fox, Jr.
  • Patent number: 6720968
    Abstract: A video capture system and method whereby video frames or images, which are received in one of a plurality of possible formats, are acquired and stored into on-board memory in an image format. The image data can then be transferred into system memory at an optimum rate. The video capture system comprises a host computer, including a video capture board, which is coupled to a video source, such as a video camera. The video source provides digital video data in a first format of a plurality of different possible formats. The video capture board includes a memory controller which receives the digital video data in the first format and selectively provides the digital video data to the buffer memory in an image format. The memory controller includes address generation logic for generating buffer memory addresses for storing the video data to the buffer memory in the image format.
    Type: Grant
    Filed: December 11, 1998
    Date of Patent: April 13, 2004
    Assignee: National Instruments Corporation
    Inventors: Cary Paul Butler, B. Keith Odom, Kevin L. Schultz, Charles G. Schroeder
  • Patent number: 6715139
    Abstract: A computer-based virtual instrumentation system including a host computer and an embedded system or device, wherein graphical programs created using the computer system can be downloaded to the embedded system for execution in a real-time or more deterministic manner. The present invention thus provides a method for automatically generating an embedded application in response to a graphical program created by a user. This provides the user the ability to develop or define instrument functionality using graphical programming techniques, while enabling the resulting program to operate in an embedded real-time system. The invention includes a novel method for configuring the embedded system. During execution of a graphical program in the embedded system, the block diagram portion executes in the embedded system, and the host CPU executes front panel display code to display on the screen the graphical front panel of the graphical program.
    Type: Grant
    Filed: August 3, 2000
    Date of Patent: March 30, 2004
    Assignee: National Instruments Corporation
    Inventors: Jeffrey L Kodosky, Darshan Shah, Samson DeKey, Steve Rogers
  • Patent number: 6697766
    Abstract: System and method for characterizing a Gaussian pulse in a signal. The system includes a computer operable to receive the signal, determine a set of estimated parameters for the Gaussian pulse using a “zoom-in” approach, permute the estimated parameter set to generate one or more permuted parameter sets, where the estimated and permuted parameter sets each represent a corresponding waveform, generate closed form inner products between the received signal and each waveform, generate linear equations from the inner products, each linear equation being a function of a respective one of the parameter sets and corresponding parameter variables for the Gaussian pulse, and determine values for the parameter variables by solving the linear equations. The determined parameters characterize the Gaussian pulse. If there are N parameters to determine and M permutations generated, where M is greater than or equal to N, M+1 linear equations are solved to overdetermine the N parameters.
    Type: Grant
    Filed: April 10, 2001
    Date of Patent: February 24, 2004
    Assignee: National Instruments Corporation
    Inventors: Shie Qian, Nanxiong Zhang
  • Patent number: 6690981
    Abstract: System and method for enabling user interface code to be encapsulated in a sub-program of a graphical program. A node referencing a user interface element of a graphical program may be connected to a node referred to as a “property node”. The user may configure the property node with information specifying which property or set of properties of the referenced user interface element to set or retrieve. When executed, the property node may utilize the reference provided by the node associated with the user interface element in order to interact with the element. The node referencing the user interface element may also be connected to a subprogram node. The subprogram is operable to receive the user interface element reference and pass the reference to property nodes in order to set or retrieve properties of the user interface element. The subprogram may have an associated user interface panel comprising a “reference control” for receiving a user interface element reference.
    Type: Grant
    Filed: May 4, 2000
    Date of Patent: February 10, 2004
    Assignee: National Instruments Corporation
    Inventors: Yumiko Kawachi, Robert Dye
  • Patent number: 6690390
    Abstract: A computer system and method for performing a task within an application from within an on-line help information display. Thus the on-line help information displayed by the computer system may include user selectable elements which enable the user to complete portions or all of a task directly from the on-line help window, e.g., without requiring the user to search for this functionality in menus or toolbars within the application. The user may launch the application and then select on-line help information associated with performing a task within the application. In response to this user input, the computer may display on-line help information associated with the application. The displayed on-line help information may include various help information that specifies a recipe for performing the task, e.g., the information may guide the user through a series of steps to perform the task in the application. The displayed on-line help information may include one or more user selectable elements.
    Type: Grant
    Filed: October 24, 2000
    Date of Patent: February 10, 2004
    Assignee: National Instruments Corporation
    Inventors: Kristy Walters, Thomas Connell, Christopher Cifra
  • Patent number: 6681284
    Abstract: A system and method for communicating with a device over an external transmission medium. The system may include a host computer system, including a user application, a serial bus interface driver, and a first portion of an interface driver. The host computer may include a serial bus host controller. A serial bus may couple the serial bus host controller to a serial bus interface, which may include an interface connector adapted to couple to the device, wherein the serial bus interface may be operable to store and execute a second portion of the interface driver. When the user application generates an API function call, the first portion of the interface driver may generate a frame of interface commands that are transferred to the second portion of the interface driver for execution, thereby causing signals to be transmitted over an interface bus to the device.
    Type: Grant
    Filed: November 27, 2000
    Date of Patent: January 20, 2004
    Assignee: National Instruments Corporation
    Inventors: Andrew Thomson, Khasid Ali Khan, Eric Singer, Daniel Liu, Mark Gruetzner
  • Patent number: 6681057
    Abstract: A system and method for improving the accuracy and convergence rate in determining the affine transformation of one image or array of values with respect to another image or array of values. A particular embodiment of the present invention comprises a reference and an input image. A gradient matrix, &lgr;, may be constructed to contain gradient information of the position values of the reference image. Also, an estimate matrix, &rgr;, may be constructed to contain initial estimates of at least one of position, angle and scale of the input image. The input image is then subtracted from the reference image pixel by pixel producing an error matrix, e. The error matrix, e, is then multiplied with the matrices, &lgr; and &rgr;. The result is the new change in the position, angle and scale of the input image. New values for the position, angle and scale are calculated from the changes in the position, angle and scale values of the input image.
    Type: Grant
    Filed: February 22, 2000
    Date of Patent: January 20, 2004
    Assignee: National Instruments Corporation
    Inventors: Dinesh Nair, Lothar Wenzel
  • Patent number: 6665066
    Abstract: A machine vision system and method for performing illumination line analysis on an image of an object to detect defects in the object. The method may comprise projecting a pattern of lines on a surface of the object, and then generating an image of the surface of the object. The analysis method tracks left and right edges of each of the illumination lines to determine width and curvature of each of the lines, preferably using a bi-directional edge detection technique applied to a path perpendicular to the current orientation of the line. Information regarding the left and right edges of the line may be used to determine local widths and local orientations of the line. This information may be used to determine if a thinning or blooming of the line occurs, or if a change in curvature of the line occurs, which may indicate a possible defect in the object.
    Type: Grant
    Filed: April 27, 2001
    Date of Patent: December 16, 2003
    Assignee: National Instruments Corporation
    Inventors: Dinesh Nair, Kevin L. Schultz
  • Patent number: 6665335
    Abstract: A system and method for estimating the shift between two signals. The shift estimation system method comprises: (a) receiving a first signal, where the first signal may be represented as a vector g having N components; (b) projecting the vector g to a space with dimension K less than N to obtain a projection vector X having K components; (c) computing measures of distance between the projection vector X and each vector in a set of stored vectors; (d) determining a stored vector p in the set of stored vectors with a minimum distance to the projection vector X. The stored vectors are generated from a template signal f, also represented as a vector with N components, by projecting shifted versions of the template signal f to the space of dimension K. The shifted versions of the template signal f may be referred to as shifted template vectors, or simply, shift vectors.
    Type: Grant
    Filed: April 20, 2000
    Date of Patent: December 16, 2003
    Assignee: National Instruments Corporation
    Inventors: Ram Rajagopal, Lothar Wenzel
  • Patent number: 6643691
    Abstract: A Data Socket client and associated applications and/or tools which provide programs with access to data from various sources and having various types or formats, wherein the access is provided invisibly to the user. The Data Socket client allows the user or program to access any data source available on the user's machine as well as data anywhere on a network, such as a LAN, WAN or the Internet. In the preferred embodiment, the Data Socket client addresses data sources or I/O sources using a URL (uniform resource locator), much the way that a URL is used to address web pages anywhere in the world. The present invention also includes new Data Socket URLs which allow the user to access I/O sources.
    Type: Grant
    Filed: December 19, 2001
    Date of Patent: November 4, 2003
    Assignee: National Instruments Corporation
    Inventor: Paul F. Austin
  • Patent number: 6640312
    Abstract: A system and method for transferring data over a communications medium. A host is coupled to a device through a serial bus lacking error handling capabilities, such as an IEEE 1394 bus. The host may control the device by sending requests accessing its memory registers. The host generates a first request to the device to access a memory address location of the device, and which includes an address and status information indicating whether a prior request to the memory address location returned successfully. The device examines the status information to determine if it is a retry of a prior request, and if so, determines if the prior request completed successfully to the memory address location by comparing the address and data transfer size of the first request to those of the prior request. If identical, then the prior request completed successfully to the memory address location, and the request is ignored. Otherwise, the device retries the prior request.
    Type: Grant
    Filed: August 1, 2000
    Date of Patent: October 28, 2003
    Assignee: National Instruments Corporation
    Inventors: Andrew Thomson, David W. Madden, Glen Sescila, Aljosa Vrancic
  • Publication number: 20030200280
    Abstract: A Data Socket client and associated applications and/or tools which provide programs with access to data from various sources and having various types or formats, wherein the access is provided invisibly to the user. The Data Socket client allows the user or program to access any data source available on the user's machine as well as data anywhere on a network, such as a LAN, WAN or the Internet. In the preferred embodiment, the Data Socket client addresses data sources or I/O sources using a URL (uniform resource locator), much the way that a URL is used to address web pages anywhere in the world. The present invention also includes new Data Socket URLs which allow the user to access I/O sources.
    Type: Application
    Filed: April 29, 2003
    Publication date: October 23, 2003
    Applicant: National Instruments Corporation
    Inventor: Paul F. Austin
  • Publication number: 20030194135
    Abstract: System and method for estimating a rotational shift between a first discrete curve and a second discrete curve, where the second discrete curve is a rotationally shifted version of the first discrete curve. First and second discrete curves are received. A rotational shift between the first discrete curve and the second discrete curve is estimated based on the first discrete curve and the second discrete curve. A cumulative rotational shift is updated based on the estimated rotational shift. A rotationally shifted version of the second discrete curve is generated based on the cumulative rotational shift. The estimating, updating, and generating are performed in an iterative manner using the respective rotationally shifted discrete curve for each iteration until a stopping condition occurs, thereby determining a final estimate of the rotational shift between the first discrete curve and the second discrete curve. The final estimate may be used to perform curve matching.
    Type: Application
    Filed: May 6, 2003
    Publication date: October 16, 2003
    Applicant: National Instruments Corporation
    Inventor: Lothar Wenzel
  • Publication number: 20030196187
    Abstract: A computer-based virtual instrumentation system including a host computer and an embedded system or device, wherein graphical programs created using the computer system can be downloaded to the embedded system for execution in a real-time or more deterministic manner. The present invention thus provides a method for automatically generating an embedded application in response to a graphical program created by a user. This provides the user the ability to develop or define instrument functionality using graphical programming techniques, while enabling the resulting program to operate in an embedded real-time system. The invention includes a novel method for configuring the embedded system. During execution of a graphical program in the embedded system, the block diagram portion executes in the embedded system, and the host CPU executes front panel display code to display on the screen the graphical front panel of the graphical program.
    Type: Application
    Filed: May 16, 2003
    Publication date: October 16, 2003
    Applicant: National Instruments Corporation
    Inventors: Jeffrey L. Kodosky, Darshan Shah, Samson DeKey, Steve Rogers
  • Publication number: 20030195731
    Abstract: 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: Application
    Filed: May 9, 2003
    Publication date: October 16, 2003
    Applicant: National Instruments Corporation
    Inventors: Jeffrey L. Kodosky, Hugo Andrade, Brian K. Odom, Cary P. Butler