Jump to content

infinitenothing

Members
  • Posts

    371
  • Joined

  • Last visited

  • Days Won

    16

Everything posted by infinitenothing

  1. Something like this but with better reference handling?
  2. What happens when you threshold your "edges" image? Can you just use particle analysis to "fill holes" on that img? Alt path: It looks like a regular threshold should work on your ROIs if you manually select the threshold right? Maybe do an erosion to get rid of the small particles? If that's the case maybe you can find some safe areas where you know there won't be any white? The corners maybe? Use that to set your threshold.
  3. Can you tell us a bit more about what your desired measurement is? Are you just trying to get the area of the white stuff? Usually, you want to make this work as easy as possible for the software (crap in crap out principle) so you want to control the lighting and have a fixed ROI. Secondly you might want to use an auto threshold method so that it dynamically changes if the lighting control isn't perfect. Third, you'll notice the top of your image is much darker than the bottom. Your eyes are really good at subtracting shadows. Here's an example illusion based on that effect. You'll need have a different threshold for different parts of the image (preferably a gradient) to compensate for this.
  4. Since you're facing a "cosmetic" issue, string manipulation seems OK. If you need rounding, you'll have to get really clever and maybe count how many characters exist to the left of the decimal and use number to fractional string.
  5. Maybe the dev board is talking TTL levels and you need a level shifter? Something like this: https://www.sparkfun.com/products/449
  6. Do you have any extra channels? Just throw two in parallel and sum the currents* *Warning, following electronics advice from random internet patrons may blow up your equipment
  7. You need to convert your array to a list of coordinates and pass it to the linear fit function.
  8. Is there a reason to use named queues? If I ever want to grab a reference to a queue without a wire, I just call a non-rentrant VI that looks like the attached code The advantages are: One place to setup queue size No typos Can output multiple refs What are the advantages of a named queue? Dynamic queue selection Anything else?
  9. What do you mean by "it times out"? What's timing out? what soft of rate do you want from your top VI? What's the motivation for separating the loops?
  10. Yes, I agree with the above. You need to unflatten to singles. If you're still having trouble, can you switch that indicator to show you hex (right click, select hex display) and paste a few lines of that here? Even better if we know what the correct values would be (for example, you could send an array of "1.5")
  11. Do you ever come back to something super cryptic like "Open draft update node" and are like "WTF does that mean?"
  12. I would push the data from C# to LV using UDP or TCP/IP. It should be quite fast.
  13. I'd rather have broken code in the repo than code that works 80% of the time or a missing subVI. My most common "break" is to leave some simple minded wiring TBD as a nice warmup for the next morning
  14. Here's another attempt: https://decibel.ni.com/content/docs/DOC-39565 It's something I think many developers want to do but it's going to need some more infrastructure to make it efficient to run and easy to use.
  15. I agree it's a good use case for bookmarks. However, it requires that I remember to check bookmarks at the start. I tend to be in autopilot in the morning.
  16. Does anyone else break their code so it won't compile at the end of the work day so that the next morning you open your project and follow the broken run arrow to what you were doing?
  17. Thanks for fixing the conflicts. The new package works for me.
  18. You can tell the flush event queue to flush all but the last one. It also outputs the number of events that were flushed so you can use that to detect you're at the end
  19. A little bit off topic but if you wrote this sequence in TestStand, you'd already have HTML report generation by default. You'd also have a database, user logins, etc.
  20. I've made some things like this. Usually I've used a tab control with the common controls floating over and the custom controls on their designated pages. The tab change event would sometimes hide or re-caption certain common controls. If you want another function, I'd make another tab page fill out the captions and visible flags. You need to send that over TCPIP? no prob, just send the function and a flattened cluster of the page contents or even send each individual control on value change. Not infinitely expandable or perfectly decoupled but it got the job done.
  21. It's really a risk calculation. You have to anticipate what are the odds that down the road you'll want some feature (programmatic access? in place editing?) that globals can't easily provide. If you think you have a 10% chance you'll need that and it would take your 40 hours to pull out all your global and put in a better data type, you'd need to save 4 hours of development time to justify using a global. Maybe you should put in a fudge factor for unknown unknowns. So you'll want to save 40 hours of dev time to justify their use.
  22. It's building a listener list (no time stamp) but it's not stored in the internal state of the WFN. It's limited to how many nodes you have (like you said).
  23. Your peak detection may work better if you increase the peak width setting. The sine waves are flat at the top and don't look all that peaky if you just look at a narrow section.
  24. You're not supposed to get notifications that occur between WON if you set the ignore flag to true are you?
  25. You're going to have to give us some more examples of the echo so we know what to look for. If it always looks the same you can use the cross correlation of a "good looking" echo segment vs the waveform you want to search. The x location of the peak of the cross correlation will tell you where they line up (the start of your echo). http://paulbourke.net/miscellaneous/correlate/
×
×
  • Create New...

Important Information

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