Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о SMH4

Вопросы о SMH4 Работа и применение контроллеров с сенсорной панелью SMH4.

Ответ
 
Опции темы Поиск в этой теме
Старый 08.07.2021, 15:24   #1
alexsis_k
Senior Member
 
Регистрация: Oct 2011
Сообщения: 144
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию SMH4 сделать проброс

Сразу прошу больно норами не пинать!
Реализована система: SMH4 в качестве контроллера верхнего уровня, к нему по ModBus подключены несколько СЛЭЙВОВ. Сам SMH4 через TCP включен в локалку и в качестве СЛЭЙВА отдает данные с SCADA на безе ПК.
Задача - иметь возможность делать SMH4 "прозрачным" для доступа к регистрам СЛЭЙВОВ. Иначе придется создавать Очень большую таблицу modbas переменных для каждого СЛЭЙВА, и то не факт, что заработает.
alexsis_k вне форума   Ответить с цитированием
Старый 08.07.2021, 15:28   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
Очень большую таблицу modbas переменных для каждого СЛЭЙВА
Можете назвать более определённые числа, чем числа вида "большую" и "каждого"?


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 08.07.2021, 15:44   #3
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
Задача - иметь возможность делать SMH4 "прозрачным" для доступа к регистрам СЛЭЙВОВ.
А что это означает, что имеется в виду?
Gel вне форума   Ответить с цитированием
Старый 08.07.2021, 18:03   #4
alexsis_k
Senior Member
 
Регистрация: Oct 2011
Сообщения: 144
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Arsie Посмотреть сообщение
Можете назвать более определённые числа, чем числа вида "большую" и "каждого"?
Произвел подсчет. Переменных (регистров) отвечающих за конфигурацию СЛЭЙВА 677 шт, их у меня в данном проекте 4. Дополнительно есть регистры с рабочими и аварийными параметрами. Есть еще СЛЭЙВЫ но там количество регистров существенно меньше.


Добавлено через 2 минуты


Цитата:
Сообщение от Gel Посмотреть сообщение
А что это означает, что имеется в виду?
Иметь возможность обращаться к любому из СЛЭЙВОВ с компа минуя контроллер верхнего уровня. Ну допустим - переводим SMH4 в некий режим и уже по TCP ModBus слэйв доступен из локалки. Как то так, в порядке "фантазии".
alexsis_k вне форума   Ответить с цитированием
Старый 08.07.2021, 18:24   #5
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
Иметь возможность обращаться к любому из СЛЭЙВОВ с компа минуя контроллер верхнего уровня. Ну допустим - переводим SMH4 в некий режим и уже по TCP ModBus слэйв доступен из локалки. Как то так, в порядке "фантазии".
Все равно не понятно. Можете картинку нарисовать и пояснить с указанием адресов, портов и т.п., типа такой, как ниже.

Картинку можно нарисовать здесь: https://draw.io/

Изображения
Тип файла: png net1.png (47.9 Кбайт, 240 просмотров)
Gel вне форума   Ответить с цитированием
Старый 08.07.2021, 18:30   #6
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Или, у вас примерно такая схема?

Изображения
Тип файла: png net2.png (62.4 Кбайт, 243 просмотров)
Gel вне форума   Ответить с цитированием
Старый 09.07.2021, 08:37   #7
alexsis_k
Senior Member
 
Регистрация: Oct 2011
Сообщения: 144
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Gel Посмотреть сообщение
Или, у вас примерно такая схема?

Ну если внимательно прочитать мой первый пост то получается, что картинка 2 как нельзя лучше описывает реализацию! Извините конечно но мне не понятно зачем "переливать из пустого в порожнее". Старался кратко описать реализацию и как мне кажется тут вопросов не могло возникнуть.
alexsis_k вне форума   Ответить с цитированием
Старый 09.07.2021, 10:03   #8
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
Ну если внимательно прочитать мой первый пост то получается, что картинка 2 как нельзя лучше описывает реализацию! Извините конечно но мне не понятно зачем "переливать из пустого в порожнее". Старался кратко описать реализацию и как мне кажется тут вопросов не могло возникнуть.
Тогда, т.к. штатного способа организовать шлюз TCP-485 нет (реальный шлюз, а не его подобие через промежуточный опрос/хранение значений и ремаппинг регистров), то есть два варианта:

