Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version » Запись по Modbus/TCP в HoldingRegisters

   
Автор / Author Тема / Topic: Запись по Modbus/TCP в HoldingRegisters
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Проблема с Modbus/TCP.
Имеется W_Word(16) привязаный к каналу CALL.ChGroupReq.
Пытаюсь записать одновременно (в скрипте или по событию нажатия кнопки) три аргумента канала CALL.ChGroupReq. В результате на стороне сервера изменение данных происходит по очереди с существенной задержкой. Такое впечптление как-будто вместо одного модбас запроса с передачей 3-х элементов, посылается три разных запроса с изменением 1-го элемента.
В чем может быть проблема?
Заранее благодарю.

Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
поставить debug=400(отладка сети)
аргументы Chgr долдны быть OUT

Сообщения / Posts 806 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by Nico:
поставить debug=400(отладка сети)
аргументы Chgr долдны быть OUT

Вы имеете ввиду то что советует товарищ Adastra Tech Support "файл конфигурирования запуска узла TMCom_xx.cnf (см."Приложения/Задание параметров работы мониторов") с ключом DEBUGON=400"? Я из документации не понял, файл TMcom_<ordinal>.cnf это как? что вставить вместо <ordinal>. Я пробовал подставлять 0 и 1. Ничего нового в логах не появилось. Последняя строка
quote:
INF_TCP:HOST 127.0.0.1:63573 connect to 127.0.0.1:5204
Связь то есть. Чтение данных с сервера идет на ура. Проблемы только с тем, что модбасные ячейки на сервер поступают не одновременно, а по очереди, с интервалом порядка менее 500мс.

Аргументы CALL.ChGroupReq OUT, тип INT и UINT.

Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Жигалов Денис Николаевич
Forum Haunter / Завсегдатай форума
Участник № / Member № 6035


Icon 1 отправлено / posted      Профиль для / Profile for Жигалов Денис Николаевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by dzukpp:
quote:
Отправитель / Originally posted by Nico:
поставить debug=400(отладка сети)
аргументы Chgr долдны быть OUT

Вы имеете ввиду то что советует товарищ Adastra Tech Support "файл конфигурирования запуска узла TMCom_xx.cnf (см."Приложения/Задание параметров работы мониторов") с ключом DEBUGON=400"? Я из документации не понял, файл TMcom_<ordinal>.cnf это как? что вставить вместо <ordinal>. Я пробовал подставлять 0 и 1. Ничего нового в логах не появилось. Последняя строка
quote:
INF_TCP:HOST 127.0.0.1:63573 connect to 127.0.0.1:5204
Связь то есть. Чтение данных с сервера идет на ура. Проблемы только с тем, что модбасные ячейки на сервер поступают не одновременно, а по очереди, с интервалом порядка менее 500мс.

Аргументы CALL.ChGroupReq OUT, тип INT и UINT.

Вместо <ordinal> ставится номер узла.
Это Название проекта_Номер...находится в папке узла.
TMCom_xx.cnf - так можно оставить если проект находится на компьютере. ХХ меняется если проект находится в контролере вроде как то так.

Сообщения / Posts 112 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
отключите канал
поменяйте значения аргументов
включите канал

теперь одновременно ?
чем проверяется одновременность поступления ?

Сообщения / Posts 806 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by Nico:
отключите канал
поменяйте значения аргументов
включите канал

Отключить канал это значит присвоить атрибуту канала "Выключить" (3,С) false. Я правильно понимаю? Пробовал отключать менять потом включать. В результате после включения канала данные также приходят по очереди.

quote:
Отправитель / Originally posted by Nico:
чем проверяется одновременность поступления ?

Одновременность проверял самописной консольной програмкой, выводит в консоль раз в 300мс весь массив и там видно что данные обновляются не одновременно. Можно конечно предположить, что я где-то что-то наворочил, но этой програмке уже 100 лет и все это время она работала исправно.

В общем вопрос по прежнему открыт.

Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Еще вопрос в догонку. Есть ли способ послать произвольную строку в TCP сокет? Я особо не расчиттываю на положительный ответ, но вдруг.
Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
канал записи OUTPUT(пишет все по изменению рельного значения) или INPUT( пишет по одному значению )
Сообщения / Posts 806 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by Nico:
канал записи OUTPUT(пишет все по изменению рельного значения) или INPUT( пишет по одному значению )

Это к вопросу о Modbus/TCP?
Сейчас у меня канал CALL.ChGroupReq типа OUTPUT, атрибуты этого канала типа OUT. В среде Трейс Моуд данные изменяются одним скриптом, на модбас сервер приходят по очереди.

Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
.ну тогда наверное тех-под просить пусть проект смотрят
.script пишет непосредственно в аргументы OUT Chgr
.INPUT Chgr обратно их считать

Сообщения / Posts 806 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
реальное значение OUT Chgr кто устанавливает в 1 ?
после записи оно должно сбрасываться в 0

Сообщения / Posts 806 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Посмотрим. Пришлите проект и папку проекта, с которой Вы работали в техподдержку электронной почтой.
Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
отправил проект на forum@adastra.ru
Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Адрес техподдержки: hotline@adastra.ru

В параметрах используемого компонента в слое источники/Приемники установлено направление Input. Необходимо установить Output.

Для отработки, запишите во атрибут "Входное значение" канала CALL#1 значение "1".

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by AdAstra Technical Support:

В параметрах используемого компонента в слое источники/Приемники установлено направление Input. Необходимо установить Output.

Для отработки, запишите во атрибут "Входное значение" канала CALL#1 значение "1".

Спасибо, заработало.

Причем я не заметил разницы в слое источники/Приемники установлено направление Input или Output. Данные приходят одновременно и так и так.

Я меняю значение атрибута "Входное значение" на 1 при каждом нажатии на кнопку, через некоторое время значение этого атрибута сбрасывается опять в 0. Т.е каждый раз когда мне нужно отправить данные кучей по нажатию на кнопку или по скрипту, мне необходимо выставить "входное значение" канала в 1 и присвоить необходимым аргументам канала необходимые значения. Я прав?

Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
dzukpp
Junior Member / Новичок
Участник № / Member № 6383


Icon 1 отправлено / posted      Профиль для / Profile for dzukpp           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
И еще в догонку. Можете прислать пример (проект для Visual Studio) dll, которую можно подключить к программе как внешнюю библиотеку?
Сообщения / Posts 30 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
1. Сначала надо задать нужные значения аргументам канала CALL, и только после их установки посылать "1" в ВХОД канала. Строго реализовать это можно только программным путем.

2. Готового примера dll, которую можно подключить к программе как внешнюю библиотеку, у нас нет.
Создание примеров по заявкам пользователей не входит в функции техподдержки. Надеемся на понимание.

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2