Я использую CheckBounds (POUs для неявных проверок) для контроля выхода за диапазон массивов.
Но столкнулся с одной проблемой.
Если вход-выход (VAR_IN_OUT) функционального блока имеет тип "массив фиксированной длины" (объявлен как [1..10] например), то проверка работает, CheckBounds при обращении к этому массиву вызывается.
Если вход-выход (VAR_IN_OUT) функционального блока имеет тип "массив переменной длины" (объявлен как [*]), то проверка не работает, CheckBounds при обращении к этому массиву не вызывается.
Можно ли как-то сделать, чтобы во втором случае проверка тоже выполнялась?
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Codesys 3.5 SP17 Patch 2 CheckBounds (POUs for Implicit Checks)
Модераторы: Глоб.модераторы, специалисты по PLC
-
- эксперт
- Сообщения: 1146
- Зарегистрирован: 25 июл 2008, 10:06
- Имя: Леонид
- Страна: РФ
- Благодарил (а): 49 раз
- Поблагодарили: 134 раза
Codesys 3.5 SP17 Patch 2 CheckBounds (POUs for Implicit Checks)
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.
-
- эксперт
- Сообщения: 1146
- Зарегистрирован: 25 июл 2008, 10:06
- Имя: Леонид
- Страна: РФ
- Благодарил (а): 49 раз
- Поблагодарили: 134 раза
Codesys 3.5 SP17 Patch 2 CheckBounds (POUs for Implicit Checks)
Сам отвечу. К сожалению, этот баг исправлен только в SP19.
https://de.codesys.com/fileadmin/data/I ... 35190.html
https://de.codesys.com/fileadmin/data/I ... 35190.html
CDS-82162 Bug Compiler: Checkbounds is not working for dynamic arrays with VAR_IN_OUT as index access Fixed [[GENERAL]] Compilerversion >= 3.5.19.0
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.