This is topic Помогите с сетевым обменом in forum Работа в MS Windows (ODBC/DDE/OPC/NET) / Working under MS Windows at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/13/t/000081.html

Posted by Sergei (Участник № / Member № 161) on :
 
Проблема - в узле принимаются не все автопосылки другого узла.
В узле 1 есть каналы с установленной автопосылкой в сеть. В узле 2 есть канал In Net, привязанный к какому-то каналу узла 1. Каналы узла 2 имеют дополнение к подтипу Out Net(group) и привязаны к автопосылкам через объект "прием рассылок". Часть таких каналов нормально принимают значения с узла 1 и сами могут установить в нем значения, а часть (большая) не принимает авторассылки (групповая рассылка работает).
Для проверки сетевого обмена создал в каждом узле по 2 канала, один из которых посылает в сеть пилу,а второй через In AutoNet принимает рассылки с другого узла. В узле 1 прием есть, а в узле 2 - нет. [Недоумение / Confused] Или тут же создал в узле 2 канал In AutoNet и привязял к каналу узла 1 - связь есть. Поменял ему тип на Пустой (согласно справке все равно должно приниматься - связь в объекте "прием рассылок" сохранилась) и связи нет.
Пробовал увеличить количество блоков NCB ("интенсивный прием") - ничего не изменилось.
Не в тему: когда Вы наконец уберете эти несерьезные сообщения типа "обновление прошло успешно" - вот если бы неуспешно, тогда ... [Вращающиеся глаза / Roll Eyes]
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Ну Вы и навертели... Сразу три разных типа сетевого обмена в одну связку - естественно не работает.
1) Автопосылки (когда стоит флаг "в сеть") - это обмен типа "один ко многим", принимаются только каналами типа СВЯЗЬ_In AutoNet и приемник обязательно должен быть привязан к источнику в объекте "Прием рассылок". Если канал-приемник имеет другой подтип, то прием будет только в атрибут Выход - всегда, а вот в Реальное значение будет копироваться только когда канал отключен от источника через атрибут Подключение (этот метод связи используется для синхронизации реальных значений по сети между дублированными узлами).
2) Каналы подтипа СВЯЗЬ_In Net, а также СВЯЗЬ_Out Net - это обмен типа "точка-точка" и канал источник данных (или приемник, если это Out Net) может иметь любой подтип. При этом флаг "в сеть" вообще не используется!
3) Каналы подтипа Out Net(Group) - это обмен типа "групповая рассылка". Необходим для отправки значений группе узлов - у Вас же их всего два. И непонятно - зачем Вы их подключали к источникам в объекте "Прием рассылок"?

Если Вы хотите организовать связь между двумя узлами, то Вам надо использовать 1-й или 2-й тип связи.
 
Posted by Sergei (Участник № / Member № 161) on :
 
Вообще-то узла 3: 2 дублированных и один АРМ. Мне нужно чтобы значения каналов можно было менять с любого узла. По поводу того что я сделал - это есть в справке:
quote:
Чтобы автопосылка в узле-приемнике принималась в каналы, подтип/дополнение которых не совпадают с СВЯЗЬ/In_AutoNet, надо создать в узле-приемнике канал подтипа СВЯЗЬ с дополнением In Net с любым каналом узла-источника (этот канал можно даже выключить).
А насчет того, что каналы должны быть Input, то в справке в разделе Резервирование - настройка каналов есть абзац
quote:
Для каналов типа OUTPUT ситуация выглядит следующим образом. Если у такого канала не включена процедура управление, то при изменении его входа на рабочем узле это значение передается на вход этого же канала в дублирующем узле.
Есть конечно сомнения, что это применимо только к дублированным узлам, однако для части каналов эта схема работает.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Работает она только когда Вы атрибутом Подключение управляете у канала.

Давайте Ваш проект на адрес техподдержки - посмотрим настройки каналов.
 
Posted by Sergei (Участник № / Member № 161) on :
 
Да, без файла состояния прогресс налицо (есть еще что-то не то - надо привязки проверить) работает почти всё. Мне даже в голову не приходило, что в этот файл пишутся признаки авторассылки.
Спасибо.
 
Posted by Sergei (Участник № / Member № 161) on :
 
Может Вы скажете поподробнее, что же всё таки пишется в файл состояния, потому как в справке написано что туда сохраняется только входное значение (если не установлен флаг Атрибуты),однако практика показывает, что это не так.
 
Posted by Larik (Участник № / Member № 191) on :
 
А можно мне тоже проконсультироваться.
Есть два узла - 1-компьютер (МРВ) и 2-контроллер (микроМРВ).
ПЭВМ должен постоянно опрашивать каналы у контроллера и иногда выдавать задания обратно.
Для этого во 2 узле (контроллер)во всех каналах поставили флаг "в сеть". А в 1 узле создали каналы-приёмники с подтипом InAutoNet. Здесь же, в узле ПЭВМ, часть других каналов имеют подтип OutNet для выдачи заданий в контроллер, причем в те же каналы, которые уже имеют флаг "в сеть".
В связи с этим два вопроса:
1. Всё ли мы сделали корректно. Или может здесь есть более оптимальный вариант.
2. Отладочный монитор, запущенный под МРВ, постоянно с каждым периодом системы генерирует одну и ту же строку
MATH:devided by zero {//}.
Хотелось бы узнать, что она означает.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
2Sergei: На самом деле на то он и файл "сохранения состояния" системы, что туда пишется все состояние системы, а не только атрибуты границ. Однако не все из него подчитывается - что-то задается пользователем вроде флага "Атрибуты", а что-то грузит сама система без ведома пользователя.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
2Larik:
1) Да - все правильно.
2) В какой-то FBD-программе этого узла производится деление на ноль - об этом и сообщает сервер. Запустите сервер с подробной отладкой, тогда будет видно, в какой именно программе производится деление на ноль.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2