Я попробовал присланный Вами проект. Сам проект в исходном виде работает. Но при создании проекта с нуля возникают некоторые странности: Создал 2 узла RTM и MicroRTM. Настроил все как надо (в конечном итоге все заработало). Но как я выяснил, поначалу у меня не передавались данные от узла к узлу из-за того, что я создавал всего лишь 2 канала (по одному на каждом узле) и просто их связывал. Если же создать еще связанную пару каналов (на каждом узле по каналу), но указав направление передачи данных в обратную сторону, то все работает. Второй момент состоит в именах каналов в узлах. По-началу канал источник в узле MicrtoRTM и канал-приемник в RTM имели одинаковые имена. Поменяв одно из имен на другое, все начало работать. Можно ли как-то прояснить эти моменты?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Что значит "просто их связывали?" Вы залинковали их друг на друга? Или только один из них на другой? В обратном направлении тоже в режиме "точка-точка" связали каналы? Насчет имен - что-то не так, можете прислать Ваш проект?
Posted by DreamWeaver (Участник № / Member № 1485) on :
Проект я Вам высылал. Вы мне в ответ выслали тестовый проект, в котором показано как связать 2 узла автопосылкой и передачей "точка-точка". Если в присланном Вами проекте убрать каналы, отвечающие за автопосылку, то остаются 6 каналов, демонстрирующих передачу "точка-точка" (по 3 на каждый узел). В каждом узле есть один канал типа output OutNet, который отсылается данные на канал "Channel" в другой узел. Есть канал InNet, который получает данные из сети (от канала "Channel"). Есть канал "Channel". Для удобства дальнейшего изложения каналы первого узла буду называть первыми каналами, второго - вторыми каналами. Получаются 2 связки: Если занести данные в канал OutNet1, то данные передадутся в канал Channel2, а затем вернуться в первый узел в канал InNet1. Аналогично в обратную сторону: заносим данные в канал OutNet2, данные передаются в Channel1, а затем в канал InNet2. По идее, если удалить каналы OutNet2, InNet2,Channel1, то данные по каналам OutNet1-Channel2-InNet1 должны нормально происходить. Но этого не происходит. Если в Вами присланном проекте из вышеописанных 6 каналов удалить хотябы один (например InNet2), то данные никуда не будут передаваться вообще. По-идее без канала InNet2 должны работать связи: OutNet2 - Channel1 OutNet1 - Channel2 - InNet1. Но не работает вообще ничего. Соответственно, если просто оставить в Вашем проекте 2 канала (или создать новые): Channel2 и InNet1, то данные должны передаваться из Channel2 в InNet1. Но этого не происходит. В то же время, если будут присутствовать каналы Channel1 и InNet2 (таким образом организуется передача из узла 1 в узел 2), то данные нормально передаются и из Channel2 в InNet1, и из Channel1 в InNet2. Дело в том, что пары связанных каналов (в привязке одного канал указан другой канал) Channel1-InNet2 и Channel2-InNet1 между собой никак не связаны. И не понятно, почему удаление одного из каналов одной связки приводит к неработоспособности вторую связку. Попробуйте в проекте оставить всего 2 канала (по одному в каждом узле) и попробовать передать данные методом "точка-точка" от одного канала в другой. У меня с 2-мя канала не работет. Аналогичный проблемы возникают, если канал-источник и канал-приемник имеют одинаковые имена.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Проверил все описанные Вами модификации проекта, но не обнаружил ни одной ошибки - все работает нормально и обмен по сети продолжает идти. Может Вы все же что-то не то делаете, ну - например, не обновили экспортируемые файлы на другом узле для МРВ после внесения изменений в проект?