- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Modbus для 1С
Модератор: Глоб.модераторы
-
- осмотрелся
- Сообщения: 106
- Зарегистрирован: 16 дек 2018, 16:35
- Имя: Антон
- Благодарил (а): 5 раз
- Поблагодарили: 4 раза
Modbus для 1С
Коллеги!
Возникла задача писАть в 1С кое-какие данные из ПЛК. В ПЛК, ессно, присутствует Modbus в ипостасях RTU и TCP. Вопрос: есть ли для 1С готовый, пусть даже и платный, клиент Модбас? А лучше сервер, тогда ПЛК сможет сразу записывать данные в него.
Возникла задача писАть в 1С кое-какие данные из ПЛК. В ПЛК, ессно, присутствует Modbus в ипостасях RTU и TCP. Вопрос: есть ли для 1С готовый, пусть даже и платный, клиент Модбас? А лучше сервер, тогда ПЛК сможет сразу записывать данные в него.
-
- эксперт
- Сообщения: 1737
- Зарегистрирован: 06 янв 2016, 19:45
- Имя: Петров В.Л.
- Страна: Россия
- город/регион: Красноярск
- Благодарил (а): 78 раз
- Поблагодарили: 235 раз
Modbus для 1С
Мне сама идея пускать 1С в сетку с ПЛК не нравится категорически. Офисная сеть и сеть АСУ ТП должны быть разнесены по разным подсетям.
Более правильно, как мне кажется - Поставить сервер с 2 сетевыми интерфейсами с SQL сервером. АСУ ТП по своему интерфейсу пишет в базу данных нужные данные, а 1С берет их с SQL сервера - что для нее вполне просто.
Более правильно, как мне кажется - Поставить сервер с 2 сетевыми интерфейсами с SQL сервером. АСУ ТП по своему интерфейсу пишет в базу данных нужные данные, а 1С берет их с SQL сервера - что для нее вполне просто.
-
- осмотрелся
- Сообщения: 106
- Зарегистрирован: 16 дек 2018, 16:35
- Имя: Антон
- Благодарил (а): 5 раз
- Поблагодарили: 4 раза
Modbus для 1С
petr2off, я тоже склоняюсь к такому же варианту, просто решил проработать вопрос со всех сторон. Кстати, АСУ ТП бывают разные, например, та, с которой я столкнулся, буквально пара ПЛК и ПК с 1С, на которой в автоматическом режиме ведётся учёт продукции. Поэтому решил обдумать и тот вариант, который озвучил в теме.
-
- почётный участник форума
- Сообщения: 1073
- Зарегистрирован: 29 апр 2014, 09:57
- Имя: Рыбкин Владимир Геннадьевич
- Страна: Россия
- город/регион: Тверь
- Благодарил (а): 73 раза
- Поблагодарили: 147 раз
-
- осмотрелся
- Сообщения: 106
- Зарегистрирован: 16 дек 2018, 16:35
- Имя: Антон
- Благодарил (а): 5 раз
- Поблагодарили: 4 раза
Modbus для 1С
Есть такие. Но есть СКАДА, которые работают без ОРС, потому что драйвер для Модбас в них встроен.
-
- почётный участник форума
- Сообщения: 3971
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 21 раз
- Поблагодарили: 229 раз
Modbus для 1С
ODBC называется :) Причем может быть в разных ипостасях - как клиент ODBC в OPC-сервере, как механизм обмена в скаде или вообще подключенная SQL-таблица трендами. Пускать 1С (со всеми тетками) в архивы АСУ, как уже отмечалось, настоятельно не рекомендуется. А вот выкладывать средствами одного и читать средствами другого череж промежуточную DMZ - может быть вполне приемлемо.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- не первый раз у нас
- Сообщения: 324
- Зарегистрирован: 31 окт 2017, 16:45
- Имя: Дмитрий
- Страна: Россия
- город/регион: Калининград
- Благодарил (а): 9 раз
- Поблагодарили: 84 раза
-
- освоился
- Сообщения: 299
- Зарегистрирован: 15 сен 2016, 18:47
- Имя: Андрей
- Страна: Россия
- город/регион: Вологда
- Благодарил (а): 20 раз
- Поблагодарили: 78 раз
Modbus для 1С
У меня службой по modbus собираются данные и пишутся в базу mssql, а 1с забирает из базы.
https://github.com/AndreyVys/ModbusToBa ... Service.vb
Из оборудования - moxa nport 5150 для RTU
Если решите допиливать самостоятельно, то читайте вот эту тему https://owen.ru/forum/showthread.php?t=20122
https://github.com/AndreyVys/ModbusToBa ... Service.vb
Из оборудования - moxa nport 5150 для RTU
Если решите допиливать самостоятельно, то читайте вот эту тему https://owen.ru/forum/showthread.php?t=20122
-
- освоился
- Сообщения: 233
- Зарегистрирован: 26 мар 2017, 13:05
- Имя: Денис
- Страна: Россия
- город/регион: Самара
- Благодарил (а): 15 раз
- Поблагодарили: 38 раз
Modbus для 1С
Можно написать на Питоне скрипт, который опрашивает ПЛК по Modbus TCP и кладёт данные в таблицу БД. Оттуда уже 1С какие надо данные выгружает.
-
- администратор
- Сообщения: 18758
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 973 раза
- Поблагодарили: 1854 раза
Modbus для 1С
И готового такого тоже уже может быть много. Хоть в SQL, хоть в .XLS.
По вопросам работы Форума можно обратиться по этим контактам.
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Modbus для 1С
Но нередко в таких мерах нет необходимости. Надо посмотреть, какой вообще функционал требуется на предприятии кроме этой стыковки с 1С. То есть: нужна ли там система оперативно-диспетчерского управления или нет, нужна ли какая-то аналитика технологической информации или нет, и т.п. по уровню между контроллерами и 1С. Вполне возможно, оптимальным будет внедрение по всему предприятию единой системы, собирающей данные с локальных контроллеров, хранящей у себя, ведущей какую-то технологическую аналитику (материальные и энергетические балансы, например), и предоставляющую доступ к этим данным для 1С, например, через ODBC или какой-нибудь web xml. Для одной задачи это будет избыточно, а если на все задачи предприятия по этому уровню - на каждой такой задаче в среднем окажется дешевле.
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
-
- эксперт
- Сообщения: 2471
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2121 раз
- Поблагодарили: 208 раз
Modbus для 1С
2 сетевые карты лишние. Разделение сетей не должно быть на уровне устройства. Это делить нужно на уровне маршрутизатора и/или брандмаура.petr2off писал(а): ↑18 ноя 2021, 11:49 Мне сама идея пускать 1С в сетку с ПЛК не нравится категорически. Офисная сеть и сеть АСУ ТП должны быть разнесены по разным подсетям.
Более правильно, как мне кажется - Поставить сервер с 2 сетевыми интерфейсами с SQL сервером. АСУ ТП по своему интерфейсу пишет в базу данных нужные данные, а 1С берет их с SQL сервера - что для нее вполне просто.
На стороне ПЛК закрыть все входящие соединения. Исходящие тоже лишние закрыть (Quod licet jovi, non licet bovi). Общение через ДМЗ. Где и будет общий сервер.
Отправлено спустя 4 минуты 39 секунд:
Никогда разделение не мешает безопасности. Создает проблемы в работе - да. Как и всякая проблема безопасности.
И никогда дополнительная безопасность, если она не мешает работе, не является проблемой.
Отправлено спустя 1 минуту 53 секунды:
Безопаснее будет, если контроллеры будут отсылать информацию на промежуточный сервер.VADR писал(а): ↑22 ноя 2021, 14:53 Вполне возможно, оптимальным будет внедрение по всему предприятию единой системы, собирающей данные с локальных контроллеров, хранящей у себя, ведущей какую-то технологическую аналитику (материальные и энергетические балансы, например), и предоставляющую доступ к этим данным для 1С, например, через ODBC или какой-нибудь web xml.
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Modbus для 1С
Я не о разделении говорил и не о безопасности, а о питоновских скриптах, опрашивающих контроллер по модбасу по запросу от 1С.
Да, примерно так. Промежуточный сервер, на который собирается информация с контроллеров. Это может быть как сервер, выделенный просто для хранения информации, так и сервер в составе системы АСОДУ, MES или ещё чего-либо в том же духе. Насчёт того, контроллер туда данные кладёт, или эта система контроллеры опрашивает - вопрос открытый. В любом случае надо стремиться к тому, чтобы контроллер как можно меньше был зависим от внешних систем. И тут есть несколько вариантов проблем:
1. Контроллер кладёт данные на внешний сервер, например, по modbus tcp. Что будет, если этот сервер ляжет и контроллер не сможет к нему подключиться? Что будет, если сервер начнёт тупить и процесс обмена данными затянется?
2. Внешняя система запрашивает данные из контроллера. Что будет, если злоумышленник завладеет этим сервером и он начнёт посылать хренову тучу запросов, а то ещё и хитрых запросов, чтобы DOS устроить? Вряд ли контроллеры на такую активность рассчитаны.
3. Есть промежуточный OPC-сервер в сети контроллера или DMZ, который один опрашивает контроллер с заданной периодичностью. На мой взгляд, вариант оптимальный: контроллеру по большому счёту пофиг, если его перестали опрашивать. Если злоумышленник положит наш промежуточный OPC-сервер, большой беды не будет, разве что прекращение обмена данными на некоторое время. С другой стороны - дополнительное оборудование - дополнительная точка отказа.
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
-
- эксперт
- Сообщения: 2471
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2121 раз
- Поблагодарили: 208 раз
Modbus для 1С
Я не против, если они запускаются ИЗ контроллера. Открывать доступ извне - всегда понижение безопасности.
Отправлено спустя 1 минуту 37 секунд:
На который сами контроллеры будут отсылать информацию. Только ту, что решит разработчик.
Отправлено спустя 2 минуты 28 секунд:
С точки зрения безопасности - закрыт и давно.
Входящих соединений не должен принимать контроллер. Да, это накладывает ограничения на обслуживание. Но тут решать будут ответственные лица. И это закрытый вопрос.
Отправлено спустя 1 минуту 47 секунд:
Вы с точки зрения безопасности спрашиваете - запишет контроллер себе ошибку и все. Связи у него с внешним миром нет. Если есть еще каналы - туда отправит сообщение.
Отправлено спустя 5 минут 56 секунд:
Это уже давно решено асинхронным обменом.
С точки зрения безопасности - уже дыра. Просто закрыть дыру.
Это не OPC сервер, а OPC клиент, как мы недавно выяснили ))
Плюс, сеть контроллера не должна быть в DMZ.
Контроллер умеет в SSL?
Отправлено спустя 4 минуты 9 секунд:
Это еще будет повод усилить меры безопасности.
Вопрос будет, какого уровня доступа данный OPC сервер
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- освоился
- Сообщения: 233
- Зарегистрирован: 26 мар 2017, 13:05
- Имя: Денис
- Страна: Россия
- город/регион: Самара
- Благодарил (а): 15 раз
- Поблагодарили: 38 раз
Modbus для 1С
Так и я о том. В Питоне много готовых пакетов. Поэтому скрипт можно написать быстро. А если вручную с нуля модбас-протокол писать - то ну его нафиг....
-
- освоился
- Сообщения: 299
- Зарегистрирован: 15 сен 2016, 18:47
- Имя: Андрей
- Страна: Россия
- город/регион: Вологда
- Благодарил (а): 20 раз
- Поблагодарили: 78 раз
Modbus для 1С
Можно хоть на каком языке написать, библиотеки modbus есть для всех популярных языков.
-
- администратор
- Сообщения: 18758
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 973 раза
- Поблагодарили: 1854 раза
Modbus для 1С
Я предлагал взять уже написанное.
По вопросам работы Форума можно обратиться по этим контактам.
-
- освоился
- Сообщения: 233
- Зарегистрирован: 26 мар 2017, 13:05
- Имя: Денис
- Страна: Россия
- город/регион: Самара
- Благодарил (а): 15 раз
- Поблагодарили: 38 раз
Modbus для 1С
Вы правы, просто лично я с PyCharm только недавно познакомился и меня приятно удивило, как можно легко и быстро найти и установить нужные библиотеки, даже не открывая браузер.
-
- освоился
- Сообщения: 299
- Зарегистрирован: 15 сен 2016, 18:47
- Имя: Андрей
- Страна: Россия
- город/регион: Вологда
- Благодарил (а): 20 раз
- Поблагодарили: 78 раз
Modbus для 1С
Это позволяет и visual studio, и многие другие ide. Но python не совсем удобен для windows, по моему скромному мнению.
Зачастую уже написанное не совсем подходит или сильно геморное в настройке. У меня есть купленный advanced tcp data logger, но пришлось заморочиться и написать свое. Например, обмен life bit или хитрая обработка данных. И тогда проще написать свой код, чем пытаться разобраться в настройках готовой программы, писать обработку в хранимых процедурах на sql сервере и т.п. Но, в случае, если нужно просто взять несколько переменных и положить их в базу, то готовое решение вполне подходит, особенно, если нет навыка программирования на каком-нибудь языке.
-
- эксперт
- Сообщения: 2471
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2121 раз
- Поблагодарили: 208 раз
Modbus для 1С
python pip вам очень сильно поможет с установкой зависимостей.
Отправлено спустя 2 минуты 47 секунд:
Часто людям легче написать свое, это есть. Но человек пишущий всегда свое - отстает по скорости разработки, и по размеру результата.
Но если платят за объем кода, тогда согласен.
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- освоился
- Сообщения: 299
- Зарегистрирован: 15 сен 2016, 18:47
- Имя: Андрей
- Страна: Россия
- город/регион: Вологда
- Благодарил (а): 20 раз
- Поблагодарили: 78 раз
Modbus для 1С
Собственно как и composter в php, nuget в visual studio, npm в node.js и т.д.
И, если бы я писал для linux консольное приложение, то наверняка использовал бы python.
-
- эксперт
- Сообщения: 2471
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2121 раз
- Поблагодарили: 208 раз
Modbus для 1С
Да, согласен, кроме node, и php (там pear) это другая тема.
Что вам удобнее, я для консоли использую С
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- освоился
- Сообщения: 299
- Зарегистрирован: 15 сен 2016, 18:47
- Имя: Андрей
- Страна: Россия
- город/регион: Вологда
- Благодарил (а): 20 раз
- Поблагодарили: 78 раз
Modbus для 1С
Я не "настоящий сварщик", поэтому С, кроме arduino ide, больше нигде не использую. В windows vs с .net, в линукс bash и python.