1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Modbus для 1С

SCADA, серверы, АРМ верхнего уровня, диспетчерские
Ответить

Автор темы
tonyk
осмотрелся
осмотрелся
Сообщения: 106
Зарегистрирован: 16 дек 2018, 16:35
Имя: Антон
Благодарил (а): 5 раз
Поблагодарили: 4 раза

Modbus для 1С

Сообщение tonyk »

Коллеги!
Возникла задача писАть в 1С кое-какие данные из ПЛК. В ПЛК, ессно, присутствует Modbus в ипостасях RTU и TCP. Вопрос: есть ли для 1С готовый, пусть даже и платный, клиент Модбас? А лучше сервер, тогда ПЛК сможет сразу записывать данные в него.

Михайло
почётный участник форума
почётный участник форума
Сообщения: 3559
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 6 раз
Поблагодарили: 253 раза

Modbus для 1С

Сообщение Михайло »

Аватара пользователя

petr2off
эксперт
эксперт
Сообщения: 1602
Зарегистрирован: 06 янв 2016, 19:45
Имя: Петров В.Л.
Страна: Россия
город/регион: Красноярск
Благодарил (а): 69 раз
Поблагодарили: 185 раз

Modbus для 1С

Сообщение petr2off »

Мне сама идея пускать 1С в сетку с ПЛК не нравится категорически. Офисная сеть и сеть АСУ ТП должны быть разнесены по разным подсетям.
Более правильно, как мне кажется - Поставить сервер с 2 сетевыми интерфейсами с SQL сервером. АСУ ТП по своему интерфейсу пишет в базу данных нужные данные, а 1С берет их с SQL сервера - что для нее вполне просто.

Автор темы
tonyk
осмотрелся
осмотрелся
Сообщения: 106
Зарегистрирован: 16 дек 2018, 16:35
Имя: Антон
Благодарил (а): 5 раз
Поблагодарили: 4 раза

Modbus для 1С

Сообщение tonyk »

petr2off, я тоже склоняюсь к такому же варианту, просто решил проработать вопрос со всех сторон. Кстати, АСУ ТП бывают разные, например, та, с которой я столкнулся, буквально пара ПЛК и ПК с 1С, на которой в автоматическом режиме ведётся учёт продукции. Поэтому решил обдумать и тот вариант, который озвучил в теме.

rwg
почётный участник форума
почётный участник форума
Сообщения: 1040
Зарегистрирован: 29 апр 2014, 09:57
Имя: Рыбкин Владимир Геннадьевич
Страна: Россия
город/регион: Тверь
Благодарил (а): 54 раза
Поблагодарили: 131 раз

Modbus для 1С

Сообщение rwg »

tonyk писал(а): 18 ноя 2021, 09:48 Есть ли для 1С готовый, пусть даже и платный, клиент Модбас?
Я бы искал переходник 1С - OPC сервер

Автор темы
tonyk
осмотрелся
осмотрелся
Сообщения: 106
Зарегистрирован: 16 дек 2018, 16:35
Имя: Антон
Благодарил (а): 5 раз
Поблагодарили: 4 раза

Modbus для 1С

Сообщение tonyk »

rwg писал(а): 18 ноя 2021, 15:58
tonyk писал(а): 18 ноя 2021, 09:48 Есть ли для 1С готовый, пусть даже и платный, клиент Модбас?
Я бы искал переходник 1С - OPC сервер
Есть такие. Но есть СКАДА, которые работают без ОРС, потому что драйвер для Модбас в них встроен.
Аватара пользователя

Никита
почётный участник форума
почётный участник форума
Сообщения: 3899
Зарегистрирован: 20 янв 2010, 22:23
Имя: Никита
Страна: РФ
город/регион: Мурманск
Благодарил (а): 18 раз
Поблагодарили: 187 раз

Modbus для 1С

Сообщение Никита »

rwg писал(а): 18 ноя 2021, 15:58 Я бы искал переходник 1С - OPC сервер
ODBC называется :) Причем может быть в разных ипостасях - как клиент ODBC в OPC-сервере, как механизм обмена в скаде или вообще подключенная SQL-таблица трендами. Пускать 1С (со всеми тетками) в архивы АСУ, как уже отмечалось, настоятельно не рекомендуется. А вот выкладывать средствами одного и читать средствами другого череж промежуточную DMZ - может быть вполне приемлемо.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "

Sokolov_Dmitry
не первый раз у нас
не первый раз у нас
Сообщения: 318
Зарегистрирован: 31 окт 2017, 16:45
Имя: Дмитрий
Страна: Россия
город/регион: Калининград
Благодарил (а): 9 раз
Поблагодарили: 81 раз

Modbus для 1С

Сообщение Sokolov_Dmitry »


Andreywys
освоился
освоился
Сообщения: 286
Зарегистрирован: 15 сен 2016, 18:47
Имя: Андрей
Страна: Россия
город/регион: Вологда
Благодарил (а): 18 раз
Поблагодарили: 73 раза

Modbus для 1С

Сообщение Andreywys »

У меня службой по modbus собираются данные и пишутся в базу mssql, а 1с забирает из базы.
https://github.com/AndreyVys/ModbusToBa ... Service.vb
Из оборудования - moxa nport 5150 для RTU
Если решите допиливать самостоятельно, то читайте вот эту тему https://owen.ru/forum/showthread.php?t=20122

Velt
освоился
освоился
Сообщения: 220
Зарегистрирован: 26 мар 2017, 13:05
Имя: Денис
Страна: Россия
город/регион: Самара
Благодарил (а): 11 раз
Поблагодарили: 35 раз

Modbus для 1С

Сообщение Velt »

Можно написать на Питоне скрипт, который опрашивает ПЛК по Modbus TCP и кладёт данные в таблицу БД. Оттуда уже 1С какие надо данные выгружает.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17471
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 749 раз
Поблагодарили: 1277 раз

Modbus для 1С

Сообщение Jackson »

Velt писал(а): 19 ноя 2021, 16:01 Можно написать на Питоне скрипт, который опрашивает ПЛК по Modbus TCP и кладёт данные в таблицу БД
И готового такого тоже уже может быть много. Хоть в SQL, хоть в .XLS.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

VADR
администратор
администратор
Сообщения: 4711
Зарегистрирован: 25 июл 2008, 07:12
Имя: Диев Александр Васильевич
Страна: Россия
город/регион: г. Сегежа, Карелия
Благодарил (а): 192 раза
Поблагодарили: 336 раз

Modbus для 1С

Сообщение VADR »

Но нередко в таких мерах нет необходимости. Надо посмотреть, какой вообще функционал требуется на предприятии кроме этой стыковки с 1С. То есть: нужна ли там система оперативно-диспетчерского управления или нет, нужна ли какая-то аналитика технологической информации или нет, и т.п. по уровню между контроллерами и 1С. Вполне возможно, оптимальным будет внедрение по всему предприятию единой системы, собирающей данные с локальных контроллеров, хранящей у себя, ведущей какую-то технологическую аналитику (материальные и энергетические балансы, например), и предоставляющую доступ к этим данным для 1С, например, через ODBC или какой-нибудь web xml. Для одной задачи это будет избыточно, а если на все задачи предприятия по этому уровню - на каждой такой задаче в среднем окажется дешевле.
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
Аватара пользователя

keysansa
эксперт
эксперт
Сообщения: 2318
Зарегистрирован: 20 дек 2018, 04:45
Имя: Сергей
Страна: РБ/РФ
город/регион: РФ Сергиев Посад
Благодарил (а): 1644 раза
Поблагодарили: 160 раз

Modbus для 1С

Сообщение keysansa »

petr2off писал(а): 18 ноя 2021, 11:49 Мне сама идея пускать 1С в сетку с ПЛК не нравится категорически. Офисная сеть и сеть АСУ ТП должны быть разнесены по разным подсетям.
Более правильно, как мне кажется - Поставить сервер с 2 сетевыми интерфейсами с SQL сервером. АСУ ТП по своему интерфейсу пишет в базу данных нужные данные, а 1С берет их с SQL сервера - что для нее вполне просто.
2 сетевые карты лишние. Разделение сетей не должно быть на уровне устройства. Это делить нужно на уровне маршрутизатора и/или брандмаура.
На стороне ПЛК закрыть все входящие соединения. Исходящие тоже лишние закрыть (Quod licet jovi, non licet bovi). Общение через ДМЗ. Где и будет общий сервер.

