Коллеги доброго дня ,Прошу не кидать тухлыми яблоками..for.....png
почему не происходит инициализация переменной в цикле FOR?
если инициализирую переменную выше цикла то все нормально работает...
может я что то в синтаксе не понимаю.
Коллеги доброго дня ,Прошу не кидать тухлыми яблоками..for.....png
почему не происходит инициализация переменной в цикле FOR?
если инициализирую переменную выше цикла то все нормально работает...
может я что то в синтаксе не понимаю.
Максим, судя по предыдущему Вашему вопросу, после END_FOR стоит знак точка с запятой, которого не должно быть.
А так надо смотреть в отладке по шагам, почему не происходит инициализация.
Подскажите, пожалуйста, как убрать букву "М". И что она означает?
Недавно тут задавали такой вопрос, к сожалению, не могу найти.
Последний раз редактировалось GoodLuck; 17.11.2020 в 14:10.
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | 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' - эта переменная, значение которой зависит только от состояния соответствующего дискретного входа.
Не очень понятно, что вы ожидаете, присваивая туда какое-то значение.
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk
DenisV, насколько я помню, функция может иметь только одну выходную переменную - это сама функция (пусть специалисты меня поправят). У вас же выходных переменных - две. Хотя, я сам пробовал в функции дополнительно изменять глобальную переменную (естественно в вызове функции никакие выходные переменные не указывал) - всё работало как надо и не было ошибок.
Возможно, Вам более подошел бы функциональный блок.
Поправляю - такая возможность (VAR_OUTPUT для функций) появилась уже во второй редакции МЭК 61131-3.насколько я помню, функция может иметь только одну выходную переменную - это сама функция (пусть специалисты меня поправят).
В CODESYS V3.5 это поддержано (а вот в CoDeSys V2.3 - поддержано не было).
https://help.codesys.com/webapp/_cds...tional-outputs
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk
Евгений, спасибо за информацию. Уточните, а с какого сервис пака у функции появились дополнительные выходы, а то "вторая редакция" многим, наверное, ничего не говорит?
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk