infinitenothing
Members-
Posts
362 -
Joined
-
Last visited
-
Days Won
15
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by infinitenothing
-
If the red dot is scary, you can just drop in a "to fixed point" in there. It explains the conversion (rounding mode and overflow mode) a bit better. In this case, the output is exactly the same as the input in the same way that 16 is the same as 16.0.
-
3 axis stepper motor controller replacement
infinitenothing replied to Thang Nguyen's topic in Hardware
I don't have a canned solution for velocity profiles. I'm sure there's something nice out there. It might be possible (though, probably there's quite a bit of effort involved) to roll your own controller. You could use a 9401 to output a PWM signal to something like an H-bridge, if you're micro-stepping, you'll have to use another module, maybe a 9221, to measure the current out to the motor, etc. -
3 axis stepper motor controller replacement
infinitenothing replied to Thang Nguyen's topic in Hardware
What sort of interface are you looking for? RS232? What controller are you using? PC? CRIO? Soft motion rather fancy—what sort of features do you need? Just regular acceleration, velocity profiles? Encoders? -
Just scale it
-
Initializing a variable once on the RT side of a RIO
infinitenothing replied to rscott9399's topic in LabVIEW General
If you don't want to use a feedback node, another option is using a local variable (see example below) It sounds like you're trying to process losslessly. If that's the case, you usually need some sort of buffer. In this example, I use the event queue as my buffer. -
Initializing a variable once on the RT side of a RIO
infinitenothing replied to rscott9399's topic in LabVIEW General
Initialization behavior is well defined in the settings of the feedback node. https://zone.ni.com/reference/en-XX/help/371361L-01/lvconcepts/block_diagram_feedback/ I'm not sure what you mean by force. Are you trying to make it into a d latch? -
To clarify the previous post, the two loops can share a wire as long as that wire is an input to both of them. If the wire is an input from one and an output to the other then the loop that is expecting the input will have to wait for the other loop to output the data. If you intended to use that wire to communicate data between the two loops, maybe convert the wire between them to a channel wire?
-
Shared Variable RT FIFO: Logging Application
infinitenothing replied to luiz.felipe's topic in Real-Time
I'm not too familiar with the FIFOs so I can't answer those questions but I noticed your error handling is a little weak and doesn't capture errors while you're inside the loop. Usually you want to run your timed loop at your control rate (some target rate you choose). It's a little less common to try and run it losslessly as you might trying to do. If you wanted to run losslessly, you could maybe set the loop time to 0 or maybe create a timing source from your task: http://zone.ni.com/reference/en-XX/help/371361R-01/glang/create_timing_source/ -
Timing output every elements of a array for loop
infinitenothing replied to SteveSun's topic in LabVIEW General
I think you need to replace your rotate array with another for loop with your wait inside. The inner for loop will autoindex your array and output the values one by one. If you post a VI or a snippet, we might be able to better show you what we mean. -
understanding the execution of a nested case statement CRIO
infinitenothing replied to rscott9399's topic in LabVIEW General
The outer one can't turn true while you're inside of the inner one. It's just like a nested if statement in C. -
It should still work in RT even if it doesn't show up on the pallets. Try it. Or, check out the underlying code and copy that.
-
Basics lesson 1 has that VI in the lower right quadrant. You can also search for the VI by name using quick drop Also, on the help page it tells you the owning palette (Timing VIs and Functions) so you can find that VI.
-
Sub VI called from event structure will not execute
infinitenothing replied to rscott9399's topic in LabVIEW General
I recommend you change your booleans on the main panel to Latch When Released I modified your bool test subVI so it would pop up and stay active until the user closed the panel -
It would really be nice to see some code or even like just the concept to see what you're talking about. Have you seen this VI? http://zone.ni.com/reference/en-XX/help/371361P-01/glang/stall_data_flow/
-
Change the 0 position on my graph (trigger position)
infinitenothing replied to zenvice's topic in LabVIEW General
You can tell the graph that your waveform is offset by using bundle cluster -
I doubt there are plans to fix any of the bugs. Some of them have been going pretty much since the start.
-
Recert by points always seemed like too much accounting effort. I'd do it if there was a website where you could submit the request and have it keep track of everything.
-
Playback file on cRIO
infinitenothing replied to Ratataplam's topic in Application Design & Architecture
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. -
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.
-
Thank you for the tip. The performance seems similar to ZoomFFT.
-
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.
-
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
-
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
-
Dynamic dispatch for refnum of class
infinitenothing replied to infinitenothing's topic in Object-Oriented Programming
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.