Отправлено спустя 4 минуты 39 секунд:
VADR писал(а): 22 ноя 2021, 14:53 Но нередко в таких мерах нет необходимости. Надо посмотреть, какой вообще функционал требуется на предприятии кроме этой стыковки с 1С.
Никогда разделение не мешает безопасности. Создает проблемы в работе - да. Как и всякая проблема безопасности.
И никогда дополнительная безопасность, если она не мешает работе, не является проблемой.

Отправлено спустя 1 минуту 53 секунды:
VADR писал(а): 22 ноя 2021, 14:53 Вполне возможно, оптимальным будет внедрение по всему предприятию единой системы, собирающей данные с локальных контроллеров, хранящей у себя, ведущей какую-то технологическую аналитику (материальные и энергетические балансы, например), и предоставляющую доступ к этим данным для 1С, например, через ODBC или какой-нибудь web xml.
Безопаснее будет, если контроллеры будут отсылать информацию на промежуточный сервер.
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
Аватара пользователя

VADR
администратор
администратор
Сообщения: 4711
Зарегистрирован: 25 июл 2008, 07:12
Имя: Диев Александр Васильевич
Страна: Россия
город/регион: г. Сегежа, Карелия
Благодарил (а): 192 раза
Поблагодарили: 336 раз

Modbus для 1С

Сообщение VADR »

keysansa писал(а): 22 ноя 2021, 17:19 Никогда разделение не мешает безопасности.
Я не о разделении говорил и не о безопасности, а о питоновских скриптах, опрашивающих контроллер по модбасу по запросу от 1С.
keysansa писал(а): 22 ноя 2021, 17:19 Безопаснее будет, если контроллеры будут отсылать информацию на промежуточный сервер.
Да, примерно так. Промежуточный сервер, на который собирается информация с контроллеров. Это может быть как сервер, выделенный просто для хранения информации, так и сервер в составе системы АСОДУ, MES или ещё чего-либо в том же духе. Насчёт того, контроллер туда данные кладёт, или эта система контроллеры опрашивает - вопрос открытый. В любом случае надо стремиться к тому, чтобы контроллер как можно меньше был зависим от внешних систем. И тут есть несколько вариантов проблем:
1. Контроллер кладёт данные на внешний сервер, например, по modbus tcp. Что будет, если этот сервер ляжет и контроллер не сможет к нему подключиться? Что будет, если сервер начнёт тупить и процесс обмена данными затянется?
2. Внешняя система запрашивает данные из контроллера. Что будет, если злоумышленник завладеет этим сервером и он начнёт посылать хренову тучу запросов, а то ещё и хитрых запросов, чтобы DOS устроить? Вряд ли контроллеры на такую активность рассчитаны.
3. Есть промежуточный OPC-сервер в сети контроллера или DMZ, который один опрашивает контроллер с заданной периодичностью. На мой взгляд, вариант оптимальный: контроллеру по большому счёту пофиг, если его перестали опрашивать. Если злоумышленник положит наш промежуточный OPC-сервер, большой беды не будет, разве что прекращение обмена данными на некоторое время. С другой стороны - дополнительное оборудование - дополнительная точка отказа.
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.
Аватара пользователя

keysansa
эксперт
эксперт
Сообщения: 2318
Зарегистрирован: 20 дек 2018, 04:45
Имя: Сергей
Страна: РБ/РФ
город/регион: РФ Сергиев Посад
Благодарил (а): 1644 раза
Поблагодарили: 160 раз

Modbus для 1С

Сообщение keysansa »

VADR писал(а): 22 ноя 2021, 17:39 Я не о разделении говорил и не о безопасности, а о питоновских скриптах, опрашивающих контроллер по модбасу по запросу от 1С.
Я не против, если они запускаются ИЗ контроллера. Открывать доступ извне - всегда понижение безопасности.

Отправлено спустя 1 минуту 37 секунд:
VADR писал(а): 22 ноя 2021, 17:39 Промежуточный сервер, на который собирается информация с контроллеров.
На который сами контроллеры будут отсылать информацию. Только ту, что решит разработчик.

Отправлено спустя 2 минуты 28 секунд:
VADR писал(а): 22 ноя 2021, 17:39 Насчёт того, контроллер туда данные кладёт, или эта система контроллеры опрашивает - вопрос открытый.
С точки зрения безопасности - закрыт и давно.
Входящих соединений не должен принимать контроллер. Да, это накладывает ограничения на обслуживание. Но тут решать будут ответственные лица. И это закрытый вопрос.

