PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

how to export via pxi star trigger to multiple dvices

Solved!
Go to solution

Hello,

 

I have huge difficulties make this work and free time for trying rarely. Attached is my unfinished VI (SyncTrig - Test.vi) that needs to synchronize 9x PXI-4472 & 1x PXI-6713 on chassis PXI-1006 (consisted of 3x 6-slot busses). ST master in slot #2 is DSA (PXI-4472), the rest 8x DSA are inserted in slots #3-#10, and MIO (PXI-6713) is in slot #11. I need MIO to generate 2x AO signals (ao0:1 or ao6:7) of arbitrary length. The DSAs acquire 72x AI channels simultaneously until the last AO samples pair is fired (AO and AI work on same rate),

 

I understand there are 2 ways to cynchronize all these devices - to use 10MHz reference clock  from the backplane, or the Star Trigger bus. The ST master's start trigger is supposed to start all 10 devices. I could not make the "reference" examples work and I managed to make the "StarTrigger" example work with 2 devices so I decided to stick with the latter. Of course, I expect trouble to export usable SampleClock to the PXI-6713 and hope to get help on this forum.

 

Following are my 3 questions/dilemmas:

 

1. bundling more DSAs into a single task & exporting clock via ST to all of them

I have separated the ST master in the UpperTask to export SampleClockTimebase via the ST bus and StartTrigger via the backbone. The rest of the DSAs are bundled into a single MiddleTask since NI-DAQmx allows it for this type of PXI devices. In the VI, UpperTask exports to a single PXI slot.

Is it possible to format the string to export clock via ST to multiple (all of the) DSAs so they can all recieve it  bundled in the single MiddleTask? Or must I use a for-loop to export the clock timebase 8 times and feed it 8 times for all slots #3-#10?

Please be specific.

 

2. synchronizing MIO with DSA ST master via ST bus

How can I use the TimingNode to implement SampleClockTimebase division so that the PXI-6713 can use it in slot #11 (LowerTask)? If that is not possible via the ST bus, can someone please show me which TimingNode(s) to use to export usable clock from ST master and feed it to MIO to synchronize AI and AO tightly?

 

3. PXI chassis triggers

I have left triggers 2-7 as "dynamic" to be available to NI-DAQmx. Is this sufficient for the above depicted setup, since PXI devices occupy 2 of the 3 independent busses in PXI-1006?

 

BTW,  I have tried a different approach (SyncTrig - No AO.vi) but the LowerTask repors error just after its feeding TimingNode.

 

Dear colleagues I hope to affirmative responses since documentation is completely lacking on DAQmx PXI synchronization and one completely depends on WEB resources.

 

Thank you in advance,

Download All
0 Kudos
Message 1 of 31
(6,474 Views)

Hello Golubovski,

 

If I was going to do this synchronization I would start with this example:  Synchronizing a DSA Device with a MIO Device Using Different Sampling Rates  I would expect it to work if you use channel expansion in the top task to include all 9 DSA cards and then change the bottom task to be AO for the 6713.  With that being said, your method should also work using one 4472 as the master for the other devices.  It would be very helpful for troubleshooting if you can provide specific error codes that you  receive from these VIs.

 

With regards to your specific questions:

1.  I would expect that the driver would handle routing this signal to each device if you just import the clock for the whole task-Moreover, I would just leave all 9 devices in the same task if possible.  If this is giving you an error can you please provide the specifics of it?

 

2.  The example I liked above uses the reference clock-This is what I would use.

 

3.  Please see these two articles for more information on configuring these triggers:

PXI-1045 and PXI-1006 Trigger and Synchronization Facts

Routing PXI Trigger Lines Across the Buses of Multisegment PXI Chassis

If this does not resolve your issue please post back with more information about the specific errors that occur so that we can troubleshoot.

Cheers,

Brooks
0 Kudos
Message 2 of 31
(6,446 Views)

Hello Brooks,

 

Thank you for the prompt response. I have a real trouble identifying the property nodes I need to use (due to their high level of implicity and abstraction) and I am starting to lose confidenc! The example you mention is exactly the one I have started with because my previous solution with the Traditional NI-DAQ worked perfect exactly via the ST bus and the same cards.

 

The "SyncTrig.vi" reports error [-89139] after the"DAQmx Start Task.vi" in the MiddleTask (AI slaves) (even with all 8 triggers being "away from slot 1")!

The other VI fails with error[-89125] after the "DAQmx Start Task.vi" also in the MiddleTask (AI slaves)!

 

Can you please be more specific on your ideas before I try them?

 

1. single AI task

If I put all 9 PXI-4472s in a single AI task how does the PXI system know that I need to use the StarTrigger with the [SampleClk.Timebase.Rate]? Is it implicit? If not - how do I export theat ADC clock to all 9 or 10at once (with formatting a single string for the <DAQmx Export Signal> node)?

 

2. AO task

Can you tell me explicitely how to use (divide down) the [SampleClk.Timebase.Rate] from the DSA ST master - which <DAQmx Timing> node?

 

3. PXI Triggers

I was under wrong impression that "dynamic" means "left for the NI-DAQmx to handle as needed"! Since I plan to broadcast [ai/ Start Trigger] for triggering the DAQ operation is it enogh just to leave all 8 triggers to be "away from slot1", or need I export that signal explicitely like in the Traditional NI-DAQ?

 

As you can see,I know what I have to do but I don't know how.

 

Thanks in advance,

 

Roman

 

Message Edited by golubovski on 11-27-2008 10:02 AM
0 Kudos
Message 3 of 31
(6,440 Views)

Brooks,

 

I have done what you had suggested - single AI task for all 9x PXI-4472 and a single task for the AO operation of the PXI-6713. The VI reports error in highlited execution, after the <DAQmx Write.vi> with the following msg:

 

"Error -89125 occurred at an unidentified location"

 

LV suspects that no trigger is available on the chassis, I guess due to the StartTrigger preparation just before that! In MAX, all 8 triggers are configured to route "Away from slot 1"! As far as I understand, this way all of them are non-reserved for other drivers and available for the NI-DAQmx!?

 

Attached is the modifed "SyncTrig - Test.vi" according to your advices. The AI task embraces all 9 DSAs (ST master in slot #2 and slaves in slots #3 - #10).The DAQ is indefinite and continous and will be terminated in the while-loop when the signal generation ends. There are 4 configuration steps in AI task afetrwards:

 

1.  "DAQms Timing" node selects the [SampleClk.Timebase.Rate] for exporting via the ST bus. I guess it implicit that only slot #2 can be its source!?

2. Then it is exported by the use of "DAQmx Export Signal" node to slot #11 where the MIO (6713) resides.

3. Then it is imported by the whole AI task - is this mandatory or already implicitely performed by the NI-DAQmx engine by grouping all slave devices into  single AI task?

4. Finally, a proper [ai/Start Trigger] string id formatted to be used for StartTrigger for the AO task.

 

No errors in the AI task so far!

 

The AO task configures Finit-SIgnalGeneration. Than a <DAQmx Start Trigger.vi> configures the AO task to start upon receiving the [ai/Start Trigger] from the upper AI task and reports "OK" during the highlited execution! Then the <DAQmx Write.vi> receiving the 2xAO reports the error -89125 implying the triggers availability!?

 

 I have 3 questions:

 

1.

How to import and divide-down the ST clock since 6713 cannot use it AFAIK according to its manual?

 

2.

Is the AI task OK or is the  clock-import redundant and unnecessary?

 

3.

Can you help me debug the error problem?

 

Thanking you in advance I look forward to hearing from you,

0 Kudos
Message 4 of 31
(6,416 Views)

Brooks,

 

If I remove the ai/StartTrigger from the diagram as the source of the previous error -89125 new error and error sources appear - with or without the PXI-Star import in the AI task, <DAQmx Start Task.vi> becomes the error-source and error now is -89160!

 

I know that all slots in use are ST capable, I know that 6713 cannot be ST master, but the error is generate din the AI task.

 

I am really frustrated with tha lack of proper manuals for the PXI issues. Examples never cover majority of real-life situations and I feel like official supporting instances avoid helping me.

 

Hope to hear from you.

Sincerely,

0 Kudos
Message 5 of 31
(6,415 Views)

Hello Golubovski,

 

I do not have access to 9 PXI-4472's however I did get this to work with two 4472's and one 6723 so I would expect the same approach to work in your situation.

 

I used the example I mentioned in my earlier post, but I did find one problem--the "Get Terminal Name With Device Prefix.vi" is returning the wrong device for Clocks:Sample Clock Timebase:Output Terminal Property.  Rather than using this property you should just use a control to specify the 4472 in slot 2 and the star line for the slot that the 6713 is in.  For example, if "DevA" is the name of the 4472 in slot A and the 6713 is in slot 11 then this property should be /DevA/PXI_Star8 since DevA is in slot 2 and the Star line is the slot number minus three which is line 8 for slot 11 (The star line starts at line 0 for slot 3).

 

Once I changed this input I was able to convert the bottom task to AO and channel expand the top task to include two 4472's--while I wasn't able to test this with more than two DSA boards, it should work.

 

Cheers,

Brooks
0 Kudos
Message 6 of 31
(6,391 Views)

Brooks

 

Thank you for your efforts to test my problem which I am sure took you some time. I read your last post but since my english is not perfect and my understanding of the NI-DAQmx not deep at all, I am not sure which control for explicit definition of the ST master are you referring to (though I follow the numbering logic of the ST topology). There were also my questions regading the necessity of the ClockTimebase import into the task if it already embrace the DAS master along with the rest of DSA slave; as well as the AO clock synchronization (in traditional NI-DAQ I had to use a trigger line to divide down DSA AI clock via a counter on the MIO device).

 

Can you please post your working example so I can understandyou exactly?

 

Sorry for the inconveniance and thank you again.

Roman

Message Edited by golubovski on 12-02-2008 12:15 PM
0 Kudos
Message 7 of 31
(6,381 Views)

Hello Roman,

 

I was actually going to post it with my first post, but I had forgotten to save it.  I went ahead and rebuilt the VI--one thing to note is that you need to have all your devices in the first 14 slots in order to use the PXI_Star lines, as long as you do that this should work for you.

 

Cheers,

Brooks
0 Kudos
Message 8 of 31
(6,371 Views)

Brooks,

 

I have modified your VI according to your advice and suggesstions as you can see in the attachment (9x PXI-4472 + 1x PXI-6713)! However, the problem with ST slot mapping stil persists, the AO task generates error [-89125] with the following msg:

 

*************************************

Possible reason(s):

No registered trigger lines could be found between the devices in the route.

If you have a PXI chassis, identify the chassis correctly in MAX, and make sure it has been configured properly. If you are using PCI devices, make sure they are connected with a RTSI cable and that the RTSI cable is registered in MAX. Otherwise, make sure there is an available trigger line on the trigger bus shared between the devices.

Source Device: PXI1Slot10
Destination Device: PXI1Slot11

Task Name: _unnamedTask<1>

****************************************

 

Again NI-DAQmx sees slot #10 (last DSA) as ST source insetad of slot #2!?

 

Do you see any mistake in the diagram? All 8 triggers are confiigured to route "Away from slot 1" so I do not comprehend what is wrong with my setup.

 

Please explain to me how does PXI-6713 use the ST bus for clcok synchronization - is it capable of reading from ST?

 

Thanks in advance

0 Kudos
Message 9 of 31
(6,349 Views)

Hello Golubovski,

 

I think that the issue is the string you're sending to the DAQmx Export Signal Property Node for the Sample Clock Timebase Output Terminal.  I left formatting in the VI to automatically add "PXI_Star8" to the device string, by including this in your string the concatenated string is "/PXI1Slot2/PXI_Star/PXI_Star8" while we should just pass "/PXI1Slot2/PXI_Star8" to route the signal correctly.

 

I think that this is probably the issue, however, if this does not work as expected it would be helpful if you can generate a technical report from MAX so that I can see your hardware configuration.  To generate this report, open MAX and go to File> Create Report...  Follow the wizard to generate and save a technical report and then post the zip file here.  This report file will have information about your system configuration, hardware and software, (which you can open the zip file and view).  If you're not comfortable posting this to the public forum just say so in you're next post and if you give me permission I can look up your email address to contact you directly to get the file from you.

 

Cheers,

Brooks
0 Kudos
Message 10 of 31
(6,336 Views)