Тема / Topic: Изменить порядок следования элементов?
sldk_buf
Forum Member / Участник форума
Участник № / Member № 2898
отправлено / posted
Можно в FBD-программе изменить порядок следования элементов, вычисления зависят от того, когда выполнится блок EXIT?
Сообщения / Posts 54 | Из / From: Россия
| IP / IP: IP адрес / IP address |
sldk_buf
Forum Member / Участник форума
Участник № / Member № 2898
отправлено / posted
Алгоритм представлен в виде дерева. Хотелось бы после выполнения ветки прервать дальнейший рассчет. Придумал вариант с EXIT, но что-то не удается поставить его в нужном порядке. опытался прикрутить блок STEP, но выделение только одной ветки во время обхода показалось невыполнимой задачей. Может подскажете, как реализовать алгоритм, представленный в виде конечного автомата? Или хотябы как правильно обойти дерево?
Сообщения / Posts 54 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
1. Изменить порядок пересчета FB программы нельзя. Только если существует "равноправность" в пересчете каких-либо FB, самым первым из них будет пересчитан самый верхний/левый (см.документацию). 2. С выполнением блока EXIT цикл пересчета FBD завершается. 3. Организовать управление ветвлением в программе с помощью блоков EXIT и STEP действительно затруднительно, т.к. установить точно их место в цикле пересчета готовой программы очень трудно. Единственный реальный вариант управления исполнением отдельных ветвей программы - создавать свою логическую диагностику и с ее помощью самостоятельно управлять входами RUN функциональных блоков (см.документацию). 4. "Алгоритм, представленный в виде конечного автомата" - слишком общее понятие. Общего решения мы предложить не можем. Один из вариантов реализован в функциональном блоке SSTP (раздел "Функции выбора").
Сообщения / Posts 17317 | Из / From: Россия
| IP / IP: IP адрес / IP address |
sldk_buf
Forum Member / Участник форума
Участник № / Member № 2898
отправлено / posted
Что-то у меня блок STEP не работает, как в Хелпе написанно. ТМ 5.10, смотрю в отладчике, проект для Lagoon. Есть какие нибудь баги с ним?
Сообщения / Posts 54 | Из / From: Россия
| IP / IP: IP адрес / IP address |
sldk_buf
Forum Member / Участник форума
Участник № / Member № 2898
отправлено / posted
Кажется я разобрался, действительно важен номер, под которым идет блок. Мне просто казалось, что его действие распространяется и на следующий проход подсчета блоков, а он действует только до окончания прохода .
Сообщения / Posts 54 | Из / From: Россия
| IP / IP: IP адрес / IP address |