Отправлено спустя 1 минуту 47 секунд:
VADR писал(а): 22 ноя 2021, 17:39 1. Контроллер кладёт данные на внешний сервер, например, по modbus tcp. Что будет, если этот сервер ляжет и контроллер не сможет к нему подключиться?
Вы с точки зрения безопасности спрашиваете - запишет контроллер себе ошибку и все. Связи у него с внешним миром нет. Если есть еще каналы - туда отправит сообщение.

Отправлено спустя 5 минут 56 секунд:
VADR писал(а): 22 ноя 2021, 17:39 Что будет, если сервер начнёт тупить и процесс обмена данными затянется?
Это уже давно решено асинхронным обменом.
VADR писал(а): 22 ноя 2021, 17:39 Внешняя система запрашивает данные из контроллера.
С точки зрения безопасности - уже дыра. Просто закрыть дыру.
VADR писал(а): 22 ноя 2021, 17:39 Есть промежуточный OPC-сервер в сети контроллера или DMZ, который один опрашивает контроллер с заданной периодичностью. На мой взгляд, вариант оптимальный: контроллеру по большому счёту пофиг, если его перестали опрашивать.
Это не OPC сервер, а OPC клиент, как мы недавно выяснили ))
Плюс, сеть контроллера не должна быть в DMZ.
Контроллер умеет в SSL?

Отправлено спустя 4 минуты 9 секунд:
VADR писал(а): 22 ноя 2021, 17:39 Если злоумышленник положит наш промежуточный OPC-сервер, большой беды не будет, разве что прекращение обмена данными на некоторое время. С другой стороны - дополнительное оборудование - дополнительная точка отказа.
Это еще будет повод усилить меры безопасности.
Вопрос будет, какого уровня доступа данный OPC сервер
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.

Velt
освоился
освоился
Сообщения: 220
Зарегистрирован: 26 мар 2017, 13:05
Имя: Денис
Страна: Россия
город/регион: Самара
Благодарил (а): 11 раз
Поблагодарили: 35 раз

Modbus для 1С

Сообщение Velt »

Jackson писал(а): 22 ноя 2021, 14:42
Velt писал(а): 19 ноя 2021, 16:01 Можно написать на Питоне скрипт, который опрашивает ПЛК по Modbus TCP и кладёт данные в таблицу БД
И готового такого тоже уже может быть много. Хоть в SQL, хоть в .XLS.
Так и я о том. В Питоне много готовых пакетов. Поэтому скрипт можно написать быстро. А если вручную с нуля модбас-протокол писать - то ну его нафиг....

Andreywys
освоился
освоился
Сообщения: 286
Зарегистрирован: 15 сен 2016, 18:47
Имя: Андрей
Страна: Россия
город/регион: Вологда
Благодарил (а): 18 раз
Поблагодарили: 73 раза

Modbus для 1С

Сообщение Andreywys »

Velt писал(а): 22 ноя 2021, 22:44 В Питоне много готовых пакетов.
Можно хоть на каком языке написать, библиотеки modbus есть для всех популярных языков.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17471
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 749 раз
Поблагодарили: 1277 раз

Modbus для 1С

Сообщение Jackson »

Andreywys писал(а): 23 ноя 2021, 08:33 Можно хоть на каком языке написать
Я предлагал взять уже написанное.
По вопросам работы Форума можно обратиться по этим контактам.

Velt
освоился
освоился
Сообщения: 220
Зарегистрирован: 26 мар 2017, 13:05
Имя: Денис
Страна: Россия
город/регион: Самара
Благодарил (а): 11 раз
Поблагодарили: 35 раз

Modbus для 1С

Сообщение Velt »

Andreywys писал(а): 23 ноя 2021, 08:33
Velt писал(а): 22 ноя 2021, 22:44 В Питоне много готовых пакетов.
Можно хоть на каком языке написать, библиотеки modbus есть для всех популярных языков.
Вы правы, просто лично я с PyCharm только недавно познакомился и меня приятно удивило, как можно легко и быстро найти и установить нужные библиотеки, даже не открывая браузер.

