Why new NI MAX does not sort global virtual channels by name? It used to be very handy to have that option, however, after 2014, they decided to remove this very useful function away without any reason (at least I can not think of any reason). I am currently using NI MAX 15.0 and I could not find anything in the menu about how to sort my global virtual channels by name. They could have implemented something in the menu easily to sort channels by name or something else instead of removing that useful function.
Currently, there is no way to format a .txt file to log data with a time stamp that includes the current time that the data is being acquired. When creating a "Save to ASCII/LVM" event, the "Time Axis Preference" setting under the File Settings tab has two options: Absolute Time or Relative Time. Relative time works as expected, logging the time starting from 0 seconds until the data acquisition is complete. However, the Absolule Time setting logs the time stamp as time in seconds from some arbitrary point in time, usually the Windows system time in seconds.
This timestamp is essentially useless without a conversion to the actual time. It would be great if the Absolute Time logged the current time in hours:minutes:seconds instead.
The 6602 can take an external timebase up to 80 MHz (according to the spec, it's actually a bit higher than this in reality).
The newer counter products do not have this capability (e.g. the 6612 has the same 25 MHz bandwidth limit as most of the multifunction products).
So whenever an application comes up (e.g.) where the user wants to count a fast external signal, the only reasonable option from NI is the 6602. This is fine for now, but in the future it would be nice to have some higher bandwidth counter options (unless you plan on selling the 6602 forever... hopefully it doesn't get too hard to come across computers with spare PCI slots though).
It is a frequent requirement to make measurements on production lines. Position on these is often tracked with Rotary Encoders https://en.wikipedia.org/wiki/Rotary_encoder . Many NI devices can accept the quadrature pulse train from such a device, and correctly produce a current position count. The information in the 2 phase pulse train allows the counter to correctly track foward and reverse motion.
What would be very useful would be a callback in NI-DaqMX that is called after every n pulses, ideally with a flag to indicate whether the counter is higher or lower than the previous value, i.e. the direction.
This has recently been discussed on the multifunction DAQ board here: http://forums.ni.com/t5/Multifunction-DAQ/quadratu
estoy trabajando en comunica un power analyzer modelo yokogawa pz4000 para automatizar una prueba, mi problema es que ya lo comunique y en la pantalla del equipo pz4000 me muestra solo 4 valores y logre obtener el voltaje RMS que es uno de loa que aparece, pero al momento de buscar cualquier otro valor que no paarece me manda un valor de 0, si se ha trabajado con esto, agradeceria mucho su ayuda, les mando saludos!!
gracias Carlos Capetillo
The vast majority of my working life is spent with RIO devices or midrange X series cards, but I often come across applications where an inexpensive, reliable DAQ would be handy for low level tasks - monitoring presence sensors, measuring voltages at moderate precision and slow speed, providing interlocks for material storage bins etc.
Traditionally, you'll see a lot of USB 600X units being used for applications like these. However, running on USB has a few associated problems: unreliability of the Windows bus, cable strain relief on USB connectors, mounting of USB 600X units, connection type. Don't get me wrong, you can do a lot with these units but they're not an ideal, inexpensive solution for production processes.
There's a jump between the functionality of these USB units and X (or even M or E for the vintage crowd) series cards. The only thing that's really in that range anymore is the B series PCI-6010 card, which has the fantastic benefit of using a 37W DSUB connector too, but is a little limited in terms of channel offerings and the like.
I'd like to see the B series range revived to provide products that fit between the PCIe-6320 and the USB 600X devices, providing non-USB connection and preferably with a DSUB backplane connector for cost and ease of use. This would provide a more reliable offering for simple acquisition tasks in the industrial environment at a cost-effective price point.
We mostly develop PXIe based high speed (RF) applictions which stores data on one or more RAIDs.
Several customers already asked for a high speed ethernet connection do move this data over the net.
Yet there is only one PXIe 10 GBE availible and it is NOT from NI.
We would already need a 40 GBE solution the comming year.
PCI Express 40 GBE ist almost commonly avalilible, a mezzanine board solution would be sufficient if nothing else works.
But there is no carrier board availibe, too.
I feel kind of left alone with all this data, waiting on those bigg RAIDs for beeing processed / copied.
Currently with a multislot chassis, the system will operate at the requested sampling rate even if that rate is above the maximum supported by the module. In this case, the chassis will replicate the additional required data points from the previous sample, and will not return an error in NI MAX. With a single slot chassis, this is not an option. However, it would be helpful if this feature was also supported with the single slot chassis so that data could be replicated at a higher sample rate without returning an error message.
Relevant KnowledgeBase article: Why is My Slow Sampled C Series Module Able to Operate at a Higher Sampling Rate than the Specified ...
Currently my entire school district is going 1:1 with chromebooks for your students. This is also happing in many other schools around the country. It would be awesome if you could develop a way for your programs to be based off a "cloud". This would allow for students to use the programs at home and in different locations around the school, not just a "computer lab" that has the software loaded onto it.
Currently there are only two options for acquiring +/-60V input signals:
NI 9221: 8-Channel, ±60V, 12-Bit Analog Input Modules ($582)
NI 9229: 4-Channel, ±60 V, 24-Bit Simultaneous,Channel-to-Channel Isolated Analog Input Modules ($1427)
I would like to see a new module provided that is identical to the NI9205 (32-Channel Single-Ended, 16-Channel Differential, ±200 mV to ±10 V, 16-Bit Analog Input Module, $881) but with an input signal range of ±60 V.
While I realize that there is already a third party option for this, it only makes sense that NI open an option for the cRIO users out there that can do what this module does...
in a cRIO platform module. That way we can have a North Anmerica source for this very important data input device.
Optimally two - four channel input on a single module design.
We're running to issues on a regular basis where the 8360 card to the laptop comes out, get's moved etc. Once the connection is lost, a reboot seems the only way to establish a connection again. This results in too much wasted time.
Not knowing what lies beneath and the complexities involved, is there any way to make a hotswappable HW for a PXI connection for laptops?
Hello. I'm working on an app to interface with a couple of ANT devices (Garmin Vector, Garmin heartrate monitor). I've seen a couple of posts on this topic but nobody has posted code. I talked to Frank Lezu at an NI day in DC a month or so back and he recommended I post about it here.
Anyone else looking for ANT/ANT+ support? I'd be happy to share my code when it's not in a ridiculously embarrassing state but for now see this post for a braindump of my progress.
The size of for example the NI-Rio driver package is 4GB in the most recent version which is comparable to size of common operating systems. This is too much in my opinion if someone needs only a specific driver for a specific NI hardware. Therfore i suggest granularity reduction of driver packages to a more mouth friendly morsel (for ex. 200MB max).
Many CAN protocols require a byte in a cyclic message to be incremented each time the message is sent (this is often byte 0). I might have read somewhere that this is possible with VeriStand but I am not using it. So when using only LabVIEW and the NI-XNET API, the only way to achieve this is to call the XNET Write function to manually set the value of this byte. But having to call the API each time the message should be sent removes all the benefits of cylic messages... Moreover LabVIEW can't guarantee the same level of speed and determinism (if the message is to be sent every 5ms for example).
Being able to configure a signal to be an auto-incremented counter would be a huge improvement. To me, this is a must-have, not a nice-to-have...
When a cDAQ (I'm using both a 9184 and 9188) chassis is energized (or the host computer is rebooted) it is programmatically read as reserved (by either MAX or LAbVIEW program). To gain control of the chassis, one has to either use MAX (MAX deosn't save or remember the previous reservation) and reserve it or programmatically force the reservation in the LabView code. In addition, if a chassis is reserved by a different host, another host can force the reservation by itself programmatically. Both of these can be accomplished by using the reserve chassis function with the 'Override Reservation' input set to True. This really is not a good method - it's effectively a hostile-takeover of the hardware (I've tried this and I can literally reserve hardware that is actively being used by another host).
I would recommend the following firmware/driver/software updates/corrections:
All of the JAT's VIs output results as "sequence" and "timestamp", eg. the "Max and Min Voltage.vi".
I use the JAT to analyze high speed differential signals with unit interval of just 300ps. Because of this, the timestamp output cannot meet the required resolution. However, if timestamp is replaced with double precision float, it should be able to.
I have brought this up with NI's tech support and this is what they recommend, which is to suggest this change over here.
This is pretty trivial to achieve through LabVIEW itself, but...
Signal Express is a simple, stand alone data acquisition system that allows those with limited exposure to LabVIEW set up simple test and measurement routines. One area where this is ideal - at least, for me - is in environmental or long life testing. Instead of crafting a beautiful piece of custom software for my colleagues, I can hand them a DAQ, point them in the direction of the SignalExpress and DAQmx installers, and off they go. With a little fiddling, they can create a logger that suits their needs.
One thing I've noticed, however, is that when sampling with non-simultaneous cards such as the USB 6225, users will select 1-pt-on-demand, set to some big interval, and then come back screaming at the top of their lungs - "OHMYGOD THERE'S CROSSTALK BETWEEN CHANNELS!". With a little bit of fault-finding, it's easy to point out that it's not crosstalk, but ghosting between channels, because I would guess that 1-pt-on-demand uses interval sampling and rattles through the multiplexing as quickly as it can.
My idea: give users the option to either select round-robin mode with a sensible delay, or complete control over the interchannel delay.
I realise that the standard line is usually "use LabVIEW" - I do - but I'd rather spend my time working on the important stuff and empowering those with less experience and/or exposure to make accurate measurements.
I use a PXIe-6363 which a wonderful device. But it lacks level shifting at the digital I/O.
I would recommend that most DAQ multi-io devices support programmable and externally driven level-shifting for digital IOs. Range for DAC driven level-shift (0.8 - 3.6, 5V), and support for external input. It would also be nice if multiple ports are present that some of them allow independent logic levels. Default level should be 3.3V. Port configurable pull-up, pull-down and latch-hold.
It is not possible to build Kernelmodule nirlpk 2.0 on Kernel >= 3.10
if (create_proc_read_entry(nNIRLP_kDriverAlias, 0, nNIRLP_procDir, nNIRLP_procRead, NULL))
create_proc_read_entry appears to have been deprecated in kernel 3.10.