Jump to content

TG

Members
  • Posts

    225
  • Joined

  • Last visited

Everything posted by TG

  1. A question for the elders If you can believe it I now have a chance to spend some of the companies money (Prob 3k+) for something that actually makes >MY job< a little easier! What kind of a workstation would you purchase to develop LabVIEW applications? Thanks in advance all!
  2. One thing to note about a simple subVI (statically defined default when you define one) it acts as a semaphore. The locking is implied by the fact that only one call to a static subVI can proceed at a time. This makes default data inside the subVI 'safe' in that only one access at a time is permitted to the subVI however, using default data in controls always has a way of causing strange bugs so it is critical to initialize a subVI on the first iteration of it. That said Functional Globals are excellent way to initialize data and retain values between calls. Use FG's whenever you need to initialize data and then safely maintain the data in that subVI.
  3. <BR><BR>Id rather read the documentation I cannot see the displays. The rate is slower than mollases. More importantly ... never mind Sorry <BR><BR>
  4. Not only that but how can anyone learn anything from this forum if they don't have the latest version of LabVIEW? I come here to learn and get example code. The Latest LabVIEW is needed to learn new stuff here.
  5. Thanks for all the great responses. Always educational. Karissap your solution is totally elegant, Thanks! I had no trouble saving it down to 8.5.1. too for u
  6. My only beef on this issue is the number of upgrades that come down the pike in just a few years. And guess what. I am not going to have a new version just sit there when it comes out. Who would? Even if I don't use it I am still going to install it And I am going to look at it when time permits. and of course when I download an example code snippet here at this forum I'll have to have the latest and greatest version to convert the thing into something I can use. But the size and timeload of each new installation for each new revision is kind of ridiculous to me personally. I would not care either way except for that.
  7. Hi Guys, I do not have this utility, unfortunately! But Im sure it can be found or made here! From the perspective of a single developer making changes to hiw own code without (the luxury of) source code control it would nevertheless be nice to have a tool allowing a hotkey to quickly insert timestamp string into windows clipboard, all ready to be pasted into a block diagram comment. Does LabVIEW already has this capability? Any API facade VI out there allow to write to the windows clipboard programatically? Example during development, F12 key when pressed would place a nicely formatted time stamp string into the windows clipboard all ready to be pasted on to the block diagram. That would be a great little tool! LV 8.5.1 LV 8.61 LV 2009
  8. If your data should become more complex as in VIsa refs or DAQ refs then you may run into issues using the OPENG VI's for INI access. However, if you make some VI wrappers around these two guys you will never have problems. The MGI ones are absoultely rock solid stable. http://www.mooregoodideas.com/ReadWriteAnything.htm
  9. has not set their status

  10. Good thinking PaulG. I'll have to get back to you on that. Just thinking out loud now. If being in the project directory somewhere means I can see it in my project displays the answer is yes I can see the repository file in the labVIEW library in the project view in a virtual folder but I will double check to see if it needs to be another type like populated. Since its password protected it may indeed use some windows DLL. I don't think LabVIEW's interface to excel uses a DLL but then again? I would surmise that the automation services provided by LabVIEW simply use the Active X services available in the server (Excel 2003) through some common interface like COM. That is as far as my understanding goes concerning COM. The best lead so far is that the dll (or the path to it) must be inside the password protected repository vi I guess I should be including a link to this dll if I can figure out what it is and where it is.
  11. This is probably an easy fix but I have yet to figure it out. I build a rather large executable and all is well except for one labVIEW library that allows some access to excel using automation. It was written by a nice gentleman who made it available on the web. I cannot remember his name anymore. Anyway, I use his Vi's to get simple access to Excel sheets in a workbook. The builder seems to never be able to find the path to 'excel objectRepository.vi' I have tried to add to LabVIEW .INI and also have included the library in the 'always include' field before compiling. But for some reason it never finds it. Actually, that is not totally true, on some rare occasions it actually finds the file but probably because I am building more than once in the same LabVIEW session I would think. Anyway I wish I could make some change to the Build file so that this file would always be included. Mind you it is not a showstopper but I would like to know the actual reason for this issue. I think the file is read only or password protected. Is that the reason it cannot be added to the build list? ANy similar experiences with APP builder LV 8.5.1?
  12. I realize now this is a relatively old thread I don't think so Joe but you can get the behavior you wish with a state machine that is setup to handle both normal states and an error state. Errorr handling is best done by designing architectures to handle them from the ground up. I believe dataflow concept makes this necessary. Its one thing to report an error, quite another to handle it and return to the beginning of the dataflow.. You could write a generalized error handler VI. Then when an error occurs you could call this VI and have it handle the error based on its number or message. Since its a VI call you have a way to determine if the handler actually 'handled' the error because itcan return information back to you. The only catch is you need to call this VI when the error occurs, hence the need for designing a state machine that can detect error (after the state) and then redirect to the error state for handling. You then need to know that the error was handled correctly. If it was handled nicely you can go back and retry the prior state in the machine, else you escalate the error or close out. Its a technique talked about in 'LabVIEW Advanced Programming Techniques.' I use it a lot and it is helpful especially with controlling peripherals which don't always behave BTW I turn on error handling to help troubleshoot and its great for catching unwired situations.
  13. Hi Guys, How is the best way to see a memory leak (if indeed there is one) when running an Executable created with LabVIEW? LabVIEW 8.5.1 currently I m using serial VISA and FieldPoint exclusively. Nat instruments 16 port serial card. Is there anything out there that is either freeware (or if it works really good low cost software) to catch the devil? Thanks in advance
  14. QUOTE (MikaelH @ Jun 9 2009, 09:55 PM) Ahhhhh! Now that seems to make sense! I'll try it Thanks! Yes it was error 2 from LabVIEW. QUOTE (TG @ Jun 9 2009, 11:37 PM) Ahhhhh! Now that seems to make sense! I'll try it Thanks! Yes it was error 2 from LabVIEW.
  15. QUOTE (Minh Pham @ Jun 5 2009, 06:41 AM) Thanks Minh, Yeah it seems to work now except now it seems to randomly returns error 2 (with a meaningless GPIB explanation) and "LabVIEW memory full." Could I assume this is because the exe file has a possible memory leak? I am reluctant to ask the guy who made this executable because I sincerly doubt he would make one with a memory leak and afraid to askl without proof. I wonder if anyone else encounter anything like that using this exe launcher in LabVIEW?
  16. Bear with me guys I am rusty in this area I need to know (re-learn) easiest way to invoke a small executable (written in Visual C++) from LabVIEW. I do not need to send it any parameters and the module will create a results file for me to display later. How would I wire the system exec.vi again? Thanks in advance
  17. QUOTE (TobyD @ Aug 27 2008, 11:16 PM) I enable it only when debugging, otherwise I leave it off. I prefer to handle errors in my code, however sometimes code runs funny or has errors that are not trapped because of lack of dataflow for error channel etc In those cases I turn it on and let labVIEW give me a clue about where I may have screwed up..
  18. QUOTE (ShaunR @ May 1 2009, 11:49 AM) I d like to learn more about callbacks and messaging architecture that encapsulates most of the details of messaging, etc. I have no idea why (yet) but I tried to open or look into both zip files, The Message pump zip and and your Callback LLB and could not open either in labVIEW 8.5.1 It looke like the message pump library looking for semaphore support in LabVIEW 6 and the Callback LLB simply will not open beyond the LLB manager window for some reason ANyway hope I can figure this out. Anyone else have success looking at these zips? Thx
  19. QUOTE (Cat @ Apr 3 2009, 07:06 PM) I think a state machine (any type) handles variation better than a stacked sequence. If it always goes 123 then of course no problem there, however it is always better to design code with the intention of being extended. Turns out to be easier to read and re-use too. BTW Too late for me now, Ive got many megabytes of hideous looking code (with sequence structures) from past projects that when I need to look at them today, make me cringe now. Anyone else have skeletons in their closet?
  20. QUOTE (CarlosCalderon @ Mar 24 2009, 03:19 PM) Im curious, what cable attaches LOGO PLC to the PC. Is it a serial cable?
  21. QUOTE (crelf @ Mar 12 2009, 09:25 PM) Thats even better crelf Thanks for the that tip! I'll have to try it out myself
  22. Why not just make the border of the sequence structure to be much thinner. This way sequencing (when needed) is very clear and it does not clutter up the block diagram. To me making a completely new wire type (even a Null one) introduce possibility for yet more bugs.
  23. QUOTE (mindmoody @ Mar 10 2009, 08:37 AM) I originally learned LV by taking an example and messing with it until I could call it my mess
  24. QUOTE (neBulus @ Mar 10 2009, 05:33 PM) Thanks Ben All I know is when I put the exception handler in and ran it over the weekensd it worked ok however when I exit the program (The LabVIEW executable I built) Monday Morning Windows was acting funky like it was out of memory. It is a low price IBM laptop with 512MB like the 1970's but.. BTW Thanks for doing the testing and reporting to us. You say simply clearing the buffer works and no side effects? Do you also keep ythe default (4096) buffer size?
  25. QUOTE (neBulus @ Mar 6 2009, 04:48 PM) Can you elaborate further on this point? Trust me I am not dissagree with you even if I do not know full answer. I got this error even though I open/close the port before every exchange (was required to make it reliable as it currently is) and many thousands of successful queries on the device yet this error still manage to creep in randomly.
×
×
  • Create New...

Important Information

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