Profibus DP

Инженерное программное обеспечение

Profibus DP

Сообщение Автоматизатор » 07 июл 2014, 14:14

Закупили оборудование, начали программировать связь всяких устройств по Profibus DP. Практического опыта маловато, документация вся на буржуйском языке, что не упрощает жизнь.

Прошу подскажите:
- как наиболее правильно считать данные по сети с преобразователя частоты?

Т.е. для преобразователя частоты Yaskawa A1000 (плата Profibus SI-P3) выбран профиль Extended Data 2 Register Map, в котором входных параметров 12 байт. Связь настроена, можно получить данные просто опросив периферию, считав данные скажем в меркерную память MB100-MB111:
Код: Выделить всё
L PID256
T MD100

L PID260
T MD104

L MD264
T PID108

Если я правильно понимаю, то полученные таким образом данные могут быть неконсистентными. Пробовал использовать для чтения системную функцию SFC14, но с ее помощью получается считать только 4 байта. При попытке считать данные:
Код: Выделить всё
CALL  "DPRD_DAT"
LADDR  :=W#16#100
RET_VAL:=MW10
RECORD :=P#M 100.0 BYTE 12

Выдается ошибка: 80B1"The length of the specified destination area is not identical to the user data length configured with STEP 7"
В чем собака порылась не понимаю.

Прошу подскажите:
- Как обрабатывать ошибки связи? Использовать OB86 ? Еще какие надо блоки? Может кто примером поделиться или ссылкой полезной?
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 880
Зарегистрирован: 09 окт 2012, 05:18

Re: Profibus DP

Сообщение ward » 07 июл 2014, 14:33

смотри GSD файл твоего частотника и описание на него, там побайтно должно быть написано что за что отвечает
ward
Специалист
 
Сообщения: 409
Зарегистрирован: 12 ноя 2012, 08:44

Re: Profibus DP

Сообщение Автоматизатор » 07 июл 2014, 14:41

ward писал(а):смотри GSD файл твоего частотника и описание на него, там побайтно должно быть написано что за что отвечает

С расшифровкой байт понятно. Не понятно с консистентностью.

Сейчас немного посмотрел более подробно профили. Некоторые профили имеют свойство "Consistent over" равное "Total length", а некоторые только "Unit". Думаю, поэтому ругался SFС14. Последний раз сталкивался с Profibus году в 2009, все уже позабыл, теперь что-то потихоньку всплывает в памяти :(
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 880
Зарегистрирован: 09 окт 2012, 05:18

Re: Profibus DP

Сообщение Михайло » 07 июл 2014, 18:11

Step7 выделил для A1000 6 слов во входной памяти и 6 слов в выходной памяти ПЛК?
Михайло
Администратор
 
Сообщения: 3333
Зарегистрирован: 19 сен 2012, 19:16

Re: Profibus DP

Сообщение Автоматизатор » 08 июл 2014, 05:44

Михайло писал(а):Step7 выделил для A1000 6 слов во входной памяти и 6 слов в выходной памяти ПЛК?

Да

Автоматизатор писал(а):Некоторые профили имеют свойство "Consistent over" равное "Total length", а некоторые только "Unit". Думаю, поэтому ругался SFС14.

Все равно SFC14 выдает ошибку, при попытке считать более 4 байт :( .
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 880
Зарегистрирован: 09 окт 2012, 05:18

Re: Profibus DP

Сообщение Михайло » 08 июл 2014, 05:56

Я обычно выгружал данные в блок DB.

Код: Выделить всё
RECORD :=P#DB1.DBX0.0 BYTE 12
Михайло
Администратор
 
Сообщения: 3333
Зарегистрирован: 19 сен 2012, 19:16

Re: Profibus DP

Сообщение Автоматизатор » 08 июл 2014, 06:55

Михайло писал(а):Я обычно выгружал данные в блок DB.

Без разницы куда выгружать, все равно выдает ошибку: 80B1"The length of the specified destination area is not identical to the user data length configured with STEP 7"

Пробовал считать 6 байт данных с датчика положения Balluff BTL5 (выделено 6 байт как "Total length") - все равно выдает ошибку 80B1
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 880
Зарегистрирован: 09 окт 2012, 05:18

Re: Profibus DP

Сообщение ward » 08 июл 2014, 07:10

Выбрось SFC14, это же профибас, обращайся напрямую как ко входному байту
ward
Специалист
 
Сообщения: 409
Зарегистрирован: 12 ноя 2012, 08:44

Re: Profibus DP

Сообщение CHANt » 09 июл 2014, 21:22

1) Профибас передает только словами, поэтому попытка считать двойным словом
Код: Выделить всё
L PID256
T MD100

неверна, правильно будет:
Код: Выделить всё
L PIW256
T MW100

2) Откуда идет связь с порта симатика или коммуникационный процессор, типа СР-342-5? Если порт контроллера, то в хардваре выберите профиль телеграммы с полной проверкой консистентности "whole cons." Проверка по словам не работает.

