c := time.After(2*time.Second) мне не подойдет. Я просто сделал простой пример из моего кода. А вообще отключение цикла у меня просходит по изменениям в базе. Цикл помжет проработать год, день или минуту. Есть специальный сканер по базе периодически, и если цикл остановлен он останавливает, если запущен, запускает.
Александр Скуснов, Ясно, старая школа. Надеюсь моя книга по ST не будет дилетанской, и хорошие рецензии пары профессоров из университетов, не просто по дружбе. И надеюсь мои клиенты для которых я разрабатываю архитектуры ПЛК на базе Линукс, не прочтут твой комент и не уволят меня за некомпетентностью.
Александр Скуснов, в оипсании написано что в отличии от упрощенного SFC. Это да, правильно. Но это не SFC в Cpdesys. Имеется в виду SFC как он исполнен в других IDE без поддержки МЭК 611131-3. То есть идет противпостовление SFC как он задуман стандартом МЭК 61131-3 и тем как он обычно реализован в других IDE, что здесь называется упрощенным. Но в самом Codesys 2х версий SFC нет.
Вопрос, честно скажи, ты хоть один ПЛК программу написал? Просто я понимаю что ты как программист знаешь много, но вот когда речь заходит о ПЛК. По 3) вообще бред. Ну да это правда для языков типа С, Паскаль, ... Но ST напряму не компилируется в машинный код. Это как ТайпСкрип. Из него потом делается сначала С а потом компиляция. И запускается готовая программа не просто из команды, а в РанТайм среде. Просто по комментарию понятно то вы вооще не понимаете что такое функциональный блок в ПЛК. Но спорить я не буду, останусь при своем мнении.
REMMARGROP, тоже не ожидал. Думал что политика безопастности Эпл не даст доступа к gcc системы. Очень удевлен. Наверно в этом приложении какойто свой компилятор, который может как то безопастно генерить и запускать код.
Но в Codesys есть две реализации: МЭК-шаги (steps) и упрощённые
Нет там 2х реализаций пошаговых инструкций. Есть SFC. Можно пошаговые инструкци исполнить в ST при помощи конструкции CASE.
3) Специфика работы ПЛК в том что программа вызывается цеклически. А значит только в первом цикле свойства блока не будет иметь значений. Ну или будет иметь инициализированные нулевые значения. По этому в ПЛК это распространённая практика.
Писать код можно в простом блокноте. Но вот компилировать и исполнять код будет нельзя по любому. Так тчо не выжу смыла вообще писать код на айпаде. Это устройство для развлечений, хотя они и называют его ПРО, в реале это не так. Купите себе Surface поставьте VS Code и кодируйте что хотите.
igor_romanov14, ну да с которого ты пытаешься подключиться. Я так понял тот что Мак. Если не видишь своего ПК, значит рыть нужно в настройках сетевого подключения.
Drno, ну ты же упомянул безопасность. Думаю TW использовать на много безопасней. Это 3тия сторона, но смысл которой наоборот, сделать связь безопасней чем обычная.