Hi all,
I'm new to programming in LabVIEW (at least seriously), so I'm hoping that someone can help me. I'm a grad student working on a research project to do with control of a linear motor. I'm using a 7831R PCI board in a machine running LabVIEW RT Engine. I'm trying to construct a PWM algorithm to drive a 3-phase inverter that goes something like this:
I generate a triangle wave in an FPGA VI (frequency is arbitrary, but I've got it working at 10kHz). The reference signals will be pure sinusoids (for now) with a frequency of around 10Hz (give or take) which come from the VI running on the RT machine. What I need to be able to do is sample these sinusoids (RT VI) at the instant that the triangle wave (FPGA VI) peaks. Then I can send the value of the sinusoid at that time to the FPGA. This single value will be my reference signal until the triangle wave peaks again. I've been able to successfully generate an interrupt that is generated in the FPGA VI & acknowledged in the RT VI, so that I know when I need to "sample" these reference waveforms. However, it seems that when I place any other computations in the RT VI, it misses some (actually most) of the interrupt signals. Also, how should I "sample" those sinusoids--it's important for any transition to occur when the triangle wave peaks to avoid multiple switching signals.
I would appreciate ANY suggestions!!!
Thanks,
Jessie