10-04-2018 12:13 PM
Hello,
I'm having a triggering issue with the following VI. I use 2 PXI cards: an SMU and an AWG, and the major steps are described below:
The AWG is set in script mode:
- The script starts on scripttrigger0 which is set to wait for a trigger on PXI trigger line 0.
- The script returns a marker event (1) that is exported to PXI trigger line 1 as the last step of the script.
The SMU is set in sequence mode with a finite sequence loop count:
- The Sequence Advance Digital Edge is set to wait for a trigger on PXI trigger line 1.
- The Sequence Iteration Complete Event is exported to PXI trigger line 0.
- After initiating the SMU, there is a Wait for Event for "Sequence Engine Done Event"
The first iteration of the SMU in sequence mode is supposed to start even in the absence of a trigger, so I don't need to send an initial event on PXI trigger line 1, and I'm expecting the SMU to trigger the start of the AWG script and so on and so forth, until the last sequence loop count.
The problem is: the sequence does not loop, it gets stuck if I set more than 1 Sequence Loop Count. I have checked that the AWG script works properly by exporting the marker event (1) to an external physical port and using a scope, so I don't understand what I am doing wrong.
The timeout for the wait for sequence engine done event is also not an issue, I have tried increasing the value and the problem remains the same.
Any help would be greatly appreciated.
Thanks,
Michael
10-05-2018 08:56 AM
Hey MichaelT,
Have you been able to do a similar test on the SMU portion of the code to ensure that the iteration complete event is being captured? I am also wondering if there was a particular reason why you have your code structured with a flat sequence structure. I imagine it would be possible to do it this way, but I would assume it is much simpler to see what is happening and understand flow by avoiding sequence structures altogether. The NI-DCPower Sequence Multi-Channel Synchronization shipping example gives a decent idea of what that might look like, but the main thing to ensure is that the master device starts after the slave device. I would suggest taking a look at that example and seeing if you can apply a similar flow to your code. Other than that, taking a look at the NI-DCPower help information in LabVIEW under Help >> NI DC Power Supplies and SMU is a great way to get a deep understanding of the underlying processes. One particularly useful section here is under NIDCPower >> Programming with NI-DCPower >> Features >> Sequence Source Mode.
10-11-2018 07:27 PM
Hi Hunter,
Thanks for your reply and suggestions.
So, I used a sequence structure in that sample VI, because in my actual test programs, I initialize the AWG in the beginning, then keep updating the SMU part.
I eventually figured out what the problem was: the AWG script would only be triggered once. I just needed to add a "repeat forever" loop, so that the script would keep waiting for a trigger even after the first iteration of the SMU sequence.
Best regards,
Michael