Deleted by request
Deleted by request
Последний раз редактировалось Вова; 02.06.2015 в 05:56.
может это не мое дело, но описывать алгоритмические последовательности на st не самый лучший вариант. нет, кончено, если очень хочется, то и на st можно все реализовать, правда мне кажется, что это не будет выглядеть оптимально/красиво.
подпрограммы в одну строку такими и останутся? в таком случае можно и без них обойтись. в остальном - на вкус и цвет...
Последний раз редактировалось swerder; 11.04.2011 в 16:06.
задачу управления автооператором структурировать можно, по моему мнению (также занимаюсь электрохимией в ваннах с автооператорами), используя упомянутый выше SFC. но если душа лежит к st, а к графическим жесткое отвращение - то все в ваших руках, нет ничего невозможного.
хотя если посмотреть на картинки вашей блок-схемы и сравнить с языком SFC..., то угадайте на что будут похожи картинки?)
Да я сразу и подумал, что алгоритм очень похож на этот язык И не то, чтобы испытываю отвращение к графическим языкам, просто привык к тексту, как-то он понятнее для меня.
Спасибо, почитаю. Но всё же ещё раз главный вопрос - если писать на st, то всю логику нужно будет держать в одной простыне текста, так?
Создайте нужное количество функциональных блоков (типа подпрограмм) и работайте с ними из основной программы... В документации всё это есть, а на каком языке вы будете создавать функциональные блоки - не важно...
Тогда ещё два вопроса
1. В функциональном блоке или программе, отличной от главной, можно оставаться неограниченно долго? Так, чтобы ПЛК в циклах обрабатывал лишь действия, описанные в этом блоке/программе?
2. Если можно, то как вернуться, когда нужно, в основную программу?
У меня сложилось мнение, что в функциональных блоках/программах нельзя задерживаться долго, там можно делать как можно более короткие операции (типа как прерывания в микроконтроллерах).
надо описать условия возврата в основную прогу, а потом хоть всю работу выполнять в этом ФБ
Типа того...
ВСЕ блоки обрабатываются за один цикл ПЛК... их нельзя останавливать, приостанавливать и т.п... можно только передавать параметры и получать результат... Почитайте побольше о принципах фунициклирования ПЛК...
Хотя существуют ПЛК, где довольно гибко можно работать и с внешними прерываниями, и с прерываниями по таймеру...