Cold junction on SCXI with CVI

(Using SCXI 2000 chassis and 1200 DAQ, 1102 Thermocouple module):
Is it possible to read the cold junction temperature during the
same AIStartAcquisition loop in which you scan a number of channels?
i.e. can you use, for example the channel string
"OB0!Sc1!md2!cjtemp,0:11"
to acquire both the cold junction reading AND channels 0 to 11 ? Or do you
have to run two seperate Acquisitions simultaneously??

Hello Rabi,
Yes it's possible to read both the cold juntion and channels 0 through 11.
You would write something like this in the string:
"OB0!Sc1!md2!cjtemp,OB0!Sc1!md2!0:11"
I tried it a while back and I got it working. But I don't remember the exact
syntax of the
string. Let me know if this doesn't work for you.
Azucena
"Rabi B" wrote in message
news:[email protected]..
>
> (Using SCXI 2000 chassis and 1200 DAQ, 1102 Thermocouple module):
>
> Is it possible to read the cold junction temperature during the
> same AIStartAcquisition loop in which you scan a number of channels?
> i.e. can you use, for example the channel string
> "OB0!Sc1!md2!cjtemp,0:11"
> to acquire both the cold junction reading AND channels 0 to 11 ? Or do
you
>
> have to run two seperate Acquisitions simultaneously??

