Вход

Просмотр полной версии : Время компиляции, версия build



Elka
03.12.2010, 02:01
Нельзя ли как-нибудь в CodeSys v2 сделать константы, которые будут заполняться временем компиляции и/или версией build'а?

Малышев Олег
03.12.2010, 09:52
Ответ - можно.
В CoDeSys есть возможность вставить перед компиляцией содержимое файла. Я делал батник который раз в минуту писал время в файл.
Еще есть такая утилита xStarter. В ней можно отслеживать открытие файла и записывать в него нужное время.

Elka
03.12.2010, 11:19
"В CoDeSys есть возможность вставить перед компиляцией содержимое файла"

А чуть-чуть намекнёте, где копать? Что-то ни в доке, ни методом хаотичного поиска ничего сходу не нашлось. Как положить в файл то, что надо - уже разобрался, а вот как затащить его в CodeSys - пока не понимаю...

Александр Приходько
03.12.2010, 12:59
собственно в чем проблема? вариантов куча:
1) пишите версию файла в Plc_prg как коментарий.
2) добавьте пременные или константы в проект
3) в кодесис - > проект-> информация о проекте. а там есть поле версия.

вариантов как видите много. а загружать какие-то дополнительные файлы.. зачем? все должно быть в проекте.

Малышев Олег
03.12.2010, 13:02
ресурсы-глобальные переменные добавляете свои - далее на правую кнопку- свойства - связать с файлом - имя файла - опция импортировать. если используете английский интерфейс, то перевод за вами

Elka
03.12.2010, 15:32
Собственно что сделал:
1. Поставил xStarter
2. Сделал макрос в CodeSys, записывающий сообщение в файл (содержимое не важно) при компиляции.
3. Сделал задачу в xStarter, которая увеличивает хранимую переменную на 1 и выводит её в файл. Также в этот файл выводится дата и время. Формат записываемого файла примерно такой:
VAR_GLOBAL
build_num: STRING(10):='[build]';
build_date: STRING(20):='[DATE]';
END_VAR
То что в квадратных скобках - заполняется xStarter'ом.
4. Этот файл связан по рецепту Олега с отдельным разделом глобальных переменных.
5. А конфигурационная переменная, которая содержит версию ПО и отображает её на экране ПЛК63 уже собирается из этих build_num и build_date.
6. А, самое важное! Условием запуска задачи в xStarter поставил изменение файла, в который выводятся значения макросом CodeSys.

Возможно - громоздко, но вполне работоспособно. Спасибо за помощь. Потом займусь следующей задачей - резервной копией проекта при каждом билде.

Elka
03.12.2010, 16:18
алескандр! а хотелось автоматического счётчика билдов, не хотелось обновлять руками дату и время компиляции и т.д. вариант с константами и комментариями как раз и использовался, но он не очень удобен в жизни.