PDA

Просмотр полной версии : Глобально - удаленное управление проектом CodeSys



ВладОвен
06.05.2022, 17:21
Всем привет.
Подскажите может есть метод, который может помочь управлять ПЛК, который находится в другой локальной сети?
Т.е. у меня своя локальная сеть с серым динамическим IP, и ПЛК в своей локальной сети с таким же своим серым динамическим IP.
Как связать их, что-бы работать на таком ПЛК в среде CodeSys?

(Честно говоря, не очень хотелось бы лесть в роутеры. Но, в крайнем случае, можно...)
Спасибо.

melky
06.05.2022, 20:41
В любом случае в одной точке требуется реальный IP для создания канала со стороны серых IP адресов

ВладОвен
17.05.2022, 12:32
Проблема может быть еще и в том, что скорости интернета может не хватить для отладки в режиме реального времени.
Внутри одной локальной сети все работает шустро.

melky
17.05.2022, 12:49
я стучался как-то через 3G, вполне нормально. В любом случае нет связи, нет ничего..

ВладОвен
17.05.2022, 16:26
я стучался как-то через 3G, вполне нормально. В любом случае нет связи, нет ничего..

Хм... Можно поподробнее?

ВладОвен
17.05.2022, 16:35
По какому протоколу общаются между собой CodeSys и ПЛК в режиме отладки, работы?

(допустим, у меня есть белый IP на ПЛК)

melky
17.05.2022, 16:57
А что там подробнее? сидел в гостинице, правил прогу и подключался через телефон в режиме точки доступа... Настройка ничем не отличается от сетевой. Но вообще лучше VPN настраивать а не голым задом в интернет выставлять...

Евгений Кислов
17.05.2022, 16:58
По какому протоколу общаются между собой CodeSys и ПЛК в режиме отладки, работы?

(допустим, у меня есть белый IP на ПЛК)

По собственному протоколу, спецификация которого по очевидным причинам недоступна.

ВладОвен
17.05.2022, 17:32
сидел в гостинице, правил прогу и подключался через телефон в режиме точки доступа... Настройка ничем не отличается от сетевой.

1. Правил прогу - т.е. на ноуте была открыта ИДЕ CodeSys и в ней рабочий проект?
2. Через телефон ноут получал доступ в интернет. Так?
3. Но ваш ПЛК должен был иметь белый IP / проброшенный порт в роутере. Так?

Или я все путаю: у вас на ноутбуке в гостинице был открыт TeamViewer и он был соединен с рабочим компом в вашей компании. При этом ПЛК был в одной подсети, что и рабочий комп. Так?

Поясните, пож. А то я что-то туплю... :)

capzap
17.05.2022, 20:03
да ладно, мелкий делиться байками как он пользуется продукцией овен, это что то новенькое

melky
17.05.2022, 22:43
ВладОвен обратитесь к IT специалистам, они вам все подробно объяснят.
1. Да
2. Да
3. Внутри сети, где установлен ПЛК он у него белый априори, как происходит организация доступа в сеть вариантов несколько, пробросы портов на роутере это один из них, и не самый лучший с точки зрения безопасности.

capzap и что вас удивляет? Но мне правда хватило ПЛК150, 154 то еще редкостное.... а судя по постоянным темам по 110-ым больше не хочу.
А если читать про 200-ю серию это что-то сродни вот вам шуруповерт, но шурупы им вам придется забивать....

krollcbas
17.05.2022, 23:37
Почитайте про VPN туннель, сам этим пользуюсь в компании куплено порядка 10 микротиков.
Кочуют по объектам, обеспечивая доступ
https://fast-project.ru/articles/soedinyaemsya-s-plk-cherez-vpn-tunnel.html

capzap
18.05.2022, 07:21
capzap и что вас удивляет?

то что Вы сказочник, не соединяется плк через маршрутизаторы

melky
18.05.2022, 08:17
capzap может у вас маршрутизаторы не той системы были ? :)

VladimirIS
18.05.2022, 17:37
Есть еще вариант. Без VPN и сложной настройки маршрутизаторов.
https://intrascada.com/ru/product/desktop-app/

melky
18.05.2022, 17:59
VladimirIS CodeSys это вам не тут (Modbus) чтобы утверждать, что можно подключиться без VPN и роутеров...

VladimirIS
18.05.2022, 18:20
VladimirIS CodeSys это вам не тут (Modbus) чтобы утверждать, что можно подключиться без VPN и роутеров...

Попробуйте прочитать написанное по ссылке. Там как раз пример настройки для Codesys.

