Quantcast
Channel: Multifunction DAQ topics
Viewing all 6882 articles
Browse latest View live

DAQ card with independent voltage range settings for each input channel

$
0
0

Hello!

Can anyone recommend an atleast 12bit 4channel DAQ card that has independent control over the voltage range settings for each input channel?

 

regards, Alex 


Can I program a DAQmx sample rate on the fly while the card is acquiring

$
0
0

I have a USB 6003 DAQ produc tthat i am programming wiht DAQmx.  Is there a way to start an acquisition with a TDMS log and the change the sample rate of the device wihtout stoppping the acquisition or logging operations?

What is the best way to Sync Digital Output(TTL) with Analog Output?

$
0
0

I am trying to generate Analog waveform that synchronize the rising edge of a digital signal(TTL). The ttl will be used as trigger for camera. The board I have is USB-6343X. In my draft,  I used a clock as ttl so I can tune frequency easily. Could any one tell me what's the best way to accomplish such task? My draft seems working, but I hope there's more neat way. Thanks in advance for any help!

 

Kind regards,

Eric

How to generate an externally triggered analog output pulse with an amplitude that can vary from trigger to trigger?

$
0
0

Goal

 

I have an external trigger signal for an M-series PXI-6289 module and I would like to generate an analog output pulse each trigger. The amplitude of this pulse should be the cumulative sum of an analog input task running at a much higher frequency.

 

Problem

 

The M-series doesn't support retriggerable analog output natively but I was able to follow the example and use a counter to get the same behaviour. However, I can't see how to make it so the amplitude of the pulse in the example can be varied while the VI is running. I'm using LabVIEW 2011.

 

I'm a complete novice with DAQmx so I don't even know if what I want to do is feasible given the equipment I have. Any suggestions would be very much appreciated!

upgrade 6036e

$
0
0

is there an upgrade procedure for 6036e ?

We must replace a PCI 6036e daq card in an old labVIEW 8.6 system

 

 

WriteDigChan-ExtClk

$
0
0

Hello,

 

I ran the sample program

C:\Users\Public\Documents\National Instruments\NI-DAQ\Examples\DAQmx ANSI C\Digital\Generate Values\Write Dig Chan-Ext Clk, but got a message as below:

 

DAQmx Error: Requested value is not a supported value for this property. The pro
perty value may be invalid because it conflicts with another property.
Property: DAQmx_SampTimingType
Requested Value: DAQmx_Val_SampClk
You Can Select: DAQmx_Val_OnDemand

Task Name: _unnamedTask<0>

Status Code: -200077
End of program, press Enter key to quit.

 

I'm using USB-6001 and nothing is connected to it except usb cable.

Could you give any advice regarding this error?

 

Thanks!

Controlling Servo Hydraulic Motor by NI 9263

$
0
0

Hello everyone,

 

I have a 5-Axis simulator,  uses five "Global Servo Hydraulic 550" motor, and I want to control them with two NI 9263. I have cables with one end of MS3106F14S-2S  and one end of pigtail. Can someone help me and guide me through connecting these cables to my modules? I attached the picture of spec sheet for the termination head.

 

I really appreciate your help.

Best Regards,

Bardiya

Labview NI-Daqmx can't locate my Daq board

$
0
0

Im using a MicroDaq USB 1208LS, and am attemtping to monitor a pressure sensitive resistor using the "continuous measurement and logging" premade .Vi in labview. However the program doesn't recognize / can't locate the daq, even though both instacal and tracer daq can. Any help?


NI-DAQmx installation fail: NIMDFBINDIR is undefined

$
0
0

My installation o f NI-DAQmx fails with the following message

 

Fatal Error!! Required NIPathsDir property NIMDFBINDIR is undefined.

 

I have tried 9.8.0 and 14.5, both have the same issue. 

Running 32 bit Windows 7

Ideas?

 

ni 6229 bnc analog input

$
0
0

Hi all,

I have a pressure sensor with 2 cable.One is for power supply other is for signal.I have connected the + side of sensor to power supply +. And signal cable to ai0.I have to connect power supply - to analog input -.But i dont know how to do it.I am using ni 6229 BNC.Do i have to switch to FS to GS or must do something else?

Regards

how do i wire a sensor to my daq having pulse output

$
0
0

Hi all

I am using NI 6229 BNC DAQ and i have a flowmeter which is giving me pulse as output.

In attachment i am sending the datasheet of sensor.

 

How can i wire it to my daq

 

Regards,

Seyfi

counter task for pulse output

$
0
0

Hi all,

I have a sensor giving me pulse as output so i need counter task.I am new in labview and can you give me some examples and explain me spesifications of counter task?What are the things that need to be considered such as acquisition mode, 1D Pulse Time or 1D Pulse Frequency etc.

 

Regards

NI USB-X 6353 AO 0 generates signal unintentionally

$
0
0

