-
Posts
2,397 -
Joined
-
Last visited
-
Days Won
66
Content Type
Profiles
Forums
Downloads
Gallery
Posts posted by jgcode
-
-
If you are working at a new company and you find out they won't invest in the tools you need to do your job, or that they steal from other companies, that's a sign that you have not found a great place to work.
Thats a really good point.
Although I am sure this happens more out there than I would like to think it does!
-
My problem at the moment is i've got a new job which starts tomorrow. But they may not necessarily buy Labview immediately, thats one of the reasons why i'm looking into my own license.
LabVIEW has a 30-day eval, might buy you some time to use it?
Don't think you can build exe with it tho.
-
Not quite.. Here are the licensing options. They are quite clear.
Its pretty close to what I said re: home licence - you get at least one.
-
Something to note...
Using a home install of a company license may end up gifting your personal work to that company.
If you wish to keep/open source/license/sell your work independently, make sure you know your employer's policies, your employment contract and local laws.
Good point!
My post was related to working on company work, on a company license, so I have no idea what your company's policies are...
...Heck I better find out what mine are
-
Hi, i was wondering how much it would be to buy the Labview license for myself. Then noticed the price , so is there any discount out there or do you just use your companys version of the Labview??
This is what I have been told by my employer, it may not be 100% (and best to hear it from the horse's mouth) but it is my current understanding...
So I have been told NI have loosened up the license restriction from years ago. Currently, for a standard purchase of LabVIEW you are allowed 3 installs with the notion that you will require the following (or similar setup):
- 1x Development Machine
- 1x Running System (for debugging) Machine
- 1x Home Machine
I think that's pretty fair, although some my argue differently, as there is also this Idea out there: Noncommercial Hobby/Home license for LabVIEW which has really blown up in votes since I last saw it!
But I am probably biased as we ran a VLM at my last job and this one we are a Certified Alliance Partner with a Dev Suite - so T&C are different.
-
-
Kudos to Chris for bringing this to my attention!
Kudos to Jon for making sure I don't use it!
Note: My post was for a LabVIEW Class Library, I think a LabVIEW Project Library would be fine, but I would try it first
-
Is there a way to use LVcompare with Labview Full Developement System ?
I have try to use it with tortoise , but get below error
Hi Eric
I got LabVIEW 2009.SP1 Professional and TortoiseSVN 1.6.12 - doing a Diff with LVCompare works fine for me.
The VIs which do the actual comparison are only shipped with LV pro, which I assume is the reason this doesn't work.
But you must have LVCompare install with your setup if you can configure Tortoise to point to it in the first place?
Also, if you want me to try anything specifically to help out let me know.
Cheers
-JG
-
sooo... it's kind of a sin to do this in an excercise as simple as this one...
Hey if it works it works? One issue with tying your logical code to your UI code is that you can't easily test your logic. I would say you definitely have scope to use subVIs. How far you what to go with it depends on e.g. What is the life-cycle of the code? Does some one else have to work on it? Will the project be expand to include more functionality? etc...
-
No, not a touchy-feely post
...you know this other VI well enough to trust it with...
So it was all touchy-feely then and about trust awhh.....
-
I learned something today. From the LabVIEW help:
I tried this with classes and it breaks the build as reported here (bug):
- 1
-
Just wondering if anyone knows anything about capturing events so that they can be replayed in the correct sequence and time order. So
that it will replay the application in the exact same way the previous user used the application (No text input, just clicks representing touch screen user input).
One example way to approach it could be:
If you have a UI and a Controller
And the UI sends messages to the Controller for each button press
And for each button press, the action was also logged to disk
Then you could read the file back and and send the messages directly to the Controller
-
Indeed. You can.
When you edit the pallet menus, there is an option (right click on the VI) to "Place Vi Contents". I you create a VI and set this value, the contents of the VI will be placed in the diagram instead of the icon.
lol. JGCode is a faster typist than I
...and I included links
-
I don't think they are any more painful than, say, queues or notifiers.
I agree. I use this architecture a lot:
I use user events when I need to have code that sleeps on both UI events and data arrival. But it is really personal preference -- many programmers are successful using user events generally.
So most of the time events are a more natural fit for me too (I have templates handle the registration etc... so its no real extra work to set up and handle)
-
Hi,
I work with a team of very experienced LabVIEW developers, but none of them can answer this question! I seem to remember being able to drag and drop a diagram snippet from the block diagram of a subVI from it's icon.
Imagine you have your function pallet open, and you grab a VI, and instead of its icon being placed, it's the code snippet from its block diagram. Kinda like a template. The VI DOESN'T HAVE A FRONT PANEL!!
Have I simply dreamed this up!? I don't really need this functionality, but I would love to clear my head.
Thanks in advance,
Andrew
Hi Andrew
You are not dreaming... ...yes you can do this.
All you need to do is select that VI as a Merge VI (artifact) or to Place VI Contents when editing the palettes (also I recommend checking out VIPM 2010 as it makes editing the palettes really easy too).
Check out the Nugget Penman here for more info on it.
As for dropping an actual template from the palettes - you can vote for this Idea
- 1
-
It's not a version problem -- that's a separate error code. This error only occurs when the data was flattened with a class of name XYZ and when unflattening there is no class of name XYZ in memory. I don't know (or at least don't recall) the bug that Jarrod S mentioned. As far as I know, that's the only situation you should be getting this error.
Look at the actual flattened string... you should be able to see the name of the class embedded in the binary string. Look at the Class Hierarchy window. Is that class in memory?
Ha! Turns out it was a bug. The class string is now compressed (the class names weren't even showing up, so this is how I stumbled on this), but the read methods weren't updated (and I didn't know about the change). So that explains it all.. and its ok, 'cause now my problem is sorted and I learned some stuff about error 1527
-
Thanks guys
I have seen this error happen before for classes that belonged to a LV library. They would fail to be unflattened with this error even though the class was indeed in memory. I believe this bug was fixed in LV2009.
Yes, the Classes are in a LabVIEW Project Library (for namespacing). But the Dev Env is 2009.SP1
Usually, this happens when you have a Child class being flattened on the RT system and on the host system, you unflatten it as a Parent class, without the child class actually being loaded on the host side.
I am not the author of the code (and not a work at the moment) but I am pretty sure the Class being read has two Classes as data members, one of which would be child class at runtime.
Is there any way to 'load it' - I mean the code its all there in src tree/project, and it was all working previously, so I am not sure why now it fails. I am also pretty sure those methods are called on the Real Time, and that has been working fine too.
Cheers
-JG
-
Howdy!
Warning! - This may be stupid question (please bare with me tho)
In a project, data (hierarchy of classes, which contain clusters) is saved to disk on the Real Time
The file is read back on desktop PC.
(This has worked fine for ages) What is now coming back is error 1527 on the unflatten from string primitive.
Error 1527 occurred at an unidentified locationPossible reason(s):LabVIEW: Attempted to read flattened data of a LabVIEW class that is not currently loaded into LabVIEW.
As with the nature of Real Time, you need to save files before compiling down to the target.
Therefore my questions are:
- Does the error relate to a class version mismatch (i.e. the Real Time has a newer version than the desktop PC)?
- Could the class version have been incremented in the compiling down to the target (but was never saved as the file was never checked out and subsequently everything is now out of whack)?
- Or could it be something else?
Cheers
-JG
-
Speaking as the guy who wrote the queue primitives...
The queues are meant to be the primary means of communicating data in LabVIEW between parallel chunks of code. They are completely thread safe, and they participate with LabVIEW's concurrency scheduling algorithms. They're designed to minimize both data copies and latency and have been stable for many years.
User events go through queues that share most of the code with the general queues, although they have a bit more overhead since at any time there might be multiple listeners for an event, which can (not necessarily "will", just "can") cause more data copies. User events are data broadcasters, where as general queues are data point-to-point transmitters. The general queues thus have less overhead, but it is a very small amount less overhead.
For me personally, I prefer the general queues instead of the user events only because of the arcane nodes and special terminals that are required to register dynamic user events. I use user events when I need to have code that sleeps on both UI events and data arrival. But it is really personal preference -- many programmers are successful using user events generally.
Sweet summary.
-
What's wrong with using "File>>Save For Previous Version"?
Nothing. Probably because someone has posted a VI in 2009 and the poster has only 8.2 available.
-
Damn - got stung by this one again, each time data (class) was passed to the X-Control's Property Node interface, a 2MB allocation occurred.
I pulled the code out of the X-Control (it was classes, so it wasn't that hard to do), ran the code on a VI with standard LabVIEW controls (XY graph, ring etc...) - memory leak fixed!
-
I am looking to create a user interface that has a bunch of tabs that can be opened and closed similar to a web browser. I was thinking maybe we could do it using the visibility settings on pages of a tab control and maybe moving tabs posistioning around. Failing that we could simulate tabs with buttons and changing elements of the interface to show a "tab" based on the buttons. I was wondering if anyone had done this sort of thing in labview before and had any tips.
Don't forget to check out this tabbed x-control beauty by Olivier Jourdan too.
- 1
-
I have not tried to pushed the limits of the approach.
I have smashed the Event Structure with events and it handles it really well (its easy to try it). Albeit this is usually with messages rather than data, but I have spoken to other devs that say they use it for streaming data between modules just fine.
For me the more importantly option is that you cannot manage the Event 'queue' as you can with the the Queue's 'queue' primitives (flush, check etc...).
Normally that is not an issue and and prefer to use Events, but it depends on the use case.
-
You might want to post that vi that you want to convert
I second that.
last 3 values from a shift register...
in LabVIEW General
Posted
That would be Crelf
You will be happy to know you can pull down a SR to exposure previous iterations.