Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 01/27/2011 in all areas

  1. Hi Last November I took part in the UK NI Days as a guest presenter, to present alongside David Fuller of NI in a session about "What's New in LabVIEW 2010". I did a small section about why we were upgrading to LabVIEW 2010, basically about the Separation of Source and Compiled Code and covered a little bit about our Software peer review process. The presentation Video has now been put up on the Web, so I thought in the spirit of giving something back I would post the link up here in case anyone is interested. Whats' New In LabVIEW 2010 NI Days 2010 <table> <tr> <td style="vertical-align: top; width: 80px;"><img style="border-right: 3px solid #333;" alt="" src="http://scpro.streamu...images/0104.jpg" width="75"></td> <td style="vertical-align: top; padding-left: 10px; font-family: Arial,Helvetica,sans-serif; font-size: 11px; line-height: 1.6em;"> <p style="margin-top: 0px; margin-bottom: 0px; font-family: Arial,Helvetica,sans-serif; font-size: 11px; line-height: 1.6em; font-weight: bold; color: #333; width: 300px;">NIDays 2010: What's new in LabVIEW 2010</p> <p style="margin-top: 0px; margin-bottom: 0px; font-family: Arial,Helvetica,sans-serif; font-size: 11px; line-height: 1.6em;">David Fuller, Director, NI Danny Thomson, Motorola</p> <p style="margin-top: 0px; margin-bottom: 0px; font-family: Arial,Helvetica,sans-serif; font-size: 11px; line-height: 1.6em;"><p>From: NIDays, London, 9 November 2010. Software and Data Acquisition session. Learn how you can improve performance, and find out how solutions-based on NI products can save you time and money without sacrificing flexibility and longevity.<br /></p><br> <p style="margin-top: 0px; margin-bottom: 0px; font-family: Arial,Helvetica,sans-serif; font-size: 11px; line-height: 1.6em;">2010-11-09 00:00:00.0 National Instruments Channel</p> <p style="margin-top: 0px; margin-bottom: 4px; font-family: Arial,Helvetica,sans-serif; font-size: 10px; line-height: 1.6em; font-weight: normal;"><a href="http://tv.theiet.org/channels/ni/9985.cfm[url=http://tv.theiet.org/channels/ni/9985.cfm][/url]" style="padding-right: 1.5em; text-decoration: none; color: rgb(119, 125, 128);" target="_blank">>> go to webcast</a></p> </td> </tr> </table> Please excuse the odd tripping over my works, it is my first time presenting. I must say it was quite fun thought I did not think so at the time :-) cheers Dannyt
    3 points
  2. Actually, it is. In the BD page, there's a transparent free labels check box.
    1 point
  3. My LabVIEW default is yellow with black border. I think there is an option to toggle between transparent and the above. Anyways, I have a package that contains various comment styles amongst other things. I even have one called 'JKI comment' which is the bold title with plain text comment underneath, all centered. I really like that one. Crelf told me to use the OpenG one though, cause that's what real programmers use
    1 point
  4. Just select all the labels and then select the font size. They'll all be updated at once. George
    1 point
  5. You could also use graph cursors or annotations, and position them just under your bars. That would look decent enough if you set the Yscale min to -1 rather than zero, and then you could put the labels at Y = 0.5 or something. You'd fill the bars down to zero rather than down to -infinity. You would have a few compromises with the appearance, but the zooming &c.would all work. Bar Graph With X Labels.vi
    1 point
  6. That's a great question, and one that comes up frequently. You're absolutely correct -- if the state machine is off processing a long list of queued states that take a long time to execute, it won't poll the Event Structure until those states finish executing. The implication, then, is that if you want your JKISM to stay responsive, the states in your state queue need to always execute quickly. So your observations are dead on . Sometimes, though, you've got operations that just take a long time, right? The way to handle this with the JKISM is to move long operations to a separate loop or refactor them so you can poll the Event Structure frequently. Two examples of how to do this: Data Collection That Takes a While Say you've got a data acquisition operation that takes a few seconds or more. In this case, I'd put the acquisition in a separate loop (it could be another JKISM, or simple asynchronous loop driven by a notifer or something). Then your JKISM's state flow could look like this: DAQ: Start << sends notifier to start acquisition DAQ: Check for Data Ready << checks a return notifier from the asynchronous DAQ loop to see if the acquired data is ready yet. If not, it executes:Idle << go back and poll the Event Structure DAQ: Check for Data Ready << then come back to the same state to check the notifier again This way you're passing the slow work of data acquisition off to an asynchronous loop, while your UI/main logic loop remains responsive. Waiting for a Motor to Move Another common use case is sending a motor on a long move. In this case, we don't need the extra asynchronous loop because the motor itself is probably asynchronous (unless you're unlucky and your motor library is crap ). The state queue in this case still looks similar to the first one: Motor: Start Move << start an asynchronous motor move (assuming your motor supports it) Motor: Check Move Done << read the motor's "In Motion" or "Move Complete" flag (again, assuming it has one) to see if the move is complete. If not, execute:Idle << go back and poll the Event Structure Motor: Check Move Done << then come back to the same state to check the motor again Note that in either of these cases you can also add extra logic so that waiting for the DAQ or the Motor can time out with an error if the operation takes too long, etc. You can even use the Event Structure itself to communicate between the loops -- for instance, in the first example instead of sending data back in a notifier, you could send it back in a User Event. There's a lot of flexibility depending on what the specific application requires. So to get back to your original point -- yes, the JKISM is built with the assumption that states generally execute very quickly. That imposes some requirements on what the states themselves do, and biases your application in general to be very parallel, asynchronous, and event-driven. Hope that helps!
    1 point
  7. SCC Rocks! I am a single developer and don't use a server. I have the repository for each project on my hard drive. See this blog post for more info This model works great for 1 person because the "server" is easy to set up. However if you have a team of developers I think you would have to use a server. Good luck with TortoiseSVN I have been using it for a while and am very happy with it.
    1 point
×
×
  • Create New...

Important Information

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