Вход

Просмотр полной версии : При замене таргета СПК110 на таргет виртуального контроллера, меняется конфигурация!



twit
08.05.2024, 07:17
Евгений, с добрым утром.
Так получилось что у меня на ПК стоят три версии CoDeSys 3.5 14,16 и 17.
Однако порядок их установки на компьютер, был такой:
1. SP14,
2. SP17,
3. SP16.
Сегодня озадачился проверкой проекта на виртуальном контроллере, просто так запустить вирт. плк для SP17 естественно не получилось. В трее болтается виртуальный плк SP16. В пуск, программы тоже все печально.
Пришлось искать на форуме, искать в папках, создавать ярлык ".....3S CODESYS 3.5 SP17\GatewayPLC\CODESYSControlService.exe" -d
Запустил виртуальный плк для SP17. Однако видимо это еще не все, CoDeSysTrey висит от SP16, там тоже надо ковырять... пока не стал.
Выполняю "Обновление" таргета с СП110 (ВНИМАНИЕ! в проекте присутствует модуль MODEM) на Вирт. ПЛК. - подключиться я не смог, но это не так критично в данный момент.
затем возвращаю таргет СПК110 и вот здесь обнаруживаю, что в проекте появилось сообщение об ошибке обращения к библиотеке модема, т.к. модуль Modem теперь отсутствует.
Это нормально? Или я делаю что то не так?
Если при каждой замене таргета оборудования на виртуальный плк будет так, тогда вариант с проверкой проекта на виртуальном контроллере не удобен!
На данный момент, не смотря на рекомендации форума, всё прогонять только в виртуальном контроллере, продолжу проверку проектов в эмуляторе. Работоспособно, за исключением трендов, в эмуляции они не работают.

Евгений Кислов
08.05.2024, 07:23
Добрый день.


CoDeSysTrey висит от SP16, там тоже надо ковырять... пока не стал.

В большинстве случаев это не имеет смысла - обычно любая версия Gateway подходит для любых версий рантайма.


и вот здесь обнаруживаю, что в проекте появилось сообщение об ошибке обращения к библиотеке модема, т.к. модуль Modem теперь отсутствует.

Выложите, пожалуйста, скриншот.

kondor3000
08.05.2024, 10:14
Так получилось что у меня на ПК стоят три версии CoDeSys 3.5 14,16 и 17.
Однако порядок их установки на компьютер, был такой:
1. SP14,
2. SP17,
3. SP16.

Если версии стоят разные, запускать надо не проект, а нужную версию и уже из неё открывать проект.
При замене в проекте СПК110 на вирт. контроллер, не изменяйте основной проект, а сохраните вторую версию для вирт. контроллера. Тогда и в основном не будет ошибок.
У меня помимо этих, стоят ещё и SP5 и SP11 и всё работает как надо.

twit
08.05.2024, 23:16
Если версии стоят разные, запускать надо не проект, а нужную версию и уже из неё открывать проект.
При замене в проекте СПК110 на вирт. контроллер, не изменяйте основной проект, а сохраните вторую версию для вирт. контроллера. Тогда и в основном не будет ошибок.
У меня помимо этих, стоят ещё и SP5 и SP11 и всё работает как надо.

Так и делается. Открываю нужную версию, к примеру CoDeSys 3.5 SP17, из неё проект сделанный в этой версии.
Т.е. получается делать копию проекта, один проект гонять в с таргетом виртуального плк, второй проект оставлять как есть с таргетом СПК110 к примеру.
И далее, по факту прогона в виртуальном контроллере, корректировать второй проект.

На данный момент, делаю проще, отключаю все что связано с графиками, вывожу из компиляции, занимает несколько минут, и гоняю проект до посинения... После всесторонних проверок, возвращаю назад.
Мне так удобней. В принципе эмулятора хватает.

twit
08.05.2024, 23:23
Добрый день.



В большинстве случаев это не имеет смысла - обычно любая версия Gateway подходит для любых версий рантайма.



Выложите, пожалуйста, скриншот.

Евгений, к сожалению скриншота не сделал, но ошибка стандартная при условии обращения к несуществующе переменной статуса модема: status_modem:IoDrvModem.MODEM_STATUS;
Поскольку после возврата проекта с таргета виртуального плк к СПК110 компонент MODEM испарился из дерева объектов, ошибка логична....

Евгений Кислов
09.05.2024, 09:40
Евгений, к сожалению скриншота не сделал, но ошибка стандартная при условии обращения к несуществующе переменной статуса модема: status_modem:IoDrvModem.MODEM_STATUS;
Поскольку после возврата проекта с таргета виртуального плк к СПК110 компонент MODEM испарился из дерева объектов, ошибка логична....

Если status_modem - это ваша переменная, которую вы объявили прямо в канале модема и она отображалась "cо звездочкой" - то описанная ситуация закономерна. Поэтому мы рекомендуем сначала объявлять переменные (в программе, GVL и т. д.), а уже потом привязать их к каналам.

Если же вы объявили переменную по-нормальному - то вам было достаточно вручную добавить в менеджер библиотек библиотеку IoDrvModem.

twit
12.05.2024, 18:30
Если status_modem - это ваша переменная, которую вы объявили прямо в канале модема и она отображалась "cо звездочкой" - то описанная ситуация закономерна. Поэтому мы рекомендуем сначала объявлять переменные (в программе, GVL и т. д.), а уже потом привязать их к каналам.

Если же вы объявили переменную по-нормальному - то вам было достаточно вручную добавить в менеджер библиотек библиотеку IoDrvModem.

Евгений, спасибо. учту в своей работе этот момент.