ВладОвен
19.05.2022, 18:00
Есть еще вариант. Без VPN и сложной настройки маршрутизаторов.
https://intrascada.com/ru/product/desktop-app/

Правильно ли я понял: в локальной сети с ПЛК должен также крутиться IntraSCADA Server. Так?
И тогда в гостинице открываем ноутбук с CodeSys прописываем IP адрес ПЛК?

60740

VladimirIS
19.05.2022, 18:27
Правильно ли я понял: в локальной сети с ПЛК должен также крутиться IntraSCADA Server. Так?


Да. Любой компьютер, хоть Raspberry, с системой IntraSCADA.


И тогда в гостинице открываем ноутбук с CodeSys прописываем IP адрес ПЛК?


На ноутбуке запускаете десктопное приложение (https://intrascada.com/ru/product/desktop-app/) и по P2P подключаетесь к серверу. В приложении настраиваете и включаете проброс портов к контроллеру.
Далее на ноутбуке запускаете Codesys. Там прописываете локальный адрес вашего ноутбука 127.0.0.1 и порт (обычно 2455).

ВладОвен
20.05.2022, 15:23
Это хороший метод. Но непонятно что прописать в GateWay и IP.
Не получается связаться с устройством. Постоянное сообщение: "Никакое устройство не отвечает на запрос поиска".
Что я делаю не так?

60764

При этом порты проброшены. Связь есть.
60765

melky
20.05.2022, 15:30
ВладОвен вы на роутере настраиваете?

с CodeSys3 не работал, но смущает надпись port 1217 у вас на скрине. И если вы роутер настраиваете, то как бы там localhost (127.0.0.1) не к месту

А, увидел картинку... порт смущает, почему 2455 а в настройках 1217

Есть предположение, что 2455 это порт штатный для CodeSys в ПЛК от компании WAGO

ВладОвен
20.05.2022, 15:47
ВладОвен вы на роутере настраиваете?

Нет. Это именно настройка без вмешательства и сетевые устройства. Для наглядности эксперимента я взял два дефолтных (обычных) роутера.
IDE SodeSys (192.168.1.2/24) находится под первым роутером (192.168.10.243/22 - это адрес wan роутера).
ПЛК (192.168.1.3/24) находится под вторым роутером (192.168.11.52/22 - это адрес wan роутера).
Оба роутера подключены в сеть предприятия с выходом в Интернет.


но смущает надпись port 1217 у вас на скрине

Я там перепробовал все варианты. GateWay не запускается.


2455 это порт штатный для CodeSys в ПЛК от компании WAGO

Возможно вы правы. Где бы узнать порт для ПЛК Owen, Raspberry и т.д.?

melky
20.05.2022, 16:06
IDE SodeSys (192.168.1.2) находится под первым роутером (192.168.10.243). совсем совсем неодинаковые сети если маска /24

ВладОвен
20.05.2022, 16:12
IDE SodeSys (192.168.1.2) находится под первым роутером (192.168.10.243). совсем совсем неодинаковые сети если маска /24

Ну дык - еще лучше! Сети запутаннее! Эксперимент чище! Ёпта!
Задача: сидеть тут (https://www.google.com/maps/place/%D0%A4%D1%80%D0%B0%D0%BD%D1%86%D1%83%D0%B7%D1%81%D 0%BA%D0%B8%D0%B5+%D0%AE%D0%B6%D0%BD%D1%8B%D0%B5+%D 0%B8+%D0%90%D0%BD%D1%82%D0%B0%D1%80%D0%BA%D1%82%D0 %B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5+%D0%A2%D0% B5%D1%80%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B8/@-49.2910664,68.2089932,8.75z/data=!4m8!1m2!2m1!1z0LrQsNGA0YLQsCDQvNC40YDQsA!3m4 !1s0xb314c43e0409c437:0xb88a214c90e6d029!8m2!3d-49.3040835!4d69.4916153), а управлять тут (https://www.google.com/maps/place/%D0%9A%D0%BB%D0%B0%D0%B4%D0%B1%D0%B8%D1%89%D0%B5+% D0%90%D0%BB%D0%B5%D1%80%D1%82/@82.4979323,-62.3055274,13.54z/data=!4m8!1m2!2m1!1z0LrQsNGA0YLQsCDQvNC40YDQsA!3m4 !1s0x4fc411537075760f:0x3d84a908a88f2183!8m2!3d82. 4986627!4d-62.291621)! :)

Порт Raspberry с CodeSys нашел! 11740 !

melky
20.05.2022, 16:19
Место где вы сидите и куда хотите пофигу, важны IP адреса и сети, в которых они находятся.. Если у вас роутер имеет адрес 192.168.10.243 во внутренней сети с маской 255.255.255.0 а вы во внутреннюю сеть суете ему устройство с адресом 192.168.1.2 и такой же маской вы можете с тем же успехом тесать топор на своей голове если в роутере нет маршрутизации сетей.

VladimirIS
20.05.2022, 16:22
Это хороший метод. Но непонятно что прописать в GateWay и IP.
Не получается связаться с устройством. Постоянное сообщение: "Никакое устройство не отвечает на запрос поиска".
Что я делаю не так?
При этом порты проброшены. Связь есть.
60765
Судя по скриншоту соединение выполнено. Попробуйте для начала через браузер начала войти по адресу 127.0.0.1:9053
Вы должны попасть в веб интерфейс своего удаленного устройства (в удаленной локальной сети оно по адресу 192.168.11.53:8080)
60766

ВладОвен
20.05.2022, 16:31
Судя по скриншоту соединение выполнено...

Теперь получилось. Спасибо за помощь. Я просто не сразу понял как действовать с GateWay.


Вы должны попасть в веб интерфейс своего удаленного устройства

Не получилось-бы. Там еще не было целевого приложения CodeSys.

Суть эксперимента: на объекте поставить голый ПЛК + interScada. И все! Уехать от туда!
Далее удаленно ставим GateWay+RunTime (ставится CodeSys-ом через SSH. Нужен порт 22) + ЦелеваяПрограмма (Заливается CodeSys-ом через порт 11740) + Web (смотрится через порт 8080).
Т.е. минимально нужно три порта.

ВладОвен
20.05.2022, 16:34
Место где вы сидите и куда хотите пофигу, важны IP адреса и сети, в которых они находятся.. Если у вас роутер имеет адрес 192.168.10.243 во внутренней сети с маской 255.255.255.0 а вы во внутреннюю сеть суете ему устройство с адресом 192.168.1.2 и такой же маской вы можете с тем же успехом тесать топор на своей голове если в роутере нет маршрутизации сетей.

Ой. Сегодня пятница.... Я проанализирую что тут написано... Отпишу по-позже :)

VladimirIS
20.05.2022, 16:42
Теперь получилось. Спасибо за помощь. Я просто не сразу понял как действовать с GateWay.

Хорошо.
Если будут вопросы, спрашивайте.
Но здесь бываем не всегда, лучше спрашивать в наших телеграм каналах: intrascada (https://t.me/IntraSCADA) и intrahouse (https://t.me/intraHouse)

melky
20.05.2022, 16:54
ВладОвен а у вас CodeSys на Raspberry на котором же и intraScada ? и при этом нигде нет реального IP ?

Просто как бы Raspberry может сама подключиться клиентом VPN к серверу с реальным IP и потом делай с ней шо хош..... :) ну ессно на ней Linux должен быть установлен и быть интернет...

при этом вы так же можете подключаться еще одним клиентом VPN из черта на куличках...

ВладОвен
23.05.2022, 09:33
ВладОвен а у вас CodeSys на Raspberry на котором же и intraScada ? и при этом нигде нет реального IP ?

Да. Именно так. И при этом я не имею доступа к роутерам.


...подключаться еще одним клиентом VPN из черта на куличках...

Не так все просто. Тоннель VPN надо соединить "в голове" и "в хвосте" к соответствующим программам.
Я пробовал сделать соединение через remote.it (https://www.remote.it/). Порт 22 норм, а 11740 не работает. Т.е. сам CodeSys не соединялся с ПЛК.
remote.it и intraScada работают похожим образом - нужна загрузка агента в ПЛК и установка Спец.Программы на комп с IDE CodeSys. Агент и Спец.Программа связываются между собой через свой удаленный сервер. (Это отдельная тема по безопасности, кстати...)

А у вас получалось соединяться через VPN? Опишите ваш опыт.


...если у вас роутер имеет адрес 192.168.10.243 во внутренней сети с маской 255.255.255.0, а вы во внутреннюю сеть суете ему устройство с адресом 192.168.1.2, то в роутере нужна маршрутизация сетей...

Вы неправильно поняли. 192.168.10.243/22 - это upstream роутера, т.е. его адрес, выданный вышестоящим роутером (WAN). Его внутренний адрес 192.168.1.1/24 (LAN). А ПЛК в его внутренней сети имеет адрес 192.168.1.2/24. Маршрутизация не нужна. Т.е. вы перепутали WAN и LAN адреса. А у них могут быть разные маски сети.


...вы можете с тем же успехом тесать топор на своей голове.

Хорошо. Буду тесать топор (смотреть фуллы на topor`е). :)

capzap
23.05.2022, 09:45
Порт 22 норм, а 11740 не работает. Т.е. сам CodeSys не соединялся с ПЛК.

позвольте узнать, что лучше читать документацию или поверить на слово?
https://owen.ru/forum/showthread.php?t=28167&p=269331&viewfull=1#post269331

ВладОвен
23.05.2022, 09:53
позвольте узнать...

О! Надо потестить. Может будет работать...


https://owen.ru/forum/showthread.php...l=1#post269331 (https://owen.ru/forum/showthread.php?t=28167&p=269331&viewfull=1#post269331)

Ну да.... Вся инфа уже была доступна.... Как обычно: читаем руководство в самом конце.

melky
23.05.2022, 10:04
Вы неправильно поняли. 192.168.10.243/22 - это upstream роутера, т.е. его адрес, выданный вышестоящим роутером (WAN). Его внутренний адрес 192.168.1.1/24 (LAN). А ПЛК в его внутренней сети имеет адрес 192.168.1.2/24. Маршрутизация не нужна. Т.е. вы перепутали WAN и LAN адреса. А у них могут быть разные маски сети.

так о том вся и речь, если бы во внутренней сети был ПК а не ПЛК, то на сам ПК можно добавить необходимые маршруты на другие сети, в случае с ПЛК все немножко сложнее, так как не всегда может быть доступ к механизмам маршрутизации. Хотя CodeSys 3.5 на Linux базируется (нет у меня ПЛК с 3.5), тут надо у пользователей узнавать...

Суть в чем, ваш ПЛК имеет просто выход в интернет, но для него основным шлюзом является 192.168.1.1 и не более, а раз роутеры вам недоступны, создать маршрутизацию, то действительно сам ПЛК (тем более он у вас на Raspberry) должен поднять соединение с каким-то сервером, будь то VPN или P2P как у intraScada...

В случае с VPN сервером можно создать прозрачную сеть между двумя и более устройствами со статическими IP адресами. Например ПЛК 10.10.10.0/24 и настраивать тот же CodeSys как в одной этой сети.
Единственное не все VPN умеют передавать маршруты и позволять соединяться между клиентами. OpenVPN и l2tp (пакет xl2tpd на Linux c IPSEC поверх или без него) точно умеют. Сам тестировал и тот и тот вариант.

ВладОвен
23.05.2022, 10:12
melky (https://owen.ru/forum/member.php?u=15000), Я просто хочу сказать, что решение через VPN тоже нужно протестировать, т.к. в некоторых системах может будет неуместно использовать сторонний сервис (remote.it или intraScada).
Сторонний сервис может стать временно недоступным. Или завтра стать платным. Всё бывает...

melky
23.05.2022, 10:17
а разве у intraScada он бесплатный ? вы же в тестовом режиме вроде как используете.

Если Linux, то советую xl2tpd + strongswan (это пакет аналог IPSEC) если нужен будет пример настроек для статических адресов клиентов, пишите. Но тут нужен свой сервер с реальным IP на предприятии ессно.

ВладОвен
23.05.2022, 10:42
а разве у intraScada он бесплатный ? вы же в тестовом режиме вроде как используете.

Если просто проброс портов, то бесплатно. Плата идет за "тэги" - элементы SCADA системы.

melky
23.05.2022, 12:02
а, интересно, надо будет тоже как-нибудь потестить, когда руки дойдут... тут дошли бы :)

imaex
25.05.2022, 08:33
(Честно говоря, не очень хотелось бы лесть в роутеры. Но, в крайнем случае, можно...)


А придётся. В любом случае на одном конце должен быть хост с как минимум белым динамическим IP. А ещё лучше с белым статическим, поскольку далеко не всё и не всегда работает по имени (DNS). Если у Вас на обоих концах серые IP (не важно, статические или динамические), то обмен информацией между такими сетями возможен только через посредника, который живёт где-то в Интернете. И имеет белый IP, разумеется. Как собственно, работают приложения типа TeamViewer и ему подобные. Сеть/сети с точкой входа на белом IP должна быть в центре сбора информации и управления.

ВладОвен
31.05.2022, 11:13
Но ведь IPv6 решит эти рудиментальные проблемы?

Ведь правда, ОВЕН? Уже внедряете?