Подскажите пожалуйста возможна ли корректировка хода системных часов и если возможна то как?
Заранее благодарен.
Вид для печати
Подскажите пожалуйста возможна ли корректировка хода системных часов и если возможна то как?
Заранее благодарен.
Корректировка возможна из программы записью скорректированного времени через библиотеку SysLibTime.lib
Влиять на ход кварца нельзя.
Спасибо!!!
Здравствуйте! :)
Имеется ПЛК63 и Панель оператора СП270. Задача заключается в синхронизации времени. Панель - Slave. Панель сбрасывает дату и время в заданный регистр, ПЛК считывает. Использую библиотеку SysLibTyme. Все хорошо работает, но синхронизация не возможна если во времени (считанное с панели) есть нули. Т.е например на ПЛК 8:30, а на панели 00:45. Записываю в структуру библиотеки новое значение времени и даты, все обновляется кроме 00. На ПЛК получается 8:45?! Что делаю не так? Или как можно обойти эту проблему?
выбирайте время синхронизации без нулей, к примеру 11:11
ну ичерез какое время у Вас наступает такое событие и что страшного если Вы будет с определенным периодом синхронизировать самостоятельно не дожидаясь рассогласования?
Та же самая ситуация и с минутами. Т.е. в 11.00 не смогу синхронизироваться "в ручную", а только, например, в 11.01
библиотека должна работать, вопрос кто как её использует, есть возможность выложить как Вы вводите время используя биб-ку
Была такая проблема - время кратное 00 не применялось.
Исправляли, по моему в 2.12
TimeAndDate1.Hour := WORD_TO_UINT(DD.HH);
TimeAndDate1.Minute := WORD_TO_UINT(DD.MN);
TimeAndDate1.Second := WORD_TO_UINT(DD.SC);
TimeAndDate1.Year :=WORD_TO_UINT(DD.YY);
TimeAndDate1.Month :=WORD_TO_UINT(DD.MM);
TimeAndDate1.Day :=WORD_TO_UINT(DD.SS);
GetTime (SystemTime:=Sys_Time , TimeDate:= TimeAndDate1);
Экспортированный файл
Да, сначала присвоение во все поля структуры нули и вызов функции. Потом анализ времени и если надо, то делаю запись
Добавил экспорт файл, там полностью. Если надо выложу проектом?! Спасибо!
мне кажется нужно попробовать в условии IF _timer.Q = TRUE THEN вновь выполнить обнуление полей, как после (*Читаем время с контроллера*) перед вводом новых значений
Без изменений
Обнуляю поля, вызываю фукцию (пробовал без вызова). Далее записываю свои значения, вызываю функцию.
тогда либо неиспользовать нулевые час и минуту или сменить прошивку на последнуюю (если она не новая) и снова попробовать свой код
Версия контроллера 2.12 10 0f с которым работаю...
Сейчас проверю, может появилась новая версия!
Спасибо capzap!
Есть 2.14, но в ней время не трогалось...
Правилось еще в 2.07...
И на ftp не нашел...
Я боюсь не поможет...
Вам могу рекомендовать пока месть вводить числа не кратные 00, а мы у себя попробуем.
Уважаемые форумчане! есть примеры на форуме с использованием
библиотеки SysLibTime, в которых предусмотрена коррекция времени
ПЛК. Т.е. синхронизацию с системным временем ПК.
Для визуала времени ПЛК воспользовались переменными из CurTimeEx
Для визуала времени с ПК строкой - %t%X %d/%m/%Y в конфигурировании элемента ...
Собственно задача- как или где снять время ПК для использования
в основной программе PLC_PRG.Ведь %X или %Y куда то обращаются за информацией для отображения в визуале,а как .где.,чем снять показания
для основной проги?
В "трендах" ведь отображается время ПК? а время ПЛК туда ...))))) никак..
Время Пк получают в визуализации КДС, через скада системы или любым др. способом через элемент aktivX - календарь