PDA

Просмотр полной версии : ПР205 Сохранение текущих значений переменных при загрузке прошивки



zakhar81
06.10.2023, 14:36
Не могу на форуме найти как можно при загрузке прошивки не затирать текущие значения энергонезависимых переменных, или тех что для экоанов , может ткните, буду очень признателен!
При заливке туда записываются те значения которые были указаны для них как начальные
Но и не нашел механизма как не затирать нужные перемнки в принципе. Так как была идея сохранять их текущие значения и на этапе старта в первый раз после прошивки перезаписать из ранее сохраненных, но ведь и ранее сохранённые затираются при загрузке прошивки
Может использовать массивы или как то ещё? Но он и их затрет или перезапишет на значение по умолчанию наверное из таблицы переменных.
Короче проблема вот такая, что на ходу проект обновлять опасно из за этого, нужно установку гасить
Может кто сталкивался и есть решение проблемы?
Напишите хоть в крадце с какого бока подойти к решению.

melky
06.10.2023, 15:07
В ПР попадает все, что у вас в проекте, соответственно если есть значения по умолчанию в проекте, после прошивки будут они.
Варианта прошивай все, кроме тут нет.

Установка после прошивки у вас и так будет погашена, так как после прошивки будет рестарт ПР.

Все, что нужно сохранять между версиями проектов, надо ручками переписывать в копию прошивки и заливать уже с этими данными, соответственно для таких переменных нужны своеобразные программные подходы.

zakhar81
06.10.2023, 19:07
Когда переменных много то этот процесс просто ацкий получается, их найти надо ещё по всему проекту переписать на бумажку и потом забить все это в таблицу!
А если ещё добавить то что нет поиска из таблицы сразу в проекте то очень все печально
Плюс ко всему если в программе регуляторы и прочее меняющееся динамически то к моменту вколачивания ручками эти значения поменяются несколько раз.
Из этого всего вывод такой что для серьёзных проектов нужны другие серии контроллеров, у которых энергонезависимые регистры при прошивке не затираются и логику на ходу можно обновлять

melky
06.10.2023, 19:58
zakhar81 тогда вам в сторону ПЛК надо смотреть, но и там есть ограничения, не всегда изменение программы поменяет состояние на лету.

FPavel
06.10.2023, 20:36
В подобной ситуации была мысль сделать программку, которая считывает + записывает дампом диапазон ModBus переменных. По сути - конфигуратор.
Всё никак руки не дойдут...

Кстати, OwenConfigurator как-то может работать с ПР205. С его помощью сохранял+восстанавливал конфигурацию другого прибора КТР-121.
Посмотрите - может возможно и для ПР205? Переменные только должны быть сетевыми...

FPavel
08.10.2023, 21:00
Появилось время и смог проверить.

Сделал программу для ПР205 с парой переменных, определённых на вкладке Slave.
Изменил с экрана значения переменных.
Из Owen Configurator подключился к ПР205, считал и сохранил настройки - переменные в ветке "Логика".
Изменил программу, но переменные не трогал. Загрузил новую программу в ПР.
Вновь открыл конфигуратор и записал содержимое ветки "Логика" в ПР.

Всё работает. Можно использовать конфигуратор для перезаписи настроек.

ОлегИзКрыма
11.10.2023, 22:17
В ПР попадает все, что у вас в проекте, соответственно если есть значения по умолчанию в проекте, после прошивки будут они.
Варианта прошивай все, кроме тут нет.

Установка после прошивки у вас и так будет погашена, так как после прошивки будет рестарт ПР.

Все, что нужно сохранять между версиями проектов, надо ручками переписывать в копию прошивки и заливать уже с этими данными, соответственно для таких переменных нужны своеобразные программные подходы.

Это мелочи, а вот то что в переменные вводимые с экрана нельзя забить значение по умолчанию, а они по умолчанию имеют энергонезависимое хранение - вот это жесть.

melky
11.10.2023, 22:32
ОлегИзКрыма кто вам сказал, что в переменные нельзя вбить значения по умолчанию ?

ОлегИзКрыма
14.10.2023, 16:01
ОлегИзКрыма кто вам сказал, что в переменные нельзя вбить значения по умолчанию ?

что не выходит с ОЛ на ПР205, а то бы с удовольствием отказался от лишней ручной работы.

melky
14.10.2023, 16:04
не знаю, что там наколхозили в 205-м, в 200-й на экран можно привязать любую переменную, хоть сетевую, хоть внутреннюю, соответственно можно указать как энергонезависимую и выставить значение по умолчанию.
Да, сетевые переменные когда-то поломали и им теперь нельзя указывать значения по умолчанию, люди создали SelChgI и аналогичный для float...
(з.ы. и теперь гордо это впихнули в базу макросов, вместо исправления косяка, который тянется уже с 114-ого ПР)

Dimensy
14.10.2023, 16:55
Это мелочи, а вот то что в переменные вводимые с экрана нельзя забить значение по умолчанию, а они по умолчанию имеют энергонезависимое хранение - вот это жесть.

Используйте сетевые переменные в качестве экранных и будет вам значение по-умолчанию.

zakhar81
04.01.2024, 08:50
На ПР200 с переменными было в все Ок, а вот у ПР205 с переменными экрана одни проблемы, в них записать нельзя нормально, а при попытке записать начинаются глюки и перезагруз ПЛК
Все проекты сейчас переделываю на работу через сетевые переменные, там где с экрана ввод есть, похоже это единственный вариант
Но разработчикам нужно разбираться с проблемами которые как раз связаны с переменными экрана как можно скорее
У нас у заказчиков уже негатив идет на ПР205, ведь им не объяснишь что это временные глюки и т.п. и мы в заложниках этой ситуации оказались

Евгений_Пермь
04.01.2024, 18:40
Проблема решаема, через первичную инициализацию экранных переменных. Пример вот тут: https://owen.ru/forum/showthread.php?t=38820
Можно создать как два набора переменных, так и использовать константы.

zakhar81
05.01.2024, 08:08
Проблема решаема, через первичную инициализацию экранных переменных. Пример вот тут: https://owen.ru/forum/showthread.php?t=38820
Можно создать как два набора переменных, так и использовать константы.

Не решаема эта проблема, проблема уже не в инициализации а в сбоях в работе ПЛК, он перезагружается периодически если в программе сделана запись в те переменные экрана для которых нет запрета на изменение, т.е. доступен ввод значений с этого экрана.
Инициализацию мы сделали примерно так же как вы по ссылке указали, еще задолго до обсуждения этой темы
Мы уже все переменные которые с экрана привязали к сетевым и через них передаем в программу, так как это чревато перезагрузками и зависанием ПЛК, проблема глубже, и мы ждем когда разработчик разберется в чем дело
У нас виснут ПР205 на рабочих объектах, нас скоро заказчик на счетчик поставит за проблемы которые возникают из за висяков ПР205
После перезагрузки они работают от 3-х до 5-ти суток!
Это пипец полный