Страница 1136 из 1177 ПерваяПервая ... 136636103610861126113411351136113711381146 ... ПоследняяПоследняя
Показано с 11,351 по 11,360 из 11762

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #11351

    По умолчанию

    Здравствуйте. Создаю простенькую программу для проверки в Codesis 2.3 программа видит ошибку, не понимаю что не так?
    Ошибка 4024.jpg
    Последний раз редактировалось Dgonj; 13.03.2025 в 14:06.

  2. #11352

    По умолчанию

    Цитата Сообщение от Dgonj Посмотреть сообщение
    Здравствуйте. Создаю простенькую программу для проверки в Codesis 2.3 программа видит ошибку, не понимаю что не так?
    Покликайте в ошибку в окне, может покажет место

  3. #11353

    По умолчанию

    А все библиотеки подключены? Стандартная есть?
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab

  4. #11354

    По умолчанию

    Цитата Сообщение от Dgonj Посмотреть сообщение
    Здравствуйте. Создаю простенькую программу для проверки в Codesis 2.3 программа видит ошибку, не понимаю что не так?
    Ошибка 4024.jpg
    Добрый день.

    У Вас на скриншоте выход ET таймера присваивается некорректно. Его можно присвоить переменной типа TIME (нужно её объявить) либо не присваивать вовсе.
    Инженер по продукту ПЛК

    e-mail: a.pineko-skvortsov@owen.ru

  5. #11355

    По умолчанию

    Кликал уже, ни чего не показывает.

  6. #11356

    По умолчанию

    Конечно библиотеки на месте иначе была бы другая картинка блоков.

  7. #11357

    По умолчанию

    Цитата Сообщение от Dgonj Посмотреть сообщение
    Здравствуйте. Создаю простенькую программу для проверки в Codesis 2.3 программа видит ошибку, не понимаю что не так?
    Должно быть так 1 Таймер.jpg Не TIME на выходе, а переменная типа TIME.

  8. #11358

    По умолчанию

    Да, вы правы, если удалить TIME или объявить ET то ошибка уходит и все работает. Спасибо.
    Последний раз редактировалось Dgonj; 13.03.2025 в 15:20.

  9. #11359

    По умолчанию Выполнение задач по циклам (Codesys 2.3)

    Добрый день!
    Требуется мнение компетентных людей по вопросу организации задач ПЛК (Codesys 2.3). В существующей версии программы есть две задачи, работающие циклически, с интервалом 200 мсек каждая (задача №1 отвечает за получение технологических данных и обмен с подчиненными устройствами по Modbus, задача №2 производит расчеты и определяет состояния для подчиненных устройств). Есть предположение что такая организация задач создает неточности в управлении исполнительным механизмом, управляемым по времени его хода. Коротко говоря, контроль времени и работы реализован через сравнение времени активности шага SFC и заданного времени хода. Так как на очередном цикле, при сравнении этих времен, может быть так, что время активности шага на несколько мсек меньше заданного, то соответственно следующая проверка будет в следующем цикле, то есть через 200 мсек. То есть реальное время хода механизма может быть больше на 200 мсек. При заданном времени хода, допустим 2 сек, погрешность в 200 мсек это 10%. Причем это будет накапливающаяся погрешность, на каждом такте управления.
    Возможным решением кажется иная организация задач. Задаче №1 устанавливается меньший приоритет, и тип выполнения "свободная". Задача №2 имеет более высокий приоритет, и тип "по событию". В конце выполнения задачи №1 по триггеру запускается выполнение задачи №2, по завершению второй задачи, выполняется первая. Лишних задержек нет, конфликт задач исключен вроде как. Один из незначительных недостатков, как я понимаю, в том, что при запуске выполнения задачи №2, выполнение задачи №1 прерывается, и после выполнения задачи №2, происходит завершение выполнения задачи№1 (по сути просто возврат управления системе ПЛК, то есть это дополнительный цикл, но с очень малым временем цикла).
    Есть ли какие-то недостатки в таком решении?

  10. #11360

    По умолчанию

    Александр TL;DR =) А почему просто задачам не поставить меньшее время выполнения-то? Например 50 мсек?
    И вообще. Почему это не может быть одна задача, внутри которой будет крутиться таймер, который каждые 200 мсек дёргает нужный код?
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab

Страница 1136 из 1177 ПерваяПервая ... 136636103610861126113411351136113711381146 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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