Jump to content

hooovahh

Moderators
  • Posts

    3,432
  • Joined

  • Last visited

  • Days Won

    289

Everything posted by hooovahh

  1. If you are on the front panel and CTRL+E CTRL+W then I just perform another CTRL+W. Like I said I think there could be a way to make CTRL+W close both front panel and block diagram when you are on the block diagram but the only method I know that would work would be hacky. Multimonitor setup here, so some times I don't even have a LabVIEW window active and press CTRL+E on accident, and you find what that key combination does in other programs (calculator brings up the date calculator, Explorer window brings up search, Chrome enters a ? in the URL). I also discovered the Project window behavior you this way.
  2. Uh...so...future of LAVA?
  3. What OS are you using? What .NET versions are installed? I've seen some kind of issues when on a fresh XP machine that has only a couple versions of .NET (say 1.0 and 1.5) but the NI installers require some first, and then you need several others that NI installs for things like MAX. I don't know if this will fix your issue or not but you can try to install all .NET components first separately and then try again. I'm guessing that's what the "Microsoft Run Time Engine" is referring to.
  4. Yeah I don't mind clicking report for all of these, I just hope the admins can sort by posts, so if they see the same post reported as spam 20 times they can just delete that post and remove the 20 reports they get. On a slightly different topic does LAVA need more volunteers for admins? I always get the feeling that there are only a few admins, and almost 20,000 members (most with 0 or 1 post but still)
  5. I hope this isn't some program Phillip wrote to post on Lava through a VI or something. That's what I always think of with these types of posts.
  6. Well I sure hope it doesn't go away. I wanted to celebrate my 1000 posts by buying it to support this community. It looks like the entire store is being worked on, hopefully this means some new revamp, instead of removing it. EDIT: Also has anyone bothered to email support@lavag.org? I haven't because I figured someone else has about this topic already.
  7. I suggest this: http://www.ni.com/white-paper/5241/en All of your while loops have a TRUE wired to the stop terminal, this means your VI will run for one execution, so changing the controls do nothing because the VI is no longer running. I also suggest looking into how to use the Waveform Graph and dealing with arrays. You need multiple points to be able to see a wave on a graph, but again you generate one data point in the top while loop and graph it instead of generating multiple data points and putting it on the graph.
  8. Tell me I am not the only one that did not know you could do this. When you use an analog output you can have 1 Channel N samples, where you have an array of output values to set, and each one is set one at a time in a finite or continuous output mode. (this part I knew) What I didn't know is Counter Outputs also support writing to them with 1 Channel N samples. Normally you set a Counter Output as a Frequency and Duty Cycle pair, then when you need to change it you set it again. But I discovered yesterday (with a few examples) that you can write a array of Frequency Duty Cycle pairs, and the counter output will set them one at a time. It will set the next pair after one cycle has been completed at the frequency selected. In this way you can setup a counter to have 1KHz 50% for 1 second, then off for 1 second, then back on at 2Khz 20% for 1 second, then what ever and repeat. I was even more thrilled when I realized that the cDAQ 8 slot chassis have 4 internal counter outputs that can be tied to either of the two front BNC PFI terminals with no extra hardware. So attached is my quick demo which will perform a frequency sweep on a counter output going from Frequency Min, to Frequency Max, back to Frequency Min in the duration set by Sweep Duration all being hardware timed. Hope someone else finds this useful. Frequency Sweep Counter.zip
  9. I think I just realized why on the NI forums you are not allowed to post a topic where the word "watch" appears in the body of the message. They apparently found it to be the easiest way to limit this type of spam.
  10. Uno all the way. The LIFA toolkit is pretty neat and there are some libraries in there I didn't know were supported (I2C, SPI are a couple) I wrote an application using the NI 8451 to do all my SPI communication. When I was done I found the LIFA toolkit supported it. So I dropped in the LIFA VIs, commenting out the 8451 VIs, and my application worked just as well. You mean I could have used an open source $13 piece of hardware to do all my SPI communication instead? We still went with the NI solution for support, and all the other goodies but the next time around, I may budget to use the 8451 but actually use the Uno. We've also used the Mega but I think very few applications actually need the extra memory it comes with, really it's just for more I/O. You can even get an Uno and LabVIEW (Student edition) for $50 on sparkfun. One thing I would recommend for anyone who has a bunch of Arduinos, use XLoader to flash them with the LIFA instead of the IDE. It is faster, and it only takes a few clicks.
  11. It unlocks the file duh...but seriously I think the reason they named it that, is because in Windows if you download an EXE Windows security will prompt you with normal UAC stuff when you go to run it. But if you go to the properties of the file there is an "Unlock" button which is you telling Windows you trust the EXE. Still I think a different term would have helped understand what it does.
  12. The myDAQ states that the analog output rate is 200K samples per second. This means the output can be change up to 200,000 times in one second. This seems like alot but generally to create a sine wave you must output 10 times in one cycle to get a clear picture of what the signal looks like (back to the Nyquist). So the fastest sine wave you should ever generate on the myDAQ is 20KHz. You can output faster but you will have issues like what you are seeing. Alternatives is to purchase hardware that supports outputs that are faster. This USB X Series 6351 can output at 2.8MHz, so this can generate a sine wave at 280KHz without any problem. I've never used this particular hardware, and I don't know your application so I can't say if this meets your needs, or has too much functionality.
  13. The cheap and dirty solution (my specialty) is a command line call to a function that does it for you. Here are a couple options. http://superuser.com/questions/94794/convert-a-mp3-to-wav-file-with-mplayer http://sourceforge.net/projects/snout/ https://quote.ucsd.edu/phonoloblog/2007/07/23/batch-convert-wav-to-mp3/ (this is Wav >> MP3 but I think it can be reversed) LAME Command line: "lame -V input.mp3 output.wav"
  14. Where is this file located that you are trying to write to? I assume Program Files which Microsoft has said since Vista that area should be off limits for file writing. That being said most people still do it so it isn't such a big deal. My point is that you can choose to write files in a more secure (obscure) location that you will have write permissions on. Something like Application Data. If you do choose to leave the files in Program Files you can "Unlock" them during the install. This sets the permissions for you so any user can modify it. http://zone.ni.com/reference/en-XX/help/371361H-01/lvhowto/build_installer/ Step 6.
  15. Yes I too find the new spam bots more annoying. When I go to my RSS feed I got quite excited when I saw new posts, then I had to wade through the 100+ junk posts to find any useful content. Maybe it was a coincidence but it seemed like activity from legitimate users of LAVA dipped when this was going on. Possibly because others found the spam inconvenient too. I'm all for limiting new user topics being made to so many a day. The CLAD level questions I'm not as much a fan of simply because I wouldn't want to hinder the new users from finding LAVA. It's a great resource if your new to LabVIEW or not but what ever keeps the spam out I guess.
  16. If I close a Front Panel, and my Block Diagram is open, it will close both of them. I think Oliver was asking if there was a feature that was not known, which when a Block Diagram closes, will also close the Front Panel. I am a compulsive CTRL+S and CTRL+E, CTRL+W, are not too far away.
  17. Negatory, but it's possible some utility could be made that does that. I think some other rules would need to be applied for VIs that are running. EDIT: okay so I think it can be done. Start by running a VI that has the VI Activation event to detect when a VI is activated. When a VI is activated open a reference to it then get the Block Diagram Window >> Native Window (private method) to get the HWND of the block diagram. Then use the Windows Message Queue library to wait for keydown in HWND of the block diagram, when you see it look for CTLR + W and if you see it then close the front panel of the VI using the reference you got earlier. Kinda ugly but there is no event on block diagram closing, and you can't register for a KeyDown event on a VI that isn't running.
  18. Speak for your self. I am a no-Auto-Tool kinda guy so while my mouse is moving to the new position my left hand is repeatedly mashing Tab, CTRL+E, CTRL+W, CTRL+S, Quick Drop (CTRL+D for me), and all the Quick Drop short cuts. I've been nicknamed the "Certified Keyboard Finger F***er". Most will not admit that they don't like visual programming because they didn't grow up with it. Most will make up some other excuse so to not sound so suborn. If they do admit that they don't like it because it is unfamiliar, then I think something can be said about new developers who have never programmed anything and see which the majority pick up faster. When you have 8 year olds developing MineStorm robots I think we can agree that visual programming is easier to pick up. I've also had others say they don't like LabVIEW because they don't know what the compiler is doing. And I ask them what the compiler in C is doing? What assumptions or optimizations is it doing? EDIT: Do we have a curse word filter on LAVA? We can swear on the internet right?
  19. I don't think it's necessary to remove a VI before inserting another. In my subpanel applications I rarely use the Remove VI function and I've never seen any memory issues which is the only thing I would be concerned with. With the new properties in 2012 you can even get a reference to the VI that is in the subpanel (Inserted VI Property), this is only useful if you have a VI inserted so you may want to keep the current VI inserted until a new one is selected to be inserted.
  20. For those that don't know if you double click a subVI while holding the CTRL key it will open the front panel and block diagram but bring up the block diagram. This also works when the VI is running (quite handy) but it only works if Auto-Tool is off when the VI is running. As for the topic I basically said my concern in the other thread that it may affect my skill as a programmer if I have less visual ques, between the software function and a visual representation of the software function. If this is compensated or improved with some other feature I'm all for it.
  21. Icon View, Auto-Insert Feedback Node, Auto-Tool, Scripting. The default settings I change on each install of LabVIEW. I'm not saying my views on these features won't change, but I do think that it tells you something about what kind of LabVIEW programmer you are if you only ever use the icon view for terminals. I believe there was a CLAD question once that was something of "What are the main components of a subVI". Likely wanting you to say Block Diagram, Front Panel, but I agree that a VI doesn't really need a front panel. And if I choose to remove the block diagram I guess my VI doesn't really need that either. But at some point I feel like we may lose something. LabVIEW is visual (duh) and as a result I feel like my brain makes connections between the subVI icon and the functions it performs. This helps me remember things very quickly and traversing down the rabbit hole of subVIs seems easy because i remember all their functions visually. Likewise my brain makes connections between the front panel and block diagram and knows how controls on the front panel and indicators are coupled. I started this post wanted to say I was on board with removing the front panel, but now I'm not so sure, unless there is again some visual way for me to understand code in a way that is hard to explain. In text based code I find my self remembering what the code does, based on the shape of the text in that line (or surrounding lines). I feel like I'm a better programmer because of these visual connections, and I hope that if the Front Panel goes away, some new method will be there to replace the visual connection that will be lost.
  22. This might help. It can tell you if a VI is in a subpanel or not, then you can have your code perform different operations on clean up if it is stand alone or not. http://digital.ni.com/public.nsf/allkb/FB79ED8B6D07257B86256E93006E31FA
  23. Okay this makes a little more sense. Typically when I design an application like this, I don't allow my VI in the subpanel to stop itself. I only have the parent VI (the one with the subpanel) insert/remove/or stop the VI. You obviously need some mechanism to tell the parent VI that the child VI has stopped if you are going to allow your child VI to stop running like this. There are many ways to do this, the easiest is probably a functional global with an array of references and an array of booleans or enums keeping track of the state of the dynamically loaded VIs. Then your parent VI can read this global data and know to insert a new VI or use the existing reference. Other things that could work are queues, notifiers, user events, and probably many others.
  24. Does the VI Execution >> State property help at all? The VI reference is still valid, LabVIEW still has that VI in memory even after it stops running so it will remain not Not-a-refnum until the VI is no longer in memory. For instance you could use that reference and call the Run VI action and it would start running again.
  25. Very often I will be working on a VI then get frustrated when the block diagram cleanup button is missing...only to realize that I was indeed on the Front Panel. The good news is Jack already has an idea so I don't need to take the time to post it. http://forums.ni.com/t5/LabVIEW-Idea-Exchange/How-about-a-Front-Panel-Cleanup/idi-p/963556
×
×
  • Create New...

Important Information

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