Andreywys
освоился
освоился
Сообщения: 286
Зарегистрирован: 15 сен 2016, 18:47
Имя: Андрей
Страна: Россия
город/регион: Вологда
Благодарил (а): 18 раз
Поблагодарили: 73 раза

Modbus для 1С

Сообщение Andreywys »

Velt писал(а): 24 ноя 2021, 22:56 Вы правы, просто лично я с PyCharm только недавно познакомился и меня приятно удивило, как можно легко и быстро найти и установить нужные библиотеки, даже не открывая браузер.
Это позволяет и visual studio, и многие другие ide. Но python не совсем удобен для windows, по моему скромному мнению.
Jackson писал(а): 23 ноя 2021, 13:49 Я предлагал взять уже написанное.
Зачастую уже написанное не совсем подходит или сильно геморное в настройке. У меня есть купленный advanced tcp data logger, но пришлось заморочиться и написать свое. Например, обмен life bit или хитрая обработка данных. И тогда проще написать свой код, чем пытаться разобраться в настройках готовой программы, писать обработку в хранимых процедурах на sql сервере и т.п. Но, в случае, если нужно просто взять несколько переменных и положить их в базу, то готовое решение вполне подходит, особенно, если нет навыка программирования на каком-нибудь языке.
Аватара пользователя

keysansa
эксперт
эксперт
Сообщения: 2318
Зарегистрирован: 20 дек 2018, 04:45
Имя: Сергей
Страна: РБ/РФ
город/регион: РФ Сергиев Посад
Благодарил (а): 1644 раза
Поблагодарили: 160 раз

Modbus для 1С

Сообщение keysansa »

Andreywys писал(а): 25 ноя 2021, 08:19 Это позволяет и visual studio, и многие другие ide. Но python не совсем удобен для windows, по моему скромному мнению.
python pip вам очень сильно поможет с установкой зависимостей.

Отправлено спустя 2 минуты 47 секунд:
Andreywys писал(а): 25 ноя 2021, 08:19 Например, обмен life bit или хитрая обработка данных. И тогда проще написать свой код, чем пытаться разобраться в настройках готовой программы
Часто людям легче написать свое, это есть. Но человек пишущий всегда свое - отстает по скорости разработки, и по размеру результата.
Но если платят за объем кода, тогда согласен.
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.

Andreywys
освоился
освоился
Сообщения: 286
Зарегистрирован: 15 сен 2016, 18:47
Имя: Андрей
Страна: Россия
город/регион: Вологда
Благодарил (а): 18 раз
Поблагодарили: 73 раза

Modbus для 1С

Сообщение Andreywys »

keysansa писал(а): 27 ноя 2021, 14:38 python pip вам очень сильно поможет с установкой зависимостей
Собственно как и composter в php, nuget в visual studio, npm в node.js и т.д.
И, если бы я писал для linux консольное приложение, то наверняка использовал бы python.
Аватара пользователя

keysansa
эксперт
эксперт
Сообщения: 2318
Зарегистрирован: 20 дек 2018, 04:45
Имя: Сергей
Страна: РБ/РФ
город/регион: РФ Сергиев Посад
Благодарил (а): 1644 раза
Поблагодарили: 160 раз

Modbus для 1С

Сообщение keysansa »

Andreywys писал(а): 27 ноя 2021, 15:29
keysansa писал(а): 27 ноя 2021, 14:38 python pip вам очень сильно поможет с установкой зависимостей
Собственно как и composter в php, nuget в visual studio, npm в node.js и т.д.
Да, согласен, кроме node, и php (там pear) это другая тема.
Andreywys писал(а): 27 ноя 2021, 15:29 И, если бы я писал для linux консольное приложение, то наверняка использовал бы python.
Вернуться к началу
Что вам удобнее, я для консоли использую С
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.

Andreywys
освоился
освоился
Сообщения: 286
Зарегистрирован: 15 сен 2016, 18:47
Имя: Андрей
Страна: Россия
город/регион: Вологда
Благодарил (а): 18 раз
Поблагодарили: 73 раза

Modbus для 1С

Сообщение Andreywys »

Я не "настоящий сварщик", поэтому С, кроме arduino ide, больше нигде не использую. В windows vs с .net, в линукс bash и python.
Ответить

Вернуться в «Верхний уровень автоматизации (отображение)»