10-03-2021 03:49 PM
Does NI has something similar to any of these products?
Ninja Precision Timing Module | EndRun Technologies
Thunderbolt® PTP Grandmaster Clock GM200 | Trimble Time & Frequency
I don't mind setting up a NI System of parts, but it does not appear all the software pieces are there to do so.
Thanks.
10-04-2021 11:31 AM - edited 10-04-2021 02:05 PM
Here are some generic notes:
Many NI products support 802.1AS timing protocol by default (just install NI-Sync component).
Here is list of few:
cRIO-9035sync, cRIO-904x, cRIO-905x, sbRIO-963x, IC-317x
PXI-6683H and PXI-6683
This means that any of those devices can be set to act as a 802.1AS master or slave. In addition, those devices have build in mechanism to keep internal device clocks(including DAQ clocks) in sync with the protocol. Because of those fundamental trades, you could program a NI device to perform timing related operations. For example, output a PPS signal. However, I am sure there are dedicated PTP devices out there that have hundreds of bells and whistles which you will not be able to program or replicate on a NI device.
What type of functionality are you looking to get out of the devices you listed?
Is it just a general 802.1AS master clock?
What degree of synchronization are you looking to achieve? One device list timing accuracy of <25ns but the Seiko device does not list its timing accuracy at all.
Do you require timebase bridging capabilities? I noticed that some devices have time bridging capabilities, like bridging GPS to a PTP subsystem.
10-04-2021 02:59 PM
Thanks for the reply.
@Miro_T wrote:
What type of functionality are you looking to get out of the devices you listed?
Is it just a general 802.1AS master clock?
I will have a distributed system of sensors over a large space. This includes FieldDAQs and some cDAQ systems. I want all of the data acquisition to be synchronized such that comparison of different sensors can give information about the signals across the facilities along with accurate timestamps for events.
It is my understanding that in a TSN, the devices vote for a master clock. I want to rig the vote. As far as I know, there are no NI systems, please correct me if I am wrong, that can output a TSN that is conditioned by a GPS. This is what I know, TSN networks are only available for RT-Linux systems. But I cannot use a 6683 and 6674T in a PXI Chassis for my TSN because NI_Sync does not support GPS conditioning of the 6674T on RT-Linux yet.
So what I guess I am trying say, I want an accurate master clock that is conditioned by a GPS that has an accurate timestamp that can be used in a TSN.
The other question I have with this system is the following:
It appears to me, once everything is on its own local network, a Windows box on the network can scan the network, see the devices, and control and configure them for acquisition. All the programming examples to me look like DAQmx on Windows. Am I mistaken here, or do I need RT Linux?
Thanks
mcduff
10-04-2021 10:11 PM
mcduff
Here are just straight responses to some of your questions
It is my understanding that in a TSN, the devices vote for a master clock. I want to rig the vote. As far as I know, there are no NI systems,
Yes, a PTP protocol such as IEEE1588 or 802.1AS go through BMC algorithm . When a new device appears on the network or when the network is first started. Devices will choose the best master based on properties listed in that wiki article. As a user, you can force a specific device to be the master, most commonly by lowering Priority1 value (lower number means higher priority). There is no need to rig anything, as user you can use NI-Sync API to set priority1 or other PTP properties. Take a look at LV examples, for example Hardware Input and Output >> Timing and Synchronization >> Time-based >> Monitor and Configure Time References.vi
As far as I know, there are no NI systems, please correct me if I am wrong, that can output a TSN that is conditioned by a GPS. This is what I know, TSN networks are only available for RT-Linux systems. But I cannot use a 6683 and 6674T in a PXI Chassis for my TSN because NI_Sync does not support GPS conditioning of the 6674T on RT-Linux yet.
The NI PXI-6683H is capable of synchronizing to a GPS while also being the master to a PTP network via 6683 ethernet port. This essentially allows you to bridge GPS to a PTP subsystem.
You are correct, the 6674T does not support GPS. I would use PXI-6683H for that
Yes, NI-TSN (aka IEEE 1588 or 802.1AS timing protocol) is available on most newer devices running NI-Linux. That is, all the devices I listed above and cDAQ 9185/9 and all fieldDAQs.
The other question I have with this system is the following:
It appears to me, once everything is on its own local network, a Windows box on the network can scan the network, see the devices, and control and configure them for acquisition. All the programming examples to me look like DAQmx on Windows. Am I mistaken here, or do I need RT Linux?
Yes, a Windows machine will see all the cDAQs and fDAQs on the network. The code will get deployed and run on the DAQ devices.
I am not an expert on DAQmx. This white paper goes through more details
Other comments:
What is the degree of synchronization you are looking to achieve between distributed IOs? A better master will not improve IO synchronization across devices. The synchronization between DAQ IOs will always be <1us as described in the manual. In another words, the relative time offset between data point collected from device A could be +/- 1us off from a data point collected from device B.
https://www.ni.com/pdf/manuals/376607a.pdf#page=8
However, what a better time master will give you is more accurate timestamp(actual date, time, seconds, ms, us ...) of an actual data point. I am not an expert on DAQmx but maybe there is a way to timestamp each data with the device time(which is synchronized to the master and therefore has the same time as the master). I would ask on DAQmx forum...
10-05-2021 03:57 PM
Thanks for all of your help and advice when answering questions. I have one more. 🙂
Initially, I was going to setup a few PXI chassis with DAQmx cards around a factory for monitoring. For monitoring, I need to make sure my devices are synced and have a common time base that drifts coherently; that way, even if the sample rate is off, I can compare signals on different devices.
I was going to use a 6683H to get the absolute time, and then use the 6683H to condition a 6674T. The 10MHz clock in the 6674T is much better than the 6683H. This 10 MHz GPS conditioned clock would then be routed to the other chassis. The sample clock in the DAQ cards would then be in a PLL with a stable 10MHz clock. This allowed synchronization between devices, but I still need to know/get the absolute time. Unfortunately, DAQmx devices get the system time and use a software mechanism for obtaining t0. So I was worried about my t0 being off for different devices. (As far as I know there is no way to route the GPS time to the system time directly, maybe in RT it is possible, but some of the devices I want to use don't work in RT, thus a conundrum) NI-Scope is also a possibility because it has hardware time stamps, but the available cards don't meet our needs like the DAQmx cards.
Then I started looking into using DAQmx devices that can use the TSN protocol. For us, 1 us should not be a major problem. As an added bonus we can get an accurate t0 and have time enabled triggers. It also seems easier to expand on in the future. So what I am missing when using the DAQmx devices is a real GPS time server that is accurate, that is why I was asking about the previous listed devices.
My last question concerns the distance between nodes in a TSN network. It states that 100m is the maximum distance. I assume this applies to Ethernet connections; if I use an optical fiber and a TSN capable switch I assume I can extend that distance. Is that true?
Thanks again for all of your help.
10-05-2021 09:58 PM
It does sound like a network of cDAQ 9185/9 or fDAQs will be the best technical and economical option for your application.
In fact, that is the main purpose of NI-TSN devices.
I skimmed through this white paper and it appears that you should be able to get a timestamped data with DAQMX.
You could also just consider NI-TSN enabled cRIO like 904x or 905x or IC-317x to be your network master. This will allow you to have an accurate network master(master clock) which all the network slaves(cDAQs and fDAQs) will sync to and set their own time to. This way you'll have access an accurate absolute time of your network. Simply, when all devices are synced you can be sure that all slave devices have the same absolute time as the master. That absolute time can be as good as +/- 200ns off in a perfect network but in reality it will be more in microsecond region or so. It all depends on the network complexity.
Speaking of network complexity. Yes, 100m is industry limitation for ethernet. I think fiber network media converter would work if you wish extend this range. I have no experience with any fiber converters but I would definitely stick with "L1 layer" converters. "L1 layer" type converters are fast and do not buffer any data. Any data buffering can cause lot of jitter in 802.1AS network because protocol assumes time symmetry on the wire.
I actually google this couple of weeks ago 🙂 and found this company and their converters. Again, I don't have any experience with that product but if I wanted to experiment then I would test out their L1 converter
https://www.transition.com/wp-content/uploads/2016/05/Mini-Brochure.pdf#page=4
Alternatively,
You could use NI-TSN switch (cRIO-9085) as a repeater every 100meters but very carefully. Too many hops can cause major sync issues as well. Maybe if you are in pinch and need to extend the last cDAQ another 20meters or so 🙂 . Trying fiber is definitely better route to take
10-06-2021 09:35 AM
@Miro_T wrote:You could also just consider NI-TSN enabled cRIO like 904x or 905x or IC-317x to be your network master. This will allow you to have an accurate network master(master clock) which all the network slaves(cDAQs and fDAQs) will sync to and set their own time to. This way you'll have access an accurate absolute time of your network.
I was thinking of using a IC-317x to be the network master just not sure how to add GPS to it. I could use a cRIO with GPS to be a time master, but it would seem to function exactly like the products I mentioned earlier, except a bit more work on my part as far as programming. Once again not sure what is supported or not supported in NI-Sync.
10-07-2021 08:58 AM - edited 10-07-2021 08:59 AM
Yes if you insist on having the GPS as you main source of the absolute time then I think a PXI-6683H would be the best option. 6683H can be set to be sync'd to GPS and simultaneously be the master of 802.1AS network connected to its ethernet. Network will look something like this
gps
|
6683H --
|
802.1AS master -------- cDAQ-9185/9 or fDAQ---------- cDAQ-9185/9 or fDAQ ----- ... cDAQ-9185/9 or fDAQ
I believe there is way to do this with a cRIO and a GPS C-series module but it will require some programing and trail and error. Definitely not as straight forward as 6683 and might run into some limitations that I am not aware of right now.
When it comes to IC-317x, you are correct, there is no GPS solution for that device (as far as I know)
04-19-2022 12:56 AM
Hi master, hope you are well,could you please tell me when can i find the TSN Labview library or VIs to start my programming on TSN cRio device,i want to do data commucation betwen two or more devices to exchange data,Hope you could help me,thank you。
hunter