PDA

Просмотр полной версии : Работа с датой и временем в PLC



SlavikP
11.06.2019, 06:25
Использую ПЛК160. Для работа нужно знать текущие число и месяц.
В программе я работаю с библиотекой SysLibTime. Вписал через PLC browser текущие дату-время и успокоился.
Прошло полгода. Звонит заказчик, жалуется, что алгоритм неверно работает.
Прихожу, подключаюсь... ага, январь на календаре :)
батарейка живая. Я почему-то был уверен, что дата не потеряется при пропадании питания.
Думаю, что делать. В комплекте есть еще SysLibRtс, но из описания не ясно, чем она отличается от SysLibTime.
Подскажите плиз, почему слетает дата в контроллере и как с этим бороться?
Вариант сделать доступным ввод даты оператору оставлю на резерв, как самый неудобный.

lara197a
11.06.2019, 08:30
В ПЛК часы очень низкой точности.
Можно сделать ввод времени в визуализации к программе.

lara197a
11.06.2019, 08:32
SysLibRtс- это программные часы.
Они остановятся, при остановке цикла ПЛК.

SlavikP
11.06.2019, 08:36
Всем спасибо за ответы. Из часов я использую только число и месяц. Так что точности должно хватать.
Вопрос в том, какого черта функция CurTimeEx вдруг возвращает январь в июне и как этого избежать?

petera
11.06.2019, 09:57
Всем спасибо за ответы. Из часов я использую только число и месяц. Так что точности должно хватать.
Вопрос в том, какого черта функция CurTimeEx вдруг возвращает январь в июне и как этого избежать?

Обычно у ПЛК1хх, если ПЛК был обесточен на 3-4 дня, то время в нем сбрасывается до 01.01.2000
Как минимум проверить текущее время в ПЛК и исправить если что
Используйте ПЛК браузер GetTime/ SetTime/ SetDate