|
Связь с внешним миром Modbus, RS232, RS485, Lon и другое. |
|
Опции темы | Поиск в этой теме |
04.03.2019, 22:15 | #1 |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
TRIM Modbus Slave на две сети (решено)
Добрый день!
Имеется два контроллера TRIM5 подключенные к Ethernet. Схема работы первого контроллера LAN>>Trim5-1060-20-0(Modbus address 1)>>RS485>>PIXEL(Modbus address2) Адрес Трима 192.168.8.5. Шлюз 192.168.8.1. Опрашивается с адреса 192.168.1.20 Схема работы второго контроллера LAN>>(LAN1)Trim5-3012-65-0>>RS>>MPPT-1(Addr-4)>>MPPT(Addr-5) >>(LAN2)>>Pixel(Ethernet)>>RS>>Meter(1.2) Т.е LAN1 трима подключен в сеть. RS485 трима опрашивает два MPPT контроллера. LAN2 трима подключен напрямую кабелем в Ethernet модуль пикселя. Пиксель опрашивает по RS485 еще два измерителя мощности. Повешать все на одну шину RS485 не получилось так как MPPT контроллеры перестают отвечать если в шине есть кто то кроме них. Обе схемы работают стабильно. Первая схема опрашивается по сети программой мониторинга (ZABBIX) с модулем Modbus. Проблем нет. Вторая схема ведет себя в сети довольно странно: 1) Нельзя задать адрес (LAN1) к примеру 192.168.8.хх. Пинги из другой подсети не проходят. Ощущение что он игнорирует настройку шлюза. Сеть разделена VLAN-ами и шлюзом для этого VLAN-а является 192.168.8.1. Сетевые настройки 100% правильные, проверено. (LAN2 имеет адрес 192.168.1.215, Pixel - 192.168.1.200.) 2) Если задать адреc LAN1 как 192.168.0.244 то пинги с пк с адресом 192.168.0.5 (В одной подсети)идут. Контроллер опрашивается ModbusPoll-ом. Но не опрашивается ZABBIX-ом (он в другой подсети)- не может подключиться выдавая ошибку "Operation In progress". Если телнетом подключиться к триму из первой схемы на 502 порт то соединение открывается. Если же попытаться подключиться телнетом к триму из второй схемы то соединение не устанавливается. Даже в одной подсети. Что делать? Последний раз редактировалось Jury.K, 04.03.2019 в 22:23 Причина: Описание сети |
05.03.2019, 11:11 | #2 |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: TRIM Modbus Slave
Сетевые настройки правильные 100%.
Так как трим из первой схемы работает без проблем. Настройки первого трима(адрес/маска/шлюз) 192.168.8.5/255.255.255.0/192.192.168.8.1 Второй трим LAN 1 - 192.168.8.6/255.255.255.0/192.168.8.1 LAN 2 - 192.168.1.215/255.255.255.0/192.168.1.1 |
05.03.2019, 20:42 | #3 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
06.03.2019, 02:53 | #4 | ||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
Кстати, а что выступает в роли шлюза между? Цитата:
|
||
06.03.2019, 10:30 | #5 | |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: TRIM Modbus Slave
Не согласен. Я конечно попробую так сделать, но по всем сетевым правилам выйдет что при маске /20 как вы предлагаете, сеть будет вида 192.168.8.0 - 192.168.15.254. А в этом влане на коммутаторах, адресов выше 192.168.8.0/24 нету.
Сети разделены вланами с масками /24 по 254 адреса в подсети. Маска /20 это более крупная сеть. Добавлено через 6 минут Цитата:
2) Диапазон сети для лан2 получается 192.168.1.1 - 192.168.1.254. Т.к маска /24 то чтобы добраться в сеть выше, например 192.168.5.0, трим должен слать данные на шлюз 192.168.1.1. Не настраивать шлюз не получается т.к не удается сохранить с пустым полем. Просит заполнить.. PS..Что то я вообще склоняюсь к втыканию пикселя в общую сеть и отключением изолированного интерфейса... |
|
06.03.2019, 11:13 | #6 | |||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
Цитата:
Цитата:
|
|||
06.03.2019, 12:31 | #7 | |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
Скорее всего так и сделаю. |
|
07.03.2019, 09:19 | #8 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: TRIM Modbus Slave
|
07.03.2019, 17:03 | #9 |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: TRIM Modbus Slave
Объект удаленный. Адрес задать можно из лоджика, только триму, перезалив проект. Пиксель - только вручную.
Как буду на объекте - попробую. Но что то мне подсказывает что: 1) Ничего не изменится. 2) Трим пытается ответить на соединение в шлюз из сети Лан2. |
07.03.2019, 18:02 | #10 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: TRIM Modbus Slave
|
07.03.2019, 20:04 | #11 | |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
Вариант кривого драйвера сетевых карт и стека не рассматриваю. Но факт налицо. В другую подсеть данные не уходят. Изменить сеть lan1 я попробую, но смысла в этом не вижу. Т.к текущая сеть не пересекается с сетью lan2. В любом случае решение будет найдено по приезду на объект. О результатах напишу. |
|
08.03.2019, 01:24 | #12 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: TRIM Modbus Slave
|
25.03.2019, 12:14 | #13 | |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
Проблема была в настройке дефолтного шлюза. Как я и предполагал ранее маршрутизация настроилась таким образом, что шлюзом по умолчанию был интерфейс из сети с пикселем. Поэтому ядро никак и не могло отправить ответ на пинг и связаться с другой подсетью. Изменение дефолтного маршрута решило вопрос. |
|
25.03.2019, 14:54 | #14 | ||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
Цитата:
И какие настройки в итоге? Как в анекдоте - лучше пальцем покажи. |
||
25.03.2019, 20:05 | #15 | |
Member
Регистрация: Jan 2017
Сообщения: 30
Благодарил(а): 1 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
пишем - route -n Видим (У меня уже перенастроено) Затем пишем route del "ip адрес шлюза". Этим стираем маршрут. Затем route add default gw "ip шлюза" "ethX" - этим добавляем маршрут. Например route add default gw 192.168.1.1 eth0, добавить шлюз с адресом 192.168.1.1 на интерфейсе eth0. Т.е в другую подсеть трим (да и вообще линух) будет ходить только через этот интерфейс. Если конечно других маршрутов не найдет ранее. Отредактировать сетевые настройки можно так - nano /etc/network/interfaces и перезапускаем сеть sudo service networking restart (ОСТОРОЖНО!! Можно потерять доступ!) В итоге вот... В моем случае ошибка все же есть. Пикселю надо задать сеть из диапазона отсутствующего в общей сети. Т.е например 192.168.238.100. Ну и Триму второй сетевухе из той же подсети. Причина в том что получив пакет из сети 192.168.1.0/24 трим ответит вторым интерфесом без вариантов. Потому как он в одной с ним подсети. |
|
27.03.2019, 01:06 | #16 | |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: TRIM Modbus Slave
Цитата:
|
|