привет.
подскажите, есть ли способ прямо в программе менять интервал запуска задачи?
Screenshot 2024-07-20 085609.png
привет.
подскажите, есть ли способ прямо в программе менять интервал запуска задачи?
Screenshot 2024-07-20 085609.png
Спасибо за идею, конечно.
Но я хотел бы вызывать эту программу довольно часто (1000 раз в секунду) и менять частоту вызовов очень плавно (шагами по 5%).
Ваш метод не подойдет, потому как нужно будет создать супер задачу, которая сама будет работать с частотой примерно Х10. Это нереально.
А если прям в программе сделать фильтр вызовов с нужной скоростью?
Ну, большой-большой IF на весь код программы (или Действие) и свой таймер?
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab
Последний раз редактировалось kondor3000; 20.07.2024 в 12:38.
Подскажите, верно ли я понимаю, что если непосредственно в проект добавить ПОУ как на рисунке
Безымянный.png
затем в конфигурации задач (или любым другим способом) вызывать это ПОУ на разных устройствах из проекта, то на этих устройствах мы получим копии этого "глобального" ПОУ. Подойдёт ли это для задач удобной отладки и масштабирования, когда, например, есть много ПЛК с идентичными проектами, но разными сетевыми настройками, работающие в одной сети.
Какое вообще штатное назначение этих "глобальных" ПОУ?
Да.Подойдёт ли это для задач удобной отладки и масштабирования, когда, например, есть много ПЛК с идентичными проектами, но разными сетевыми настройками, работающие в одной сети.
Именно такое, какое вы описали. На этой вкладке размещаются объекты, которые будут доступны для использования в приложениях всех контроллеров, добавленных в проект.Какое вообще штатное назначение этих "глобальных" ПОУ?
Связь со мной: 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
Добрый день. Мне нужно повторить проект сделанный в TIA Portal (ПЛК1200) на СПК1хх [М01] с модулями М110. В Тиа реализован ООП подход: есть ФБ с программой и есть десяток экземпляров блоков данных "привязанных" к ФБ. Очень удобно, чтобы не плодить кучу кода при работе типового оборудования (вроде насосов, например). Сейчас сел за Codesys 3.5 и с ходу не нашёл подобной возможности. Прошу подсказать где поискать и как это здесь правильно реализуется.
Как вариант, буду писать функцию и вызывать её со ссылкой на разные структуры данных, если нет блоков данных, которые можно подтягивать к выполнению ФБ.
Последний раз редактировалось mf_; 22.07.2024 в 11:44.
Добрый день.
В CODESYS V3.5 экземплярность реализуется на уровне ФБ.
Т.е. каждый экземпляр ФБ получает свой отдельный "блок данных".
Я вам на почту отправил статью, которую наш отдел рекламы планировал опубликовать в относительно ближайшее время.
2024-07-22_11-47-59.png
BASIC.ONTIME - это имя ФБ, а fbOntime - имя его экземпляра.
Можно объявить fbOntime_2, fbOntime_3 и т. п. - и это будут отдельные экземпляры, данные которых не будут пересекаться.
Или можно сразу объявить массив из них:
Код:afbOntime: ARRAY [1..3] OF BASIC.ONTIME;
Последний раз редактировалось Евгений Кислов; 22.07.2024 в 11:51.
Связь со мной: 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