1) аппаратное решение -- купить готовый шлюз, подключить его по схеме 1 и в программе FBD для SMH4 перенастроить клиентов Modbus на этот шлюз;

2) программное решение -- найти программу-шлюз/агрегатор TCP-485 (или заказать ее разработку), установить на SMH4, в программе FBD для SMH4 перенастроить клиентов Modbus на этот шлюз.
Gel вне форума   Ответить с цитированием
Старый 09.07.2021, 11:20   #9
alexsis_k
Senior Member
 
Регистрация: Oct 2011
Сообщения: 144
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Gel Посмотреть сообщение
Тогда, т.к. штатного способа организовать шлюз TCP-485 нет (реальный шлюз, а не его подобие через промежуточный опрос/хранение значений и ремаппинг регистров), то есть два варианта:

1) аппаратное решение -- купить готовый шлюз, подключить его по схеме 1 и в программе FBD для SMH4 перенастроить клиентов Modbus на этот шлюз;

2) программное решение -- найти программу-шлюз/агрегатор TCP-485 (или заказать ее разработку), установить на SMH4, в программе FBD для SMH4 перенастроить клиентов Modbus на этот шлюз.
Я пытался про анализировать вариант 1 и ранее, но встает такой вопрос. Для связи со SCADA порт Ethernet настраивается как СЛЭЙВ, а для работы со СЛЭЙВАМИ он должен стать Мастером. Не понятно реализуемо это или нет.
Кроме того у это варианта есть ущербность. Если "ляжет" локалка то вся система остановится. В варианте когда СЛЭЙВы работают через ModBus становится не важным работа локалки, в худшем случаи SCADA не получит данных.

По варианту 2 у меня вообще понимания нет. Что за шлюз/агрегатор? Где его брать? Как его писать???
alexsis_k вне форума   Ответить с цитированием
Старый 09.07.2021, 12:00   #10
младшой
Senior Member
 
Регистрация: May 2010
Адрес: Москва
Сообщения: 862
Благодарил(а): 4 раз(а)
Поблагодарили: 86 раз(а) в 67 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
Для связи со SCADA порт Ethernet настраивается как СЛЭЙВ, а для работы со СЛЭЙВАМИ он должен стать Мастером. Не понятно реализуемо это или нет.
Реализуемо.
SMH4 может использовать Ethernet для Modbus TCP будучи одновременно как мастером, так и слейвом.
младшой вне форума   Ответить с цитированием
Старый 09.07.2021, 12:03   #11
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
Я пытался про анализировать вариант 1 и ранее, но встает такой вопрос. Для связи со SCADA порт Ethernet настраивается как СЛЭЙВ, а для работы со СЛЭЙВАМИ он должен стать Мастером.
Прием подключения на порт 502 -- это всегда работа в режиме slave для MODBUS/TCP.

Для мастера никаких портов публиковать не надо, мастеров на устройстве может быть сколько угодно.

MODBUS/TCP мастер и слейв -- совершенно независимые вещи.

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
Кроме того у это варианта есть ущербность. Если "ляжет" локалка то вся система остановится.
Думаю, вы ошибаетесь. Если свитч -- местный, то на подавляющее число проблем в сети ему все равно. Даже если выгорит порт подключения к общей сети, остальные могут и работать.

Или нужно пояснить, каких конкретно проблем вы опасаетесь. Чем это отличается от "ляжет 485 и вся система остановится" ?

Цитата:
Сообщение от alexsis_k Посмотреть сообщение
По варианту 2 у меня вообще понимания нет. Что за шлюз/агрегатор? Где его брать? Как его писать???
На первый взгляд, задача агрегации MODBUS кажется достаточно общей и типовой, что бы существовало какое-нибудь готовое решение. Если нужна разработка такой штуки -- можете написать в личку, могу сделать в качестве шабашки.
Gel вне форума   Ответить с цитированием
Старый 09.07.2021, 14:08   #12
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Gel Посмотреть сообщение
На первый взгляд
Это только на первый взгляд.

Как будете параллелить опрос внешний и внутренний? Ясно, что внутренний будет через локалхост, но это однозначно будет ситуация двух мастеров для RS485. Разруливание этой неприятности автоматом тянет за собой ещё две. Которые за собой ещё тянут.


