Страница 1 из 5 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 42

Тема: Контроль нескольких FBD с одним именем в CFC

  1. #1

    По умолчанию Контроль нескольких FBD с одним именем в CFC

    Здравствуйте. Помогите разобраться. Программа на CFC. Случайно создал два блока R_TRIG c одним и тем же именем (условно Т1). СОДЕСИС не обругал и не предупредил. Поэкспериментировал с переменными и ничего не понял. В документации тоже ничего не нашел как такие дубликаты работают. Два вопроса. Можно ли включить проверку на дублировании имени и как они взаимодействуют? Заранее благодарен.

  2. #2
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    Они не будут правильно работать.
    Проверка на вкладке Проект.
    Сначала Проект-Компилировать
    Потом Проект-Контроль.

  3. #3

    По умолчанию

    Там четыре контроля. Ни один не сказал что у меня в проекте дубликаты.

  4. #4
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    А КДС не запрещает вызов одной переменной в нескольких местах.
    Только на выходе у вас всегда будет значение последнего.

  5. #5
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Объявить два блока с одним именем компилятор вам не даст. Специально сейчас удостоверился, хоть и знал. Это одна из базовых проверок, которые делает любой вменяемый компилятор.
    Код:
    Error 3703: TEST1 (3): Several declarations with the same identifier 'R1'
    Обращаться же к блоку в самой программе (нижняя половина окна; в случае CFC — схема) вы можете хоть триста раз. Порядок вызова в случае неоднократного обращения указывается номерком в правом верхнем углу каждого блока (для отображения щёлкните правой на схеме и выберите Order > Show order).

  6. #6
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,665

    По умолчанию

    И вроде не скажет, тоже иногда при копировании блока забываю поменять имя, потом ищу косяк. CodeSys не отслеживает несколько блоков с одним именем.

  7. #7

    По умолчанию

    Да в том то и дело что эта ошибка не появляется. Компилятор спокойно проглатывает. Специально в подряд поставил триггеры с именем Т1. Скомпилировал и загрузил в ПЛК. С переменными полный бардак. Но КОДЕСИС меня не предупредил о дубликатах.

  8. #8
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    Цитата Сообщение от Алексей Александрович Посмотреть сообщение
    Там четыре контроля. Ни один не сказал что у меня в проекте дубликаты.
    Если внимательно прочтете мой первый ответ, то там не написано, что контроль ищет одинаковые имена. Все, что скомпилировано- работать будет.
    Все что с одинаковыми именами скомпилировано- подразумевает все-го навсего множественный вызов. Компьютер не знает вы так задумали или ошиблись.

  9. #9
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,665

    По умолчанию

    lara197a на самом деле это косяк Codesys, суть в том, что вызов того же R_Trig и так далее в программе обычно делается РАЗНЫМИ переменными, попробуйте от двух разных переменных соединить выходы - Codsys этого сделать не даст.
    А тут - влегкую. потому что это вызов FB или FUN или программы. Могли бы сделать проверку по булевым переменным (из выходу).

  10. #10

    По умолчанию

    Большое всем спасибо. Понял что с этим косяком придется бороться в ручную.

Страница 1 из 5 123 ... ПоследняяПоследняя

Похожие темы

  1. Элемент с таким именем существует
    от Columbariy в разделе Master SCADA 3
    Ответов: 10
    Последнее сообщение: 14.02.2013, 15:20
  2. ТРМ151 холодильник и нагреватель с одним выходом
    от Anton441 в разделе Эксплуатация
    Ответов: 3
    Последнее сообщение: 10.11.2011, 15:03
  3. CFC copy
    от Антон в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 19.03.2008, 07:49

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •