Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о SMH-2G(i)

Вопросы о SMH-2G(i) Здесь всё, что касается работы контроллера SMH-2G(i).

Ответ
 
Опции темы Поиск в этой теме
Старый 12.08.2013, 11:00   #31
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 102
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от ATS Посмотреть сообщение
Мы говорим про ХХХ в ТСР? Этого добра сколько угодно...
Или желаем перекодировать в Modbus TCP?
Пожалуйста, приведите примеры широко распространённого софта.



Цитата:
Сообщение от ATS Посмотреть сообщение
Зто же не перенаправление потока - просто передача в обе стороны заданного числа переменных. Даже если в теплосчетчике стандартный модбас счет переменных может идти на сотни. А зачастую просто неизвестно какие данные может запросить стандартный софт.
На мой, явно непрофессиональный, взгляд, нет разницы, с какой стороны куска хлеба мазать масло. Бутерброд получится в обоих случаях.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 12.08.2013, 12:24   #32
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от Arsie Посмотреть сообщение
Пожалуйста, приведите примеры широко распространённого софта.
Да много их начиная с Com2TCP.exe

Долго пользовались
HW VSP3 - Virtual Serial Port

Сейчас для себя нашел.
http://www.eterlogic.com/Products.VSPE.html
про остальные забыл...


Цитата:
Сообщение от Arsie Посмотреть сообщение
На мой, явно непрофессиональный, взгляд, нет разницы, с какой стороны куска хлеба мазать масло. Бутерброд получится в обоих случаях.
Ну не получается бутерброд...

Опять для примера запрос текущего времени для ВКТ-7:

FF FF 00 03 3F FB 00 00 39 FE ( на два FF в начале внимания не обращаем)

Вроде читаем по модбасу с 0x3FFB, вот только вопрос что (количество регистров = 0х0000)?

А в ответе получим восемь байт:

00 03 08 0C 08 0D 0B 07 21 C0 00 BD 1C

• День (1 байт);
• Месяц (1 байт);
• Год – 2000 (1 байт);
• Час (1 байт);
• Минута (1 байт);
• Секунда (1 байт);
• Байт качества;
• Байт НС (код нештатки).

Формат ответа знает тот кто спрашивает и тот кто отвечает. Тогда и мы для перенаправления потока должны знать все правила. (описание протокола)

Ну естественно это не совсем модбас
ATS вне форума   Ответить с цитированием
Старый 12.08.2013, 13:05   #33
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 102
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от ATS Посмотреть сообщение
Да много их начиная с Com2TCP.exe

Долго пользовались
HW VSP3 - Virtual Serial Port

Сейчас для себя нашел.
http://www.eterlogic.com/Products.VSPE.html
про остальные забыл...
Спасибо, почитал. И сильно мне показалось, что для байт-оринтированных протоколов (коим является, кстати, и modbus-rtu) эти программы не подойдут. Для маркер-оринтированных - пожалуйста, но не более.

Драйверы MOXA - отдельная песня, там команда серьёзных специалистов их пилила более десятка лет, допилив-таки до стабильной работы в большинстве протоколов.

Мой аргумент таков: нужно оставить 2Gi то, что он выполняет лучше всего, а именно быть PLC. А коммуникациями со счётчиками пусть занимается MOXA, благо двух-пятипортовые свитчи и хабы до неприличия дёшевы.



Цитата:
Сообщение от ATS Посмотреть сообщение
Ну не получается бутерброд...
[...]
Ну естественно это не совсем модбас
Я процитирую сам себя: "Если нужен доступ ко внешнему устройству Modbus-RTU: выбрать нормальный Modbus-TCP и [...]"

На сим лично я прекращаю эту часть разговора.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 12.08.2013, 13:59   #34
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от Arsie Посмотреть сообщение
Спасибо, почитал. И сильно мне показалось, что для байт-оринтированных протоколов (коим является, кстати, и modbus-rtu) эти программы не подойдут. Для маркер-оринтированных - пожалуйста, но не более.

Драйверы MOXA - отдельная песня, там команда серьёзных специалистов их пилила более десятка лет, допилив-таки до стабильной работы в большинстве протоколов.
Работают без проблем с разными приборами все программы в том числе и от производителей причем и при подключении через MOXA (без использования их драйверов). В том числе DAS-16 (Прософт) и электросчетчики ПСЧ (Фрунзе) с Modbus RTU.

Цитата:
Сообщение от Arsie Посмотреть сообщение
Мой аргумент таков: нужно оставить 2Gi то, что он выполняет лучше всего, а именно быть PLC. А коммуникациями со счётчиками пусть занимается MOXA, благо двух-пятипортовые свитчи и хабы до неприличия дёшевы.
Естественно основная задача 2Gi - именно быть PLC. Да и в остальном Вы правы. Но вот получить в некоторых закрытых сетях дополнительный IP.

Цитата:
Сообщение от Arsie Посмотреть сообщение
Я процитирую сам себя: "Если нужен доступ ко внешнему устройству Modbus-RTU: выбрать нормальный Modbus-TCP и [...]"
Да я и не возражаю, просто наличие режима бридж (как сквозной канал) упрощает задачу и в случае Modbus-RTU (не надо думать о переменных).