И это наименьшая из проблем. Именно поэтому я такой шлюз не написал сам. Так-то шлюзы есть готовые разной степени паршивости. Вот только задач они не решают, которые перед ними ставит именно PLC.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 09.07.2021, 15:36   #13
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Arsie Посмотреть сообщение
Это только на первый взгляд.

Как будете параллелить опрос внешний и внутренний? Ясно, что внутренний будет через локалхост, но это однозначно будет ситуация двух мастеров для RS485.
Для RS485 это не будет ситуация двух мастеров, т.к. упорядочивание обращений к одной шине и так подразумевается.

Цитата:
Сообщение от Arsie Посмотреть сообщение
И это наименьшая из проблем. Именно поэтому я такой шлюз не написал сам.
Надо было просто изучить многопоточное программирование и разделение ресурсов и все бы получилось.
Gel вне форума   Ответить с цитированием
Старый 09.07.2021, 15:40   #14
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Gel Посмотреть сообщение
Для RS485 это не будет ситуация двух мастеров, т.к. упорядочивание обращений к одной шине и так подразумевается.
С тайм-аутами что делать планируете? С джиттером доставки данных? С перегрузкой канала RS485?


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 09.07.2021, 15:46   #15
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Arsie Посмотреть сообщение
С тайм-аутами что делать планируете? С джиттером доставки данных? С перегрузкой канала RS485?
С таймаутом делать то же, что и обычно. Если какое-то устройтво зависает на 485, это и так уже проблема для всех остальных устройств (на этой конкретной шине 485). Не вижу тут что-то особенного.

С джиттером ничего делать не надо, зачем?

C перегрузкой канала тоже ничего делать не надо, это не проблема уровня шлюза. Какая разница, как шину перегружать, обращением к шлюзу или напрямую по 485?
Gel вне форума   Ответить с цитированием
Старый 09.07.2021, 15:53   #16
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Gel Посмотреть сообщение
С таймаутом делать то же, что и обычно. Если какое-то устройтво зависает на 485
С тайм-аутами мастеров на эзернете.



Цитата:
Сообщение от Gel Посмотреть сообщение
С джиттером ничего делать не надо, зачем?

C перегрузкой канала тоже ничего делать не надо, это не проблема уровня шлюза. Какая разница, как шину перегружать, обращением к шлюзу или напрямую по 485?
Горизонт планирования понятен, вопросов больше не имею.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 09.07.2021, 16:00   #17
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Arsie Посмотреть сообщение
С тайм-аутами мастеров на эзернете.
Арсений, опишите конкретную проблему, я же не телепат.

С вероятностью 99% полагаю, это будет вообще не проблема или проблема не уровня шлюза.
Gel вне форума   Ответить с цитированием
Старый 09.07.2021, 16:17   #18
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 085
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

Цитата:
Сообщение от Gel Посмотреть сообщение
Арсений, опишите конкретную проблему, я же не телепат.

С вероятностью 99% полагаю, это будет вообще не проблема или проблема не уровня шлюза.
К сожалению я не готов проводить полное исследование задачи "прозрачный модбас". Состоит она из трёх подзадач. Вы рассматриваете только одну из них, шлюзование. Две остальные игнорируете.

Я ж про шлюз писал уже: их есть в интернете, нет сложности скомпилить под контроллер. Возможно некоторые из них окажутся рабочими.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 09.07.2021, 18:20   #19
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 561
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

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

Если вы из модбас и палок пытаетесь сделать систему, критичную к миллисекундам, то естественно вас ждет провал.
Gel вне форума   Ответить с цитированием
Старый 11.07.2021, 18:37   #20
monstr696
Senior Member
 
Регистрация: Apr 2013
Адрес: Россия, Москва
Сообщения: 770
Благодарил(а): 8 раз(а)
Поблагодарили: 65 раз(а) в 60 сообщениях
По умолчанию Ответ: SMH4 сделать проброс

А если подключить так. Главное чтоб была возможность.
Изображения
Тип файла: png net11.png (47.4 Кбайт, 22 просмотров)


__________________
Саня
monstr696 вне форума   Ответить с цитированием
Ответ


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

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



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


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