Jump to content

Louis Manfredi

Members
  • Posts

    274
  • Joined

  • Last visited

Everything posted by Louis Manfredi

  1. --or call NI directly, their sales force for your area will be happy to help I'm sure. Best Regards, Louis
  2. Pete brings up a good point. Its important to note that you can use the GPCTRs in at least two ways: counting the number of pulse over a fixed time interval, or measuring the interval between successive pulses. If your counter doesn't have many pulses per revolution, the second approach can be better, 'though there's some tricky trade-offs involved (how to deal with things if the shaft stops completely?) Best, Louis
  3. Hi Jon: If I understand what you're saying, you should probably put the pulse inputs into a counter input on the A/D card (most NI A/D cards and some cards from other manufacturers have general purpose counter inputs which can be used to measure frequency of pulse trains -- they can be used to measure RPM with a tach sensor that generates pulse trains.) That would be the easier, less error-prone, and more accurate way to convert a pulse train into a RPM value. I'm not perfectly sure why you can't measure the frequency from the pulse input if you see a nice, evenly spaced, series of pulses on the graph. If the pulses are not evenly spaced, perhaps you are experiencing aliasing on the input :question: (NI site has a discussion of aliasing, if the concept is new to you-- worth understanding!) Or perhaps there's something about the pulse train that the timing wizard (which I confess not being familiar with) doesn't like. In any case, take a look at the using the general purpose counters (GPCTRs) for your application, sounds to me like its the best way to go for your application. Welcome to the Forum,:thumbup: hope this helps. Best Regards, Louis
  4. We used to call them "Lugables" in english.
  5. Hi Homanjay: Welcome to the LAVA forum. Try attaching "Index array" to the wire of the data array on the block diagram. Then create some indicators on the front panel, and wire the outputs of index array to them. (Most important advice I can give: Learn to use the help system built-in to LabView :!: That's why the above instructions are a little bit incomplete. Struggle with this a little bit & if you make some progress on your own we'll help some more.) Best Regards, Louis
  6. Hi Charles: Are you using the Prompt user for input express vi? If so, open it up, (right click>Open front Panel) right click on the OK button>Properties>Key Navigation tab> Under the "toggle" pulldown, it probably says "Return" select "none" Work your way back, save the express vi (You'll be converting it to a regular vi, need to give it a name.-- See the documentation for Express Vi's for details if you need them.) Should solve your problem (if I understand what the problem is ). Best Regards, Louis
  7. Hi Folks: Long ago (version 4.x??) I tried to write a three-dimensional array to the spreadsheet-to-string-array vi. I don't remember the details, but it turned out that spreadsheet-to-string didn't work for three dimensional arrays even though it was supposed to. I worked around the problem by using "format number into string" within nested loops, and I haven't tried spreadsheet to string since, so I can't say if my experience has any relevance to the current problem. Best Regards, Louis.
  8. I use "Vaguely remember"... more often than I did when I was younger, I'm afraid, put perhaps its because I have more to remember now than I did then. "I think..." or "I seem to recall..." also works. Best Regards, Louis
  9. ... Not akin to cheating, it is cheating. To my mind, the more serious aspect of the problem is not that this activity wastes our time in the forum-- it is that we're going to have to work with these slobs (that is to say, we're going to have to carry their load for them) when they are let out into the workplace with essentially meaningless credentials. ...Perhaps if the professors assigning these problems knew about LAVA and checked in on the traffic when assignments were due the whole problem would go away-- they could decide how much help was too much & deal with it much more effectively than we can. ... There was a software manager at a company where I used to work who would give all interviewees a computer and ask then to write a bubble-sort program from scratch in a language of their choice before the interview proper began. I used to think that he was being a bit of a jerk to put the candidates on the spot, but as I approach old-farthood I begin to think it wasn't such a bad idea. Ah well, just a morning rant, :ninja: Perhaps I should brew a nice pot of cafiene to try and calm my nerves. Best, Louis
  10. I regretted being so quick on the transition from 7.1 to 8.0. ....Perhaps I should skip 8.0.1 and wait for 8.0.2 :question: Thoughts anyone? Best, Louis
  11. Hi Ayumi: Make sure that you don't create references to the hardware you are using inside the while loop-- that is a sure way to create a bad memory leak and also slow things down badly. Create the reference just once outside the loop, and pass it in to the things that use it repetitively. Also, close the reference after the loop exits-- This is only important if the program is run many times without exiting, but still its good practice to close the reference when the program is done with it. This might not be your problem, but its one of the most common ways new users create memory leaks in LabView, so I thought it was worth mentioning. Good luck & Best Regards, Louis
  12. ...Good reason. Still remember feeling somehow cheated the first time I used a computer which didn't have a couple of banks of toggle switches and lights-- Somehow didn't seem quite like a computer when the only switches on the box itself were power and reset. Best Regards, Louis
  13. Hi Joe: Any reason why you don't want to use a regular numeric control in binary display mode? Right click on a control, properties>format and precision>binary; then (if you wish)appearance>show radix. (Control has to be I or U type for the options to be available.) Hope this helps, best Regards, Louis
  14. Hi Daniel: A couple of tricks, sort of achieve what you want: 1) Enclose the comment in a sequence structure frame, right click to turn off autogrow for the frame, shrink the frame so that only enough of the comment to serve as a label remains. 2) Write the comment in a String Constant, right click to turn on the vertical scroll bar, and shrink the Constant to fit your needs. (Or you can even make a string array constant-- for multiparagraph comments.) 3) Any block diagram constant can have a description which shows up in context sensitvie help. Above are few traditional work-arounds for your problem. I think I agree, however, that some specific tools such as you suggest would be better, might even encourage better documentation practice for all of us. I work alone too-- but still need the comments-- the notion that ANY programming language can be self documenting is a myth. When I come back to a LV program after a few months, it can be real cryptic what I was doing if I don't put in at least a few comments-- even though I try to write tidy code that is inherently readable. Also, there's always the chance the the client will ask you to explain how something works & its much more better if the code is somehow readable when you show it to them. Best Regards, Louis
  15. Hi Justus: A case structure executes only one panel-- as specified by the input to the structure. Perhaps you want to use a Sequence Structure, which executes panels in order, instead? Best Regards, Louis
  16. Hi Jenny: Welcome to LabView. Not totally sure I understand your question, but if I do, selecting "Compare Agregates" from the right-click pop-up for the equality function might do the trick :question: Hope this helps, Best Regards, Louis
  17. Hi Anthony: Perhaps the following picture gives a clue? Lots of properties for the 3D graphs, a little tricky to find them all... Let me know if you need further details, hope this helps Best Regards, Louis
  18. I second the wish :!: Perhaps the tab interface which selects sheets in an excel Workbook could serve as a model for the third dimension. (Hate, on philosophic grounds, to do anything the way Windows does it, but to be practical, most of my clients know how to use Windows applications, so even if this approach isn't intuitive, people are used to it enough that they think it is. ) Best Regards, Louis
  19. Hi Z-T: I've done a fair bit of serial port programming with LV-- Never recall a problem with LV sending out stuff that I didn't want it to send, so I wouldn't worry too much that that's the problem. Your problem sounds an awful lot like a hardware connection problem, or a baud rate/ port configuration problem--- Except that it works in hyperterm. Are you running hyperterm on the same machine as Labview so you're certain the hardware is identical? Are you absolutely certain all your LV and hyperterm port settings are identical? Are you exiting Hyperterm before you run the LV program to be sure that there is no resource conflict? You've probably been through all these questions yourself already, but if not a good place to start. Good Luck, Louis
  20. Hi Bjorn: Welcome to the forum I've had very bad luck trying to use anything running in the Windows environment for reliable and accurate timing. LabView is no exception. So if your application requires 100% reliability-- no incorrect measurements-- I think you are out of luck without using a hardware timer. Most all of the NI A/D cards have hardware counter-timers built in which could be used for reliable timing measurment-- even under windows-- but in this case you would need the card, and also need to wire up an indicator and a switch to it for the reaction time measurement. Others may have more experience with DirectX than I, and may be able to make good suggestions, but I would be surprised if there was an easy solution without adding some hardware. Best Regards, Louis
  21. Hi Jim: I've added my vote to the tally: For almost every project/no it doesn't bother me/Yes and more. But, I wouldn't put too much weight on my vote. (It certainly doesn't rate the 50% weight is has now, when only one other person has voted.) I've only done one project since I switched to LV8, a pretty simple one where the project environment met all my needs. I've still got a ways to go before I understand its capabilites fully, and I'm sure we'll all find some real warts when we try to do things which are really sophisticated-- always works that way with new capabilites, doesn't it? I never really liked the old system though. Some new features that I really think are an improvement-- * Being able to build an exe without closing the vi's that go into it, * Having a single project environment which lets me build just an exe file, or the whole installer, without fussing to change things, and * The similarity of the user interface to IDEs for other languages I use like C++ or Fortran. Best Regards, Louis
  22. Hi Raymond: I'm not sure exactly which method you are using for digital I/O. (And I don't even have LV6.1 loaded on this machine) but something like "Clear Task.vi" or "Close Task.vi" chosen from the same part of the menu as where you got the vi for doing the I/O should release all resources reserved for the task. Most of these vi's will have an input for the task ID, but no output for it. If you were using DAQmx in LV8, the "DAQmx Clear Task.vi" would be what you want. Even if you don't clear the task, memory leakage should be very minimal if you only create the task once per run of your vi, rather than every time you go through the loop, but the best bet is to close the task and keep things tidy. Best Regards, Louis
  23. Hi Greg: LabView 4?? Talk to your boss-- My bet is that it will be FAR LESS EXPENSIVE to upgrade to a current version of LabView than to try and work with the antique version. Not just no undo (for Pete's sake) but also "insane objects" with a depressing regularity, and many missing features that we've all come to depend on. Not that I have anything in particular against LV4-- It looked pretty good going to it from LV2.1, but looking back on it from LV7/8, it seems rather primitive. We engineers sometimes get carried away with spending money on the latest greatest tool, even when what we've got would work-- but this seems like an extreme case in the opposite direction-- A boss that places no value your time, and is unwilling to give you the tools you need to do the job with minimal efficiency. To answer your question, in recent versions, you can "save as" the next earlier vesion, so going at least some distance into the past you should be able to save the LV7 version as LV6, open that in LV6, repair it, than from LV6, "Save As" LV5, etc. At each step you'll probably have to replace some code that uses features that hadn't been invented in the earlier version. If you really must work with LV4, best to start from scratch there, writing a program that's designed around the limitations of LV4. Just my opinion, but bet others here will substantially agree. Good luck & best Regards, Louis
  24. Hi Raymond: No reason why the while loop should cause a memory leak-- assuming that you are doing everything the way you should. Most likely cause is that you are creating a reference to something (The I/O cards?) inside the loop, and not destroying the reference when you're through with it. The more efficient approach would be to create the reference outside the loop, before it executes, pass that reference into the loop, use that one reference over and over, and then destroy that reference when you exit the loop. That's the best I can geuss without looking at your program-- If my geuss is wrong, go ahead and post the program, if you can, so we can see what you are doing) Hope this helps & by the way, Welcome to the LAVA forum :beer: Best Regards, Louis
  25. Hi Chris: I made the switch to 8 a little earlier than I normally would (I happened to be at a logical break point in development of the projects I'm working on.) I didn't have any real show stopper problems, and I like many things about 8.0 a lot, but in retrospect, I sort of wish I'd waited for 8.0.1. To summarize, I've had the following problems described in greater detail in other threads: A problem with read text from file, works oddly if output is not wired: http://forums.lavausergroup.org/index.php?showtopic=2245 A little peculiarity with an array of waveform controls: http://forums.lavausergroup.org/index.php?showtopic=2325 Never did figure out out to transfer old app builder settings to new project system, and it took me a while to learn to use the project system, but all in all think the new project system is a great improvement over 7.x: http://forums.lavausergroup.org/index.php?showtopic=2229 All in all, nothing earthshaking, but keep in mind that I'm a one man show, only about 20% of my time since upgrading is actual LabView programming, and the program I've worked on since upgrading is a pretty simple plain-vanilla collect a/d data, manipulate, display, and store routine. Knowing what I know now, and if I had to make the decision for a large organization working on large projects, I geuss I'd wait-- Unless there was a compelling reason, such as a new large project about to begin, or a slack time in the organization meaning that it was a good time to climb the learning curve. Hate to say it, after all at some point somebody has got to go to the new version to find the bugs, and it might just as well be a large outfit like yours that can afford the burden, rather than me, but to be honest, if I was you I'd wait a bit-- at least read all the topics under the LV8 buglist forum before you jump. Best Regards, Louis
×
×
  • Create New...

Important Information

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