Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by infinitenothing

  1. Yes, what you're doing is super common. It might be worthwhile to use the TDMS file format instead of a spreadsheet file. It's a very easy format for recording and playing back data. I'm a little curious why you're using a CRIO. It's not a bad choice but something a CDAQ could be simpler.
  2. At this point, AutoCorr is working well enough and I'm just curious about the advantages and disadvantages of different methods. My signals are rather noisy so it's not always super clear how far back the "start" is from the trigger.
  3. Thank you for the tip. The performance seems similar to ZoomFFT.
  4. Interesting. I've seen its use in things like GPS. Actually, in my particular application, I'm not tracking a frequency. There's some "dead air" which I simulated above with the zeros and then the signal which is unrelated to the previous signal. Does that rule out Kalman or am I misunderstanding how you'd use it. I have the platform suite so I think I have the control design toolkit. Mhmm..yeah... I know some of these words. 😉 I'll take a look at some of the algorithms they mention.
  5. I tried a few different ways of estimating frequency and I thought I'd compare them. If anyone has some other ideas or links to other techniques, I'd like to see how they perform. Techniques used the VI: Zoom FFT PSD AutoCorrelation Frequency Estimation.vi
  6. You have a few options. Use a radio control if the booleans are mutually exclusive Combine the booleans into an array and then convert that to a number Nest your case structures
  7. Maybe I should have tested this before I posted but if I switch Enque Serial Number to a .vim, the broken wire resolves and everything works out. Neat! I wonder if there are any unintended consequences.
  8. No, the queue only contains elements of the child class. I guess I could switch my queue over to the base class. It just seems a little better to use the most specific class possible and I don't understand why the refnum input can't be made dynamic
  9. I'm not clear how adding another dynamic dispatch input solves my problem. The queue ref is still statically dispatched and will only take a queue of the parent class. In terms of intent, I'm looking to improve reuse. Rather than writing an enqueue function in each child class, I just want one VI to handle that.
  10. I can post a project but I'm hoping this image makes clear what I want to do. I want to be able to reuse my StartRun's Enqueue Serial Number in the same way that I'm able to use StartRun's Write Serial Number for its child's object.
  11. I'm referring to the dynamic dispatch terminal setting being unavailable (see below). I was hoping that I could wire a queue of ChildA or a queue of ChildB into that terminal and it would autoadapt (assuming ChildA and ChildB inherited from the StartRun class
  12. I want the children of the "start run" class to be able to use this method but I'm noticing it doesn't let me set the queue refnum input to dynamic. Is there some other way to accomplish this?
  13. Nothing sticks out to me. Have you tried the memory profiler to see what subVI is giving you problems? http://zone.ni.com/reference/en-XX/help/371361P-01/lvdialog/profile/
  14. To clarify the second image was posted before the forum update. Here's the thread: https://lavag.org/topic/20671-programmatically-select-all-boolean-best-way-to-avoid-race-condition/?tab=comments#comment-125949 So, I'm guessing the forum is stripping the metadata on upload now. I reposted that image in this thread by copying the link into the editor box. The box "embedded" the image for me automatically.
  15. I want to clarify that as far as I know there's no standard way to store an image in a SQLite database. That is, @Gepponline, your question has nothing to do with SQLite much less this toolkit. As far as we know, SQLite Administrator uses a proprietary binary format for storing the images as blobs. You should really go to that community to determine what that format is. Unfortunately, that project looks like it was abandoned with no source code available so you might just be out of luck.
  16. The "Data Changed?" property of the action output doesn't trigger the data change event. You have to do that manually. The data change event is triggered when the control is accessed as an indicator, property node, local, etc.
  17. I can't get snippets working. Did they die in the recent site update? Example: I use the editor that shows up at the bottom of the thread and the "choose files" link. Using Chrome.
  18. I suggest you break your question down into parts as different threads and forums will be able to answer each part better. It looks like your SQLite stuff is correct and your issue is just flattening and unflattening so the machine vision forum might be a better place to ask for help. In the interim, here's one way to do your flatten unflatten using the IMAQ toolkit.
  19. The attached code shows how SQLite will interpret various types into an integer. It makes me a little nervous that there's no warnings or other way to determine that a value might not match what was requested. I guess I could check every value for its column type. Is there an easier way that I'm missing?
  20. I believe they are in the reference array according to the tab order You either have to know the names in advance or carry their names with their values.
  21. No, it will break if you try and convert a U8 into U16 so it's a little conservative in that manner. The programmer would be expected to do the U8 to U16 upstream to "get rid of the broken arrow". It would be really cool if there was a way to allow all the "safe cooerces".
  22. Coerce to type is useful for getting nontypedeffed data into a typedef form but there's a small problem of type safety. For example, if you try and coerce an I32 to a U8, the value will silently wrap without even so much as a coercion dot. But in recent versions of LV, we have something to ensure a little safety— "Assert Structural Type Match" And fortunately, for this use case, it's not so sensitive as to disallow typedeffed data from matching it's plain counterpart so we can use it to enforce a runtime error if someone wires an I32 up. And, to make this new function more convenient, you can wrap it up in a VIM.
  23. Search the downloads page on their site or try this: http://search.ni.com/nisearch/app/main/p/bot/no/ap/tech/lang/en/pg/1/sn/ssnav:dwl/q/vivado/
  • Create New...

Important Information

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