Владимир К
Junior Member / Новичок
Участник № / Member № 5577
отправлено / posted
В самом первом примере попробовал добавить новую кнопку для запуска (Программа_1_2_Кн_пуск) и изменить алгоритм Было Программа_1_2_Сумма=Параметр+Управление; Стало If Программа_1_2_Кн_пуск==1 Then Программа_1_2_Сумма=Параметр+Управление; End_if; но признак запуска сложения не попадает в прграмму
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Как Вы определяете, что "признак запуска сложения не попадает в программу"?
Тип аргумента Программа_1_2_Кн_пуск - INPUT? Тип данных для аргумента Программа_1_2_Кн_пуск? Если BOOL, то надо If Программа_1_2_Кн_пуск Then Программа_1_2_Сумма=Параметр+Управление; End_if;
В канале вызова программы (не в шаблоне программы!) есть привязка аргумента Программа_1_2_Кн_пуск к какому-либо источнику, например, к OUT-аргументу экрана?
Сообщения / Posts 17322 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Владимир К
Junior Member / Новичок
Участник № / Member № 5577
Владимир К
Junior Member / Новичок
Участник № / Member № 5577
отправлено / posted
На экране изображены 5 механизмов (клапана) Как реализовать на языке ST реализовать цикл(на FBD Это получилось) Описание цикла 1 Вкл 1 механизм и продержать t1 сек (остальные выключены) 2 затем 1 отключить и Вкл 2 и 3 включить на t2 сек 3 затем включить 1,4 и 5 на t3 сек а 2 и 3 выключить Вопрос возник от непонимания канала TIME 4 Все механизмы отключить (Продолжительности t1 t2 t3 Вводятся в поля ABC 1 Расположенные на экране где и механизмы 2 расположенные на другом экране(параметры цикла)
Владимир К
Junior Member / Новичок
Участник № / Member № 5577
отправлено / posted
Проект использует три экрана Основной и два дополнительных В одном проекте экраны запускаются от кнопок на основном ,в в другом нет Запуск экранов одинаков Почему это происходит С уважением Владимир
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Если Вам понятен алгоритм (а его Вы успешно реализовали на FBD), то для его реализации в ST принципиальных препятствий нет. Единственное существенное различие - отсутствие в ST операторов, эквивалентных блокам разделов "Триггеры и счетчики", "Регулирование", "Управление".
Возможно, для Вашего алгоритма необходимо ввести аргумент "Текущее время" и по нему запоминать в глобальных переменных "Начало каждого этапа", а потом сравнивать разницу между "Текущим временем" и "Началом соответствующего этапа" с заданными уставками. Всю эту математику выполнять в целочисленном формате UDINT. В качестве "Текущего времени" можно использовать канал HEX32, связанный с системной переменной @t_Set_Date. Для разработки пользовательских программ у нас нет ресурсных возможностей.
Вопрос с экранами не ясен. Уточните, пожалуйста, или пришлите проект с пояснениями на адрес техподдержки hotline@adastra.ru.
Сообщения / Posts 17322 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Владимир К
Junior Member / Новичок
Участник № / Member № 5577