Yesterday, while I was working with NI USB-X 6353, I realized that the analog output channel 0 generates voltage reluctantly. When I reseted the device, it started generating signal immediately again, even if I do not run any vi. I checked the other 3 AO channels and I see that they do not show the same behaviour. It is a weird situation I think. Is it a default feature for the AO 0 for this daq? If it is not, what could be the problem with the device?

Hysteresis measurement with metal plate

$
0
0

Hi, all. I have task to figure out. I want to measure Hysteresis of elastic coupling. For measure torque I have two strain gages on 90 degrees (NI 9237 Half Bridge II). After little calculation I now the torque. In another hand i mesure rotation angle of motor with metal plate with 52 tooth (gear). For rotation angle i use NI 9401 digital input. To bild hysteresis i have to now on every couted tooth the torque. I tryed example Multi-Function-Ctr Retrigg Pulse Train Generation for AI Sample Clock but always graf give me straight line. Can anyone help me with that? Is there more better example for me, or clips in internet to show me how to do it? Thanks previously.

error 50103 on USB 6251

$
0
0

When I added the bottom most program, I began getting this error. What do I need to do to make this program work? Any help would be greatly appreciated.

Thank you!

 


USB-6501 not seen by MAX

$
0
0

Hello all!

 

I have a PC running XP 2002 (SP3) with two USB-6501 DAQs connected to it.  I can see both devices in the DEVICE MANAGER under the heading "Data Acquisition Device" and both appear to have proper drivers installed.  They show their driver file versions as 2.3.1f0.  I also have NI MAX v4.6.2 installed on the computer.  But in MAX, I am unable to view any connected devices.  When I try and expand the "Devices and Interfaces" section, the MAX software goes into a not-responding state and when it finally does respond, I get the following message re-directing me to NI's website:

 

There was a problem connecting to the database.

 

Please restart your computer.  Refer to KnowledgeBase article 42HG08DD for more information

and contact National Instruments if the problem persists.  Go to ni.com now?

 

I was able to see the two DAQs in MAX on another computer with Windows7 installed and MAX version 14.

 

 

How can I set iex source and value? And what is this shift means?

$
0
0

캡처.JPG

 

We use accelerometer (PCB 352C34) with NI9234.

 

But we don't know about iex setting.

 

Also meaured data is shifted like screenshot. How can we remove this shift?

 

I'm sorry for my terrible english

Parallel thermocouples connected in NI 9213

$
0
0

Good morning,

How to connect to one of the channels, in module Ni 9213, five thermocouples connected in parallel to mesure the average temperatura of room? The others channls is occupied for other measurements.

I nedd to conncet compesation resistors ("swamping resistors") for each of the thermocouple wich are in parallel? How to calculate its values?

Thank

 

Channels got influenced by each other

$
0
0

Hi guys,

 

I'm quite new to LabVIEW, recently i'm setting up a small system to measure the pressure and temperature simultaneously. A PCI-6071E card is used, AI0 and AI1 are connected to pressure transducer and thermocouple output respectively. The actual voltages of the two channels should be 1.67 and 0.23 . When I activate only one input, both signals are accurate. But when I activate the two signals together, the pressure terminal reading is OK as 1.67, but the temperature terminal reading will increase to 0.26(but the actual voltage is still 0.23 as measured by multimeter), when i deactivate the pressure transducer, the temperature voltage will be 0.23 again.

 

Anyone can tell me why?

 

Cheers,

Pengcheng

Configure Quadrature encoder X4 of PCI 6259 in Xenomai

$
0
0
I'm currently working on a project where I must set up PCI 6259 in real-time Linux Xenomai, probably with analogy library. The development environment is C++ in QT. I manage to implement analog output with analogy, however, I find little resources, examples or online help about how to configure or read quadrature X4 encoder through analogy API in Xenomai. Could anyone give me an example code?  
 
FYI: I can make it work in RTAI Linux, with comedi library. The code is extracted and attached below to show how I configured the counter, in case it might help. I just want to do the same thing in Xenomai. Thank you in advance,
 
#include <comedilib.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>
#include <time.h>
#include <sched.h>
#include <sys/mman.h>
#include <string.h>
#include <time.h>
 
static comedi_t* pDevice = nullptr;
 
/**
 * @brief DAQ_InitDevice initialized the DAQ card PCI-6259
 * @return
 */
int32 DAQ_InitDevice()
{
    // If already created.
    if (pDevice != nullptr) return 0;
 
    // Create device
    char* pDeviceName = "/dev/comedi0";
    pDevice = comedi_open(pDeviceName);
 
    if (pDevice == nullptr) {
        qDebug("comedi_open");
        return -1;
    }
 
    // Set global out of range behavior    
    comedi_set_global_oor_behavior(COMEDI_OOR_NUMBER);    
 
    return 0;
}
 
/**
 * @brief DAQ_InitCounter_Sub
 * @param device: PCI-6259
 * @param subdev: represents counter subdevice
 * @return
 */