А на заказ такая функция возможна?

Цитата:
На сим лично я прекращаю эту часть разговора.
Жаль. Приятно было пообщаться.
ATS вне форума   Ответить с цитированием
Старый 12.08.2013, 14:16   #35
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 102
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от ATS Посмотреть сообщение
Естественно основная задача 2Gi - именно быть PLC. Да и в остальном Вы правы. Но вот получить в некоторых закрытых сетях дополнительный IP.
Ну это-то как раз не проблема. Используйте SMConnect и будет в вас столько адресов, сколько нужно



Цитата:
Сообщение от ATS Посмотреть сообщение
А на заказ такая функция возможна?
Думаю, дороговато получится, если у вас не серийное производство.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 12.08.2013, 14:30   #36
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от Arsie Посмотреть сообщение
Ну это-то как раз не проблема. Используйте SMConnect и будет в вас столько адресов, сколько нужно
Да с контроллером понятно, но вот если к нему еще моксу придется ставить?

Цитата:
Сообщение от Arsie Посмотреть сообщение
Думаю, дороговато получится, если у вас не серийное производство.
И все же - примерный порядок цифр в почту можно?
ATS вне форума   Ответить с цитированием
Старый 12.08.2013, 14:48   #37
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 102
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от ATS Посмотреть сообщение
Да с контроллером понятно, но вот если к нему еще моксу придется ставить?
Цитата:
Сообщение от ATS Посмотреть сообщение
И все же - примерный порядок цифр в почту можно?
В обоих случаях зовёте студента-линуксоида и он вам всё сделает.

Первое требует написания таблицы маршрутизации - дело крайне нехитрое и быстрое, но требующее специальных знаний.

Вторым студенты тоже балуются. На хабре за пяток-десятку тыщ наверное кто-нибудь набросает вам нужного демона. А может и готовый есть, если внимательно поискать.

Наша реализация будет крайне дорогостоящей из-за всего сонма испытаний, которые данная функция потянет за собой.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 16.08.2013, 11:46   #38
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от Arsie Посмотреть сообщение
... зовёте студента-линуксоида и он вам всё сделает.
...
На хабре за пяток-десятку тыщ наверное кто-нибудь набросает вам нужного демона. А может и готовый есть, если внимательно поискать.
Забыл сказать спасибо за информацию.
Студентов звать не стал - нашел то что хотел в готовом. Вариант с ser2net показался тяжеловатым. Остановился на suart немного подправив под свои нужды. Теперь сквозной канал через дополнительный TCP порт работает без проблем.

Если интересно - выложу.

P.S. Вопрос о реализации Modbus TCP решим с производителем.

Последний раз редактировалось ATS, 16.08.2013 в 11:58
ATS вне форума   Ответить с цитированием
Старый 16.08.2013, 12:26   #39
telem
Новичок
 
Регистрация: Sep 2011
Сообщения: 17
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от ATS Посмотреть сообщение
Если интересно - выложу.
Думаю интересно не мне одному, выложите, пожалуйста.
telem вне форума   Ответить с цитированием
Старый 16.08.2013, 13:23   #40
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Модбас через TCP

Без проблем - в архиве файл с исходником.

Usage: suart [-s<serial_port>] [-p<socket_addr>] [-b<baudrate>] [-d] [-?]

-s<serial_port> Set serial port, default is /dev/rs232
-p<socket_addr> Set socket address, default is 4002
-b<baudrate> Set serial port baudrate (2400/4800/9600/19200/38400/57600/115200), default is 115200
-d Show debug info - transferred data
-? Show this help page

Example: suart -s/dev/rs485 -p3005 -b9600


Доступные названия /dev/rs485 /dev/rs232 соотвественно для 485 и 232 интерфейса
/dev/usbdev /dev/usbhost для виртуальных com портов на usb портах

Заливаем по FTP исполняемый файл suart в каталог /projects, добавляем в скрипт start.after строки для запуска:
Код:
#!/bin/sh
if [ -f ./suart ]; then
sleep 1
 ./suart -s/dev/rs485 -p4001 -b9600&
fi
(параметры естественно на ваш выбор)

В скрипт restart.before (для выгрузки приложения каждый раз при перезагрузке нового FBD-проекта перед новым запуском) добавляем:
Код:
#!/bin/sh
killall suart
sleep 1
killall -9 suart
Также необходимо отключить (для устранения конфликтов) соответствующий последовательный порт в SMLogix от использования ядром «logix».
COM1 - rs485
COM2 - rs232

P.S. При неправильном указании COM порта или невозможности подключения к указанному TCP порту программа закрывается
Вложения
Тип файла: zip suart.zip (9.7 Кбайт, 93 просмотров)
ATS вне форума   Ответить с цитированием
Старый 16.08.2013, 13:29   #41
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 102
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Модбас через TCP

Цитата:
Сообщение от ATS Посмотреть сообщение
Без проблем - в архиве файл с исходником.
Всё правильно!


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 05:28.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024