Announcement

Collapse
No announcement yet.

Productivity 3000, read time from timeserver?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts


  • Productivity 3000, read time from timeserver?

    Is it possible to have a Productivity 3000 read time from a network time server (NTP server)?
    Looking for a simple way to keep the internal clock on our Productivity 3000 synced and accurate, otherwise it seems to drift a little more than we would like.

    Thanks

    Aaron Z


  • #2
    I'm guessing, since the P2K uses the same software environment as the 3PK, the answer is, no.

    Try this answer, here
    If you've done the very best you can, worrying won't make it any better - Walt Disney

    Comment



    • #3
      Had the same questing while ago. Found 2 ways to do this:
      1) Write modbus service using C language and transfer time to P3K every day;
      2) Use DoMore (it can sync time via SNTP) as a modbus service and transfer time to P3K once a day using timer and MWX instruction.
      On P3K side it looks like on a picture
      O a DoMore just 24 hours timer and 2 MWX instructions - one send time another (after first one) send set signal. In this case, time may differ 1 or 2 seconds - not more.
      Attached Files

      Comment



      • #4
        I agree - this is an extremely important aspect of many projects. Drifting a few seconds a day is a real problem, and it seems like it should be a fairly simple feature to add to both Productivity processors, as well as C-More OIT's.

        This may not be the place to do it, but please consider this my vote to add this feature as soon as possible!

        Comment



        • #5
          It would be a great feature to have in Productivity. Perhaps make a thread in the "Give us your 2 cents" forum for the feature request.
          Right now for the one project I used this type of feature on, we luckily had just installed a BRX in our other building so I just read the time off the BRX over the network. We get the time via NTP server (using Google's) once an hour. I use this as part of an hourly network check because we use the BRX to send emails every day with log files so the network needs to be known working. During this hourly NTP update, I just send the newly updated time over the network to the P2k on confirmation we received the time correctly. That way the productivity system is always in sync too. Only off by a few milliseconds.


          It would be nice to have an instruction for NTP like the BRX has though.
          Last edited by MikeN; 07-18-2017, 09:07 AM.

          Comment



          • #6
            MikeN, would you be willing to share the programming you use on the Productivity PLC to read the time from the BRX? Is it a modbus read?

            Comment



            • #7
              Originally posted by dd33 View Post
              MikeN, would you be willing to share the programming you use on the Productivity PLC to read the time from the BRX? Is it a modbus read?
              It can be either.
              PxK Read FROM the BRX
              or
              BRX Write TO the PxK

              It would probably depend on how many PxK CPUs would need sync. I don't know how many concurrent request that the BRX can service.
              You might want to round-robin the BRX to periodically send time info to each PxK.

              I do (similar) with PxK a lot. I have somewhat long processes and do not need seconds-accurate timestamps, so
              I pack the MoDaYrHrMn into a 10-digit word and each 'client' pXk can read this timestamp from the 'server' when the operator presses a button.
              I could automate this or I could sync at the start of a process.
              I have the timestamp configured with Mo first so that I do not rollover the signed 32-bit word. (I used signed so that I could use the sign for a trigger or an alert/alarm.)
              I use this same timestamp in the processes as start/stop/event timestamps.

              You could MATH these date/time fields into 'seconds' a 32-bit word and then make one Modbus read/write, then unMATH the timestamp in the 'client' PxK, then write to the datetime tags.
              See https://www.epochconverter.com/
              Last edited by kewakl; 02-14-2018, 05:23 AM.

              Comment

              Working...
              X