int32 DAQ_InitCounter_Sub(comedi_t *device, const int subdev)
{
    lsampl_t    initial_value;
    lsampl_t    data;
    lsampl_t    maxData_c;
    lsampl_t    counter_mode;
    comedi_range    *range_info_c;
 
    int a,b,z;
 
    int stt;
 
    // Reset counter
    stt = comedi_reset(device, subdev);
    if (stt<0) return stt;
 
 
    // Set counter mode
    counter_mode = (NI_GPCT_COUNTING_MODE_QUADRATURE_X4_BITS |
           NI_GPCT_COUNTING_DIRECTION_HW_UP_DOWN_BITS);
 
    range_info_c = comedi_get_range(device, subdev, 0, 0);
    maxData_c = comedi_get_maxdata(device, subdev, 0);
    initial_value = comedi_from_phys(0, range_info_c, maxData_c);
 
    /* set initial counter value by writing to channel 0 */
    stt = comedi_data_write(device, subdev, 0, 0, 0, initial_value);
    if (stt<0) return stt;
 
    /* set "load a" register to initial_value by writing to channel 1 */
    stt = comedi_data_write(device, subdev, 1, 0, 0, initial_value);
    if (stt<0) return stt;
 
    /* set "load b" register to initial_value by writing to channel 2 */
    stt = comedi_data_write(device, subdev, 2, 0, 0, initial_value);
    if (stt<0) return stt;
 
    stt = comedi_set_gate_source(device, subdev, 0, 0, NI_GPCT_DISABLED_GATE_SELECT);
    if (stt<0) return stt;
 
    stt = comedi_set_gate_source(device, subdev, 0, 1, NI_GPCT_DISABLED_GATE_SELECT);
    if (stt<0) return stt;
 
    if (subdev == 12) {
        // Left motor, counter 1
        // Set pin number
        a = NI_GPCT_PFI_OTHER_SELECT(3);
        b = NI_GPCT_PFI_OTHER_SELECT(11);
 
    } else if (subdev == 11) {
        // Right motor, counter 0
        // Set pin number
        a = NI_GPCT_PFI_OTHER_SELECT(8);
        b = NI_GPCT_PFI_OTHER_SELECT(10);
 
    } else {
        qDebug("Error: DAQ_InitCounter_Sub: No such counter %d !! \n", subdev);
        return -1;
    }
 
    z = NI_GPCT_DISABLED_GATE_SELECT;
 
    stt = comedi_set_other_source(device, subdev, 0, NI_GPCT_SOURCE_ENCODER_A, a);
    if (stt<0) return stt;
 
    stt = comedi_set_other_source(device, subdev, 0, NI_GPCT_SOURCE_ENCODER_B, b);
    if (stt<0) return stt;
 
    stt = comedi_set_other_source(device, subdev, 0, NI_GPCT_SOURCE_ENCODER_Z, z);
    if (stt<0) return stt;
 
    stt = comedi_set_counter_mode(device, subdev, 0, counter_mode);
    if (stt<0) return stt;
 
    stt = comedi_arm(device, subdev, NI_GPCT_ARM_IMMEDIATE);
    if (stt<0) return stt;
 
    return stt;
}
 
/**
 * @brief DAQ_InitCounter initializes two counters: the subdevice 11 & 12
 * @param pDevice: PCI-6259 device.
 * @return
 */
int32 DAQ_InitCounter(comedi_t* pDevice)
{
    const int subdev_counter0 = 11;
    const int subdev_counter1 = 12;
 
    int stt = 0;
 
    if(pDevice == nullptr) {
        qDebug("Error: No comedi DAQ device found!! \n");
        return -1;
    }
 
    // Init for counter 0: right motor
    stt = DAQ_InitCounter_Sub(pDevice, subdev_counter0);
    if (stt<0) return stt;
 
    // Init for counter 1: left motor
    stt = DAQ_InitCounter_Sub(pDevice, subdev_counter1);
    if (stt<0) return stt;
 
    return stt;
}
/**
 * @brief DAQ_ReadCounter reads counters' value. The device is defined by
 *        static pDevice; the counters are attached to subdevice 11 & 12.
 * @param data_left: raw data, output for left motor position
 * @param data_right: raw data, output for right motor position
 * @return status
 */
int32 DAQ_ReadCounter(lsampl_t &data_left, lsampl_t &data_right)
{
    const int subdev_counter0 = 11;
    const int subdev_counter1 = 12;
 
    int range = 0;
    int aref = 0;
    int channel = 0;    
    int stt = 0;
 
    if(pDevice == nullptr) {
        qDebug("Error: No comedi DAQ device found!! \n");
        return -1;
    }
 
    //
    // Read right motor position :
    //
    stt = comedi_data_read(pDevice, subdev_counter0, channel, range, aref, &data_right);
    if (stt<0) return stt;
 
 
    //
    // Read left motor position :
    //
    stt = comedi_data_read(Mechanism::mDevice, subdev_counter1, channel, range, aref, &data_left);
    if (stt<0) return stt;
 
    return stt;
}
Viewing all 6882 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>