Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 05/10/2017 in all areas

  1. Wouldn't you really want the convolution of the two XY signals? Getting the 4 into 2 would be a matter of converting the XY pairs to a waveform (untested VI attached). Convert XY to waveform.vi
    1 point
  2. Thank you for your answer. Yes indeed, the debug is difficult in the case you're using VeriStand : you have no way to get the RT VI FP when it runs on the target. File is an idea but you can only read it when th execution is done, not 'live'. In MAX you have the console option, yes. But it only enables sending strings on the serial port.
    1 point
  3. Yeah that's what I do. I read the build version from the file and display it in the about screen. I've also thought about pulling in the file creation date which if you are using an installer to install your software, should be the date the EXE was built, and not just the day you copied the file to the computer. I also set the build number with a pre-build which is the commit number in SVN. So then you have the major, minor, fix number, along with the commit for source code control, and the file creation date all in the about screen, and reports that are generated so you can look up what source code went with what software.
    1 point
  4. No I meant integrate, which is the area under the curve. So comparing the area under the curve for some set amount of X time on the first waveform to the same amount of time on the second waveform, and perform the integration then subtract the two and you'll get the difference between the two waveforms for that period of time. When that number is the minimum for a range of values that that is where the two should line up. I think the amount of X time can just steadily increase. So look at the first 0.01 of waveform 2 and the last 0.01 of waveform 1. Perform integration and see the difference, now the first 0.02 of waveform 2 and the last 0.02 of waveform 1 and do the same. Of course you can do smaller slices of time. Attached is the code that I think does this operation. It looks at the length of time the second waveform has, and performs the integration on the two waveforms 100 times, with ever increasing X length. Then it finds when the two waveforms had most similar integral on that period of X. This 100 is again arbitrary but can be easily increased if you want more precision, it will just take longer the more slices you are using. Detect Waveform Alignment 2.zip
    1 point
  5. You're beginning to sound like a customer. 10 Points is arbitrary, 0.5 tolerance as well I figured those could be adjusted as needed. I was just trying to come up with a slightly more robust solution while making some assumptions until more information came in. The non-even X would complicate things for sure. Having to perform more of an integration between times, and then look for when the subtracted integration between two lines at moving X is the minimum. But again I'd need more information about the types of overlap we are expecting. Can we always assume the second half of the first waveform is intended on overlap the second waveform? That would help simplify things a bit. Honestly most of my assumptions were based on the idea that these were two sets of data read from some analog device with hardware timing. Like an AI DAQ device, which is why I did it the way I did. The integration solution is probably a better way to go since it sounds like that is not true
    1 point
  6. Oh sure there are tons of ways to do this with 3rd party tools. My favorite happens to be one I helped develop posted here. With it I have been able to run a VI on a remote system which generates an HTML5 webpage, which I can view using chrome on another desktop, or my phone, or firefox running on an embedded Linux RT target. It has several limitations, like all clients connected will see the same UI but it is all open source and could be updated to your needs. Here are a list of other options, most of which I can't speak to the feature set of. As far as I know all of the official ways to do this (other than the new hottness teased at the last NI Week) all require some part of the run time engine to be installed.
    1 point
×
×
  • Create New...

Important Information

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