Virtual Channel Device Memory

I can calibrate a NI analog in DAQ card.  I calibrate it so that 1volt in is read at be 1.00000000000 in the software.  If I take that card to another computer it keeps that calibration information because it is stored in the card in EEPROM (or something).
I was having a discussion with someone today and they asked the question.  Can Virtual Channels be stored in the device it a similar to calibration?  The answer (as far as I know) is no you can't, but is there a reason we can't?  I realize the non-volitile memory on the card may be small but is this a feature NI has ever thought about?  Seems like a good idea to have the option to bring along any scaling and channel information with the card to a new PC.
Unofficial Forum Rules and Guidelines - Hooovahh - LabVIEW Overlord
If 10 out of 10 experts in any field say something is bad, you should probably take their opinion seriously.

Hi Hoovahh,
Yes you are right we cannot currently store virtual channels on a device but that is because they are a software configuration not a hardware configuration. It is an instruction that tells the drivers how to interpret the data being read off the buffer before it goes into LabVIEW. You can save tasks in MAX which contain scaling and channel information but you are right as of now we have no capability to save the virtual channel.
Regards,
Basil
Applications Engineering
National Instruments

Similar Messages

  • About virtual channel in different device and/or different type channel

    Hi all,
      I am looking for a way to write to several analog channels at the same time. In my code, I didnt' pay much attention to that, I just have them placed in the the same frame in the flat sequence such that they might be started to write simultaneously. However, sometimes they might not working perfectly. I am reading something on DAQmx and I found that there is something call virtual channel so I have put more than 1 channel into a unit (called virtual cahnnel), so I can write something to it at the same time. Here are my question
    1) what's the different between virtual channel and channel group? If I write a array of 3 elements to a channel group (consists of dev1/ao1, dev1/ao2 and dev1/ao5),  am I writing to channel group or virtual channel?
    2) can I bind different channels from different devices to form a virtual channel, e.g. dev0/ao0 dev1/ao0 dev2/ao0?
    3) can I bind different type of channel to form a virtual channel, e.g. dev0/ao0, dev0/port0/line0?
    4) last question is about synchronization on writing to a virtual channel (or channel group?) Last say I have a pulse train each pulse is separated in time by 1.2ms and total time is 122.4ms. The pulse train will be sent to dev0/ao3, and at 12ms after start send very first pulse of the train, I need to write two analog signal to dev1/ao1 and dev1/ao5. In my current code, create a flat sequence, start the task for sending the train in the first frame, put delay in second frame and delay for 12ms, write dev1/ao1 and dev1/ao5 in the third frame. For some times, this gives me acceptable timing but not always. I wonder how does it help to use virtual channel?
    In the similar situtation, what about if instead of writing to two analog channel, I write to one analog channel and one digital channel?
    Thanks.

    1) virtual channel is created per task and contains a collection of settings such as a name, a physical channel, input terminal connections, the type of measurement or generation, and can include scaling information.. A virtual group is specific to digital IO and has to deal with the way you read/write data off/to the port
    2) yes you can create a task with physical channels from multiple devices assuming they are comparable writes (ie all analog or all analog read, or all digital) but they will have the same channel characteristics (see answer above)
    3) no you cannot create a task that handle an AO and a DO from with in the same task
    4) if you created a task you are using a virtual channel. The only way to ensure timing is to use hardware timing (ie onboard sample clock of you DAQ card) otherwise the reads/writes are basically interrupts and you are at the mercy of the OS to service the interrupt request
    if you need more information please repost with more questions, include your DAQ hardware, and any code pictures to give us a better idea of what you are trying to accomplish and how you are going about it
    Applications/Systems/Test
    National Instruments | AWR Group

  • How can I creat virtual channel and traditional devices while my card installed,I can not do?

    I installed PCI-6220 card,and I also installed DAQmx and Traditional DAQ in my computer,
    but I cannot creat virtual channel at the last step(attachment:TDAQ6220.jpg).
    Maybe this is the reason I didn't creat traditional NI-DAQ Device,but I can not creat it.
    (see attachment: DAQ Device.jpg,there is no PCI-6220 on list).
    What's wrong?What shall I do?
    Junwei You

    Hello Rainer,
    You can see this attachment(6024E.jpg),the 6024E card appears on Traditional NI-DAQ Devices,
    but I don't know how can it be created(I don't creat it,we buy the whole system together with the machine).
    I tried create a new traditional Device(I want to confirm 6024E), but still I can not see any NI-DAQ device in traditional NI-DAQ device
    lists. See the 'Create New....' interface.How can do it?
    Thanks!
    Attachments:
    6024E.JPG ‏128 KB

  • Error 10403 in Virtual channel Test Panel, but test pannel for device works fine

    I am using a simple 10x probe attatched to the NI5112 PCI card. When the device is tested under the devices and interfaces part of MAX, I get the scope input, when I test the virtual channel for the scope, i get error 10403. How can i resolve this?

    The reason you get that error is that virtual channels are not supported with our high-speed digitizers. Only devices that can be programmed directly with NI-DAQ support virual channels. The legal way to address a high-speed digitizer is by using DAQ::N, where N is the device number in MAX.

  • How do I save the virtual channel list of a task to a tab-delimi​ted text file

    I have created my data acquisition application which will save the analog inputs of the channels into columns of a text file.  Now I would like to save the names of the virtual channels in the header of the file so that couple months down the road I will have no problem of knowing which column is which.  How do I do it?
    The way I set my application up is that the task is set up in the Measurement and Automation Explorer.  In the LabVIEW program, there is an control I can pick the task I want to use, and the rest of the program will pull the necessary information based on the task chosen.
    Thanks in advance.

    Hi
    You can use a Task node located in Measurement I/O -> NiDAQmx -> Task config-->> Task node to get the devive name of the virtual channel. You can a for loop to get each individual device name and build the array of device name and analog input into one array and then write this to a text file.
    Regards,
    Nitin

  • Errors in Creating Virtual Channel

    I am creating a IVI switch driver. The driver passes the IVI Specific Driver Suite 2.2 and IVI Switch SFP testing. When I try to create the virtual channel the device is found (created IVI Logical Name and other fileds) but the channels displayed are empty on the Channels/Exclusion tab. What calls are made when creating the virtual channel? I want to create a CVI or TestStand program to simulate the sequence that Switch Executive performs.
    When validating a configuration, are all possible channels used in SetPath loop? As an example, if three channels are defined (Front, rear, & base) but only the front->base, rear->base, base->front and base->rear are valid configurations. Will the vaildate try a front->rear configuration? Will a disconnect call be placed in between each SetPath call?
    Thanks.
    Randy

    Randy,
    Although you cannot step through the NISE engine, you can step through your driver's code and debug its behavior. If you have problems with importing IVI virtual name into switch executive virtual device, then what you need to do is select nimax.exe as the process to debug and run it with the debug version of your driver. If you were using CVI, you can set the external process under Run>>Select External Process. If you're using MSVC, you can choose "open project" and browse to nimax.exe and then add symbols for your driver DLL in the project settings.
    The entry points to monitor (for your particular problem) are the ones that deal with getting the number of channels and getting individual channel names and their attributes. Make sure that your driver returns the correct number of channels and that it also returns all these channel names correctly. If you see no error in switch executive (I.e. it just says OK after you import your ivi logical name), then my guess is that your driver returns 0 for the number of channels.
    Please be aware that switch executive exercises much more than any of the IVI clients you mentioned. Yet it does not go "through the back door" for anything, it (obviously) uses public entry points in the driver to perform what it needs to do.
    So, you can start by setting up debug project in your favourite environment, and check the behavior of the following functions in your driver:
    getting the IVISWTCH_ATTR_CHANNEL_COUNT attribute
    IviSwtch_GetChannelName (with your prefix, of course)
    and see if those work. My guess is that something is not working correctly between these two functions.
    Let me know
    -Serge
    Srdan Zirojevic

  • How can I get properties of global virtual channels using DAQmx?

    I'm using DAQmx with VB6. In my app, I would like to be able to present the user with a list of available predefined channels to select from. I can use DAQmxGetSysGlobalChans to get a list of the channels, but I need a way to sort out which of these channels are defined as inputs, and which are outputs. It would also be nice to be able to query other properties of the virtual channel (for example, the device and physical channel being used). These all seem very simple things, but I haven't found anything like this in the documentation so far.
    Thanks.

    Try using  DAQmxGetChanType(TaskHandle taskHandle, const char channel[ ], int32 *data)DAQmxGetChanType(TaskHandle taskHandle, const char channel[ ], int32 *data).  This will return one of the following types:
    DAQmx_Val_AI
    10100
    Analog input channel.
    DAQmx_Val_AO
    10102
    Analog output channel.
    DAQmx_Val_DI
    10151
    Digital input channel.
    DAQmx_Val_DO
    10153
    Digital output channel.
    DAQmx_Val_CI
    10131
    Counter input channel.
    DAQmx_Val_CO
    10132
    Counter output channel.
    Let me know if this works. 
    Regards,
    L. Allen

  • Mysterious 'android' folder in device memory that cant be deleted

    hi... i have a bb q5 and been using it since 2-3 months now... there is an 'android' folder that appears in the 'misc' folder of the device memory. i cant get rid of this from the bb file explorer as well as from the laptop. when i try to del it, it say permission denied. i guess it started when one of my friends used my sd card in their android based phones. this folder contains all those folders that are there in the device memory like photos, camera, music etc. and some other folders like dcim, notifications. sometimes it shows 11 items inside and sometimes 12 or 13. i dont know if it's a bug or something but it seems quite irritating as it contains nothing space wise. i cant del it from my laptop bcos when i press del, nothing really happens and its still there... so pls can anyone help get rid of this...

    It's my understanding that folder is there for access by the Android runtime software.
    Leave it.
    1. If any post helps you please click the below the post(s) that helped you.
    2. Please resolve your thread by marking the post "Solution?" which solved it for you!
    3. Install free BlackBerry Protect today for backups of contacts and data.
    4. Guide to Unlocking your BlackBerry & Unlock Codes
    Join our BBM Channels (Beta)
    BlackBerry Support Forums Channel
    PIN: C0001B7B4   Display/Scan Bar Code
    Knowledge Base Updates
    PIN: C0005A9AA   Display/Scan Bar Code

  • Troubles with virtual channels

    I programm my applications on an PC without any NI-Hardware. My problem ist, that I need virtual channels from the Measurement&Automation-Explorer.
    My first attempt was, to configure some channels without settings for hardware. Normally when I use an DAQ-Constant in my application, I could select the configured channels. In this case I couldn´t.
    My second attempt was, to use two PCI-DIO96 cards. I configured also some channels, but I get the same result. I couldn´t select the configured channels in LabView(6.1)
    Did I need the complete extern hardware, or is there another reason for my problem?
    Best regards
    Robert

    Robert;
    Virtual Channels only make sense when used in conjunction with a DAQ device. If you don't have a DAQ device, Labview won't recognize that Virtual Channel as a valid one.
    Regarding the PCI-DIO96 boards, make sure you installed those properly, before creating the Virtual Channels for it. If they are not installed, you will fall into the same issue as if you don't have a DAQ device on the machine.
    Regards
    Filipe A.
    Applications Engineer
    National Instruments

  • Duplicating a CTR Global Virtual Channel in MAX does not update the CO.Pulse.Term setting

    Hi, 
    Here is the issue description:
    MAX version: 4.6.2f1
    daqmx:  9.0.2
    Hardware: cDAQ-9178 , NI-9474 Digital output.
    For this module one has:
    crt 0 out  <--> PFI3 
    ctr 1 out  <--> PFI7
    crt 2 out  <--> PFI1
    ctr 3 out  <--> PFI5
    1. In MAX create a Global Virtual Channel as a CTR output on ctr0.
    2. use the Duplicate in the menu to create a second counter output. Change its name, and change it ctr output to ctr 1 OUT.
    3. In MAX, the Pulse Output Setup pane should reflect the change by showing the ouput terminal pointing to the proper PFIi
    4. Export the settings to an INI file, and look at the CO.Pulse.Term settings for both CTR channels: they will both appear with the SAME PFIi !
    5. Using LabVIEW Write a vi that generate pulses on these 2 channels , you will get Error -89137 saying a PFIi resource is already used. If you look at the Task property CO.Pulse.Terminal, it returns the same for both tas, which is the same error seen in the ini file.
    Can someone at NI check this? Thx.
    Laurent
    PS: I posted this message in the LabVIEW board as I did not find one for MAX
    Solved!
    Go to Solution.

    Hi Laurent,
    I verified this behavior with DAQmx 9.1 and a simulated device.  I will file this as a Corrective Action Request (CAR). Creating the channels manually works correctly and produces the correct .ini file.  Sorry for any inconvenience this may cause.
    Regards,
    h_baker
    National Instruments
    Applications Engineer
    Digital Multimeter Resources

  • Do I really need to create virtual channels in data neighborhood in order to access my pci 6034E?

    Hello all,
    This may sound a little weird, but I would like to know how to configure my 6034E without having to create virtual channels in data neighborhood. Reason being, the data is often lost when users update or search for new instruments in Measurement and Automation.
    I have tried using the AI CONFIG.VI, which gives me all the attributes I need...set channel name, device name, device channel, input mode, sensor/actuator type ect..  When I connect the AI READ.VI the value read back is incorrect. Matter of fact as an exapmle, the power supply could be off and I still read 10 Volts. But when I have created a virtual channel in data neighborhood, the data read back is correct.
    Is there another way to read back data but not have a virtual channel in the data neighborhood?
    Thanking you in advance,
    Demo

    Duplicate post

  • How can I get an invidivual Virtual Channel name without having to pick through an array of all channels?

    I see "Get DAQ Channel Names.VI" and "Get Channel Information.VI" but I just want to get the name of just channel 0, or just channel 1. Is using an array of all channel names the only way I can do this?
    I have Labview 6.1.
    THANKS!!!
    Lauren

    Lauren,
    Yes, currently that is the best way to go about accomplishing that. I attached a little VI that demonstrates a very basic way of finding the first virtual channel that uses device channel 1.
    Ames
    Applications Engineering
    National Instruments
    Attachments:
    Find_First_Channel_1_Virtual_Channel_Name.vi ‏27 KB

  • Daqmx Create Virtual channel timeout

    Why almost a minute and a half to get an error message from daqMX Create Virtual channel VI.
    I need to find a way to have my executable bleep immediately if the underlying drivers are not installed.
    For example, I have LV at home and supposedly have the drivers installed too but no hardware connected.
    Sometimes I run a that uses daq, however when it encounter Creat Virtual Channel VI it appears to hang for a minute and a half before finally giving an error.
    Anyone else been there, done that?
    Thanks

    Thanks for replying D-cubed.
    Actually Im calling create virtual channel in a state machine to set up the data acquisition.
    When using on a machine that has a daq device installed its a piece of cake.  no sweat.
    However, when I am at home I have LabVIEW but possibly either no daq drivers or no daq hardware.
    I believe it may be the second case since I can place a task on the BD so, I will assume the drivers are installed correctly.
    There is just no daq hardware in the system.
    WHen the create virtual channels Vi is called the PC appear to hang because that VI is executing internally (looking for a device I presume).
    The timeout takes 1.5 mins and if not for me waiting the PC would appear to be hung up.
    Finally some 'Mig error' message appear contact Ni about and so on.
    WHat I am trying to do is have my program error out immediately instead of 1.5 mins later that there is no Daq device in the system.
    Thanks again

  • Q: Why do "virtual channels" mysteriously disappear?

    I am a newbie to Labview 6i and have been encountering a recurring problem.
    I have been using the sample VI "Getting Started Analog Input.VI" as a
    sample to practice basic techniques by making incremental changes and
    observing the results. The first subVI in this block diagram is AI Config.VI
    which requires an input "I/O" which tells it which channel to use.
    Supposedly, I can simply enter a list such as 0,1,2,3 etc and have this
    interpreted as aich0, aich1... of the specified device, but the only way I
    have found to get the program to work is to create a "virtual channel" in
    Measurement And Automation Explorer. If I do this, I can get then choose the
    virtual channel and VI will run.
    The problem that I cannot figure
    out is that every now and then, all the
    virtual channel information is deleted and must be recreated. I can't see
    what it is I am doing that causes this to happen, maybe I'm clicking when I
    should double click or something, but it sure is frustrating. I was just
    running it a minute ago and they were there at the beginning of the session
    and at some point just disappeared without ever acutally running a VI.
    Any ideas would be greatly appreciated.
    Jon Juhlin
    [email protected]

    Jon;
    If you right click at the channel control and select the option named "allow undefined names", you will be able to type in the channel number as well as select the virtual channel.
    Hope this helps.
    To avoid the virtual channel to be deleted you can choose the option to save the configuration file in MAX. That will save all your channels to one file and everytime you open MAX, or try to access the virtual channels in Labview, the ones you created will be there.
    Hope this helps.
    Filipe

  • Set value of virtual channel

    Pardon the seemingly trivial question, but how do you set a DC value of a virtual channel. The way I have it set up right now, the channel's value is unpredictable and constantly changing

    Hi Justin:
    If the analog input channels do not receive voltage, they will float and give unpredictable values. To get around this, you should ground the unused channels to make them read constant 0V when scanned.
    For analog output channels, reset the device using the reset device VI and that will make the channels output 0V.
    Penny

Maybe you are looking for

  • Payment wizard does not allow to increase Document Amount

    Hi Experts, I'm am trying to overwrite document amount in step 6 of Payment wizard but in SAP Business One 9.0 PL 11 is not possible to increase the original Amount of Document, it is possible only to overwrite with a minor amount. Is that correct ?

  • How to track changes in a custom table and based on that run an interface

    I have an interface. The pre-condition for running the interface is "Run the interface only if there is new entry added to the table( a custom table). Now I have created a change document object using tcode SCDO for the custom table. Now how do i pro

  • How to change the image dynamically depend upon the input parameter

    Hi All I have one report running depend upon the Organization specific, I have 15 operating unit and 15 different logo for each operating unit. How to change the Logo dynamically depend upon the input passed by the user. If I have three or four logo

  • Crystal report based on BW query with two structures

    Hi, I use a BW query with 2 structures. In the rows there is a structure of restricted characteristic 0material. I used this characteristics several times in different rows to restrict these rows to specific products. Cars motorcycles Others In the c

  • Update service

    NI Update Service error communicating with National Instruments. Service has worked in the past so I'm not sure if some sort of enterprise restrictions have been pushed out or not. I've installed the latest version of NI Update Service, I have an int