Mike Ashe
-
Posts
1,626 -
Joined
-
Last visited
-
Days Won
1
Content Type
Profiles
Forums
Downloads
Gallery
Posts posted by Mike Ashe
-
-
-
-
-
Here are a couple more examples, with read write of clusters or whole VIs:
http://forums.lavag.org/index.php?act=attach&type=post&id=5285
http://forums.lavag.org/index.php?act=attach&type=post&id=5286
These were originally done by Jim Kring*
*credit where credit is due...
-
I agree totally with JFM, show first that you have made an effort. Second, if you work through the introductory tutorial that comes with LabVIEW, and study through some of the examples you will find code that does what you are asking for. You can then make a copy of that code and modify for your uses.
You're lucky I've had another 1/4
-
QUOTE(JFM @ Mar 24 2007, 10:35 AM)
This is an extremely dangerous trend, as described by the following formula:
http://forums.lavag.org/index.php?act=attach&type=post&id=5284''>http://forums.lavag.org/index.php?act=attach&type=post&id=5284'>http://forums.lavag.org/index.php?act=attach&type=post&id=5284
As you can see, this has the potential to really get out of control. Fortyunately such things start small before they explode exponentially. I would take care of the matter myself, but am only on my first half of a and have a cold + sinus infection with the resulting splitting headache, so I don't trust myself to maintain professional decorum at the moment, so I will have to leave what must be done to my fellow HH hunters...
-
QUOTE(crelf @ Mar 8 2007, 12:23 PM)
Not in the normal "User Mode", also known as Ring 3 priority. Spacetoon, your best bet is ti use a hardware card with a counter and then trigger off the HW clock, perhaps using [wiki]DAQ[/wiki] Occurences. What you ask for, a software accessable submillisecond timer, is possible under Windows, and you can even make it deterministic, but to do so you have to write a Kernel Mode (Ring 0) device driver, (these used to be called Virtual Device Drivers, or VxDs) then access that driver through another Windoes DLL, then access the DLL through either a Call Library Node or an Occurence hooked to the DLL.The term you need to research is "determinsim" - Windows is not determisitic at the microsecond level.None of this is for the timid. It is a black magic, alchemy type of programming that is guaranteed to introduce you to the BSOD. Take the easy way and use a cheap timer card & HW timer.
-
-
You might also want to look at: People Tracking - Nils T Siebel
-
QUOTE(Ben @ Mar 16 2007, 07:28 AM)
Added note: Avoid strings whenever possible on RT app that have to run forever. The can do very nasty things to your memory requirements.Ben, could you elaborate on "very nasty". I am using strings here and there in a new RT app and so far things are going okay, but it hasn't exactly been running "forever". What if you preallocate your strings and then copy in and out of those? Won't that prevent the memory manager from having to reallocate?
-
You might want to use a SubPanel (in the Containers palette). If you have not used them before, drop one on a new VI, then go to the diagram. You will find an invoke node there (don't bother looking for the SubPanel Terminal itself, you won't find it and you don't need to go looking yet.**
Pop up on the Invoke node and select "Help for Insert VI" which will get you to the help page. Study that a bit then go to the bottom of the help page and open the second example: "Simple Subpanel.vi" and run. You might be able to modify this just fine for your application. Or proceed to the other examples there or go the the Help>>FindExamples menu in LabVIEW and search for subpanel.
Good luck!
-
QUOTE(Jim Kring @ Mar 16 2007, 01:51 PM)
It would be nice to see some of the documentation section on OpenG TikiWiki transfered as well, such as:
http://openg.org/tiki/tiki-index.php?page=LvDocMenuLaunchVIs' target="_blank">How to do Menu Launch VIs
as just one example.
Bye the way, Bravo Michael!!!
:beer: :beer: :beer:
-
-
-
QUOTE(Michael_Aivaliotis @ Mar 14 2007, 12:10 AM)
The Asahi is not my idea of work reduction.Speaking of Beer Robots. Needs to work on the foam reduction...QUOTE
Of course, why settle for less when you can go all the way. How much beer is this bot worth? Sheesh...Awesome control, but still no delivery, and outside the normal budget
QUOTE
It seems like it's already been done but it's not LEGO. Damn, I think we've just come up with the Ultimate LAVA Mindstorms Challenge.Now we're getting somewhere!
-
-
QUOTE(Jeff Plotzke @ Mar 14 2007, 07:23 PM)
You may want to look into using MSXML -- It's an ActiveX object that you can use in LabVIEW. I've built a set of VIs that use this object to read/write XML files. It takes a while to get up to speed on all the methods/properties of MSXML, but after that, it's super easy to use!I'll second that. I recently used a colleague's MSXML implementation on some RF testing. The XML defined "objects" of one or more test instruments, and then setup parameters for those instrument/objects on some in-house legacy test executives. The implementation was written with a high degree of abstraction and inheritance and was very poorly documented, (I mean NO documentation, actually) so it was hard to figure out how it worked. However, once you did figure it out, and study up on the MSXML objects and methods, it became very easy to setup very powerful hierarchy trees of data, objects and actions (methods). The XML schema he defined used a lot of attributes, so it was much more compact and readable than the native NI implementation. The only downside was that it was custom and limited to a subset of datatypes. The NI XML is not (yet) very nice to read, but it has the advantage of easy read/write for any complex data type you throw at it.
I'll also second the plug for the LabXML toolkit above. Sorry I cannot post a copy of my colleague's tools, but they are proprietary and they'd take away my birthday if I broke the NDA.
-
-
Very nice! Thanks again for contributing this to the community. I think the license change to Creative Commons was a great move. To really get a package wide acceptance I think it needs either BSD or Creative Commons licensing these days.
:thumbup:
-
The easiest way to find this type of stuff now is just to Google search it. That said, there isn't much in the way of dedicated journals for such things, yet. There are some other graphical environments, including some that are very high end P-GRADE but not much for LabVIEW now that LTR is gone. I think that a lot of the same function as journals is handled now by LAVA and blogs like the one's Chris Relf and Jim Kring have and the NI developers blogs. The Repositories here on LAVA are beginning to have peer review. What we don't have is some stuffy Ivy league editor doleing out who gets to publish what. So far LAVA has been very high on merit based acceptance.
-
This is a hoot.
-
QUOTE(Sherif @ Mar 11 2007, 11:34 AM)
As for getting an image file into a picture control you'll find an example http://zone.ni.com/devzone/cda/epd/p/id/1815' target="_blank">here.
You're lucky my is tasting good today.
-
QUOTE(LV Punk @ Mar 12 2007, 10:21 AM)
I'm working with the http://grouper.ieee.org/groups/scc20/tii/' target="_blank">ATML specification XML schema for Test Results. There is a simpleType definition called StandardUnits that includes a regexp for qualifying a string.I cut and paste the regexp string into a LabVIEW VI and tried to use it, but got an error: There is an unmatched parenthesis in a regular expression.
Can you help me find it, PLEASE?!!!
But SERIOUSLY, has anyone ever seen a regexp string like this?!!
Yeah, I've seen it before, at the same place you did. I started looking at ATML for test exec purposes a little over a year ago and decided that it wasn't ready for prime time, at least not my prime time as it was not a paying project. A lot of ATML is DoD driven, hence ....
As for finding the problem:
1. Run the string through a shift register in a loop indexing each successive character, looking for ( and ).
2. Start a counter at 0 and for each ( do a +1 and for each ) do a -1 and add the index location to an array for each. If your counter goes negative, then you just had an unmatched ) and you can look in your indexes for pairs of () to try to locate the mismatch.
3. Reverse the string and then repeat the above, now if you go negative you'll have an unmatched ( and again you can check the pairs to try to locate.
Good luck
PS: wouldn't it be great if the error message had the index of the unmatched parentheses? Too much to ask? Or at least whether it was an open or close parentheses to look for?
-
Truely awesome!
However, I like my beer neither shaken, nor stirred, so I am thinking about a small tribot to get the beer and gently deliver it to me.
This sounds like a job for: LEGO Mindstorms NXT!
Precision Property Node not working
in LabVIEW Bugs
Posted
QUOTE(BrokenArrow @ Mar 24 2007, 08:36 AM)
At this point I'd start looking into whether you could use scripting to make the modifications. Perhaps figuring it out in LV 7.1.x, then, assuming you can get it to script, trying to port up to LV 8.x. As you say, hundreds of nodes, lots of hours.