На тему целостности данных много копий "сломано", мнений много и все они имеют место жить, но, для начала я бы не заморачивался. Сколько уже раз обновилась системное ПО симатиков?! Аппаратная часть профибаса сама выполнит проверку на целостность данных. Я использую SFC14/15 для диагностики связи, так как лень вытаскивать списки SSD, расшифровать их, когда есть выхода SFC14/15 #Ret_Val, при=0 связь есть, а если что вылетело, тогда уже можно посмотреть и в степе.Ну и то что оформляю все в FC, это удобно таскать по проектам, чем ручками набивать L PIW256 T MW100
Аватара пользователя
CHANt
Профессионал
 
Сообщения: 531
Зарегистрирован: 13 окт 2012, 15:24
Откуда: Orenburg

Re: Profibus DP

Сообщение Автоматизатор » 10 июл 2014, 19:28

CHANt писал(а):2) Откуда идет связь с порта симатика или коммуникационный процессор, типа СР-342-5? Если порт контроллера, то в хардваре выберите профиль телеграммы с полной проверкой консистентности "whole cons." Проверка по словам не работает.


Сейчас тренируемся на 314C-2DP, ждем со дня на день поставку S7-1200 с коммуникационником Profibus Master.

Пробовал и
Код: Выделить всё
 L PIW25
, и
Код: Выделить всё
L PID25
- все работает). Однако, если выключить питание инвертора, то вызывается OB86. А затем OB122 вроде (как я понял попытка считать из недоступной области).

На сейчас решил оставить функции SFC14/15 для чтения сразу 2-х слов. Работает более корректно и выглядит эстетичней. :)

Немного растерялся при выборе профиля. Столько их много всяких.
Надо будет писать данные в пару регистров в процессе работы станка. В профиле реализована возможность это делать с помощью команд Модбас. Для контроля выполнения запросов используются специальные биты, которые постоянно инвертируются.
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 880
Зарегистрирован: 09 окт 2012, 05:18

Re: Profibus DP

Сообщение CHANt » 10 июл 2014, 20:02

Для спокойствия, кроме ОВ86, ОВ122, я еще подгружаю ОВ40, ОВ80, ОВ82, ОВ121
Аватара пользователя
CHANt
Профессионал
 
Сообщения: 531
Зарегистрирован: 13 окт 2012, 15:24
Откуда: Orenburg

Re: Profibus DP

Сообщение Автоматизатор » 11 июл 2014, 06:06

CHANt писал(а):Для спокойствия, кроме ОВ86, ОВ122, я еще подгружаю ОВ40, ОВ80, ОВ82, ОВ121

Спасибо. А то я уже забыл, какие еще блоки надо.

Рассказывали страшную историю: одна фирма поставила оборудование в цех. Все вроде нормально работало, но в один прекрасный день встало все! Все установки по всему цеху.
Оказалось, что где-то на периферии отключился частотник, произошел сбой связи, вызвался OB, его в проекте не было и контроллер перешел в СТОП. Контроллер верхнего уровня, обнаружил обрыв связи и тоже выпал в СТОП. Далее и все остальные контроллеры. Пока разбирались, кто был инициатор, много времени прошло.
Аватара пользователя
Автоматизатор
Профессионал
 
Сообщения: 880
Зарегистрирован: 09 окт 2012, 05:18

Re: Profibus DP

Сообщение Михайло » 11 июл 2014, 06:34

Тоже интересный вопрос: а наполнение всех этих блоков какое? Все пустые?
Михайло
Администратор
 
Сообщения: 3333
Зарегистрирован: 19 сен 2012, 19:16

Re: Profibus DP

Сообщение CHANt » 11 июл 2014, 06:57

Михайло писал(а):Тоже интересный вопрос: а наполнение всех этих блоков какое? Все пустые?

Обычно пустые. Так как тратить время на разработку диагностики жалко, ну и для 300 серии бывает критично использовать не по назначению каждый килобайт. Оптимально поднимать в случае с S7-400 и разработкой в PCS7, там работа с диагностикой более дружелюбна к пользователю. Я одно время, когда связь еще не была дешевой, выводил часть диагностики в буфер контроллера, чтобы при отсутствии связи, часть критичных событий сохранялась, но там всего не более 100 сообщений храниться. Но, столько времени надо прописывать все эти перекрестные ссылки)))
Аватара пользователя
CHANt
Профессионал
 
Сообщения: 531
Зарегистрирован: 13 окт 2012, 15:24
Откуда: Orenburg


Вернуться в Simatic TIA Portal / Step7

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron