This is topic M-LINK in forum TRACE MODE 5 бесплатная версия / TRACE MODE 5 Free version at Форум TRACE MODE: техническая поддержка.


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

Posted by Любовь (Участник № / Member № 938) on :
 
Здравствуйте. У меня возникла проблема при решении следующей задачи: необходимо передать данные с одного компьютера (Win98, ТМ5 базовая) на другой,используя последовательный интерфейс. На комп№1 создаю узлы: АРМ(Большой, МВР(M-link,Master;"Параметры посл портов"-COM1, связь с контроллером,базовый адрес(3f8), прерывание(4));узел ДАТЧИКИ (Большой, МВР(M-link,Slave;"Параметры посл портов"-COM1, Slave M-link,базовый адрес(3f8), прерывание(4));На комп№2 узел Датчики(как на комп №1).Каналы:Датчики (комп№2)-ПУСТОЙ(например, G_пила),АРМ -канал типа СВЯЗЬ(out)(nn-0, node-датчики),Датчики (комп1)-канал типа ПУСТОЙ(In_nill).И все это явно неправильно.Помогите, пожалуйста с этим разобраться.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Да уж - это явно неправильно, потому что неразборчиво! [crazy / сумасшедший]

Не могли бы Вы описать все это примерно в таком виде:

ПК№1(АРМ):
1) <тип канала> <его настройки> [с чем связан]
2) ...

ПК№2(ДАТЧИКИ):
1) <тип канала> <его настройки> [с чем связан]
2) ...

Тогда будет легче разобраться и нам и Вам. [master / мастер]
 
Posted by Любовь (Участник № / Member № 938) on :
 
Здравствуйте.Попытаюсь поразборчивей написать то, в чем уже давно сама запуталась:
ПК№1:
-АРМ(МРВ_M-link,master):
Выполняю АВТОПОСТРОИТЬ (Связать с датчики), появилась иконка датчики, в ней:
канал_А: Связь, тип-I, In-M-Link,NN=0, NODE=Датчики, CH=канал_А, ATTR=реальное, OBJ=_БАЗА;
-Датчики(МРВ_M-link,Slave):
канал_А:Пустой,тип-О, out_null;

ПК№2:
-Датчики(МРВ_M-link,Slave):
канал_А: Пустой,тип-О,G_пила,I0=5,I1=C2=C3=0;
(это по идее должно передаваться через COM1 на ПК№1(в будущем должна буду имитировать работу резервуарного парка)

Настройки узлов:
ПК№1: -АРМ:
1)Host Mode (M-link);
2)Параметры последовательных портов:
Связь с контроллером, баз. адрес-3f8, скорость 110, Таймаут-0, прерывание-4, упр.перед.-нет;
-Датчики:
1)Slave Mode (M-link);
2)Параметры последовательных портов:
Slave M-Link, баз. адрес-3f8, скорость 110, Таймаут-0, прерывание-4, упр.перед.-нет;
ПК№2: -Датчики:
1)Slave Mode (M-link);
2)Параметры последовательных портов:
Slave M-Link, баз. адрес-3f8, скорость 110, Таймаут-0, прерывание-4, упр.перед.-нет.
Вот такой я чайник. [Неодобрение / Frown]
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Каждый самовар когда-то был чайником! [Улыбка / Smile]

Итак структура Вашего проекта:
ПК№1(АРМ):
1) Канал_А (связан с каналом Канал_А из узла ПК№2(ДАТЧИКИ))

ПК№2(ДАТЧИКИ):
1) Канал_А (генератор сигнала пилы - только тип канала ПУСТОЙ_G-пила никак не может быть Output, система все равно его вернет в Input, но это не суть важно).

Здесь вроде все правильно. Смущают только настройки скорости обмена и таймауты по СОМ-портам:
1) Скороть 110 бод/сек не будет работать в MS Windows - нужно что-то более приемлемое, например 9600 бод/сек. Эту скорость надо задать для СОМ-портов обоих ПК.
2) В настройках СОМ-порта узла мастера нужно задать хоть какой-нибудь таймаут, например 400 миллисекунд.
 
Posted by Любовь (Участник № / Member № 938) on :
 
Здравствуйте,я хочу немного уточнить следующее:
ПК№1(АРМ):
1)Канал_А (связан с каналом Канал_А из узла ПК№2(ДАТЧИКИ))-для этого надо на ПК№1 построить узел ДАТЧИКИ и затем выполнить для узла АРМ автопостроить.
2)Если это так, то что надо прописать для канала_A узла ДАТЧИКИ на ПК№1 (подтип, дополнение к подтипу)?
Пробовала по-разному, результата нет.
И еще глупый вопрос:прямое кабельное соедининие должно быть отключено?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
[Усмешка / Big Grin] Если я все правильно понял, то Вы пытаетесь создавать проект сразу на двух различных ПК, то есть - физически разных ПК. Не нужно так делать - проект в ТМ разрабатывается как единое целое и то, что Вы создаете в проекте разные узлы АРМ, которые потом будут запускаться на разных физических ПК не означает, что Вы должны каждый раз пересаживаться за другой ПК и выполнять построение АРМа для этого ПК. Вся разработка ведентся на одном ПК и в единой Инструментальной системе!
Отсюда ответ про "кабельное соединение": при разработке проекта в Редакторе Базы Каналов (сокращенно РБК) и тем более при автопостроении связей между АРМами проекта совершенно не нужно, чтобы эти реальные ПК (разрабатываемых Вами АРМов) были связаны между собой этим самым "кабельным" соединением! [fun / веселый]

Вот пошаговый алгоритм создания Вашего проекта:
1) Запускаем РБК и создаем проект
2) В проекте создаем два узла: АРМ и Датчики
3) Настраиваем СОМ-порты для обоих этих узлов:
Узел АРМ: СОМ1 - "Связь с контроллером"\
Адрес: 3F8
Скорость: 9600
Параметры обмена: 8-1-n
Прерывание: 4
Таймаут:400
А также - выстявляем флаг Host M-Link в основном бланке.
Узел Датчики:
СОМ1 - "Связь с контроллером"\
Адрес: 3F8
Скорость: 9600
Параметры обмена: 8-1-n
Прерывание: 4
Таймаут:400
А также - выстявляем флаг Slave M-Link в основном бланке.

4) Входим в узел Датчики и создаем в нем канал "Канал_А" подтипа ПУСТОЙ_G-пила. В реквизитах канала выставляем флаг "Доступ".

5) Возвращаемся на первый экран - структуры проекта и дважды кликнув по узлу АРМ выполняем Автопостроение его с узлом Датчики. При этом в АРМе появится объект "Датчики", а в нем канал "Канал_А" подтипа СВЯЗЬ_InM-Link, который будет автоматически настроен системой автопостроения на канал из узла Датчики.

6) Сохраняем проект на диск и теперь нам необходимо создать для обоих узлов проекта графику.

7) Открываем проект в РПД (Редактор представления данных), загружаем наш проект и открываем на редактирование узел АРМ - создаем в нем экран, а на экране размещаем Форму Отображения (ФО) Динамический текст, которую привязываем к каналу "Канал_А" атрибут "Реальное".

8) Сохраняем проект и закрываем узел АРМ. Открываем узел Датчики и создаем в нем один экран с ФО динамического текста, которую привязываем к каналу "Канал_А". Сохраняем проект - узел Датчики можно не закрывать, а запустить в режим эмуляции (кнопка с бегущим человечком на панели инструментов РПД).

9) Берем кабель Null-modem (нульмодемный кабель для связи двух ПК через СОМ-порты) и соединяем ПК, где у нас запущен узел Датчики с другим ПК, где точно также запускается узел АРМ - для этого на другом ПК тоже должен стоять ТМ5. Также нужно просто скопировать наш разработанный проект на этот ПК, открыть в нем узел АРМ и запустить на эмуляцию.

Вот и все... [clever / умный]
 
Posted by Любовь (Участник № / Member № 938) on :
 
Здравствуйте, это все я.
После такого подробного объяснения даже стыдно еще писать...
Но все таки не работает. Делаю все как вы написали (по нескольку раз), но результата нет [Неодобрение / Frown] .
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Присылайте Ваш проект на адрес hotline1@adastra.ru - посмотрим, что у Вас там не так.
Только не архивируйте его в самораспаковывающийся архив типа ЕХЕ - иначе он не пройдет.
 
Posted by Любовь (Участник № / Member № 938) on :
 
Здравствуйте, отослала на hotline1@adastra.ru свой проект, тема- "связь двух ПК", название проекта -"нефтебаза"
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Так у Вас в настройках СОМ-порта на узле Датчики скорость неверно выставлена - 110 бод, а нужно 9600 бод!
 
Posted by Любовь (Участник № / Member № 938) on :
 
Ой, вы извините меня, что вам прислала проект с такой глупой ошибкой. Перед тем как отослать просто сделала новый...Во всех старых сделано по инструкции и все так как вы сказали...Но даже если и выставленно 9600 -это все равно не дает результата. А может это связано с самими пк? Хотя данные передаются нормально с помощью блоков INP и OUTP. Кабель перепаян с одной стороны. Порты имеют такие же настройки как и прописывала на вкладке "Парамерры посл. портов". Еще раз извините меня.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
А кабель точно Null-modem? Может что-то в кабеле не так спаяли, потому как в проекте тогда у Вас все впорядке?
Когда Вы запускаете узел проекта в РПД он создает в директории проекта файл с именем запущеного Вами узла и расширением txt. В этом лог-файле пишется отладочная информация по запуску и работе проекта. Посмотрите в нем - появляются ли строки пакетов запросов по M-Link на узле Мастер? Если они там постоянно появляются, а атрибут "Достоверность" канала этого узла равен 1, значит, что-то не то с кабелем null-modem'а.
 
Posted by Любовь (Участник № / Member № 938) on :
 
Здравствуйте.Дела с кабелем обстоят следующим образом:
кабель null-modem, разбирали, проверяли,с помощью блоков INP и OUTP-передать и принять данные не составляет проблемы, через HyperTerminal-тоже все в порядке, при установке прямого кабельного соединения все копируется с ПК на ПК.
Лог файлы показывают одну и туже ошибку:
АРМ (мастер):ERR IN0:
RS:COM 1 check error
OUT: 40<@> 01 02 00 00 00 00 00 00 00 00 00 03 2a<*> ( и так много много раз);
Для SLAVE:NETDDE:NDDEAPI.DLL not found
RTM:math kernel starting...
SCREEN load error screen.000-пишет только одну ошибку;
Насчет атрибута достоверность:
в узле мастер для каналов СВЯЗЬ вместо атрибута РЕАЛЬНОЕ ставлю ДОСТОВЕРНОСТЬ. Запускаю РДК,я так понимаю надо смотреть колонку I (после реальное), но она пустая остается.
 
Posted by Любовь (Участник № / Member № 938) on :
 
если запускать два РПД на одном компе, организовывать связь между COM1 и COM2-то все в порядке, данные принимаются и отсылаются. Единственно только в датчики.txt(slave)пишется:
ETDDE:NDDEAPI.DLL not found
RTM:math kernel starting...
SCREEN load error screen.000
INFO:work mode
INFO:start time is 0.44 s
INFO:stoping...
RS:COM2 TRANSACTION=0 ERROR=1 TIME=30.15
TOTAL_BYTE=0 AVR_RESPONSE=0 MAX_RESPONSE=0. Всн работает отлично на одном ПК
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
На "NETDDE:NDDEAPI.DLL not found" и "SCREEN load error screen.000" - внимания не обращайте.
Строка в логе Мастера: "OUT: 40<@> 01 02 00 00 00 00 00 00 00 00 00 03 2a<*>" - это и есть запрос по M-Link на узел Слейв в СОМ-порт.
А вот строка
"ERR IN0:
RS:COM 1 check error"
Означает, что на отправленый запрос Слейв ничего не ответил.
Проверяйте, доходит ли сигнал до Слейва - для этого вместо РПД на ПК Слейва запустите, например, программу Гипертерминала.

1) Два РПД запускать на одном ПК - нельзя. Так сервер можно запускать несколько раз на одном ПК только с командной строки, потому как при запуске РПД он сам стартует сервер Drawserv.exe и второй РПД подключится к уже стартовонному первему серверу - поэтому может создастся впечатление, что у Вас идет обмен, а на самом деле у Вас графика РПД будет показывать значение одного и того-же канала одного узла (первого запущеного РПД).
2) А Вы случайно на Слейве не Эмулятор в РБК запускаете вместо сервера РПД во время проверки связи между двумя МРВ?
 
Posted by Любовь (Участник № / Member № 938) on :
 
Здравствуйте.
1)Вместо РПД на ПК Slave подключила гипертерминал,принимаю странный набор символов- сигнал доходит, значит скорее всего проблема в Slave?
2) на обоих ПК включаю РДП.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Все же проверьте хорошенько настройки СОМ-порта в узле "Датчики" - может у Вас там не Slave M-Link стоит в "Назначении"? [Недоумение / Confused]
Только так можно объяснить, что запросы доходят до него, но он на них не отвечает...
 
Posted by Любовь (Участник № / Member № 938) on :
 
Вы сделали меня счастливой!!! Большое,большое спасибо!!!Все работает, все отлично!!!!Спасибо, спасибо!!!Извините, что так мучила
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
[fun / веселый] Ну, тогда повышаем Ваш уровень с "чайника" до "электрочайника"! [clever / умный]
 


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2