Jump to content

LAVA 1.0 Content

Members
  • Posts

    2,739
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by LAVA 1.0 Content

  1. I think if you just first open an application reference and then open a VI reference (wire the application reference as an input). Each application propably have a different TCP port on the local machine so you can access different applications if you know the TCP port. There may be an easier way I'm not aware of.
  2. I have to try it out in one of my very performance hungry applications. Hmm.. I wonder if this works together with the new GOOP Developer...
  3. As in :beer: :thumbup: I managed to come by a free admission pass at the Developer Education Day in Boston. It doesn't cover airfare or lodging, but that's OK. Now if I can just find someone to give me a ride to the airport.... Doh!
  4. Thank you Michael for getting me hooked on the Dilbert Blog. I was reading this, and couldn't resist customizing the comic just a bit!
  5. Google is your friend - "OBDII LabVIEW" OBD-II or OBDII is how it is normally written, not OBD2. This should help you on your way.... Mmmm, good coffee today...
  6. Any chance this will be out soon? Still not available (June 20, 06) according to Amazon.I hope it's released before NIWeek, I'd like to have something to read on the flight
  7. When I turn 70... I'm going to do yoga and meditate continiously, with a copy of alfa's book in my lap until I spontaniously combust and end my life and that of my book SI-MUL-TANIOUSLY PS there's a 97.7% chance I will attend NIWeek this year. Is that good, or bad
  8. Maybe Ben is a Communist bear just trying to extract information from alfa. "Vee have vays of making you tock, commerad "
  9. Absolutely Incoherent comes to mind...
  10. Ooo, Ooo, Ooo! +1 for me by just replying to this message! Where do they issue the LAVA weenie beanie caps? 121... What?! Replying to you own post doesn't give you more?! Now I've REALLY gotta work
  11. Ignore alfa posts, you'll just get frustrated. :headbang:
  12. I've been working on a project that requires logging multiple data streams via TCP at about 2.5 mbit/second each. The messages are fixed length and contain a counter at the beginning, to determine timing and if data is missing. I have an architecture based on a tight loop that pulls data from the TCP connection and places it in a queue. A logger task pulls data from the queue and writes it to disk. I have written a serving vi that simulates my data device, and have been able to source and log data at about 4.5 mbit/sec over a gigabit point to point Ethernet segment with no data loss. I now need to add event detection logging . Events will be determined by placing a subset of the messages into a UI data queue that will be evaluated separately. I was thinking of just storing the counter when an event occurs and using that to determine an offset position in the file. I'm not sure how large the log files are going to get; they may exceed 4GB, and require multiple files for a single test. I've been reading various app notes on NI's site about using circular buffers to log event data, such as: This is my first high-speed logging application. Am I approaching this the right way by using queues, or are there factors I have not yet discovered that will cause me grief later on? I'm concerned about switching to a circular buffer and possibly losing data if my logger function is delayed by some sort of system event. I've got 2 GB physical memory, and the queue works well so far. I'm seing about 8-12% cpu utilization with a single channel. The additional channels will each have their own Ethernet controller (again, point to point).
  13. There is also a manual way to duplicate project quite easily. Create a project as you normally do. Then when you want to duplicate the project do the following. 1. Create a new library (lvlib) to the root of your project and add all of your project files to this new library. Save the library for example with name orig_lib.lvlib. 2. Save a copy of the library with Save as... using for example name new_lib.lvlib. A complete copy of the library with name new_lib.lvlib will be made. 3. Create an empty project. Add the new library new_lib.lvlib to the project. Save the new project. 4. In the original project, move all the files from the library new_lib.lvlib to the project root. This will move the files back out of the library. Save all. 5. Do the same thing for the new library. Now you have copy of the project. There are some bugs in the lvlib implementation of LV 8, so you may experience problems with nested libraries i.e. if you have multiple levels of libraries inside one another.
  14. I2dx, I'm happy to tell you that you are wrong, check the old topic for solution .
  15. It is set to zero at the start of the vi. Note that there are two ways to run the vi. Run, and Run Continiously. (ying-yang type arrows?). If you press Run Continiously (not generally advised), the counter will increase and increase until you press it again, or Abort Execution. If you press the front panel stop button while using Run Continiously, the loop will exit, reset the counter to zero and start running again. You should always include a stop button on looping vis (as you did), and ONLY use that to stop the vi; do NOT use the Abort Execution (stop sign) at the top of the window . This is for aborting a hung vi during development. Looping vis should always initialize shift registers on entry and have a clear method to exit and close any references (if you haven't wotked with these yet, you will soon )
  16. Would you like to share those ideas with us ?
  17. I agree with bsvingen that even though many applications don't consume much processor power there is still a need for efficient code for those applications that do consume as much processor power as thery can get. If a computationally demanding data-analysis VI doesn't consume all of the available processor power then there is something wrong with the implementation of either the algorythm or LabVIEW. I myself are using LabVIEW to analyze huge amounts of data and it is really slow. However it would take even more time to code all those analyses in C instead of G I'm not familiar with LabWindows but as far as I understand if the generated C code is ansi compilant then it could be compiled with any ansi compilant C compiler. So it should be possible to use some other C compiler instead of LabWindows CVI in theory. Intel and PathScale compiler should be very good but new versions of Visual C++ and Gnu compiler are not bad either. Why this option of using some other compiler instead of LabWindows CVI couldn't be possible. All it requires is will from NI to put some effort on it. There could be a new High Performance LabVIEW toolkit that would use high performance compilers from other vendors. Of course it can be that LabVIEW generates code that is far from ANSI C and only LabWindows could be used to compile it.
  18. I found a way to create polymorphic VIs. Works only in LabVIEW 8, but the code can be created with LV 7.1. -jimi- LV scripting programmer since Wednesday this week
  19. Why can't reports be directly written to the OpenOffice file format. OpenOffice uses XML based file format, which I assume cannot be that difficult to generate. I myself have no need at all for this support however.
  20. Select adapt to type and connect boolean to the input. In this way boolean is passed as unsigned char * (or LVBoolean * which is the same thing) . All the values differing from 0 are regarded as true and 0 is regarded as false. You can also use macros LVTRUE and LVFALSE in the C code. Remember to include "extcode.h" from CIN directory to be able to use the macros and LVBoolean type defenition.
  21. I came up with a solution yesterday when I noticed a bug in one of the NI timed loop XNodes which I was unable to remove from the block diagram. Since XNodes require licensing you can use Extended Nodes instead to do the same thing. Create an Extended Node on the Block diagram that doesn't allow removal of the node from the block diagram. Since your Extended Node doesn't need to have any other functionality, it should be "quite simple" . You can create an image of any size to be the icon for the Extended node water mark. I assume that you can also disallow moving of the node or even allow no changes to the block diagram alltogether. See Scripting section on Lava Forums for more information. You'll need LabVIEW 7.1.1 or earlier to create the node but it should work on Labview 8.0.1. with a small change (see my previous post).
  22. Hi all, I'm not certain if this is known stuff. I just noticed by examining external node front panels of storage VIs in LabVIEW 8 that there is an extra control compared to external nodes in LabVIEW 7.1. I tested adding the missing control to ;DAHR_MergeErrors-src.vi (http://xnodes.lavag.org/) and it seems to run and compile when placed on the block diagram on LabVIEW 8 . To get LabVIEW 7.1. created External Nodes to run and compile under LabVIEW 8, add the attached ring control to the front panel of external node and connect it to the only remaining free connector. The ring control "Node type" contains the following items: UPDATE READ QUERY CREATE CHILD CREATE CONNECT DISCONNECT What is the function of this new control is however somewhat unknown to me. EDIT 6.6.06 1825 GMT: I ran some test by using the attached Node_type_probe.vi. I connected the probe to the Node type input of the ;DAHR_MergeErrors-src.vi. It seems that at least when using the external node interactively by placing the node on a block diagram only the UPDATE event is occurs. UPDATE event is triggered a few times when the node is placed on the block diagram, when every you move your mouse over the node, connect the node, add controls to the front panel of the VI that contains the node, wire the node etc. I wonder if the "Node type" input is still unused or if it gets different values when the node is accessed using scripting. EDIT: Removed "(XNode)" from the subject line since External Nodes are not really XNodes even though the purpose of them is similar. Jimi Download File:post-4014-1149611516.ctl Download File:post-4014-1149617560.vi
  23. Does the Advanced PID block in the PID Control Toolkit (v8.0) come with external reset as promised? I can't find any way to make it work. I get problem with reset wind-up using two PID Controllers in cascading loop.
  24. Thanks Terry Stratoudakis for this VI. It works perfect. :thumbup:
  25. Hi, i want parse some pictures (jpg or bmp) from LabVIEW to a special Mircosoft Excel Tabelle. Using Active X is very difficult. Yours sincerely Thomas
×
×
  • Create New...

Important Information

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