Имя: Пароль:
1C
 
Modbus tcp из 1с
,
0 breezee
 
22.03.21
10:17
Коллеги, добрый день. Подскажите, пожалуйста, может кто-то делал подключение Modbus tcp из 1с? Есть контроллер Modbus tcp
Есть некая документация к нему. Что-то про телеграммы
И он кажется как-то связан с tcp/ip
Вот выдержка из документации:
Интерфейс выполнен в виде протокола управления передачей/ интернет-протокола
TCP/IP.
Система учета потока материала MFS является главным узлом.
Подскажите, пожалуйста, в какую сторону копать, чтобы подключиться к этой штук и послать туда телеграмму?
Комментарий от админа, что у нас есть:
1)    Контроллер Simatic S7 под управлением SIMATIC Industrial OS
2)    Протокол обмена Modbus TCP
Я погуглил мисту и нашел 1 тему в которой прдлжили погуглить
1 shuhard
 
22.03.21
10:18
(0) как правило к контроллеру есть ПО, которое пишет в СУБД
к СУБД 1С цепляется через ADODB/ODBC
2 breezee
 
22.03.21
10:24
(1) Спасибо! По есть. А Вы случайно не знаете что за телеграммы?
Вот пример из ТЗ
<01> Регистрация крюка в убойном транспортере системой ПЛК
Байт К-во Содержание/
пример
Формат
00 2 01 ASCII Номер телеграммы
02 5 00000 ASCII Счетчик телеграмм инкрементируется с
регистрацией каждого нового крюка
07 14 01234567890123 ASCII RFID крюк 1
21 14 01234567890123 ASCII RFID крюк 2
35 14 ASCII Знак наполнения
49 1 # ASCII Знак конц

Я так понял это не xml а нужно отправить какой-то специальный текст туда
Какой-то софт "SIMATIC Industrial OS" апи которого не гуглится
3 shuhard
 
22.03.21
10:27
(2) дык протокол детально описан
https://ipc2u.ru/articles/prostye-resheniya/modbus-tcp/
4 breezee
 
22.03.21
10:34
(3) Спасибо!
А из 1с будет что-то вроде
Модус = Новый com(adodb);...
Модус.send(..?
Я вижу что там написаны команды, я что-то слышал про hex строки но я не понимаю какими командами их послать? То есть есть же какие-то методы у контролллера? Или это не так работает?)
5 shuhard
 
22.03.21
10:36
(4) Куда посылать команду Modbus TCP?

В сети Ethernet адресом устройства является его IP-адрес. Обычно устройства находятся в одной подсети, где IP адреса отличаются последними цифрами 192.168.1.20 при использовании самой распространённой маски подсети 255.255.255.0.

Интерфейсом является сеть Ethernet, протоколом передачи данных – TCP/IP.

Используемый TCP-порт: 502.
6 breezee
 
22.03.21
10:40
(5) А слать туда что?) hex строку? Мне надо передать, судя по документации что-то чтобы это работало)
7 breezee
 
22.03.21
11:05
Ладно, наверное я задаю слишком тупы вопросы)0 подскажите, это как-то связанос этой темой? https://infostart.ru/public/119982/
8 Daniilvb
 
22.03.21
11:06
Слать ASCII. Это явно указано в примере (2)
9 shuhard
 
22.03.21
11:07
(7) напрямую
10 shuhard
 
22.03.21
11:09
(6) дык что указано в стандарте + системе команд, то и передавать
11 breezee
 
22.03.21
11:13
(8) А, ну да, логично, спасибо
(9) Но я есть же какие-то методы? По аналогии с 1с должно быть типо модус.послать("12345_текст_команды") а я в документации не увидел методы вообще методы типо "send()" "get()" или что-то похожее. Это совсем не так работает?
12 Daniilvb
 
22.03.21
11:15
(11) Эти методы нужно самому реализовать на базе сокета
13 Mikeware
 
22.03.21
11:15
(11) телеграмму пошли. в АСКИИ, через Печкина.
14 breezee
 
22.03.21
11:20
(12) Есть что-то по теме почитать? Я кажется понял что всё не так просто, но, может, какая-то литература есть? Для чайников)
15 breezee
 
22.03.21
11:21
(13) Вот Вы издеваетесь потому что разбираетесь в теме, а на меня сегодня вывалился целый ряд незнакомых терминов. И с чего начинать их изучение мне не ясно)
16 Daniilvb
 
22.03.21
11:28
(14) https://habr.com/ru/post/281430/ Там больше про RTU, но общие принципы понятны. Я бы начал с выбора программы монитора, которая позволяет ручками формировать и отправлять телеграммы (пакеты), например, https://www.modbustools.com/modbus_poll.html
17 Daniilvb
 
22.03.21
11:33
18 breezee
 
22.03.21
11:57
Спасибо большое! Поизучаю
19 shuhard
 
22.03.21
12:09
(15) стрёмно, ну как ты ядерным реактором управляешь =)
20 shuhard
 
22.03.21
12:10
(17) сравни с (3)  =)
21 breezee
 
23.03.21
04:32
я погуглил и стало понятней. А может у кого-то есть простенький пример на 1с?
22 NorthWind
 
23.03.21
08:22
(19) <01> Регистрация крюка в убойном транспортере системой ПЛК
Байт К-во Содержание/

на ядерный реактор не вполне похоже :))
23 breezee
 
23.03.21
08:24
(22) Да, мясное производство
24 Mikeware
 
23.03.21
10:21
(22) вытягивают крюком сборки из реактора....
25 mikecool
 
23.03.21
10:27
помню писал код печати напрямую на матричный принтер используя доку к принтеру без интернетов...
а сейчас и с интернетами как то плохо выходит