GPS synchroniz​ation algorithm

Dear colleagues,
I kindly ask for a help from experienced programmers,
thank you in advance.
I work in the Earthquake Research Center in Japan, we are doing
continuous observation (more then year term) of various geophysical
parameters. In our research it is extremely important to have
synchronized measurements in different places of observation. To do
so, we need to use GPS (General Positioning System) time signals,
witch is highly synchronized with UTC time. Moreover, sampling
frequencies we used are rather high, around 50...10 Hz for different
equipment.
We use several (about 10) boards AT-MIO-16XE-50 and we meet big
problem: how to program (we using NI-DAQ driver with Microsoft C++)
continuous measurement of many chann
els with 85Hz frequency ?
Here is in details:
we need to measure 3 differential channels with high time accuracy, to
have same length files for all days in year. I can use SCAN_Setup and
SCAN_Start functions, programmed for 85 times of acquiring signal. But
how to run SCAN_Start function exact after arriving of impulse from GPS ?
There is no callback function for this, and I cannot use continuous
checking, because of data transfer by internet, remote controlling of
a machine, saving large volumes of information to disk and overloading
of machine as a result.
Please, copy your answer to my mail: [email protected]
Thank you in advance,
Pavel Maltsev,
program designer

Alright, I believe I have a solution that will probably work for you in most cases. Check the attached example and word document for more information. There are some issues with this solution that you may or may not be able to work around.
I hope this helps!
gus....
Attachments:
Meas_GPS_Time_with_PPS_and__2_Ctrs.vi ‏107 KB
M_Series_GPS_Measurement_Connections.doc ‏109 KB

