SIEMENS, DF&PD

Предыдущее посещение: Сб июл 02, 2016 4:31 Текущее время: Сб июл 02, 2016 4:31

Часовой пояс: UTC + 3 часа




 [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Ошибка в FB80 для modbus slave модуля CP-341
СообщениеДобавлено: Пн сен 20, 2010 1:09 
Не в сети
Новый писатель

Зарегистрирован: Вт янв 19, 2010 12:10
Сообщения: 13
Доброго времени суток.
Заранее извиняюсь за громоздкое сообщение, но думаю, что будет лучше, если опишу сложившуюсю ситуацию поподробнее.
Начну, пожалуй, с описания проекта...
Имеется проект телемеханики, в котором 6 ПЛК (1 master и 5 slave-ов) с CP-341 RS-232C модулями, связаны посредством радиомодемов Integra TR. (Т.е. CPU->CP-341 (modbus master) ->радиомодем - радиомодем->CP-341 (modbus slave)-CPU). Контроллеры CPU 315-2DP и CPU 313C-2DP. Проект изначально мне достался с 4 слэйвами и задача стоит по образу и подобию добавить ещё один шкаф с (5-ый slave) в проект. Поставил один запрос (читаю 1 слово из DB-ки) с нового слэйва и отключил опрос всех остальных.
В итоге не могу наладить связь с новым ПЛК (CPU 313C-2DP), в диагностике коммуникационного модуля имеются повторяющиеся 2 ошибки:
1) Static error when the WR_REC SFC was called. The return value RET_VAL of SFC is available for evaluation in the SFCERR variable in the instance DB. IF1 incoming event
2) IF 1: Processing error of reloadable driver - data transfer CPU-CP
Думаю, что второе сообщение это продолжение первого, поэтому остановился на первом и столкнулся с рядом трудностей.
Заметил, что в проектах других слэйвов использовался FB 80 (v1.4)/IDB (размер 594 байта) и FB7 (v2.1), FB8 (v2.5). У меня-же установлен драйвер CP PtP Modbus Slave 3.1.6. В описании к которому нашёл, что в этом драйвере FB80, FB7, FB8 работают на SFC52, SFC53 и для поддержки старого функциоанала добавили FB81 (v1.4), FB107 (v2.2), FB108 (v2.7), т.е. опять же в этом драйвере нет функциоанальных блоков с версиями, которые имеются в проектах других слейвов. Т.е. стоит полагать, что создавались с более ранним драйвером.
В итоге откопал драйвер CP PtP Modbus Slave v3.1.4, но в нём эти функциональные блоки версий FB80 (v1.4)/IDB (размер 592 байта, на 1 байт меньше, чем в проектах других слейвов), FB7 (v2.1), FB8 (v2.7). Т.е. опять видимо версия драйвера отличается от той которая была при создании проектов других слейвов. Найти верси. драйвера CP PtP Modbus Slave v3.1.5 так и не удалось.

В итоге имеется ошибка в функциональном блока FB80, ошибка происходит при работе FB7 (P_RCV_RK), точнее при вызове SFC58 (WR_REC) этим функциональным блоком. В ERROR_NR у FB80 лежит номер ошибки - 16#5c и в ERROR_INFO - 16#1e0f. В документации по слэйву на данный код ошибки советуют смотреть STATUS в DB-ке функционального блока для recieve области. В DB-ке у FB80, параметр fb_7.STATUS = 16#1E0F, SFCERR (про которую упоминается в первом сообщении об ошибке в диагностике драйвера) = -31430.
В итоге по статусу, говорится, что формат у этого параметра таков: 0-7 биты - номер ошибки, 8-12 - класс ошибки; В итоге разбирая значение 16#1E0F, получаем, что класс ошибки = F(15) и номер ошибки = 1E(30), но для таких номеров диагностики я так и не нашёлв документе к модбас слэйву и видимо таблицы там для CP-441, так как везде упоминается о области SYSSTAT, которая имеет место только в CP-441 модулях, если я не ошибаюсь конечно.

Вот и получается, что:
1) Имеется ошибка при вызове SFC58 (RW_REC), которую не знаю как диагностировать
2) Как же выяснить с каким драйвером были созданы проекты предыдущих слейвов и вообще в ту-ли сторону я копаю пытаясь получить функциональные блоки аналогичных версий и размер инстанс блоков данных аналогичных в предыдущих проектах?

Проектт создан и разрабатывается в STEP7 v5.4 SP4.

Заранее благодарен за ответы и надеюсь на помощь!

P.S. Если имеется ссылка на драйвер CP PtP Modbus Slave 3.1.5, пожалуйста выложите, если, конечно это не запрещает политика SIEMENS.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн сен 20, 2010 7:13 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Вс фев 26, 2006 21:44
Сообщения: 1688
Откуда: Липецк, ОАО "НЛМК"
А использовать(Ctrl+C, Ctrl+V) точно работающий FB не пробовали?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн сен 20, 2010 9:25 
Не в сети
Новый писатель

Зарегистрирован: Вт янв 19, 2010 12:10
Сообщения: 13
Да, использовать(Ctrl+C, Ctrl+V) с работающим FB пробовал


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн сен 20, 2010 18:34 
Не в сети
Новый писатель

Зарегистрирован: Вт янв 19, 2010 12:10
Сообщения: 13
Эххх, написал целую поэму, а причиной проллемы оказалась простая не внимательность.
В настройках модбас слэйва, в закладке для указания начальной ДБ-ки для запросов с функциональным кодом 3 было проставлено 124, а функционал реализации запросов и обмена в проекте подразумевал нумерацию с 1-ого номера. В итоге указывая в запросе, что хочу прочитать регистры, например 4-ого блок данных слэйва в результате запрашивал 128 номер, что не допустимо для адресации по модбасу.
Ну и ещё добавлю, что заработало и на версии драйвера Modbus Slave 3.1.6, при этом заметил, что генерация инстанс ДБ для FB80 v3.2 верно сгенерировалось со второй попытки, похоже на мистику, ну спишем на мистику и руки :) Т.е. изначально не работало по причине не актуальной ДБ-ки для FB80 - необходимо юыло генерировать заново, как оказалось на практике 2 раза, с первого раза сгенерировалась меньшего размера чем во второй раз (мистика, повторюсь).
Пробовал реализовать и на P_RCV_RK_OLD и P_SND_RK_OLD - всё читается, т.е. все мои предположения с разницей версий в драйверах проектов других слэйвов не актуальны.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group