-
Posts
947 -
Joined
-
Last visited
-
Days Won
39
Content Type
Profiles
Forums
Downloads
Gallery
Posts posted by jcarmody
-
-
When I chimed in on the QD-SM, I was referring to the JKI String-Based Queued State Machine. I'm not sure how to avoid having many states if my ATE performs many functions using many devices. One thing I'm avoiding (like the plague H1N1 FUD virus) is making one state perform multiple functions. Each state does one thing and I call it wherever I need that function (using Macros). This results in a long list. What else can I do? However, I must say, that the CaseSelect RCF plugin makes it a piece of cake.
Jim
PS - Ben, I've read enough of your posts to put the best possible construction on anything you write.
-
I love those. But, only one screen full of states? That's rather small. That was my motivation for writing the CaseSelect JKI-RCF Plugin.[...] The case selector fills the screen from top to bottom. [...]
-
Would it be "bad labview" to include a second event structure loop which only responds to the "interrupt" type controls (this would then allow me to fire an interrupt command into the queue of the subvis "engine" doing all the work)?
Or should I re-write my UI as (another) queued state machine, whereby the state machine runs the longer tasks and the event structure driving the UI state machine can also fire things into the engine queue for interrupts?
Any thoughts or suggestions welcome!
Cheers
You're Ok if your second Event Structure is in a separate loop. Take a look at the Caveats and Recommendations when Using Events in LabVIEW.
I like to put my logic in its own state, called by the Event Structure rather than in it. This allows me to use it again apart from an event (and without using a "Value (Signaling)" Property Node to fire the event - I hate that).
Jim
-
Some of us follow Joel on Software so I thought I'd point out that his company's project management product (FogBugz) has a free version for Students and Startups (of 1 or 2 people). I found this quote that says anyone can use it, with the caveat that you pay for it if you can.
Anyone can use the Student and Startup edition. Our intention is to provide an awesome tool to those particular groups, but if you have two people or less than you can use it [emphasis mine, jc]. We won't police you. We do ask however, if you do have the money to please use our paid version so we can keep making great software (and implement the really long feature list our customers have been asking for).Isn't that nice? None of my projects would need more than one user (me), and when I actually have a customer it's always been only one at a time (so the 2 user limit wouldn't be an issue). Do you know of another free project management site? I've hosted my own (using DotProject) but I've lost interest in managing a web app.
Edit - I probably misunderstand the whole users/customers bit. I'll learn more about that this afternoon.
-
[...] I'm struggling to make it work in LV8.2.
I've tweaked the version for LV 8.2 but am not happy with it; it has fewer functions than the 8.6 version.
- Drag-and-drop of cases doesn't work. The image below shows how I rearrange cases; it works in 8.6 but doesn't do anything in 8.2.
- Insert and rename a case work, but delete doesn't. Attempting it causes an error.
I've attached an llb for 8.2. I think I'm done developing this for 8.2 unless someone can help... Please? Thanks.
-
If you right click on the project name in the project tree, there is an option to "Find Items With No Callers".
For another point, is there a one-click way to delete them?
-
Could you post a snippet from Passa Mak (or, a few) to show how you're finding all of the
label (tags), captions, tip strips and any ancillary text (such as graph axis, plot names etc) of all controls and indicators on the front panels and any string diagram constants that have their captions (or labels for digrams) visible to a number of language filesI don't have LabVIEW 2009.
-
I would like to find and replace all instances of the word template w/ the word of their choosing.
Darren Nattinger wrote about "TRef Traverse for References.vi" here. I used it to write a simple requirements coverage tool that looks for and highlights free labels. I believe I could use it to find/replace any text if I knew what class names to traverse for.
-
-
[...] who have been programming in C for 30 years [...]
I'm working with a long-time text-programming Test Engineer who is being shoehorned into LabVIEW. I expected him to kick and scream through the process, but he's surprisingly open. He expresses an equal amount of "that's neat" and "that's easier in text". There has only been one case where he didn't believe me when I said he was doing something wrong.
-
jcarmody, did you split this conversation to the new topic? Regardless, did you respond to the old (License Frustrations) topic, or this new one?
I responded to the old one.
-
I'm looking forward to the results of the experiment of teaching non-programmers LabVIEW.
I'm teaching it to my kids (ages 14, 10 & 9). It's going well; we're using "LabVIEW For Everyone". The oldest said he "gets it" better than when we began Logo and Python.
-
There's a much easier way. Does your homework assignment require you to do it the hard way? Take a look at In Range And Coerce, then show us what you come up with.
-
Our company has been getting an increasing number of orders for devices that use CAN bus. I have zero CAN bus experience so I'm shopping for a good (and preferably cheap) CAN interface/adapter that comes with handy-dandy LabVIEW drivers and/or examples to use for testing. Thanks in advance.
We've had good luck with Kvaser CAN devices; our CLA prefers them to NI and ValueCAN. They're cheaper, too.
-
[...] bring up a cluster control [...]
Another option would be to use a custom menu for the controls. The user would right-click on the control and be presented with options that you'd handle in the Event Structure.
-
This sounds like a job for a State Machine. It could be more easily accomplished with local variables and Sequence Structures, but I get hives when I use them.
This'll give you your 2-4 second wait. A better State Machine would have a mechanism to wait that doesn't freeze the program until the delay finishes, but you can do that later.
See if this helps and post back.
-
[...] I was wondering if anyone who has done this before has any good advice or suggestions for a newbie volunteer.
I haven't done it before (so feel free to disregard the post coming from someone that ignores plainly written requests) but a friend of mine did. The advice I'd try to follow if/when I volunteer would be to get everything at home & work done before it starts because you're going to be <colossal understatement> busy </colossal understatement>. The spouses created a "widows" club... It's a fantastic concept that your team will strategize/design/fabricate/build/test/debug/practice a robot in only six weeks.
Good luck and keep us posted.
-
[...] preferably in the Raleigh-Durham area.
- Congratulations.
- I used to work for a company in Apex that has a posting on their web site.
- Your linkedin link doesn't work.
- 1
- Congratulations.
-
Hi and thank you. But I cant find that property node 'Primary Workspace'. I have looked under Function Pallete >> Application Control but no Display to be found in that menu/pallete. Im a looking at the wrong place? Im using LW 8.2
It's a regular Property Node where you select Display->Primary Workspace.
- 1
-
I wrote a VI that deduces superfluidity from first principles; it's part of a JKI RCF plug-in that I use all the time. Your Dr. Laughlin is all wet.
-
The thing that hath been, it is that which shall be; and that which is done is that which shall be done: and there is no new thing under the sun.
-
Any other suggestion??
Send him to lavag.org!
-
I had guessed it was removed intentionally because the feature wasn't being used very much. I use it whenever a post teaches me something or makes me smile.
-
Hi Asbo,
Thanks for the reply. I will try scripting to generate some objects.
Sharon, it's important to note that you won't be able to build an executable with your scripted VI. This is fine if you're just making a tool to make development easier. If this is what you're doing, consider making it into a plugin for the JKI Right-Click Framework. There's more information to help you get started scripting here and here.
Using multiple (2) event structures in 1 VI
in Application Design & Architecture
Posted
ShaunR and Daklu have me confused. I'm not sure what to ask, but I thought I was following good practices. Can you 'splain?
I believe I understand what you mean by a "sequence machine", but product testing requires performing a sequence of operations and testing the result. How is this not a state machine? I also think I see what you mean about a "procedure machine"; I use a sub VI in one state to avoid having it (an instrument driver, for example) all over the place. This also lets me keep my BD simple and makes modification incredibly easy. How is this not a state machine? I use data flow everywhere (no local variables for me); how is this procedural and a queue of enums not?
I'm missing something. Either I misunderstood your posts or there's something fundamentally wrong with the way I'm working...