Jump to content

hooovahh

Moderators
  • Posts

    3,432
  • Joined

  • Last visited

  • Days Won

    289

Everything posted by hooovahh

  1. The great leader demand video game entertainment perhaps.
  2. This is not true. You can have a variant that has data in it being your "wrapper", and then that variant can have attributes your "hash table". You can then read the attributes, and you can convert the variant back into the data type it was before. The two uses aren't completely unrelated. Say I have a waveform. That can be XY data, or X0, delta X, Y so maybe I choose to put it into a variant so it can be either. Then I want to keep information like scale, or plot names I could store those as attributes so my single wire has all that information. Sure in this case maybe a cluster would be a better option but it is one way a variant can hold everything you need.
  3. First issue is in state 2 (you should probably use a type def enum) you aren't passing through the bottom dynamic data type wire. This means that the sine wave data is lost and isn't available for the comparison in state 3. If you probe the wire in state 3 you'll see the top wire has data the bottom does not. Also the express VI doesn't seem to be doing what you want either. Instead I like to use the raw numbers and do the comparison my self. This way I can probe along the way and see what is going on. I take the Y and and subtract a range then perform a In Range on the other Y values. Then I say are all in range using the And array function. Test Code Hooovahh Edit.vi
  4. Attached is a quick example. Basically you set the values as a look up table where a string corresponds to a value. Then you can get that data back by providing the string and performing a read. This is apparently a very efficient method of getting data. You'll need to convert the variant read back into something useful and for that you need to know the data type that it was written in. Here you may run into errors. Like in my example if I tried to read all attributes and said that the data type was string, one would read fine, the other 2 reads would generate an error because the data type isn't the same as it was written with. EDIT just saw you use 2010 so here is the same VI in 2010. Variant Attribute Example.vi Variant Attribute Example 2010.vi
  5. Explain to me how this is a matter of life and death? You are not going to die if no one helps you. And if you are then you should contact the authorities and not a LabVIEW forum on the internet. Please do not use sensationalist titles in the future to grab the attention of the users. Spammers use the same technique and they are handled by being banned. LabVIEW ships with several games. Search for Moon or Moonlanding in the example finder for one.
  6. Probe the path wire going into the New Report.vi when the VI is ran. You'll see that the path provided as a xls template is a path to a location that doesn't exist. Your XLS file is in the same directory as your Main.vi but you stripped the path twice meaning the folder above where the main is. Remove one of the strip paths to fix that then if you have the report generation toolkit installed it will open excel and make your spreadsheet. It doesn't get saved because you didn't use the Save Report to File. Call this before the Dispose Report. EDIT: Cross post http://forums.ni.com/t5/LabVIEW/Error-7-with-Report-Generation-Toolkit/td-p/2695725
  7. Cross post: http://forums.ni.com/t5/LabVIEW/Embed-Screen-of-a-remote-machine/m-p/2693305/highlight/true#M800368 As suggested there download the ActiveX components and look into Microsofts documentation. http://msdn.microsoft.com/en-us/library/aa383541(v=vs.85).aspx
  8. I fear he is trying to detect "Planes" by providing an image of a plane then seeing if the program can detect a plane in another picture.
  9. What have you tried? It sounds like some LabVIEW tutorials would go a long way. Here are some of the typical education links I share most are free. 3 Hour Introduction http://www.ni.com/white-paper/5243/en/ 6 Hour Introduction http://www.ni.com/white-paper/5241/en/ LabVEW Basics http://www.ni.com/gettingstarted/labviewbasics/ Self Paced training for students http://www.ni.com/academic/students/learn/ Self Paced training beginner to advanced, SSP Required http://sine.ni.com/myni/self-paced-training/app/main.xhtml LabVIEW Wiki on Training http://labviewwiki.org/LabVIEW_tutorial#External_Links
  10. I didn't realize this conversation had the scope limited to a button, and more so limited to the decal. This changes things slightly. Controls do not have multiple decals and a selection for an index (but sounds like an idea for the exchange maybe) One option is to use a Picture Ring. This contains multiple images and you can choose which to display. Instead of having a value change be triggered when the user clicks, you could capture a mouse down and change the picture ring to show the new image. A little clunky but it could work. There is a way to programatically replace a decal of a button, without the development environment. Here is a discussion on it. https://decibel.ni.com/content/thread/4901?tstart=30 This replaces the PNG images within the control and is not something NI would condone because it is messing with a file, whose structure is not documented, and could change at any time. This works well enough but again the .ctl file can't be inside the EXE. So you would need a way for the control to be loaded in the EXE from disk, and not from reference, or force the reference to be loaded from outside the EXE first. But then you will get warnings from the EXE saying control was loaded from a different location.
  11. 1) I've never known NI to post how the offset will drive with temperature. Only that it will remain within the specified tolerances, if it is within the temperature range that the card is rated for. 2) It appears this card also supports some kind of daily calibration I am not too familiar with it but there is a document on it. 3) Resolution can be found in the specifications for the card. It really depends on the selected range for the card. It is a 24bit resolution, but the range can vary between +/-42.4V and +/-316mV. This gives a resolution between 0.005mV and 0.00003mV. All this information can be found in the two documents. http://www.ni.com/pdf/manuals/373770j.pdf http://www.ni.com/pdf/manuals/371234b.pdf Which were both found at the product page under Resources. http://sine.ni.com/nips/cds/view/p/lang/en/nid/202236
  12. For this to work you will need a full LabVIEW development environment. The LabVIEW Run-Time engine does not have the features needed to edit or resave a VI and that is what would be needed. This means this feature cannot work in a EXE. So if you have a full LabVIEW install you could do this using LabVIEW scripting. Go to Tools >> Options then VI Server page and check Show VI Scripting functions. This will add scripting tools to your palette. With scripting you can programatically open a VI and replace the control with the one you want and resave it, then run it. I believe packed libraries are made to act as a step between source code and an EXE, where you have the VIs but they don't have block diagrams or front panels. I know there are options to remove these or leave them but I don't know the default. If your VI has no block diagram then you can't edit it and resave. So for this to work you will need LabVIEW development, scripting, and VIs that can be edited.
  13. Adding to the SCC discussion which seems to be skewing a bit from the original topic. Viewpoint Systems makes a SVN toolkit which is in VIPM. It allows to rename a VI and have it be reflected as a LabVIEW rename and SVN rename in one step. This works mostly well but I had some issues with renaming a VI that was read-only. This also only works well if all callers of that VI are already loaded into memory. Also the trick about moving multiple files on disk is one I was not familiar with.
  14. I've used PDFCreator in the past for generating PDFs using the print to PDF feature. I remember one particular version had a .NET API so that you could have a little more control. This also allowed it to work without having to change what the default printer on the system was.
  15. You didn't post your VI's just pictures of them, but from what I see I think things should work correctly. You have your "Select The Type of Test.vi" that has a UI and when you click "New Variant" it prompts the user for input, then calls the config VI. With the config VI's settings the way you showed in the first post with Show When Called, and Close When done, then the config VI should pop up and show the UI, then when the config VI is done running it should close and return you back to the "Select The Type of Test.vi" UI. Is this how you expect it to work? Does it not work this way?
  16. The 6008 will gather from 8 single ended analog inputs. Just not at the same picosecond. I suggest you read this: http://digital.ni.com/public.nsf/allkb/4F9D107D8B26233B86256F250057C9B3 and this: http://www.ni.com/white-paper/4105/en/ In almost all situations I'd say the muxing of the ADC is acceptable. It only doesn't work when you need to correlate two measurements of something that can change very quickly. Things like measuring 2 sine waves and wanting to know how they shift in time.
  17. Looking at your other post I'm not sure why it isn't working and I hope you can solve it. The only thing I wanted to add was that in the past when I needed to measure 3 phase high voltage I used the cDAQ platform because it was cheaper. But don't let me change your plans your hardware should work just fine. I used a cDAQ-9174 4 slot USB chassis, a 9225 to measure three phase differential voltage simultaneously, and a 9227 to measure three phase differential current simultaneously. This meant the measurement could be done in Windows then calculate things like power factor and phase offset and the voltage and current wouldn't need to be scaled down as long as voltage is 300VRMS or less and current was 5ARMS or less. Here is the white paper on it. NI did have a "Electrical Power Measurement" package which was a set of free VIs that took voltage and current and returned things like phase and power but have rolled it into the "Electrical Power Suite" which is no longer free but added a bunch of functionality.
  18. No blind trust. I trust it until I find an issue which to be honest isn't all that often.
  19. Another option, but a more ugly one, is to just copy the VI files from your Windows machine to the Linux machine. Going around VIPM is not recommended because you loose your configuration management, and the inter dependencies between installed packages. But if this is a one time thing and you just want it to work with the least amount of effort, then you can go to your <Program Files>National InstrumentsLabVIEW 2010User.lib then copy all the folders to your Linux machine. There are of course other files that VIPM can install, things like tools menu items, help, quick drop functions. VIPM can basically be used to install any file anywhere in your system so grabbing just the user.lib might not be enough but for many that is all that is needed.
  20. Google Translate. As logman said, contact Keyence for documentation. In the future please respond in English. This forum does not support the German language. Wie logman sagte, wenden Keyence für die Dokumentation. In Zukunft bitte in Englisch antworten. Dieses Forum unterstützt nicht die deutsche Sprache.
  21. I don't want to insult you, but you are generally a text based programmer aren't you? I say that because at least from my perspective I don't care what LabVIEW does with memory, but I've seen other text based developers get hung up on trying to understand the low level of what is going on. The compiler is better equipped to do as it pleases, releasing and reallocating memory as it needs. I trust the compiler until I see a reason not to (crashes, or run away memory). I suggest you do the same, trust the compiler. You stated that memory is released properly when you close LabVIEW, and the memory is reused within the application when it needs to be so what is the problem? Where is the bug? If it doesn't release the memory then it must need it for a reason that I could not predict. I do not see is as a bug, and I deal with very large amounts of data in the form of larger sized arrays of clusters of arrays all the time.
  22. I have never seen this mentioned before. I have a 4 channel 400Ks/s device and I can read all 4 at once at 100KHz each. Maybe what the NI tech support was trying to say is that when you are maxing out the speed of the card and switching that fast, you usually end up with a "ghosting" affect where the other channels appear on top of the wrong one because the impedance of the line is being affected by the previously measured channel. For this reason adding some extra time between channel reads is a good idea, or even reading the same channel twice and throwing away the first reading as suggested in the linked article.
  23. Nope not going to find a m series equivalent card, and suggesting an Arduino sounds crazy now that I know what you wanted it for. Sorry I don't have anything like that.
  24. I really think given NI's support, it would make a lot of sense to stick with what they have available. Rolling your own sounds like a big undertaking and while I really enjoy owning my own tools, the time and effort needed in building, deploying and supporting them just doesn't seem like a good idea. Especially on a thing that involves testing code components. Sorry to hear the NI solution is slow but because you have a license you should be able to get some support from NI to investigate this, or at least get some feedback from them. JKI's timing for their VI Tester was unfortunate. I felt bad for them when I heard the Unit Test Framework was coming out in what felt like a few months after the JKI one. As a result I get the feeling JKI is focusing their attention on other tools that they have a competitive advantage with.
  25. What is the NI-9134? I searched NI's site and couldn't find anything on it. I ask because a cheaper option maybe to use a m series USB solution depending on your needs. They have a variety of AIO and DIO usb devices but without knowing what the 9134 can do I can't suggest an equivalent m series device. And even cheaper still depending on your hardware needs, is a Arduino running the LIFA toolkit which can be used for DIO and AI but no AO. Again depending on your needs that may be an option.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.