4

Siemens S7-300/S7-1200 и весы МАССА-К

Ребята помогите, пожалуйста, тупому.

Есть весовой терминал МАССА-К AB(RUEW) с вайфаем, эзернетом и прочими RS-232.

Есть PLC Siemens S-7 300 и S-7 1200 + HMI панель от сименса. Нужно получить в ПЛК текущий вес с терминала и загнать его в панель ЧМИ, точнее загнать его в дата блок и оттуда забрать в панель. Проблема в том, что я не знаю как организовать запрос из плк в весовой терминал и получить их в блок DB на плк.

Через PowerShell всё получаю таким вот кодом:

$client = new-object net.sockets.udpclient(0)

$peerIP = "10.10.70.136"

$peerPort = "5001"

[Byte[]] $send = 0xF8,0x55,0xCE,0x01,0x00,0x23,0x23,0x00

[void] $client.send($send, $send.length, $peerIP, $peerPort)

$ipep = new-object net.ipendpoint([net.ipaddress]::any, 0)

$receive = $client.receive([ref]$ipep)

echo ($receive|ForEach-Object ToString X2)

$client.close()

Первая строка – создали объект для отправки в сеть.

Вторая и третья – задали адрес и порт

Четвёртая – шестнадцатеричная строка запроса веса (из руководства, CRC там заранее рассчитана)

Пятая – отправили запрос

Шестая – создали объект для приёма из сети.

Седьмая – приняли ответ

Восьмая – вывели побайтно в виде кодов (иначе смайликами всё нарисует)

Девятая – закрыли соединение.

Ниже снимок экрана, на весах стоит груз на 114,7 кг. В руководстве опечатка, длина сообщения 13 символов 0x0D

0x47b – 1147  и множитель 100г (цифра 3 как цена деления)

цветом выделена масса в ответе терминала в шестнадцатеричной системе счисления

цветом выделена масса в ответе терминала в шестнадцатеричной системе счисления

Помогите, если можете. Очень надо.

Комменты для минусов внутри.

2
Автор поста оценил этот комментарий

Послать такой же UDP пакет как в доке, и получить ответ...

https://youtu.be/TCa2NH1CRx4?feature=shared

Предпросмотр
YouTube26:17
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

спасибо тебе огромное. пролистал видос, вроде оно. в понедельник протестирую.

3
Автор поста оценил этот комментарий

А вопрос то в чем?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

не знаю как организовать запрос из плк в весовой терминал и получить данные из терминала в блок DB на плк

показать ответы
1
Автор поста оценил этот комментарий

для минусов 7

1
Автор поста оценил этот комментарий

для минусов 6

1
Автор поста оценил этот комментарий

для минусов 5

1
Автор поста оценил этот комментарий

для минусов 4

1
Автор поста оценил этот комментарий

для минусов 3

1
Автор поста оценил этот комментарий

для минусов 1

1
Автор поста оценил этот комментарий

для минусов 0

0
Автор поста оценил этот комментарий
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

а ты не пробовал по интерфейсу с весами взаимодействовать? через moxa nport например.

показать ответы
0
Автор поста оценил этот комментарий
Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

спасибо за ответы, попробую сделать по твоему способу. а от tcp я изначально отказался из за того что он медленнее udp. UDP отправил запрос в мир и не ждет ничего в ответ, и если что-то пришло, то шикарно, а если нет, то и похрен. TCP же отправляет запрос и ждет ответа до посинения. может потому и такие большие лаги между запрос/ответ.

посмотри через wireshark как общается твой плк и весы.

показать ответы
0
Автор поста оценил этот комментарий

Сейчас посмотрю, что в исходнике. У меня другая проблема, ПЛК у меня не зависает, а данные с весов приходят с задержкой 20-30с и то с перебоями.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

обнаружил косяки в моей программе?

показать ответы
0
Автор поста оценил этот комментарий

Сейчас посмотрю, что в исходнике. У меня другая проблема, ПЛК у меня не зависает, а данные с весов приходят с задержкой 20-30с и то с перебоями.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

что за плк и что за весы?

1
Автор поста оценил этот комментарий

Удалось, подружить весы?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Удалось, подружить весы?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

привет, частично удалось.

вес получаю на плк 1211С по сети.

НО нарисовалась новая проблема (точнее ДВЕ)

1. плк через некоторое количество времени (от 30 минут до часа) уходит в ошибку, либо зависает и перестаёт получать от весов заветные биты. как это лечить я хз, сильно не и не пытался (менял на другой плк 1212С, результат тот же)

оба плк серии 1200 абсолютно рабочие, я их снимаю с упаковочной машины для тестов, которая делает коробки круглосуточно, что на одном, что на другом ПЛК.

