Size: a a a

2020 May 12

Z

Z-Vladimir in ru_ASUTP
Александр Привалов
логика программы реализована в разных задачах - это условие задачи.
В таком случае, если поставлена задача использовать задачи)) то правильнее будет запихать modbus master в задачу по событию, с запусками по интервалу ничего хорошего не выйдет.
источник

АП

Александр Привалов... in ru_ASUTP
Z-Vladimir
В таком случае, если поставлена задача использовать задачи)) то правильнее будет запихать modbus master в задачу по событию, с запусками по интервалу ничего хорошего не выйдет.
modbus master -работает как модуль, и его работа полностью реализована на уровне ОС
источник

АП

Александр Привалов... in ru_ASUTP
Модбас просто шлет по интервалу значение нескольких регистров и все.
источник

В

Витька Корнеев... in ru_ASUTP
Александр Привалов
В умных учебниках тоже повторяют,что не стоит усложнять код внутри одной единственной программы,разбив логику на несколько отдельных задач.
Пишете классами, у меня вот программа наверное уже под сотку классов для ВУ, а лет 7 назад былобы как у дедов запихано всё в основную форму
источник

АП

Александр Привалов... in ru_ASUTP
Витька Корнеев
Пишете классами, у меня вот программа наверное уже под сотку классов для ВУ, а лет 7 назад былобы как у дедов запихано всё в основную форму
Тут классы совсем не к месту,это точно)
источник

В

Витька Корнеев... in ru_ASUTP
Александр Привалов
Тут классы совсем не к месту,это точно)
ну блоки в кодесис по сути классы, разве что без наследований
источник

АП

Александр Привалов... in ru_ASUTP
Ну не совсем
источник

M

Marat in ru_ASUTP
Александр Привалов
Вы астролог?) Вы не зная задачи и не глядя на код догадались,что мне многозадачность не нужна)))
я не знаю как вам надо, как и то что вы хотите
если перечитаете мои первые сообщения, то я писал "скорее всего"
я (искренне) не против, если вы пойдете своим путем и докопаетесь до истины
у меня обычно максимум 2 задачи (правда для симатиков) - ob1 и ob30 - для ПИД)
еще одна задача появляется если есть расходомеры или энкодеры

к астрологии отношусь с недоверием
источник

АП

Александр Привалов... in ru_ASUTP
Marat
я не знаю как вам надо, как и то что вы хотите
если перечитаете мои первые сообщения, то я писал "скорее всего"
я (искренне) не против, если вы пойдете своим путем и докопаетесь до истины
у меня обычно максимум 2 задачи (правда для симатиков) - ob1 и ob30 - для ПИД)
еще одна задача появляется если есть расходомеры или энкодеры

к астрологии отношусь с недоверием
Вы на каком языке пишете программы?
источник

M

Marat in ru_ASUTP
tia portal
основное на LAD
универсальные блоки (драйверы) - на LAD и на SCL (там где много циклов и массивов и т.п.)
источник

АП

Александр Привалов... in ru_ASUTP
Витька Корнеев
ну блоки в кодесис по сути классы, разве что без наследований
Класс в ООП - это суть множеств, объединенных по какому-либо признаку.
источник

Z

Z-Vladimir in ru_ASUTP
Александр Привалов
Модбас просто шлет по интервалу значение нескольких регистров и все.
Все шаги выполнения этого функционального блока не могут выполниться физически за один цикл. Задача с интервалом приостанавливает выполнение шагов внутри блока на время интервала. Чтобы корректно отрабатывал блок, нужно энное количество циклов программы и в каждом цикле выполнять запуск блока, пока его выполнение не завершится. А если выполнять такую задачу только один цикл за интервал,  нормального результата не будет.
источник

АП

Александр Привалов... in ru_ASUTP
Marat
tia portal
основное на LAD
универсальные блоки (драйверы) - на LAD и на SCL (там где много циклов и массивов и т.п.)
Вот видите,а я пишу на ST.Мы говорим с вами на разных языках.
источник

В

Витька Корнеев... in ru_ASUTP
Александр Привалов
Класс в ООП - это суть множеств, объединенных по какому-либо признаку.
можно рассматривать по разному, можно считать коробочкой с входами и выходами, совсем как блоки
источник

M

Marat in ru_ASUTP
Александр Привалов
Вот видите,а я пишу на ST.Мы говорим с вами на разных языках.
в данной теме с задачами - считаю что никакой разницы нет на каком языке писать, важнее представлять как работает ПЛК (циклические задачи) и алгоритм своей программы, а не реализация на том или ином ЯП
в кодесисе я писал в FBD и ST
источник

АП

Александр Привалов... in ru_ASUTP
Z-Vladimir
Все шаги выполнения этого функционального блока не могут выполниться физически за один цикл. Задача с интервалом приостанавливает выполнение шагов внутри блока на время интервала. Чтобы корректно отрабатывал блок, нужно энное количество циклов программы и в каждом цикле выполнять запуск блока, пока его выполнение не завершится. А если выполнять такую задачу только один цикл за интервал,  нормального результата не будет.
Я же вроде на русском языке пишу,порой возникает ощущение,что мои сообщения просто не читают) Я же говорю - модбас подключен в виде модуля в дереве конфигурации ПЛК - его инициализация, управление,выделение памяти и проч. - всем этим занимается система,и он отрабатывает как надо - шлет и принимает в указанные интервалы (в настройках модуля) указанные регистры, с одной лишь проблемой,что во время работы модуля в промежутках на шине возникает шум и ложные посылки..
источник

АП

Александр Привалов... in ru_ASUTP
Marat
в данной теме с задачами - считаю что никакой разницы нет на каком языке писать, важнее представлять как работает ПЛК (циклические задачи) и алгоритм своей программы, а не реализация на том или ином ЯП
в кодесисе я писал в FBD и ST
Разница как раз тут таки колоссальная.
источник

M

Marat in ru_ASUTP
тогда проясните, если есть время
источник

АП

Александр Привалов... in ru_ASUTP
Совершенно иной подход к проектированию программы.
источник

M

Marat in ru_ASUTP
язык программирования влияет на обработку блоков контроллером?
источник