-
Posts
541 -
Joined
-
Last visited
-
Days Won
23
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by crossrulz
-
Understanding a sub vi's error handling at a glance?
crossrulz replied to Daklu's topic in LabVIEW General
Darren explains them fairly well in one of his weekly nuggets. -
What exactly do you mean by "merge"? Are you looking for a 3D array or a concatenation? It really depends on what the data is and what you are doing with it (post processing algorithms, save to disk, etc.).
-
Have you looked at the Array Subset Function?
-
I feel your pain. What I ended up doing was copying the distribution DVDs onto my hard drive and then install from my hard drive. The installer builder looks at the location of the installer at the place the function was installed from. So since I installed from my hard drive, the installer builder found the location and didn't give me a pop up. Only do this if you have plenty of hard drive space (for obvious reasons). Another option might be to copy the DVDs onto a server and install from there. Haven't really tried that yet.
-
I have had good luck with SuperLogics. Finding motherboards with six PCI slots might be a challenge for any vendor though. Also make sure you get a computer that is at least 4U or else many of your PCI cards might not fit inside the case.
-
How to convert a 8 bits signal in 16 bits signal
crossrulz replied to leonardovieira's topic in LabVIEW General
Look in Numeric>>Data Manipulation to find Join Numbers and Split Number. Join Numbers will take two U8s and turn them into a U16. Split Number will do the opposite. If you are dealing with arrays of your 16bit data, you may want to also look at the Decimate 1D Array and Interleave 1D Arrays. -
I would have thought that you wanted Termination Character Enable to be set to FALSE. But I don't have the stuff in front of me. As long as the thing works. I honestly have not used the VISA Clear function. According to the help it just clears out the transfer buffers. It might be a good practice to use it after opening your VISA session, but definitely not necessary.
-
There is equipment out there that uses termination characters. I think by default VISA has termination characters on. The o-scope may be using what VISA thinks is a termination character as a separator for some reason. You can use a property node to change the VISA settings. You should check with Hameg, but it is likely you either need to disable termination characters or change the termination character.
-
Equal? Comparison on Strings - Compare Aggregates
crossrulz replied to asbo's topic in LabVIEW General
From the LabVIEW Help, it appears that the two modes only matter when comparing arrays or clusters. Do a search for "Using Comparison functions" or "Setting Comparison Functions to Compare Elements or Aggregates" for the official wording. -
Equal? Comparison on Strings - Compare Aggregates
crossrulz replied to asbo's topic in LabVIEW General
-
Strange Semaphore Behavior
crossrulz replied to theoneandonlyjim's topic in Application Design & Architecture
This might sound stupid, but are you sure you are running your "Initialize" state? -
How to split a string to decimal?
crossrulz replied to lovemachinez's topic in Application Design & Architecture
Are you passing the temperature values over the RS232 in an ASCII format or binary? If you are passing them in a binary format, I recommend the String to Byte Array. If you are passing them in an ASCII format, look at the String/Number Conversion palette (it's under the String palette). These can get your string into numbers to then put into the graph. -
That looks just like the test interface box I have to work with right now...
-
I don't. That's the reason I don't like the NI forum RSS feeds. I like seeing the responses in my RSS.
-
Really neat tool! I have already put it to good use.
-
How to derive the script's own directory path?
crossrulz replied to Gan Uesli Starling's topic in LabVIEW General
-
I was recently tasked with setting up a system for managing our LabVIEW User Library. The library hasn't been created yet, but it is coming. I want to use VIPM, but my company is very hesitant about spending money on software. What other options has anybody tried? I'm looking for wide array of opinions supporting and criticizing any option.
-
Things like this are usually timing issues. Is something running in parallel that could be changing values on you? What happens if you put in a wait just before where your breakpoint is and remove the breakpoint? Without seeing the code, these are the best suggestions I can come up with.
-
...and it is still only the first 200 in the thread. So when someone does update the "Alpha Thread", "5th Dimension", etc., the I am still only seeing posts from 2007.
-
If you are using DAQmx 9.0, there is a Configure Logging function so the data will go straight into a TDMS file. If you want to look at the data in Excel, NI has an add-on so that Excel will read the TDMS. I did this for a system I'm using now and it works great. Here's a screen shot of my prototype.
-
queue handling inside a wrapper
crossrulz replied to mstoeger's topic in Application Design & Architecture
That is the name of the game: which tool is appropriate where? For the application you described, I would probably do something similar as you. By no means is there a single "good" way nor is there a silver bullet for every application (no matter how much we want there to be). So to answer mstoeger's original question, yes you can save a queue reference in a FGV and it does work well. Is it really want you want to do? Well, that's for you to decide based on your application needs. My experience has been that queues work best with only one reader/consumer. Following that methodology, I would not put your Dequeue Element inside of you FGV if that is the route you want to take. -
queue handling inside a wrapper
crossrulz replied to mstoeger's topic in Application Design & Architecture
Maybe the example mstoeger gave is a bad one for this function. In the way I use these functions, my diagrams are a lot cleaner because I don't have to pass the queue reference everywhere (to several loops, into subVIs, through structures, etc.). I only have one reader of the queue. Notice that I do not use my FGV to read the queue, only get the reference. The benefit here over the FGV holding an array is that the reader will just sit there and use no CPU time. With a single reader I could have commands that come from many different sources (user interface, reactions to outside sources, etc.), often not even on the same diagram (different TestStand calls) or many subVIs down. Yes, I could obtain the queue reference by name, but that is a pain to keep track of my queue's name, obtain the queue, send a quick command, and "close" the reference (not destroy since another thread still has it open). My company had a VI that did that and I eventually said "Why not just keep the reference here?" Hence the FGV given above. I noticed a good performance boost, no hard data on it, but I could definitely tell.