2. мне надо этот вес писать в HMI панель, пишу через OPC сервер KEPServerEX6 в дата блок ПЛК s7-300, с которго HMI читает вес, получается большая задержка по информативности 30-35 секунд, хотя в настройках OPC тайминг стоит 10 мс.

В онлайне 1212С и 1211С видят изменение веса мгновенно.

Такой вот пирожок с говном.

Могу скинуть ссылку на исходник, может пригодится. Программа рабочая, но видать я смотрю на неё с замыленным взглядом и не вижу какого-то косяка.


сейчас пока забросил это дело, накопилось много другой, более срочной, работы.

через пару недель вернусь к этому, надеюсь.

показать ответы
1
Автор поста оценил этот комментарий

Стоп. Если есть OPC DA, значит у вас ПК в сети. Так не проще ли тянуть информацию с часов на ПК и уже через него писать в ПЛК?

P.S. У 300 нет opc da) Предположу, что у вас стоит simatic.net, который общается с 300 put-get командами.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

нет, стоит kepserverEX6. он по сети тянет нужные мне данные и выводит в скаду производства на вебсервер, чтобы технолог мог мониторить тех.процесс. в kepserver я заносил всё в ручную, отталкиваясь от электросхемы (смотрел на какой вход подключен датчик, потом кроссреференсом искал где этот вход/выход используется, далее блоки которые масштабируют значения датчиков, куда они потом пишутся и прочее, некоторые данные искал в онлайне сравнивая с показаниями на HMI панели)

подключить весы к opc-серверу нет возможности, нет драйвера для сервака от производителя. скрипты powershell он также не поддерживает. можно конечно нагородить еще более мрачных костылей (забирать экселем данные с весов, через макрос и далее отдавать их в кепсервер), но хочется проще, тем более есть свободный 1200-й 1211С, на котором выгорели выходные релюхи, но они мне и не нужны. идеальный вариант конечно на 300-м всё провернуть. но я туп как пробка )))

1
Автор поста оценил этот комментарий

1) Если исходного проекта на 300 нет, то лучше в него вообще не лезть. Вариант с 1200 лучше.

2) У 300 на борт нет поддержки opc. Если панель соединена по Profinet, то лучше на нее сразу тянуть с 1200.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

да панель по профинету, но на неё тоже не получится, потому-что не смогу изменить проект на панели и добавить ещё одно подключение (нет исходника, только бэкапы которые я сделал)

opc da сервер внешний, я им забираю данные с плк300 в сеть, думаю им же можно писать в старые дб блоки, где раньше был вес.

показать ответы
1
Автор поста оценил этот комментарий

Так а в чем проблема? Документацию поднять не могу, но если кратко: открыть TCON соединение(в справке в TIA все подробно описано). Если соединение открыто(проверяется бит статуса TCON), то вызвать TSEND, передав в него нужный массив параметров. Если передача успешна(бит статуса TSEND), то вызывать TRCV в течеии нескольких секунд. Еслм ответа нет, то сформировать ошибку.

Соединение закрывать не нужно, если у вас одни весы.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

проблема в реализации всего этого чуда. как это должно работать я знаю, в повершелл всё получается. проблема в степ7 5.6 - не знаю как это реализовать в нём, какие блоки дб  и фб создать под это, проблема в том что оборудование работает и не хочется всё это грохнуть, много оборудования прикручено чрез гсд файлы, боюсь что они отвалятся в процессе  прикручивания весов. исходника нет, только выгруженный проект без символьной таблицы и электросхема. весовых терминалов три штуки. вот появилась идея, (если не получится на 300-м всё это сделать безболезненно) присобачить рядом 1200-й на нём всё это реализовать и через opc-сервер загонять обратно в 300-й, костыли конечно, но... увы знаний не хватает и спросить не у кого (((

показать ответы
1
Автор поста оценил этот комментарий

С помощью TCON  устанавливаешь соединение с весами. TSEND шлёшь пакет с запросом, TRCV - получаешь ответ с данными.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

я это понимаю, но реализовать не могу.

показать ответы
Автор поста оценил этот комментарий
Профильная компания решит вопрос за 100000. Можно студента 4 курса за 20000 подрядить.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

лучший совет, спасибо, очень помог. жму руку.

0
Автор поста оценил этот комментарий
Simatic не любит чужие протоколы. Только modbus и то с костылями.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

модбаса нет на борту весового терминала. у симатика есть функции TCEND TRCV TCON TDISCON TUCON TUDISCON (последние две UDP, первые работают по TCP) по идее они должны работать с любыми не сименсовскими устройствами, которые поддерживают TCP UDP

показать ответы
0
Автор поста оценил этот комментарий

для минусов 2

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества