Patents Assigned to National Instruments
-
Patent number: 7864178Abstract: A machine vision development environment that may utilize a control flow representation (preferably a state diagram representation) to specify and execute machine vision routines (e.g., sometimes referred to as inspection routines). A user may first create one or more machine vision routines using any of various methods. The user may then graphically specify a sequence of machine vision steps or operations, e.g., a machine vision inspection, using a state diagram representation. The state diagram representation may comprise a plurality of icons which represent states with corresponding operations or functions, such as, for example, Load Inspection, Part Ready, Run Inspection, Read Digital Input, etc. The various icons may be connected by wires that indicate control flow transitions, e.g., state transitions, among the states. The state diagram may then be executed to control the machine vision routines.Type: GrantFiled: October 18, 2006Date of Patent: January 4, 2011Assignee: National Instruments CorporationInventors: Marc Marini, Nicolas Vazquez
-
Patent number: 7865326Abstract: In some embodiments, an input measurement module may be configured to insert into a slot of a carrier using alignment guide slots and corresponding guide projections. Clips on the input measurement module or the carrier may engage corresponding depressions to secure the input measurement module to the carrier. The clips may be spring-loaded. The input measurement module may include a first outer casing and a second outer casing coupled together around a circuit board that interfaces with a backplane of the carrier through a backplane connector.Type: GrantFiled: August 27, 2004Date of Patent: January 4, 2011Assignee: National Instruments CorporationInventors: Chris S. Johnson, Christopher D. White, Glen E. Clifton, James J. Truchard, Garritt W. Foote
-
Patent number: 7865349Abstract: A system and method for coordinating timing between simulation of a system and measurement and/or control of the system. A measurement/control loop comprising a measurement/control program, a simulation program, and an execution coordination kernel is described. The simulation program may be operable to simulate any of various types of systems. The measurement/control program may provide measurement/control logic for measuring various variables associated with the simulated system. The execution coordination kernel is responsible for coordinating the execution and time advancement of the measurement/control and simulation programs. The execution coordination kernel may be operable to intercept I/O calls produced by the measurement/control program and the simulation program. If the execution coordination kernel determines that the system is in simulation mode, the calls may be routed to software routines instead of to the I/O hardware.Type: GrantFiled: January 18, 2002Date of Patent: January 4, 2011Assignee: National Instruments CorporationInventors: Jeffrey L. Kodosky, Jack E. MacCrisken
-
Patent number: 7863851Abstract: System and method for controlling a stepper motor. A current position of the stepper motor may be received. A position error of the stepper motor may be determined using the current position of the stepper motor. A velocity profile may be maintained based on the position error, such that it tracks the position error. A position correction value may be determined based on the velocity profile, e.g., by integrating a portion of the velocity profile. A new position value may be generated to drive the stepper motor. An output position value to the stepper motor may be provided to drive the stepper motor. The output position value may incorporate the new position value and the position correction value and may be operable to reduce position error of the stepper motor.Type: GrantFiled: August 22, 2007Date of Patent: January 4, 2011Assignee: National Instruments CorporationInventor: Sundeep Chandhoke
-
Patent number: 7860582Abstract: A compact modular embedded device. A base module includes a processor, a memory medium operable to store a bootloader for executing graphical programs, a bus, and a power input coupled to the processor, memory medium, and bus, for receiving power from a power source and providing the received power to the processor, memory medium, and bus. The base module can couple to a host computer via a transmission medium, receive a program from the host computer, and store the program in the memory medium. The base module may couple to extension modules via the bus in a stacked fashion, where the base module and the extension modules each include a respective substantially planar circuit board that when stacked are substantially parallel. Each extension module provides respective functionality for the device. The base module can execute the program to perform a function in conjunction with the extension modules.Type: GrantFiled: June 23, 2004Date of Patent: December 28, 2010Assignee: National Instruments CorporationInventors: Marius Ghercioiu, Horea Hedesiu, Silviu Folea, Gratian I. Crisan, Ciprian Ceteras, Ioan Monoses
-
Patent number: 7849449Abstract: System and method for implementing a design flow for a programmable hardware element (PHE) that includes a processor. A graphical program (GP) is received, where the GP specifies performance criteria. The GP is mapped for deployment, with a first portion targeted for execution by the processor, and a second portion targeted for implementation in the PHE. A determination is made as to whether the graphical program meets the performance criteria. If not, the GP is remapped for deployment, including identifying and specifying the sub-portion for implementation in the PHE, thereby moving the sub-portion from the first portion to the second portion, and/or identifying and specifying the sub-portion for execution on the processor, thereby moving the sub-portion from the second portion to the first portion. The determining and remapping is repeated one or more times until the performance criteria are met. The first and second portions are deployed to the PHE.Type: GrantFiled: December 5, 2006Date of Patent: December 7, 2010Assignee: National Instruments CorporationInventors: Hugo A. Andrade, Joseph E. Peck
-
Patent number: 7849444Abstract: A test executive sequence may be created by including a plurality of test executive steps in the test executive sequence and configuring at least a subset of the steps to call user-supplied code modules. One or more of the user-supplied code modules may take buffer parameters. The test executive sequence may be executed on a host computer under control of a test executive engine. When executing each step in the test executive sequence that calls a user-supplied code module that takes a buffer parameter, the test executive engine may be operable to perform several operations related to detecting a situation where the user-supplied code module writes outside the bounds of the buffer parameter and/or preventing the user-supplied code module from corrupting heap data if the user-supplied code module writes outside the bounds of the buffer parameter.Type: GrantFiled: March 16, 2005Date of Patent: December 7, 2010Assignee: National Instruments CorporationInventors: Douglas Melamed, Scott Richardson
-
Patent number: 7849210Abstract: A mechanism for managing packetized data transfers in a system including a transmitting and a receiving device. The transmitting device may transmit data to the receiving device in a plurality of packets, each packet a predetermined number of data bytes wide. The transmitting device may include a transfer count unit to maintain a data transfer count based on a number of transmitted data bytes. The receiving device may program the transmitting device with a transfer count mark, which may be a number that corresponds to a specific count of the data transfer count. The transmitting device may calculate a difference between the data transfer count and the transfer count mark. If the difference between the transfer count and the transfer count mark is less than the predetermined number, the transmitting device may transmit a short data packet having less than the predetermined number of data bytes to the receiving device.Type: GrantFiled: December 22, 2008Date of Patent: December 7, 2010Assignee: National Instruments CorporationInventors: Andrew B. Moch, Aaron T. Rossetto, Brent C. Schwan, Glen O. Sescila, III
-
Patent number: 7849416Abstract: A system and method for developing a prototype that comprises a sequence of motion control, machine vision, and/or data acquisition (DAQ) “MC/MV/DAQ” operations. A MC/MV/DAQ prototyping environment may be designed to enable a user to easily and efficiently develop/prototype a MC/MV/DAQ sequence (i.e., a sequence of operations which includes one or more motion control, machine vision, and/or DAQ operations) without requiring the user to perform programming, e.g., without needing to write or construct code in any programming language. For example, the environment may provide a graphical user interface (GUI) enabling the user to develop/prototype the MC/MV/DAQ sequence at a high level, by selecting from and configuring a sequence of MC/MV/DAQ operations using the GUI.Type: GrantFiled: January 18, 2002Date of Patent: December 7, 2010Assignee: National Instruments CorporationInventors: Sundeep Chandhoke, Nicolas Vazquez, David W Fuller, Christopher Cifra
-
Patent number: 7844911Abstract: A system and method for configuring a graphical user interface (GUI) element to publish data to a data target and/or subscribe to data from a data source. The developer specifies a data source or target The program is executed. If the GUI element is configured to subscribe to data from a data source, then the program receives data from the data source. This data is then be provided to the GUI element, which displays the data to the user. If the GUI element is configured to publish data to a data target, then the program sends or writes data associated with the GUI element to the data target.Type: GrantFiled: November 1, 2004Date of Patent: November 30, 2010Assignee: National Instruments CorporationInventors: Paul F. Austin, Robert Dye
-
Patent number: 7844908Abstract: System and method for distributed execution of a graphical program. First and second icons associated with respective execution targets are displayed on a display. Each icon has an interior and specifies execution of a respective graphical program portion positioned in the interior of the icon on the respective execution target. First and second graphical program portions are respectively displayed in the interiors of the first and second icons, where each graphical program portion comprises a respective one or more interconnected nodes that visually indicate functionality of the graphical program portion. One or more wires connecting the first graphical program portion and the second graphical program portion are display. During execution of the graphical program, the first and second graphical program portions execute respectively on the first and second execution targets, and the first graphical program portion and the second graphical program portion communicate as specified by the one or more wires.Type: GrantFiled: July 11, 2007Date of Patent: November 30, 2010Assignee: National Instruments CorporationInventors: Jeffrey L. Kodosky, David W Fuller, III, Timothy J. Hayles, Jeffrey N. Correll, John R. Breyer, Jacob Kornerup, Darshan K. Shah, Aljosa Vrancic
-
Patent number: 7840904Abstract: System and method for creating a graphical program (GP) having portions that execute on different targets. A GP including a plurality of interconnected nodes visually indicating functionality of the program is created in response to user input, including a first graphical code portion with a first execution context specifying execution of the first graphical code portion on a first target. A second execution context indicating a second target for execution of a second graphical code portion of the GP is established in response to user input, e.g., by displaying a context structure indicating the second execution context and associating the second graphical code portion with the context structure in response to user input. During execution of the GP, the first graphical code portion executes on the first target using the first execution context, and the second graphical code portion executes on the second target using the second execution context.Type: GrantFiled: June 8, 2007Date of Patent: November 23, 2010Assignee: National Instruments CorporationInventors: Darshan K. Shah, Aljosa Vrancic
-
Patent number: 7836426Abstract: 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: February 7, 2006Date of Patent: November 16, 2010Assignee: National Instruments CorporationInventors: Joseph E. Peck, Matthew E. Novacek
-
Patent number: 7831914Abstract: 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.Type: GrantFiled: October 10, 2007Date of Patent: November 9, 2010Assignee: National Instruments CorporationInventors: Jeffrey L. Kodosky, Darshan Shah, Steven W. Rogers
-
Patent number: 7831680Abstract: A system and method for enabling deterministic or time-triggered data exchange between a first graphical program and a second graphical program. A first variable is assigned to a first time slot in a network cycle. A first graphical program may be configured to write data to the first variable. A second graphical program may be configured to read data from the first variable. The first graphical program may be executed on a first computer system, where executing the first graphical program comprises writing data to the first variable. Writing data to the first variable may cause the data to be delivered over a network to a second computer system when the first time slot occurs. The second graphical program may be executed on the second computer system, where executing the second graphical program comprises reading from the first variable the data sent from the first computer system.Type: GrantFiled: August 17, 2005Date of Patent: November 9, 2010Assignee: National Instruments CorporationInventors: Jacob Kornerup, Aljosa Vrancic
-
Patent number: 7827068Abstract: 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: November 2, 2010Assignee: National Instruments CorporationInventors: Mohammed Kamran Shah, David W Fuller, III, Jeffrey N. Correll, Brian H. Sierer
-
Patent number: 7818716Abstract: A system and method for automatically generating a data flow diagram in response to a first diagram. The first diagram may specify one or more states and one or more state transitions, wherein each state transition specifies a transition from a first state to a second state. A data flow diagram may be automatically generated from the first diagram. A hardware description may be generated from the data flow diagram. The hardware description may be usable to configure a programmable hardware element such as, for example, a field-programmable gate array (FPGA). The configured programmable hardware element may implement a hardware implementation of the data flow diagram.Type: GrantFiled: May 4, 2007Date of Patent: October 19, 2010Assignee: National Instruments CorporationInventors: Jeffrey L. Kodosky, Kevin Hogan
-
Patent number: 7818715Abstract: A system and method for automatically generating a data flow diagram in response to a first diagram. The first diagram may specify one or more states and one or more state transitions, wherein each state transition specifies a transition from a first state to a second state. A data flow diagram may be automatically generated from the first diagram. A hardware description may be generated from the data flow diagram. The hardware description may be usable to configure a programmable hardware element such as, for example, a field-programmable gate array (FPGA). The configured programmable hardware element may implement a hardware implementation of the data flow diagram.Type: GrantFiled: March 8, 2007Date of Patent: October 19, 2010Assignee: National Instruments CorporationInventors: Jeffrey L. Kodosky, Kevin Hogan
-
Patent number: 7802229Abstract: A “timed loop with frames” node may be included in a graphical program. The “timed loop with frames” node may combine a timed loop with a timed sequence such that the timed sequence is executed at each iteration of the timed loop. The “timed loop with frames” node may be configured with first execution timing information that controls execution timing for the iterations of the loop. A plurality of graphical code portions may be included in the “timed loop with frames” such that a sequential order of execution for the graphical code portions is specified. The “timed loop with frames” node may be configured with second execution timing information that controls execution timing for the graphical code portions executed at each iteration.Type: GrantFiled: August 15, 2005Date of Patent: September 21, 2010Assignee: National Instruments CorporationInventors: Jacob Kornerup, Biren Shah, Aljosa Vrancic, Matthew Curtis, Steve Rogers
-
Patent number: 7801258Abstract: A system and method for aligning a local timebase to a remote timebase given a timebase error value from a higher-level protocol, and using the aligned timebases to generate and distribute synchronized events and synchronized adjustable frequency periodic signals across a domain using the aligned timebases. Slightly speeding up or slowing down a periodic signal used to count time, a local timebase may be aligned to a remote timebase when given an error value from a higher-level protocol. A device may be configured to begin generating a periodic waveform at an agreed upon time in the future, once the timebases are aligned, where the time may be synchronized to remote devices via a synchronization protocol and an alignment mechanism. Remote periodic signals may remain synchronized to each other as long as the higher-level protocol and timebase alignment algorithm keep the timebases aligned.Type: GrantFiled: April 2, 2007Date of Patent: September 21, 2010Assignee: National Instruments CorporationInventors: Gabriel L. Narus, Craig M. Conway