Similar Messages

  • Cold junction compensation

    Hello
    We have just bought a new NI card (PCI-6052E) connected to a terminal block
    (CB-68LP), and so we now have to set-up the cold junction compensation
    manually (previously we were using a SCXI-1303 which had it built in).
    I would just like to check that the method which we have devised will work.
    We are proposing to acquire a thermistor (with known temperature versus
    resistance behaviour) and put this in series with a resistor. We would then
    put a voltage across these two components and have the voltage drop across
    the thermistor as one of the inputs on the terminal block. In the
    Measurement and Automation explorer we will set up this channel(called
    "cjc") as being a voltage input and tick the box which says it is a
    temperat
    ure input. We then apply a scaling equation which converts this
    voltage into temperature.
    We then set up our thermocouple channels in the Measurement and Automation
    explorer, and in the CJC source box we say it is user-supplied and make the
    user cjc channel the one we made earlier ("cjc").
    Is this the correct method of doing this?
    Thanks!
    Jon Atkinson

    Hi Jon -
    I'll leave the details of the software to those more familiar with
    them. I will offer a bit of comment re. the thermister.
    Be a little careful with the thermistor approach. Thermistors suffer
    from self-heating problems so the value of resistor chosen is important
    to limit these effect.
    For a few cents more, it might be worth investigating any of the IC
    devices that supply a current or voltage proportional to temperature.
    There are also dedicated three terminal cold junction ICs that can be
    wired-in fairly simply.
    Sincerely,
    John
    "Dr Jon Atkinson" wrote:
    > Hello
    >
    > We have just bought a new NI card (PCI-6052E) connected to a terminal
    block
    > (CB-68LP), and so we now have to set-up the cold junction compensation
    > manually
    (previously we were using a SCXI-1303 which had it built in).
    >
    > I would just like to check that the method which we have devised will
    work.
    > We are proposing to acquire a thermistor (with known temperature
    versus
    > resistance behaviour) and put this in series with a resistor. We
    would then
    > put a voltage across these two components and have the voltage drop
    across
    > the thermistor as one of the inputs on the terminal block. In the
    > Measurement and Automation explorer we will set up this channel(called
    > "cjc") as being a voltage input and tick the box which says it is a
    > temperature input. We then apply a scaling equation which converts
    this
    > voltage into temperature.
    >
    > We then set up our thermocouple channels in the Measurement and
    Automation
    > explorer, and in the CJC source box we say it is user-supplied and
    make the
    > user cjc channel the one we made earlier ("cjc").
    >
    > Is this the correct method of doing this?
    >
    > Thanks!
    >
    > Jon Atkinson
    >
    >
    Sent via Deja.com
    http://
    www.deja.com/

  • Can I make a simple voltage recording when SCB-68 is configured for Cold Junction Compensation?

    Hi everyone,
    I am using a 6221 PCI card and SCB-68 connection module. I have set the SCB-68 module switches so that the 5 thermocouples I have connected between AI1 and AI5 are using the Cold Junction Compensation of AI0. Everything works fine.
    Could someone tell me if the differential inputs left AI6 and AI7 can be used for recording another kind of sensor (nothing to do with a thermocouple) ? I suppose I just need to set those 2 inputs to a simple voltage recording function? The previous switches settings enable to do this simple recording ?
    Thanks,
    User
    Solved!
    Go to Solution.

    Hi Bruce,
    Thanks for your answer and your advice. So I will use my free channels for other sensors. 
    Concerning your other remarks , I have planned setting the DAQ assitant at 100 samples and 1KHz for the thermocuples. Making an average of the 100 samples for each channel gives a good result from what I have seen in my last test. After this, with another DAQ assistant I am making some other kind of recording at another speed. I know this is not optimized using DAQ Assistant but loss of time and simultanity isn't a problem for me in this project.
    However if I had used only one DAQ Assistant for my thermocouples and for the other sensors, a part from the rate vs thermocouples problem, not having the same ranges could have been a problem?
    I also don't understand the channel order you mentioned. Still using a DAQ Assistant in what way would this effetc the measures?

  • 6016 cold junction setup

    I am trying to use the 6016 to measure temperature in a chamber. I am aware that there is no built-in compensation network in there. So, my reading is all over.
    I would like to use another thermacouple outside of the chamber as reference for the thermacouple that is inside of the chamer. I understand that the reference might drift a bit depending on the room temp, but at least it will be better than not using it.
    How can I implement this? I using the DAQmx Assistant to do this. And at the bottom, where I set up the CJC, I choose channel but what do I type in there? 14 since reference channel is 14. I keep getting message saying that where is no such channel.
    Or is there a better way to it? Can I place a know voltage in one of the ports to create a reference. Again, how to I tell the DAQ Assistance to use this as reference.

    On Apr 21, 7:27 pm, hrh1818 <[email protected]> wrote:
    > On Apr 21, 2:10 pm, randyram <[email protected]> wrote:
    >
    > > I am trying to use the 6016 to measure temperature in a chamber. I am aware that there is no built-in compensation network in there. So, my reading is all over.
    > > I would like to use another thermacouple outside of the chamber as reference for the thermacouple that is inside of the chamer. I understand that the reference might drift a bit depending on the room temp, but at least it will be better than not using it.
    > > &nbsp;
    > > How can I implement this? I using the DAQmx Assistant to do this. And at the bottom, where I set up the CJC, I choose channel but what do I type in there? 14 since reference channel is&nbsp;14. I keep getting message saying that where is no such channel.
    > > &nbsp;
    > > Or is there a better way to it? Can I place a know voltage in one of the ports to create a reference. Again, how to I tell the DAQ Assistance to use this as&nbsp;reference.
    > > &nbsp;
    > > &nbsp;
    >
    > With you 6016 located outside of your chamber and your thermocouple
    > located inside your chamber connecting a second thermocouple located
    > outside the chamber to your 6016 will not gain any thing. The output
    > from a thermocouple is proportional to the difference in temperature
    > of the two junctions. In the setup you propose the two junctions will
    > be at the same temperature and will produce approximately zero output
    > voltage.
    >
    > If your room temperature variation is relatively small you could
    > insulate the terminals of your 6016. The object of the insulation is
    > to dampen short term temperature excursions. Another possibility is
    > to use a temperature controlled oven to maintain your reference
    > junction at a constant temperature. Frequently these ovens are
    > operated at 150 degree Fahrenheit. A third possibility is a self
    > powered reference junction. See.http://www.omega.com/ppt/pptsc.asp?ref=LXCJ&Nav=temk03
    >
    > Howard
    Another possibility is to use a semiconductor temperature sensor to
    measure the temperature of your cold junction and then use the output
    of the sensor to compensate your thermocouple readings for room
    temperature variations. See:
    http://www.temperatures.com/semivendors.html for a list o vendors who
    manufacture semiconductor temperature sensors.
    Howard

  • Usb-tc01 cold junction noise?

    Hello,
    I am using USB-TC01 thermocouple devices a lot from NI, and I have a practical question.
    The scenario: I "Peltier-control" an electrical cabinet's (1 cubicmeter) temperature, I measure the temperature with the above sensor. I feed this value into a PID VI, which is driving a current source connected to Peltier-modules.
    Sampling rate (also for PID) is 1 second. I can reach pretty nice temperature stability, between 0.02 - 0.04 Celsius standard deviation calculated from 600 samples. I have tuned my PID using the Ziegler-Nichols rules.
    So basically I am satisfied, but one thing I notice on the measured USB-TC01 signal. It sometimes, randomly "jumps" up and down, with an amplitude of ~0.05 Celsius. Is this the effect of the cold junction compensator? I have attached a figure to show what I mean.
    Sometimes, for certain intervals, which can be even like 10 minutes, I do not see these "jumps". In these intervals, the stability reaches +-0.02 Celsius.
    Including the noisy parts, the stability drops with a factor of 2 (+- 0.04 Celsius).
    I guess this does not mean real jumps in the real temperature, so this is an artifact. My question is that, do I need to filter these jumps somehow to have an even better PID, or am I already at the practical limit using this sensor? I tried to put a FIR filter before the PID VI, but I did not notice a significant improvement...
    Thanks for advice!

    well, i have managed to test another sensor (the sensor which gave the posted data is recently used and running, cannot take it) in a less noise environment. I see continuous noise, with a pp amplitude of 0.05 degrees, what is a value specified for the sensor as you mentioned previously. Maybe the first sensor is defect in a way, it sometimes has less baseline noise?
    Actually it is an interesting question: NI produces a lot of these sensors, and I guess they state the "worst possible" noise value in the spec. papers. What about if a certain number of the sensors are better? Well, I have no idea if this makes any sense...
    when I have the chance, I will take the first sensor to the same less noisy location, and I will compare them. I am very interested what I will see...

  • Does Office 2007 work with CVI automation

    We've used Office with CVI with varying degrees of success over the years, typically to generate reports or to populate excel spreadsheets with measured data.
    Now I'm running XP SP3 and Office 2007 with CVI 2009.
    Office 2007 seems to be so significantly different from previos versions, I'm wondering if it's use is supported with CVI?
    CVI 2009 still refers to "Excel2000.fp" for example, will it work with Excel 2007?  The help mentions that it will work with "Excel 2000 and later compatible versions". 
    In the past as I recall NI's position is "maybe, but if it doesn't, it's not our fault".
    So I thought I'd ask and see what the experience has been.  I can install an older version of Office if need be.
    Menchar
    Message Edited by menchar on 06-10-2010 10:18 AM

    FWIW, we have been using "excel2000.fp" for years (with a few thousand users) and it still seems fine for simple exporting of data to Excel 2007. 
    I think it all boils down to the Excel object model and whether there have been changes related to the functionality you wish to use.
    --Ian
    Message Edited by Ian W on 06-14-2010 09:51 AM

  • Network-Shared Variable - read string with CVI

    I need to read an NSV string with CVI.  I have been digging into accessing and writing NSV with CVI, but they are all scalar value.  What should I do with strings, clusters and arrays?

    'm an employee at National Instruments and I wanted to make sure you didn't miss the Network Variable API that is provided with LabWindows/CVI, the National Instruments C development environment. The the Network Variable API will allow you to easily communicate with the LabVIEW program over Shared Variables (http://zone.ni.com/devzone/cda/tut/p/id/4679). While reading these links, note that a Network Variable and a Shared Variable are the same thing - the different names are unfortunate...
    The nice thing about the Network Variable API is that it allows easy interoperability with LabVIEW, it provides a strongly typed communication mechanism, and it provides a callback model for notification when the Network/Shared variable's properties (such as value) change.
    You can obtain this API by installing LabWindows/CVI, but it is not necessary to use the LabWindows/CVI environment. The header file is available at C:\Program Files\National Instruments\CVI2010\include\cvinetv.h, and the .lib file located at C:\Program Files\National Instruments\CVI2010\extlib\msvc\cvinetv.lib can be linked in with whatever C development tools you are using.
    Thomas N.
    Applications Engineer
    National Instruments

  • Remote Debug problem with CVI Runtime Versions.

    Development Platform - CVI Version 8.5.1
    Target has DAQmx 9.4 installed on it along with CVI Runtime Engine ver: 9.1.0.428
    Developmenrt Platform was recently upgraded to DAQmx 9.4
    Re-installed CVI RTE (ver 9.1.0.428) on Development Platform - even though it was already installed.
    I keep on getting this error message on the Target system "The LabWindows/CVI Run-Time Engine on the target is more recent than your Lab Windows/CVI environment.  You have to upgrade the Lab/Windows environment if you want to debug your application."
    Both systems (Development Platform & Target) have the same versions of CVI RTE and DAQmx.  I have done a complete re-compile of the application .exe that I am trying to excute on the Target.  I have re-installed CVI RTE on the Development Platform.
    What is wrong here? 
    Solved!
    Go to Solution.

    LabWindows/CVI Environment == Development platform.
    I.e.: you must either downgrade the runtime engine on your target to match the existing 8.5.1 of the debugging machine or upgrade CVI installation on the development machine to match the 9.1 on the target (if I'm not wrong 9.1 means CVI 2009 SP1). The two machines must have the same version or the debugging machine must be more recent than the target one.
    Proud to use LW/CVI from 3.1 on.
    My contributions to the Developer Zone Community
    If I have helped you, why not giving me a kudos?

  • Display a sequence in sequenceview activx control with CVI

    Hello,
    I am trying to display a teststand sequence in an activX sequenceView control for an user interface made with CVI. I had a look on the example of national intrument  (...teststand\UserInterfaces\NI\Simple\CVI) but my application is not exactely the same because all buttons are not ActivX controls.
    So I try to display the sequence with this command:
    TSUI_SequenceFileViewMgrSetByRefSequenceFile
    but when i execute i have an activx error : File was unloaded from the test stand engine.
    Can someone help me or having some example to help me.
    Thank you
    Regards

    Hi ,
    There is another example on our web site (http://zone.ni.com/devzone/cda/epd/p/id/3550), with this one you can select on the menu the sequence, and after run it.
    You can adapt it, if you seearch the funciton on the source code.
    regards,
    Christophe S.
    FSE East of France І Certified LabVIEW Associate Developer І National Instruments France

  • Has anyone been able to use a DataTransl​ations Frame grabber with CVI? I am trying to use a DT3152 in place of NI1408 frame grabber...

    DT does not provide drivers for this hardware to interface to CVI or LabView. Has anyone had success?

    you can find a LabVIEW driver at:
    http://www.imagemill-tech.com/LvDrivers_.htm
    "Blue" wrote in message
    news:5065000000080000006F1D0000-986697009000@quiq.​com...
    > Has anyone been able to use a DataTranslations Frame grabber with CVI?
    > I am trying to use a DT3152 in place of NI1408 frame grabber...
    >
    > DT does not provide drivers for this hardware to interface to CVI or
    > LabView. Has anyone had success?

  • DAQ 6.6 and 6.9 with CVI

    With CVI 5.0, I used NI-DAQ to create a library (recognize, read and write I/O board) and a software using this library. When I use the software on a computer where the board has been configured with NI-DAQ 6.6, the board is not recognized (I have an error code more than 10000). Need help to make the versions compatible. Thanks

    I don't really understand your problem, but there is some pieces of advice.
    The first thing to validate is that the card is properly installed on the target PC.
    Before pluging in the card, you need to install the NI-DAQ device drivers with a version compatible with your OS and your card. When pluged, your card must appear under MAX and must pass the ressources test.
    Once you are sure that the card is correctly installed, you can distribute your application to the target PC. Traditionnal NI-DAQ functions prototypes didn't change from NI-DAQ 6.6 to NI-DAQ 6.9. No matter the version is installed on the target PC, 6.6 and 6.9 are compatible. Your application should be operationnal.
    If you still encounter problems, please give me the following elements
    - the card reference,
    - the target OS,
    - the NI-DAQ version installed on the target PC,
    - the error code that is returned.
    I'll answer you as soon as possible.
    Benjamin CHARLES
    Applications Engineer
    National Instruments France

  • I get the following errors with CVI 2010. "sal.h"(17​06,15) Redefiniti​on of macro '__null'.

    A project which was working with CVI 9.0 on XP does not compile with CVI 2010.
     I get the following errors with CVI 2010. "sal.h"(1706,15)   Redefinition of macro '__null'.  
    doesnt work with CVI 2010 on on win 7 too.  
    Could some one provide some insight into this please?  
    Thanks
    performance

    You wild guess is correct.
    The version of the Microsoft SDK that shipped with CVI 9.0 included a definition of __null that matched the definition that is in sal.h. You can find this definition in line 448 of CVI90\sdk\include\specstrings.h.
    The version of the Microsoft SDK that shipped with CVI 2010 included a definition of __null that no longer matches the definition that is in sal.h. You can find this definition in line 575 of CVI2010\sdk\include\spectstrings_strict.h. This is why the CVI compiler complains when it finds the sal.h definition.
    The SDK that ships with CVI has been customized to make sure that it works with the CVI compiler. But this does not include making sure that it also works with VC headers. In general, there's no way to guarantee that VC headers can be compiled in CVI, since these headers don't ship with CVI and cannot be customized.
    In this particular case, you might get it work if you include sal.h before you include windows.h. But there are no guarantees.
    Luis

  • Using 3 sets of NI9162+NI9263 with CVI

    I am looking to use 3 sets of NI9162+NI9263 with CVI, outputing 12 analog lines.  The example I find only has 1 line.  Please help.
    The example I look at is:
    .....NI-DAQ\Examples\DAQmx ANSI C\Analog Out\Generate Voltage\Cont Gen Volt Wfm-Int Clk

    I need help again.  In the [ MultFreqContGen-IntClk.c ], this line does the configuration of the task:
    DAQmxErrChk (Configure_ContGenPerWfmIntClk (chan, min, max, rate, &numChannels, &taskHandle) );
    Inside the Configure_ContGenPerWfmIntClk() function, which is found in [ MultFreqContGen-IntClk_Fn.c ], this line gets the number of channels and writes that to the pointer numChannels:
    DAQmxErrChk (DAQmxGetTaskAttribute (*taskHandle,DAQmx_Task_NumChans,numChannels) );
    Is the number of channels not supposed to be determined outside and assigned to the child function?  The parent function should have this number from all the user-input values.  Why am I seeing the child function deciding the number of channels.  I do not understand this.

  • How to do Cold Junction Compensati​on using USB-6218

    I'm pretty certain that the DAQ itself doesn't have a built in thermistor for CJC so I wanted to see if I could potentially use an extra thermocouple to account for it. The whole purpose of this section of the DAQ program I'm building is to measure engine temperatures. Can I use an extra thermocouple that isn't measuring anything for cold junction compensation?

    Ok so I tried messing around in MAX and I see where you can set up a channel
    for CJC. There’s only one problem. I’m not sure how to set up the CJC
    thermocouple. For the other thermocouples I see where I can set the CJC Source
    to CJC Channel and then select a MAX task.
    I’m not sure how to set up the CJC task. I go to create new task – Add Channel
    – Thermocouple – Select Channel – and then choose the channel that the
    thermocouple is wired in to. Now I have the follow options that I set.
    Max – 100 deg C
    Min – 0 deg C
    Thermocouple type – K
    CJC Source (I have three options)
    Built-in
    Constant – specify constant CJC value
    CJC Channel – specify channel
    I’m not sure which of these three I should pick when setting up the CJC thermocouple.

  • Creating CIN with CVI

    When I try to create a DLL to be used as a CIN with CVI, I get linker errors
    that point to the
    cin.obj file.
    _CINRun is undefined.
    I have gone through the steps outlined in cvilvsb.h and followed them exactly.
    the
    only other issue I am unsure of is the #pragma pack which is enveloped around
    struct definitions which I have not defined any structures.
    If anyone could give me a quick step by step on what i may be missing, it
    would be
    appreciated.

    Edwin wrote:
    > When I try to create a DLL to be used as a CIN with CVI, I get linker errors
    > that point to the
    > cin.obj file.
    > _CINRun is undefined.
    >
    > I have gone through the steps outlined in cvilvsb.h and followed them exactly.
    > the
    > only other issue I am unsure of is the #pragma pack which is enveloped around
    >
    > struct definitions which I have not defined any structures.
    >
    > If anyone could give me a quick step by step on what i may be missing, it
    > would be
    > appreciated.
    It appears to me that you are trying to do two very different things here.
    It has be a long time since I did CINs though, so I could be mistaken.
    A DLL is something you can call directly from LabVIEW using the "Call Library
    Function"
    This is usually a large collection of functions
    and must be compiled specifically
    as a DLL
    A CIN on the other hand is a small piece (usually) of C code that is compiled as
    an object
    file (by an external compiler) and then incorporated into LabVIEW using the "Code
    Interface Node"
    If you start with a new VI , drop a CIN on the diagram, right click on the
    CIN and select "Create .c file"
    you will see that it creates a skeleton piece of C code. The main function will
    be CINRun
    This MUST be in a CIN for it to work properly.
    I suggest you look at the Code Interface Reference Manual. While it may be
    possible to call
    a DLL from inside a CIN I do not believe that you can make a DLL and and use the
    Code Interface Node to call it.
    Kevin Kent

Maybe you are looking for

  • Error installing KB2855336-x64 patch on Windows 8 64 bit machine

    Hi I am trying to install KB2855336-x64 patch on my windows 8 machine. The installation is getting failed while installing through automatic updates as well as manual installation. When I checked WindowsUpdate.log file, I saw below message. Is there

  • ***********Itunes= Fatal error!!!*************

    i recently bought a Aspire 5515 (WOOPS!) which apparently are total garbage and im unable to install most things like virus scans, but that is beside the point. Itunes is the most frustrating for me because i just bought an iphone. What occurs is whe

  • "Filter/partition key" for full-text searching

    Hi there, We have a challenge whereby we have a table of products by store, each store having say 200,000 products.  Basically, for each store, we want to allow searching by product name.  The best solution for this is to have full-text searching, bu

  • Veeam backing up a passive DAG member with an active Public Folder DB on it.?

    Hi, Anyone here using VEEAM 7 to backup exchange 2010 sp2 (yes.. I know)? We have a DAG with two nodes. They are VMware machines. We are having issues with the backups. Specifically getting many many vss writer timeouts when snapshoting the machine a

  • Black screen with Distortion - Macbook Pro (Retina 15 inch Late 2013)

    Hello. I don't know much about computer problems like this, hence why i'm here but yesterday my Macbook Pro started to get pixel size flickering snow with some flashing horizontal lines. It kept functioning fine although this was happening.  Then lat