Similar Messages

  • Ptp Synchroniz​ation on Windows

    I am currently using software ptp synchronization to synchronize the time on several RT systems (PXI, cRIO, and RMC) I now need to sync a windows machine on the subnet. Is there a windows program that does ptp synchronization to an RT grandmaster?
    Solved!
    Go to Solution.

    Hello Marcis-Andreis,
    the PTP sotfware options for Windows machines are very limited.
    As you can see here - http://www.endruntechnologies.com/ptp-slave.htm
    Windows XP, 2003, VISTA, Windows 7 (PTPv2 only)
    Choices for PTP Slave software on Windows machines are very limited. Windows is not a real-time operating system and synchronization is dependent on the CPU and the operating system version. PTP Slave software is available from Greyware and is called Domain Time II. Your PTP Slave can be synchronized to within one millisecond of the Grandmaster (network topology dependent) using this software.
    Plus you can check the list on wiki page - http://en.wikipedia.org/wiki/List_of_PTP_implement​ations#Software
    The biggest problem is that Widows OS itself is non-deterministic, maybe you should consider using Linux where the options are better.
    For Linux you can use popular PTPd package for example, plus you can go for PREEMPT RT, that make you Linux more deterministic.
    But everything depends on your application
    Please let me know if I can be helpful here.
    Thanks and wish you good luck with your project.
    Best regards,
    David

  • Synchroniz​ation RFSG with digitaizer

    Hello!
    How to synchronize work RFSG with work digitaizer? I can synchronize digitaizer by signals RFSG . But how synchronize RFSG by signals digitaizer?
    Necessary on input TRIG (digitaizer 5114) send clock pulse, then this clock pulse to transfer on the PXI-tire to RFSG (5673) and start work RFSG on this clock pulse. Is it possible to do so? Tell me please about the scheme or algorithm or a ready solution. I can not understand how to transmit signals on the tire.
    Thanks for the help.  

    Now I will explain that I do:
    I use the block of DAQmx Connect Terminals VI. I send the signal of Reference Trig on a tire with digitizer(5114) on PFI0 of generator(5673). Then I want to use this signal as impulse of start of generator. I connect PFI0 and PFI1 a cable. In a project I specify the source of start of generator - PFI1. I start a project - all works. A generator is started as soon as on the entrance of PFI1 an impulse comes with PFI0. If an impulse does not act on the entrance of PFI1 - a generator is in the camp-on of signal of start.
    Questions:
    1. I want to use stepped trig for a management by the start of generator. Why herein and in other modes is a generator started and works without stops?Id est I give one impulse of start - a generator is started. I disconnect a cable from the entrance of PFI1 - but a generator continues to work. Why?In fact did he have to stop and pass to the camp-on of new impulse?I understood so, that at stepped trig a generator gets an impulse and passes to the camp-on of the second impulse.But goes out not so.
    How I must do so that did a generator work with breaking or upcast in the initial state between the receivabless of impulses?I am not necessary that he generated constantly in the mode of stepped trig. Mode of single and burst does not suit for my task. 

  • Synchroniz​ation RFSG with Digitizer

    Hello!
    How to synchronize work RFSG with work digitaizer? I can synchronize digitaizer by signals RFSG . But how synchronize RFSG by signals digitaizer?
    Necessary on input TRIG (digitaizer 5114) send clock pulse, then this clock pulse to transfer on the PXI-tire to RFSG (5673) and start work RFSG on this clock pulse. Is it possible to do so? Tell me please about the scheme or algorithm or a ready solution. I can not understand how to transmit signals on the tire.
    Thanks for the help.

    Now I will explain that I do:
    I use the block of DAQmx Connect Terminals VI. I send the signal of Reference Trig on a tire with digitizer(5114) on PFI0 of generator(5673). Then I want to use this signal as impulse of start of generator. I connect PFI0 and PFI1 a cable. In a project I specify the source of start of generator - PFI1. I start a project - all works. A generator is started as soon as on the entrance of PFI1 an impulse comes with PFI0. If an impulse does not act on the entrance of PFI1 - a generator is in the camp-on of signal of start.
    Questions:
    1. I want to use stepped trig for a management by the start of generator. Why herein and in other modes is a generator started and works without stops?Id est I give one impulse of start - a generator is started. I disconnect a cable from the entrance of PFI1 - but a generator continues to work. Why?In fact did he have to stop and pass to the camp-on of new impulse?I understood so, that at stepped trig a generator gets an impulse and passes to the camp-on of the second impulse.But goes out not so.
    How I must do so that did a generator work with breaking or upcast in the initial state between the receivabless of impulses?I am not necessary that he generated constantly in the mode of stepped trig. Mode of single and burst does not suit for my task.

  • GPS Synchronization

    Hi All,
    I am curious whether any routers or network devices synchronize with each other using GPS precise timing.  I know certain wireless cell phone networks utilize GPS for synchronization, but I am wondering if the same applies to wired networks (both ethernet and fiber). I say synchronization am referring to the router's internal clock/oscillator, not time-of-day.  All information is appreciated!
    -Marc

    Hi All,
    I am curious
    whether any routers or network devices synchronize with each other using
    GPS precise timing.  I know certain wireless cell phone networks
    utilize GPS for synchronization, but I am wondering if the same applies
    to wired networks (both ethernet and fiber). I say synchronization am
    referring to the router's internal clock/oscillator, not time-of-day. 
    All information is appreciated!-Marc
    Hi Marc,
    As of today, two main solutions for real time clock synchronization:
    – Router synchronized with a server using Network Time Protocol (NTP).
    – Router synchronized directly with an external reference clock.
    Before you buy a GPS clock for your router, make sure that Cisco supports the GPS product and that your router has the capability to obtain timing information from it?only certain routers support this feature. If your router does not support this feature, you need some other device to use as a master time reference. Most UNIX and Windows server products support external GPS devices.
    If you have the Trimble GPS clock and are attaching it to the auxiliary port of a 7200 router, you need to configure the following on your router:
    Router(config)# line aux 0
    Router(config-line)# ntp refclock trimble pps none stratum 1
    The ntp refclock command tells the 7200 that it has a Trimble GPS clock attached. The pps parameter indicates the type of pulse-per-second reference support: In the case of Trimble, this is set to none. Because this is probably the root time source for your network, you define the time source as a stratum service level of 1.
    Hope to Help !!
    Ganesh.H
    Remember to rate the helpful post

  • Wireless Synchroniz​ation in Desktop contact list properties is by default showing "Not Available"​, Not able to change also

    In my Blackberry 8520 - Curve model, Wireless Synchronization in Desktop contact list properties (Go to Contacts, select options, select Desktop) is by default showing "Not Available" and not allowing to change also. My other colleagues are having the options.
    My basic issue is that Outlook contact details are not getting syncronized with Blackberry. I believe this is the root cause for the same. Please guide to resolve the issue.
    with best regards,

    Hey pratiktnm,
    Welcome to the BlackBerry Support Community Forums.
    Thanks for the question.
    Are you setup on a BlackBerry Enterprise Server?  With the Desktop service book appearing it seems you were on one.  If you are still on a BlackBerry Enterprise Server, I would suggest creating a full backup with BlackBerry Desktop Software: www.blackberry.com/btsc/KB33505
    Then proceed with a security wipe by going to Options>Security>Security Wipe and then contact your network service provider to generate a new Enterprise Activation password.  Then proceed with the enterprise activation by going to Options>Advanced Options>Enterprise Activation.
    Once the activation is completed, test out the wireless synchronization of the contacts.
    Let me know if you have any more questions.
    Cheers.
    -ViciousFerret
    Come follow your BlackBerry Technical Team on Twitter! @BlackBerryHelp
    Be sure to click Like! for those who have helped you.
    Click  Accept as Solution for posts that have solved your issue(s)!

  • Problem with Gmail synchroniz​ation

    I have both my work email configured via BES service and my private Gmail account on my Bold 9700.
    Recently I noticed that when I delete emails on the 9700 it reflects almost immediately both on Gmail web interface and both in my Outlook. However, if I delete emails from either the web  or Outlook there are no changes on the device.
    I opened a case with my mobile provider and they did some tests on several devices on their side and also told me to delete and re-configure my Gmail account. They also configured my Gmail account on their devices, All these confirmed that there is a problem.
    After a few days they called back and told me that there is nothing wrong with the service and that the synchronization from Outlook/Web with the device happen after several hours. They also stated that according to RIM's documentation this is how it should work.
    Well, if it's true don't you find it quite troubling?
    What annoys me the most that I'm sure that when I first configured Gmail on my device the sync was much more frequent.
    The support team also mentioned something about BIS upgrade and that that's how RIM decided to implement IMAP4.
    Is that true?
    Did anybody experience what I mentioned as well?

    snip from
    http://www.blackberry.com/btsc/KB05133
    Additional Information
    Email reconciliation with the BlackBerry Internet Service is from the BlackBerry smartphone to the messaging server, and the messaging server to the BlackBerry smartphone. For reconciliation changes to occur in an email application such as Microsoft Outlook, the email application must reconcile with the messaging server, not the BlackBerry smartphone.
    It is necessary to correctly configure the BlackBerry smartphone and integrated email accounts to turn on the full two-way reconciliation. For more information, see KB13509.
    Reconciliation changes from the mailbox to the BlackBerry smartphone might require up to 6 hours.
    For more information on Microsoft® Mobile Services Protocol (MSN® MSP), see KB24360.
    Click here to Backup the data on your BlackBerry Device! It's important, and FREE!
    Click "Accept as Solution" if your problem is solved. To give thanks, click thumbs up
    Click to search the Knowledge Base at BTSC and click to Read The Fabulous Manuals
    BESAdmin's, please make a signature with your BES environment info.
    SIM Free BlackBerry Unlocking FAQ
    Follow me on Twitter @knottyrope
    Want to thank me? Buy my KnottyRope App here
    BES 12 and BES 5.0.4 with Exchange 2010 and SQL 2012 Hyper V

  • Clock synchroniz​ation of a NI-6111 with a NI-6602

    Hello,
    We are trying to synchronize two boards. One is a NI-6602 and the other one is NI-6111. We have already synchronized both devices using the OUT signal from the 6603 (PFI32) and routing it to RTSI_5. Now we would like to synchronize both onboard clocks. We were able to route the 20MHz clock of the 6602 to RTSI_7 using a DaqMX subVI but when we attempted to read that signal with the NI-6111 using the VI AI clock config, it is not allowing to us to configure the clock source in that VI as RTSI_7. Any ideas?
    Thanks
    Facundo

    Hi facundo,
    It appears that you're using DAQmx with the NI-6602 device, but the Traditional DAQ driver (since you're using the AI Clock Config VI) with NI-6111. Is this correct? If so, is there a reason why you're doing so since both boards support DAQmx?
    Each device can use one driver at a time. If you're using AI Clock Config, and right click the "Clock Source" and choose Create >> Constant, you should be able to choose "RTSI Connection", and indicate the RTSI pin number. However, unless you have a specific reason, I would recommend using DAQmx for both boards. You can consider LabVIEW shipping examples such as "Multi-Device Synch-Analog Input-Cont Acquisition.vi" as a starting point.
    Thanks,
    Lesley Y.

  • Synchroniz​ation of PCI devieces via the RTSI bus using the measuremen​t studio for Viusual Basic 6

    Hi everyone,
    I would like to synchronize a NI 4474 A/D card with a NI 6733 D/A card via the RTSI bus. Is there any way of sharing the timebase using the measurement studio for VB 6.0? It seems like it could be possible using the traditional NI-DAQ .DLL but I would prefer to do it with the ActiveX API.
    I am quite desperate, since all my attempts to use the CWDAQTools1.RouteSignal and CWDAQTools1.RouteRTSI command failed miserably :-(
    Thank you very much in advance!
    Federico

    Thank you very much indeed!
    Unfortunately it doesn't really work... I cannot use the DI options since my A/D card (NI 4474) does not support DI/DO... When using the other option (CWDAQTools1.RouteRTSI) I keep getting an error message that this command is inapropriate for my device (even though it does have a RTSI bus and allegedly it also supports time sharing...)
    Looking forward to your answer!
    Kind regards
    Federico

  • "Batch Synchroniz​ation" in Parallel Model

    Hi,
    I'm working on a project with up to 15 UUTs which are supposed to be running using the parallel model, since they have to be able to start and stop separately.
    There are conditions in which all active UUTs are paused and restarted upon request. Communication with the UUTs is established using a single demon. Now I need a synchronization method, to make sure only one thread runs the daemons initialization. Just like a batch synchronization using the "One Thread Only" option.
    The Batch steps do not work in the Parallel Model so is there a best practice establish a synchronization like this? I have some ideas, but I guess I'm thinking too complicated and can't see the wood for trees....
    Cheers
    Oli
    Programming languages don't create bad code, programmers create bad code....

    James,
    thanks for the reply. I guess I can implement sth like you suggested. Was just wondering, if I'm missing some built in option that saves me from tinkering myself.
    Cheers
    Oli
    Programming languages don't create bad code, programmers create bad code....

  • Synchroniz​ation of M-Series cards via RTSI and ANSI C?

    Hi!
    This is my first post and I'm happy to be here. I tried to search as thoroughly as possible, but if this has been answered elsewhere, I'd be grateful for a hint/link nevertheless.
    System:
    Win 2000 Pro with NI-DAQmx (part of NI-DAQ 7)
    2x PCI-6220M, 1x PCI-6221M
    RTSI Cable
    all components are registered in MAX
    Problem:
    I want to synchronize the cards over the RTSI bus. I am using the ANSI C library. There's an example SharedClk10-FiniteAcq_main.c, but it is designed for PXI and uses the undocumented (at least in the C reference?) DAQmxSetTimingAttribute function. I tried to pass '/Dev1/RTSI7' as the clock source, but it did not work.
    Then, after reading the C reference a bit more, it seemed as if I needed to use DAQmxExportSignal. But it gives me an error DAQmxErrorInvalidRoutingSourceTerminalName_Routing = -89120 when I try to route DAQmx_Val_20MHzTimebaseClock to '/Dev1/RTSI7'
    I'd like to know what C functions I have to call in which order to enable synchronized sampling with the three M-Series cards.
    So far I do:
    DAQmxCreateTask (primary & driven)
    DAQmxCreateAIVoltageChan (p & d)
    DAQmxExportSignal (p)
    DAQmxCfgDigEdgeStartTrig (d - trying to import the failed export of /Dev1/RTSI7)
    DAQmxStartTask (d & p)
    DAQmxReadAnalogF64 (p & d)
    DAQmxStopTask(p & d)
    This is my first time using M-Cards or the ANSI C functions, so I might have missed something essential.
    Can anyone give a hint as to what I need to do?
    Jens

    First, if you haven't, you should explicitly create a RTSI cable in MAX. This can be done by right-clicking on Devices and Interfaces -> NI-DAQmx Devices and choosing Create New NI-DAQmx Device -> RTSI Cable. Then, for each device that is connected to the RTSI cable, use MAX to edit its properties and in the "RTSI Configuration" tab, specify the RTSI cable. This will allow NI-DAQmx to automatically route signals of the RTSI cable.
    Now that a RTSI cable is configured, you don't need to explicitly export signals from the task. You can use the DAQmxGetMasterTimebaseSrc function to retrieve the master timebase terminal name from the primary task and the DAQmxSetMasterTimebaseSrc function to set the master timebase terminal name for the driven task. The DAQmxGetMasterTimebaseRate and DAQmxSetMasterTimebaseRate functions can be used in a similar manner. Configuring these properties will result in NI-DAQmx automatically routing the master timebase signal from the primary task to the driven task using the RTSI cable. To ensure the driven device starts at the same time, invoke the DAQmsxCfgDigEdgeStartTrip function passing a triggerSource parameter of "/ai/StartTrigger" which will result in NI-DAQmx automatically exporting the start trigger signal for the primary task over the RTSI bus and using it as a digital start trigger for the driven task.
    I assume that you will also want to invoke the DAQmxCfgSampClkTiming function for each task to specify the acquisition rate and number of samples to acquire. Note that since the master timebase signal and the start trigger signal are already routed using the RTSI cable, the sample clock itself does not need to be shared between the two tasks.
    geoff
    Geoffrey Schmit
    Fermi National Accelerator Laborary

  • Outlook not an option during synchroniz​ation

    I am just setting up my new blackberry - I loaded the software and am trying to synchronize. When I click on contacts or calender or tasks I dont have an option of Outlook. Under contacts I have outlook express, but I am using outlook not outlook express. When My husband did it on his machine it worked fine he had the option in the list of outlook or outlook express. I dont have either? What do I do, I have been trying everything for 2 hours now!!!!
    Solved!
    Go to Solution.

    4.7 --> sorry, I have no knowledge concerning the Storm
    The search box on top-right of this page is your true friend, and the public Knowledge Base too:

  • Counters synchroniz​ation in daqmx

    Hello Everybody,
    I'm rewriting custom software in LabView from DAQ to DAQmx. I have the following problem:
    I need Ctr0 (at low frequency) to trigger "packets" of pulses on Ctr1 (that operates at high frequency). I'm using Pause,Trigerr option on Triggering node. Since pulse trains on the Ctr1 and Ctr0 "drift" with respect to each other that causes idle state of the Ctr1 oscillate between 0 & 1 - depends in what state it was left after Ctr0 pulse.
    Does anybody have any idea how to overcome this problem?
    I tried to synchronize start of both counters by triggering them from the pulse of the third counter but it does not help. Also, it is impossible to use Start.Trigger opting  with Pause.Trigger optin on the same counter.
    Here is a VI that demonstrates the problem.
    I'm using NI 6052 board with 2 counters. Ctr0 Out is wired to PFI4 (Ctr1 G)
    Thank you in advance.
    Pta.
    Attachments:
    IdleStateDrift.vi ‏37 KB

    Ok, it seems that I fixed the problem.
    In case it will be useful for the others, there is a solution:
    If you are trying to replicate Finite Pulse Train Int (DAQ-STC).vi in DAQ/Examples you need to use just one counter in DAQmx in Finite/Retriggerable mode. It eliminates necessity of 2nd counter and Pause Trigger option so there is no problem with counters drift.
    I have wasted several days of my time on this simple task.

  • Google Contact Synchroniz​ation Issue

    When I configure a new gmail account on my device 8520 (OS 5.0.0.681) and choose contact sync option it works fine for few days but after that it stops. In options Wireless Synchronization status shows "Not Available" which I can not change also as it is disabled.
    In order to enable it again the only option works is delete the account and configure it again which is a pain as I have to again create my filters which is a hectic work.
    Any help on this issue will be highly appreciated.
    Thanks,
    Sachin
    Sachin Jain
    http://BBIndia.net

    Hey Xmen81,
    Try completing the following steps, this may help resolve
    your issue with Google Contacts synchronization:
    Go
    into Options > Advanced options > Service Books > Delete the you Gmail
    Sync service book Example: [email protected]
    SYNC
    Log
    into your BlackBerry internet service account and verify the Contacts are checked off for synchronization http://www.blackberry.com/btsc/KB1927
    Then
    resend service books to the device, if you are doing this from the device
    follow this KB article http://www.blackberry.com/btsc/KB16383
    I hope this helps!
    -HB
    Come follow your BlackBerry Technical Team on twitter! @BlackBerryHelp
    Be sure to click Kudos! for those who have helped you.Click Solution? for posts that have solved your issue(s)!

  • DMA host to target synchroniz​ation

    I am using two host to target DMAs to generate two arbitrary waveforms to be output on anAO module.  I want these waveforms to be output at the same time, but it appears as if one of the waveforms leads the other by several micorseconds.  The two waveforms are in two separate arrays, passed to the DMA.  It appears as if the lag is on the host side.  I've attempted using the timing loop with the synchronization vi and adjusting the offset of the timed loops, but that seems to increase the delay more, or have not effect.  Is there a way to get these DMAs to start passing the data at the same time? 
    Solved!
    Go to Solution.

    Hi Peter,
    Good question. I am thinking that this may be possible using occurrences. Just before we want to write to one of the fifo's set the occurance so that the second fifo could write as well. However this may still cause a lag. As of yet there is no way to purely trigger Fifos. If they are in the same loop they should happen relatively at the same time. I will try to use occurances tomorrow, time it and see if they come back synchronously.
    National Instruments
    RIO Embedded Hardware PSE
    CompactRIO Developers Guide

Maybe you are looking for