Jump to content

eberaud

Members
  • Posts

    291
  • Joined

  • Last visited

  • Days Won

    10

Everything posted by eberaud

  1. Thanks. So we are talking about when you have a Dynamic Dispatch method inside the IPE, and not the other way around, right?
  2. Good question, I never really understood that option.
  3. I have some old VIs to which I need to give some love. All the error clusters were unwired, so I am working on that... I am wondering what would be the best practice when it comes to DVR. The IPE structure gives an error cluster on both the left and the right data node. The attached picture shows all the error handling I can think of, but I wonder if it's not an overkill. Here is the breakdown: 1) Outer case structure: If there is an error before going inside the IPE, it just skips the IPE altogether and propagate the error cluster. 2) IPE left data node: I don't need to merge it with any incoming cluster since we are in the "no error" case (what about warning? am I speaking too quickly?). 3) Inner case structure: as long as the code inside it knows how to deal with the error (likely skipping its own code and propagating the error), I probably don't need this structure. What do you think? 4) IPE right data node: in what scenario would it actually give en error? If the DVR is bad, the left data node will take care of generating the error... Is it there is case the DVR becomes bad during the IPE execution? If I wire the right data node, then I need to merge it with the error cluster coming from the code inside the IPE... Any comment more than welcome!
  4. So the leak would come from the variant stored in the shift register?
  5. Actually I realize that even the NI example does generate -816 in its left data node if you add it. The error node coming out of the loop didn't have any error, but if I link the left error data node to the right error data node, then the error node coming out of the loop does have the error as well. Long story short you're right, it always produces an error. Thanks!
  6. Hi, I am trying to abort a timed loop in order to quickly stop the VI that contains it without having to wait for the next iteration to wake up the loop. The example that ships with LabVIEW works fine, but when I do what appears to be the same thing, the loop itself returns error -816: "Timed structure aborted or attempted to execute another iteration of the following aborted Timed Loop.", and the Wakeup Reason left data node is "Normal". When I run the example, there is no error and the Wakeup Reason is "Aborted". Does anybody know what could be different in my code? It's a complicated VI with a lot of code inside the loop, but I believe all that code is unrelated... One difference with the example is that the Abort function is in the same VI as the loop in the example, whereas in my case it's inside a separate VI, but that should still work, right? Thanks for your help!
  7. Dear all, My company is hiring a new developer to join our software team. Please see link below for details and to apply. http://www.greenlightinnovation.com/company/careers/articles/225.php
  8. A few comments on the LabVIEW code in general: - You don't have anything that paces your VI (such as a Wait until next multiple), so your VI will run as fast as it can, putting an unnecessary load on the CPU - Instead of initializing and clearing the task inside the while loop, you can perform those tasks outside of the loop. Look at the examples that ship with LabVIEW
  9. Quick off-topic comment: in AddError.vi you unbundle then rebundle the 'status' and 'source' elements of the error cluster. I strongly suggest using In-Place-Element structures when you have this kind of situation, it optimizes the performances and also makes the code more readable. Back on topic: - I think any error or warning should always be logged as it is a very valuable source of information during troubleshooting. So maybe the 6th type of severity rather be "log only" - Your architecture combining priority and 6 types of severity looks nice and powerful, and you coded it well, but like any "fancy" error handling architecture I'm always afraid the over-complication could lead the developers not to use or to misuse them. I'm also in the midst of re-working the error handling in our main application (2000+ VIs) so I sympathize. It's tough!
  10. Hi Shaun, I also see that you use Error code 0 for warnings. However most places in LabVIEW consider 0 as "No error and no warning". Warnings still have an error code, and what differentiates them from errors is the error? Boolean. Am I mistaken?
  11. I like having both systems. In some forums I want to be able to "discuss" best practices, ask about people's experience with a certain technology, and so on. In some other forums I want to be able to ask "What are the key differences between a Timed Loop and a While Loop". People might have different answers, and I'll mark my favorite one as "Best answer". The other people will be able to vote for their favorite ones.
  12. I visit LAVA everyday and either quickly check or thoroughly read all posts, depending of my interest/knowledge in the topic. This is my #1 source for keeping my skills up to date, LAVA must stay!
  13. Wow I should have a closer look at that intensity chart, impress my boss... What is it usually used for? (a bit of a digression from the initial topic...)
  14. I like your "Probably Random" indicator, I should put more of those in my VIs
  15. Believe me or not, I actually made this inadvertently! I'm sure it would have taken me much longer to achieve the same result on purpose!! Anybody has examples of unexpected beautiful graphical renderings made with LabVIEW?
  16. First thing to make sure of is that whatever code creates the DVRs stays alive across the whole application's lifetime. Is that the case?
  17. I also exclusively use XY graphs, even for graphs where the X axis is just the time. It provides so much flexibility...
  18. Also be aware that LabVIEW doesn't like that much overlaying controls in front of a graph, that makes its rendering job much harder.
  19. Thanks for replying. I'll go to the pub directly and see if I can meet fellow CLAs or NI staff!
  20. I am attending the CLA summit for the first time next week. I'd just like to check if anybody here is going as well and if you'd be interested in meeting on Sunday evening and then heading to the Sunday night social together
  21. Thanks. I guess I might have found a particular situation because of nested libraries:
×
×
  • Create New...

Important Information

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