Коллеги доброго дня ,Прошу не кидать тухлыми яблоками..for.....png
почему не происходит инициализация переменной в цикле FOR?
если инициализирую переменную выше цикла то все нормально работает...
может я что то в синтаксе не понимаю.
Коллеги доброго дня ,Прошу не кидать тухлыми яблоками..for.....png
почему не происходит инициализация переменной в цикле FOR?
если инициализирую переменную выше цикла то все нормально работает...
может я что то в синтаксе не понимаю.
Максим, судя по предыдущему Вашему вопросу, после END_FOR стоит знак точка с запятой, которого не должно быть.
А так надо смотреть в отладке по шагам, почему не происходит инициализация.
Подскажите, пожалуйста, как убрать букву "М". И что она означает?
Недавно тут задавали такой вопрос, к сожалению, не могу найти.
Последний раз редактировалось GoodLuck; 17.11.2020 в 14:10.
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Добрый день!
Пытаюсь реализовать функцию инвертирования входов ПЛК 210 с помощью переключателей в веб визуализации. Сама функция выглядит следующем образом:
Screenshot_10.png
aInvRs_DI (массив структур для панельки на экране)
aInvRs_DI[16].xButt - переменная переключателя
aInvRs_DI[16].dwColorBrick - переменная смены цвета индикатора
Вызов функции из программы выглядит так
TargetVars.stRightSide.xDi16:=funInvers(TargetVars .stRightSide.xDi16,aInvRS_DI[16].xButt,Color =>aInvRS_DI[16].dwColorBrick);
при компиляции выдает предупреждение:
'Application.TargetVars.stRightSide.xDi16' - не корректный объект для присваивания", вообще всё работает, как задумано. И если заменить таргет переменную на глобальную переменную, то выдаст то же самое предупреждение, а если задать переменную из plc_prg, то предупреждение отсутствует.
А вопрос вот собственно в чем: Насколько критично это предупреждение и почему оно возникает? Если оставить таргет переменную или глобальную какие могут быть последствия?
Последний раз редактировалось DenisV; 20.11.2020 в 16:03.
Добрый день.
'Application.TargetVars.stRightSide.xDi16' - эта переменная, значение которой зависит только от состояния соответствующего дискретного входа.
Не очень понятно, что вы ожидаете, присваивая туда какое-то значение.
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
DenisV, насколько я помню, функция может иметь только одну выходную переменную - это сама функция (пусть специалисты меня поправят). У вас же выходных переменных - две. Хотя, я сам пробовал в функции дополнительно изменять глобальную переменную (естественно в вызове функции никакие выходные переменные не указывал) - всё работало как надо и не было ошибок.
Возможно, Вам более подошел бы функциональный блок.
Поправляю - такая возможность (VAR_OUTPUT для функций) появилась уже во второй редакции МЭК 61131-3.насколько я помню, функция может иметь только одну выходную переменную - это сама функция (пусть специалисты меня поправят).
В CODESYS V3.5 это поддержано (а вот в CoDeSys V2.3 - поддержано не было).
https://help.codesys.com/webapp/_cds...tional-outputs
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Евгений, спасибо за информацию. Уточните, а с какого сервис пака у функции появились дополнительные выходы, а то "вторая редакция" многим, наверное, ничего не говорит?
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk