TCP Соединение между Siemens S400 и PC (LabVIEW)

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы
Ответить
Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 545
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Версия LabVIEW: 2019
Откуда: Санкт-Петербург
Благодарил (а): 9 раз
Поблагодарили: 10 раз
Контактная информация:

TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Vasiliy Baev »

Коллеги, здравствуйте!

Подскажите, как настроить TCP соединение между контроллером Siemens S400 (CPU 416F-3 PN/DP) и компьютером (LabVIEW).

Soft:
TIA Portal V11 SP2
LabVIEW 2011 SP1

Программа Siemens:
LV_Siemens_1.png
Для установки соединения использую блок TCON, для передачи данных TSEND.
На этапе установки соединения получаю ошибку 16#7000 "No job processing active"

На компьютере поднял TCP сервер при помощи утилиты SocketTest http://sockettest.sourceforge.net/
(так же пытался при помощи LabVIEW)

При помощи WireShark контролирую сообщения. Вот что приходит на PC:
LV_WireShark_1.png
S400 делал и клиентом и сервером - результат один - не удается установить подключение.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Borjomy_1 »

А почему не через ag_send/ag_recv (FC5/FC6)?
Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 545
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Версия LabVIEW: 2019
Откуда: Санкт-Петербург
Благодарил (а): 9 раз
Поблагодарили: 10 раз
Контактная информация:

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Vasiliy Baev »

Borjomy_1,
Совсем забыл про эти блоки. По старинки хотел - не получилось. Попробую через ip_config, ag_send.
Спасибо.
Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 545
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Версия LabVIEW: 2019
Откуда: Санкт-Петербург
Благодарил (а): 9 раз
Поблагодарили: 10 раз
Контактная информация:

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Vasiliy Baev »

При помощи ip_config, ag_send удалось настроить соединение и получать данные на PC ( :labview: )
А вот организовать отправку данных на контроллер пока не удается.
Подскажите, как должно выглядеть сообщение посылаемое из LabVIEW. Какая структура сообщения должна быть.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Borjomy_1 »

Что значит- не удается?
Эти функции - ag_send и ag_recv (вроде так пишется) принимают и передают строки, специальных требований к структуре нет. Вы сами должны разбирать сообщение программно.
Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 545
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Версия LabVIEW: 2019
Откуда: Санкт-Петербург
Благодарил (а): 9 раз
Поблагодарили: 10 раз
Контактная информация:

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Vasiliy Baev »

специальных требований к структуре нет.
Возможно, необходимо вставлять специальные символы в начале и конце сообщения. (x16 - конец строки и тп).
Пока получаю код ошибки 8181 - Job Active на AG_Send.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Borjomy_1 »

Это не код ошибки, а флаг состояния, типа данные отсылаются. Но вообще, имеет смысл поискать информацию на сименсовском форуме.
http://iadt.siemens.ru/forum/viewtopic.php?t=18022 например. Labview использует стандартные библиотеки, потому проблемы связи имеет смысл копать со стороны симатика.
Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 545
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Версия LabVIEW: 2019
Откуда: Санкт-Петербург
Благодарил (а): 9 раз
Поблагодарили: 10 раз
Контактная информация:

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Vasiliy Baev »

Borjomy_1 писал(а):Это не код ошибки, а флаг состояния
Описался. Конечно, это статус.

https://support.automation.siemens.com/ ... aller=view
In order to be able to retrieve the messages from the data stream sent the data to be sent must have a specific structure. The message can comprise of the data plus a terminating control character such as "carriage return" so that the recipient can tell where the message ends.
https://support.automation.siemens.com/ ... viewreg=WW
To make data transfer work via the TCP protocol the data to be sent must have a specific data structure. A message must consist of start delimiters (so that the recipient can recognize where the message begins), specification of the length of the data (to define the receive buffer) and the data itself. In this example we have defined start delimiters of 4 bytes (preset with the values: 0x11, 0x12, 0x13, 0x14) and an S7 string for a message. An S7 string consists of two bytes of length information and the actual data string. All ASCII characters can be transferred with the S7 string.
Вот и гадай... Пока что прочитать данные на plc по TCP (Ethernet) не удалось.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Borjomy_1 »

Посмотрел наш проект - у нас при вызове FC5 свойству "Send" присваивается дибишка с данными, свойству "Len" - ее длина в байтах. И никаких разделителей и пр.....
Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 545
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Версия LabVIEW: 2019
Откуда: Санкт-Петербург
Благодарил (а): 9 раз
Поблагодарили: 10 раз
Контактная информация:

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Vasiliy Baev »

Что я понаписал)
Пока получаю код ошибки 8181 - Job Active на AG_Send.
на AG_Resv
с AG_Send всё понятно. А вот с AG_RECV пока подружиться не получается.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2211
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 27 раз

Re: TCP Соединение между Siemens S400 и PC (LabVIEW)

Сообщение Borjomy_1 »

C ag_recv, действительно, проблемы. Пока буфер не будет заполнен, задача не завершится. Т.е надо точно знать размер посылки.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Коммуникация с приборами»