PDA

Просмотр полной версии : Формат вывода времени (%t[mm:ss])



Спорягин Кирилл
09.06.2016, 20:43
Добрый вечер, форумчане.

При работе с CoDeSys V3.5 SP5 Patch5 возникает проблема с выводом времени.
Если я определяю в проекте переменную типа Time, в поле вывода ссылаюсь на данную переменную, и задаю любой формат вывода временной переменной (например, %t[mm:ss]), то в поле вывода отображается какое-то неверное значение (похоже на системное время).
Если я устанавливаю строковый формат вывода (%s), то выводится моя переменная в формате T#XmYsZms.

В чем может быть причина?

Евгений Кислов
09.06.2016, 20:45
Добрый вечер, форумчане.

При работе с CoDeSys V3.5 SP5 Patch5 возникает проблема с выводом времени.
Если я определяю в проекте переменную типа Time, в поле вывода ссылаюсь на данную переменную, и задаю любой формат вывода временной переменной (например, %t[mm:ss]), то в поле вывода отображается какое-то неверное значение (похоже на системное время).
Если я устанавливаю строковый формат вывода (%s), то выводится моя переменная в формате T#XmYsZms.

В чем может быть причина?

Это известная ошибка CODESYS. Исправили, если не ошибаюсь, в SP6.

Спорягин Кирилл
09.06.2016, 20:58
Спасибо.
А где можно скачать SP6?
На сайте Овена есть только SP5.

Евгений Кислов
09.06.2016, 21:21
Спасибо.
А где можно скачать SP6?
На сайте Овена есть только SP5.

Скачайте SP7 Patch4. Нужно понимать, что в текущей прошивке еще не поддержаны графические элементы и функции новой версии (тренды и т.д.).
Также версии библиотек и modbus-компонентов в проекте не должны превышать версию 3.5.5.0.
http://www.owen.ru/catalog/codesys_v3/opisanie

Спорягин Кирилл
14.06.2016, 15:27
Евгений, на версии SP7 Patch4, то же поведение при выводе времени.
Попробую установить SP6.

Евгений Кислов
14.06.2016, 15:30
Евгений, на версии SP7 Patch4, то же поведение при выводе времени.
Попробую установить SP6.

Не готов в это поверить. Проект с нуля создавали, или открыли в SP7 проект, созданный в SP5?

Спорягин Кирилл
14.06.2016, 15:41
Правильно не верите. После "обновления проекта до новейшей версии", все заработало.
Только теперь вопрос. После обновления будут ли другие функции СПК работать правильно. Или этот же вопрос по другому - какие библиотеки не должны превышать версию 3.5.5.0? Я так понимаю, что при обновлении он как раз обновил библиотеки до версии 3.5.7...

Спорягин Кирилл
14.06.2016, 16:00
Уточняю, где я нажал на "Сделать все новейшим".
Смотри вложения.

Евгений Кислов
14.06.2016, 16:08
Какие библиотеки не должны превышать версию 3.5.5.0?..

Желательно, все - учитывая, что в СПК сейчас система исполнения не соответствует 3.5.7.0, а значительно ниже ее.
Но, в целом, практика показывает, что "простые" библиотеки типа Standard, Util и т.д. сохраняют свою работоспособность даже при использовании более новых версий.

Спорягин Кирилл
14.06.2016, 16:23
Вместо нажатия кнопки "Сделать все новейшим" можно, как я понимаю, самостоятельно поменять установки проекта, если зайти в пункт меню "Проект" - "Установки проекта".
Так на вкладке "Профиль визуализации" можно сменить профиль визуализации.
24954

Но если я меняю только профиль визуализации, то получаю при компиляции множество ошибок:
24955

Если же я меняю и версию компилятора, то я получаю, что все библиотеки становятся версии 3.5.7...
24956

Евгений, не могли бы Вы пояснить как перейти с версии SP5 на SP7, чтобы быть уверенным в корректной работе проекта?

Спорягин Кирилл
14.06.2016, 17:11
Добавлю, что если я не меняю версию компилятора, то проблема со временем не уходит.

Евгений Кислов
14.06.2016, 17:50
Евгений, не могли бы Вы пояснить как перейти с версии SP5 на SP7, чтобы быть уверенным в корректной работе проекта?

Я не могу это пояснить, поскольку нельзя быть уверенным в корректной работе на СПК с текущей прошивкой проекта, созданного в SP7.

Внутри СПК лежит система исполнения (runtime) с версией 3.5.4.20. Т.е., иными словами, компания 3S (разработчик CODESYS) гарантирует, что весь функционал, включенный в CODESYS 3.5 SP4 Patch2, будет адекватно работать на рантайме идентичной версии.

Компания Овен рекомендует использовать SP5 Patch5, поскольку в ней исправлен ряд критичных ошибок; эта версия CODESYS многократно тестировалась на нашем текущем рантайме и не имеет известных критичных ошибок.

Рекомендовать использовать SP7 мы не можем, поскольку за прошедшее время CODESYS серьезно изменился. Часть библиотек все равно будет работать на старом рантайме - тот же Standard. Другая часть просто не даст загрузить себя в СПК. И, вероятно, найдутся такие, которые загрузиться смогут, но работать будут некорректно. Поэтому, в целом, рекомендация следующая - работать в SP5 Patch5 или, по крайней мере, использовать версии библиотек и компонентов не выше, чем 3.5.5.0. После выхода новой прошивки перепрошить СПК и перейти на следующий SP (не факт, что это будет именно SP7).

Конкретно в вашем случае, насколько я понимаю, до версий 3.5.7.0 обновилась библиотека Standard и библиотеки визуализации. По опыту скажу, что с ними проблем быть не должно. Контролируйте версии остальных библиотек (не выше 3.5.5.0) - и все, скорее всего, будет нормально.

Спорягин Кирилл
15.06.2016, 09:27
Конкретно в вашем случае, насколько я понимаю, до версий 3.5.7.0 обновилась библиотека Standard и библиотеки визуализации. По опыту скажу, что с ними проблем быть не должно. Контролируйте версии остальных библиотек (не выше 3.5.5.0) - и все, скорее всего, будет нормально.

Евгений, вот тут вот и вопрос - я других библиотек и не вижу. Вы не могли бы конкретизировать версии каких библиотек нужно контролировать? И где их посмотреть, потому как в менеджере библиотек у меня все версии стали 3.5.7.0 (см. 24967).

Евгений Кислов
15.06.2016, 09:47
Евгений, вот тут вот и вопрос - я других библиотек и не вижу. Вы не могли бы конкретизировать версии каких библиотек нужно контролировать? И где их посмотреть, потому как в менеджере библиотек у меня все версии стали 3.5.7.0 (см. 24967).

Да, в принципе, лучше контролировать версии всех библиотек, которых можете (т.е. тех, которые не серые).

Методика такая:

1. Удаляете библиотеку (например, Util)
2. Нажимаете Добавить библиотеку, в появившемся окне нажимаете Дополнительно, выбираете библиотеку Util.
3. После добавления нажимаете на нее ПКМ, выбираете Свойства и выбираете конкретную версию (не более 3.5.5.0).

Спорягин Кирилл
15.06.2016, 09:50
Вот теперь ясно. Спасибо.

Selya
12.09.2016, 09:16
Ну и что в итоге? Помогли все эти танцы с бубном правильному выводу переменной с временем?
Всё. Вижу. Обновился до CODESYS v3.5 SP7 Patch 4 с этого сайта и всё заработало как надо.