Синхронизация реального времени WinCC Advanced>S7-315

Промышленные Логические Контроллеры SIMATIC S7-200/300/400
Post Reply
Dmitriy1992
Posts: 24
Joined: Wed Dec 11, 2019 2:04 pm

Синхронизация реального времени WinCC Advanced>S7-315

Post by Dmitriy1992 » Thu Dec 10, 2020 2:44 pm

Добрый день.
Нужна помощь в синхронизации реального времени панели(master) и контроллера(slave).
Панель открыта в симуляторе на ПК (TIA v16)
PLC программа на STEP 7 v5.6
Связь по Ethernet

Вопрос в следующем, как получить переменную DT с реальным временем из панели?


Dmitriy1992
Posts: 24
Joined: Wed Dec 11, 2019 2:04 pm

Re: Синхронизация реального времени WinCC Advanced>S7-315

Post by Dmitriy1992 » Fri Dec 11, 2020 6:46 am

Да, там есть с таким условиями 4-й вариант. Но он работает только когда всё сделано в TIA, а в моём случае программа для PLC написана на Step 7. И панель не даёт сконфигурировать отправку данных по дате, в тег. Так же, можно сделать и через WINCC prof, там проще получается, но ставить WINCC prof только для синхронизации времени не рационально.

MaxS
Posts: 60
Joined: Sat May 17, 2014 1:26 am

Re: Синхронизация реального времени WinCC Advanced>S7-315

Post by MaxS » Fri Dec 11, 2020 11:37 am

Не совсем понимаю в чем у вас проблема?
Вы же можете в панели разложить переменную Date and Time на байты или слова (год, месяц, день и т.д.) и передать их отдельными тегами в контроллер, а в контроллере снова собрать в Date and Time и синхронизировать.
Примеры привожу просто как примеры, этот код лично не проверял.
HMI - VB
Show

Code: Select all

Sub WriteDateTime()

SmartTags("YEAR") = Right(DatePart("yyyy",Now),2)
SmartTags("MONTH") = DatePart("m",Now)
SmartTags("DAY") = DatePart("d",Now)
SmartTags("HOUR") = DatePart("h",Now)
SmartTags("MINUTE") = DatePart("n",Now)
SmartTags("SECOND") = DatePart("s",Now)

End Sub
PLC - STL
Show

Code: Select all

      LAR1  P##UTC_DT
      
      L     1999
      L     #wYear
      <=I   
      JC    _001
      L     2000
      -I    
_001: AW    W#16#F
      ITB   
      T     B [AR1,P#0.0]

      L     #wMonth
      ITB   
      T     B [AR1,P#1.0]

      L     #wDay
      ITB   
      T     B [AR1,P#2.0]

      L     #wHour
      ITB   
      T     B [AR1,P#3.0]

      L     #wMinute
      ITB   
      T     B [AR1,P#4.0]

      L     #wSecond
      ITB   
      T     B [AR1,P#5.0]

Post Reply