ВОПРОС: Можно ли воспользоваться каналом CALL для исключения связи аргумент - аргумент НЕСКОЛЬКИХ каналов внутри одного узла, или как решить эту задачу другим способом. ЗАДАЧА: Нам требуется передавать значения аргументов (FLOAT, BOOL) канала №1 (FLOAT, вызывает шаблон программы) в значения аргументов аналогичных: канала №2, канала №3 и канала №4. Можно конечно просто связать их аргументы, но такая связь будет ненадёжна, с точки зрения отработки такой связи. Ведь Вы сами неоднократно заявляли что связи должны быть как минимум аргумент - атрибут!. У нас эти каналы INPUT OUTPUT вызывают программы, и в их атрибуты записываются значения необходимые для формирования сигналов управления оборудованием, а так же необходимы связи м/у этими программами, и по нашему опыту синхронность отработки таких связей (аргумент-аргумент) не всегда выполняется, а для нашего случая это очень ВАЖНО!
Заранее благадорим!
Posted by Grigorovskih (Участник № / Member № 1915) on :
Напомню, из истории:
Такую задачу мы уже решали чтобы передавать МНОГО аргументов м/у программами разных узлов, тогда мы использовали канал CALL с типом вызова (49) RemArgument. Т.к. заводить несколько десятков каналов, только для передачи значений м/у программами нецелесообразно.
Posted by Baikal_E (Участник № / Member № 4135) on :
Чтобы при связях Аргумент-Аргумент в одном узле была синхронность отработки каналов попробуйте следить за номерами ID каналов. Практика показывает, что если пишущий атрибут имеет свой канал с более меньшим ID, чем принимающий атрибут у которого ID канала больше, то отработка происходит нормально.
Posted by Grigorovskih (Участник № / Member № 1915) on :
А тех поддержка не ответит нам??? Интересует именно как организовать такую связь???
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
1) Если эти связи идут в пределах одного узла, то никаких проблем быть не должно. Связка аргумент-аргумент в пределах узла работает корректно.
2) Если такую связь Вам нужно сделать для разных узлов МРВ, то лучше использовать промежуточный канал. Например, Call.ChGroupReq с параметром 5,6 Но тут возникнет вопрос синхронизации. Т.к. Передача аргументов будет запаздывать на 2 и более циклов.