Closed JustinLangridge closed 8 years ago
Signal is coming out of PFI12 where as we were expecting PFI8 of the 6225(1) card. Since you want the counter output I guess this can not be changed to PFI8?
Isn't this a PWM signal? If so, it needs to be a counter or we will have issues generating this signal.
The task is set up to fire out a single pulse. Where is the pulse firing and setup controlled from in the labview code?
Pulse? I am not following.
This output doesn't need to be PWM. I'll detail below exactly what we need to fire out to the ozone lamp - if you can make this come out of PFI8 (be it as a counter output or bog standard DO) that would be excellent.
Basically the ozone lamp drive electronics are configured to accept pulses. All that matters is the frequency of the pulses - the pulse width is irrelevant. Thus if we fire out 5 pulses a second, we'll fire the lamp 5 times a second, if we run at a 1kHz we'll fire the lamp 1000 times a second. All the electronics look for are the number of rising edges per second.
Could we do the following:
A few kHz is tight for this. If you run on a non-counter output, the problem is that you rely on the system to keep up at whatever rate for your bit flipping. With a counter output, we can setup pulse trains that don't rely on the CPU. We can also do this with the FPGA.
Think we are going to be stuck with using output on PFI12 Matt as the hardware switch of the channels is not going to be possible. We can test the setup once code is in there
We will do the best we can. I can't guarantee we can reach frequencies above 1k reliably. We shall see.
Added new entry in CVT for calibrations: calibration.active
has a boolean value. This is set to FALSE
at startup.
So, not quite sure the best way to implement this. We can do this software timed in a Timed Loop
, but it is unclear to me whether this is the best way. I think that I am going to get in touch with someone at NI about this.
I added an Actor to the Calibration
library called O3 Frequency Train Actor
. This may not be necessary if we can just specify a waveform that is generated at a particular frequency.
So, we are able to adjust the output on the O3 lamp counter DO. Did some testing with Justin yesterday and found that it may not be possible to achieve the rates necessary for adjusting the O3 output without a counter. Need to add the UI elements. The web service VIs for this are under Calibration
:
O3LampFreq
- will adjust the loop time in the software that toggles the DIO for the lamp input. If you set the value to 1000, the timed loop will wait (theoretically) 1000 ticks on the 1 MHz counter before continuing.RunO3Lamp
- this allows the user to send a signal to the lamp. The default signal is low if this value is currently 1. Need to change this so that it is the case when it is 0.Dave has played with the timed loop part of the code today - we can now get up to around 5kHz reliably. Thus the digital output for driving the lamp part of this issue is now looking good.
OK...it looks like what he did was simply remove one of the notifiers (frequency notifier) and has a separate loop to pump the variable into a FP indicator. The main loop then tags the local variable. Amazing difference in the rates that loops can run at...
IF you are ok with this, I wan to close this issue and add the UI controls for this now.
Yes we can close this issue now. Will do that now.
Have started looking at the O3 lamp power control task in MAX. Some questions: