PDA

Просмотр полной версии : Vipa и ип320



aipik
10.02.2010, 18:20
Помогите новичку в этом вопросе (никогда не работал с панелями рператора).
У заказчика имеется контроллер VIPA CPU 214 2BS32, панель оператора ИП 320 Овен.
Вопрос- как их связать. может у кого есть пример программы? Панель оператора - Мастер.
Не могу разобрать вопрос четности-нечетности, и какой № регистра вбить в конфигуратор ИП320. Как забить в контроллере Slave. Заранее спасибо всем, кто откликнется.

lara197a
10.02.2010, 22:37
Випа поддерживает протоколы Siemens, в частности MPI.
Они не совместимы. (если конечно не пропишите ручками)

Николаев Андрей
11.02.2010, 10:21
1. Убедитесь, что у выбранной модели Vipa имеется порт RS485 или RS232. Если таких портов нет - они в принципе не совместимы без согласующих приборов.
2. Уточните из документации (у поставщика) поддержан ли протокол ModBus в данном контроллере, и что надо сделать, чтобы его поддержать (если не поддержан).
3. Ну и в зависимости "от поддержки" протокола ModBus Вы получаете команды, которыми можно обмениваться, и узнаете из каких регистров что можно получить.

aipik
11.02.2010, 10:34
Контроллер и панель соединил портом RS232, протокол ModBus контроллером поддерживается.
Объясните пож-ста как определить адрес ПЛК и номер регистра

Николаев Андрей
11.02.2010, 10:46
Если ModBus штатно поддерживается, то в документации к нему ДОЛЖНА быть таблица адресов ModBus или документ как адреса в данном контроллере формируются. Кроме производителя Slave устройства никто не этого не знает.
Например на наши модули Таблица ModBus адресов приведена прям в руководстве по эксплуатации.
Для контроллеров ПЛК в Руководстве пользователя описано как эта таблица формируется пользователем.

aipik
11.02.2010, 13:30
а что означает "четность", "нечетность", "отсутствует"?

Николаев Андрей
11.02.2010, 14:55
Есть понятие настроек обмена по сети:
То есть формат посылки, количество бит данных, наличие стоп бит и проверка четности.
Более подробно можно почитать об этом в стандартах на протоколы.
Ну или оставить это на потом, и сделать ровно следующее: установить ОДИНАКОВЫЕ настройки сети и в Vipa и в ИП320.
Рекомендую (если Vipa поддерживает):
1. Скорость 115200
2. Количество бит - 8
3. Стоп бит - 1
4. Контроль четности - нет

aipik
11.02.2010, 15:50
спасибо, андрей. вы не можете перечислить основные причины отсутствия связи с плк?

aipik
11.02.2010, 16:14
где мне в контроллере искать номер регистра?

Николаев Андрей
11.02.2010, 16:48
В контроллере искать бесполезно - надо искать в документации на контроллер Vipa.
У нас в руководстве пользователя PLC Configuration.
Где то в разделе про сетевой обмен или настройку обмена, или ..."ModBus slave"...

aipik
12.02.2010, 09:13
а где можно найти распайку Rs485 для ип320?

Николаев Андрей
12.02.2010, 10:03
в руководстве по эксплуатации на ип320

aipik
12.02.2010, 17:28
Может переходник панели ИП320 быть неисправным? Как его можно проверить?

DARNER
13.02.2010, 09:37
Может переходник панели ИП320 быть неисправным? Как его можно проверить?

взять заведомо исправный...;)

Николаев Андрей
14.02.2010, 21:41
Может переходник панели ИП320 быть неисправным? Как его можно проверить?

Тестером. В РЭ четко указано что делает переходник. то есть позвонить ножки на входе и выходе мне не представляется сложным...
Ну или взять DB9 и спаять напрямую, но только с учетом переворачивания в переходнике.

aipik
14.02.2010, 22:42
на панели а - 9, в - 8. это правильно?

Ельцов Андрей
15.02.2010, 09:30
на панели а - 9, в - 8. это правильно?

Да, правильно.
РЭ стр.9, п. 3.2.1

aipik
15.02.2010, 10:16
Rs 485 - соединение идет только двумя проводами?

Николаев Андрей
15.02.2010, 10:19
Да, всего 2 провода.
Мы чем сможем - поможем, но базовые знания по интерфейсам, протоколам (в частности ModBus) я бы на Вашем месте постарался получить.

aipik
15.02.2010, 10:33
да проект по ип320 я в панель загрузил, просто у меня появились сомнения на счет переходника. плк у меня поддерживает Modbus через Rs485, я соединил панель согласно инструкции, а плк ее не видит. проект в панель я загружал по Rs232 без переходника, с переходником панель не видит пк. хотя в инструкции написано, что проект загружается через переходник.

Hemann
15.02.2010, 14:14
Ну для начала нужно все-таки проверить параметры связи, в проекте ИП320-ой панели посмотрите адрес ПЛК, дальше, Modbus бывает RTU и ASCII, это тоже нужно просмотреть (ИП320 работает по Modbus-RTU, а как в Vipe сконфигурирован Modbus-проверьте). Кроме того, посмотрите адресацию регистров в ИП320 и Vipe на предмет совпадения. Команды протокола Modbus, с которыми обращается панель к Vipе, по идее Vipa знать должна, но проверьте этот момент, если он там как-то конфигурится (в Vipe).

aipik
16.02.2010, 00:38
C ПЛК связь вроде появилась (на ПЛК мигает светодиод RX, TX - молчит),
но панель не видит ПЛК. На ПЛК высвечивается ошибка "Receive buffer too small (data loss)" (Слишком маленький буфер получателя (потеря данных)

Hemann
16.02.2010, 08:25
проверьте размеры и количество регистров, чтобы совпадало в обоих местах

aipik
16.02.2010, 08:39
что значит - размер регистра?

Hemann
16.02.2010, 08:49
размер регистра в байтах, т.е. если передаете целое число, то регистр 2-байтовый, биты передаются группами по 8 штук, т.е в одном байте и т.д. И еще, когда ПЛК ведомый, можно легко ошибиться с адресами регистров Modbus в ПЛК. Как с этим бороться писал на форуме Андрей Николаев

aipik
16.02.2010, 09:00
а дайте ссылку на этот форум

aipik
16.02.2010, 09:13
вы считаете, что у меня осталось только регистры сопоставить?

aipik
16.02.2010, 09:22
где в проекте панели уст-ся размер регистра?

Ельцов Андрей
16.02.2010, 09:40
Насколько я понимаю, Rx-это чтение. значит панель посылает запросы контроллеру. А Tx молчит, т.к. контроллер ничего не отвечает.

Если у Вас есть преобразователь RS232/RS485, желательно два. То посмотрите лог обмена между панелью и контроллером.
Тогда все станет понятно.

aipik
16.02.2010, 10:52
у меня есть два кабеля Rs232 и Rs485. плк по описанию работает т-ко с Rs485

aipik
16.02.2010, 10:56
и еще -
в проекте панели я создал два экрана (главный -экран перехода и срегистрами). когда я подключаюсь к плк высвечивается главный экран, на плк ничего не мигает. при переходе на второй экран начинает мигать Rx, а через некоторое время на панели появляется "потеря связи"

Николаев Андрей
16.02.2010, 12:37
панель опрашивает только те параметры, которые отображены на действующем экране.
раз обмен мигает - связь таки физически есть. но запрашиваете видимо что то не то.

aipik
16.02.2010, 12:40
а в "настройках проекта" панели интерактивный контроль включать обязательно?

aipik
16.02.2010, 12:53
у меня в блоке данных плк следующие адреса - 0.0; 2.0; 4.0; 6.0; 8.0; 10.0; 12.0. значит номера регистров должны соответствовать? и как понять "число регистров" - я ведь по каждому адресу должен вводить одно значение?

Николаев Андрей
16.02.2010, 13:23
1. четко должны быть прописаны номера регистров, команда для их чтения.
то есть например регистры с адресами 0,1, или 2058 или еще какой. и команда 03 или 04 для чтения ну и для записи соответствующие.

aipik
16.02.2010, 13:30
"соответствовать" - я имел ввиду номера регистров в панели 4х0, 4х2, 4х4, 4х6, 4х8, 4х10, 4х12. или как?

aipik
17.02.2010, 01:16
есть ли у панели ип320 какая-нибудь диагностика?

Николаев Андрей
17.02.2010, 10:50
Специальных средств, на сколько я знаю нет, но если программа заливается - на 90% панель рабочая.
Выложите уже что ли документацию на Vipa...где указан принцип построения ModBus Slave

aipik
17.02.2010, 13:14
Документация т-ко на английском.http://www.vipa.com.ua/manuals/system200v/system200v_cpu21x/10_deployment_cpu21xser_1.pdf

aipik
17.02.2010, 13:15
я могу и по для Vipa вместе с тестовой программкой выслать

aipik
18.02.2010, 09:48
может быть я в проекте панели делаю что то не так?
панель - мастер,
адрес плк - 4

aipik
18.02.2010, 11:47
http://www.owen.ru/forum/member.php?u=2
Как физически можно посмотреть лог обмена между панелью и оператором?

Николаев Андрей
18.02.2010, 12:06
Из документа:
1.Убедитесь, что в Vipa стоят те самые настройки сетевые, что и в панели. Как то тут это не просто делается...
2. Так и не нашел упоминания адреса регистра, с которого начинается память ModBus Slave. То что опрашиваются либо биты либо word (регистр) понятно. Принцип формирования памяти, как и у нас. Но вот непосредственно где взять адрес регистра... Я думаю стоит начинать с нулевого адреса регистра. И далее, если добавляете переменные типа Word, то адреса просто идут по порядку 0,1,2,3,4...

aipik
19.02.2010, 10:04
а значения "четность-нечетность", "стоп-бит", "скорость" могут играть какую-то роль? в установках панели и контроллера у меня они совпадают.
скорость -9600
формат данных - 8бит
стоп-бит - 2 бит
контроль четности - отсутствует

Николаев Андрей
19.02.2010, 10:53
роль играют. как насчет:
скорость -115200
формат данных - 8бит
стоп-бит - 1 бит
контроль четности - отсутствует

aipik
19.02.2010, 10:54
когда используются в настройках проекта панели "интерактивный контроль" и "управление перефирийным оборудованием"?

aipik
19.02.2010, 12:14
попробовал поставить
скорость -115200
формат данных - 8бит
стоп-бит - 1 бит
контроль четности - отсутствует
результат тот же (на плк мигает Rx, на панели "потеря связи". тут что-то с номерами регистров на панели.

aipik
21.02.2010, 16:50
Такой вопрос -
Может ли ИП-320 в режиме Slave записать информацию в ПЛК?

Ельцов Андрей
21.02.2010, 19:51
может. только не панель записывает, а плк читает внутренние регистры панели. адреса регистров в режиме слейв задаются также как и в режиме мастер. плк должен обращаться к этим регистрам.
но здесь есть один момент, который необходимо учесть: в режиме слейва плк опрашивает все регистры панели, которые существуют, а в режиме мастера панель опрашивает только те регистры которые в данный момент находятся на экран и команды посылаются сразу.
вам так и не удалось лог посмотреть?

aipik
21.02.2010, 20:17
да не получается пока ничего. решил попробовать панель в слэйве, т-ко не знаю будет ли работать плк.
смысл работы заключается в следующем :
- на панели я должен задать временные и счетные параметры для плк. а плк прочитав эти параметры должен произвести определенные действия или по времени, или по счету

aipik
22.02.2010, 21:45
и все-таки реально ли связать ип-320 с Vipa?

lara197a
22.02.2010, 23:03
Вы через какую среду их программируете?
Через Step7 не получится. Там только свои протоколы поддержаны или писать обмен руками.

aipik
23.02.2010, 08:40
Через WinPlc7.
Руками - это как?

lara197a
23.02.2010, 11:25
1925
Во вложении пример организации свободного обмена через порт для S200. Если разберетесь попробуйте примерно тоже сделать для Vipa. Скачайте на сайте Веспер инструкцию для DriveLinkRus. Там хорошо расписан протокол Monbus.
Я к сожалению в Win7 не работал. У них в отличии от Step7 свои библиотеки. Больше помочь ни чем не смогу.

Николаев Андрей
23.02.2010, 14:12
Да все должно работать.
Что говорит поддержка Vipa???

lara197a
23.02.2010, 14:33
В России vipa никто не поддерживает. Штат в Германии около 90 человек. Техподдержка скорее не ответит.

Николаев Андрей
23.02.2010, 19:15
А ЭФО? А прософт?
Нет возможности контроллер к нам привезти на пару дней?
Ну и к стати я бы взял какую нибудь програмулину, типа ModBus Tester и попробовал проверить по какому адресу регистры распологаются, какой командой их считывать...

lara197a
23.02.2010, 19:37
" эфо? а прософт"- торгаши

Николаев Андрей
24.02.2010, 01:32
" эфо? а прософт"- торгаши

Достаточно не слабая Питерская контора, хотя как с консультациями - тоже не знаю...

lara197a
24.02.2010, 08:37
Я года 3 назад занимался випой, пытался от этих товарищей хоть какую нибудь инфу получить. Они могут только счет на поставку выписать и буклет дать почитать. Не уверен, что сейчас лучше стало.
Только у меня родного софта не было я на step7 программировал. Step7 поддерживает vipa, если GSD файлы подгрузить, но motbus на нем не идет. У них свои протоколы. Я обэтом и писал в самом начале.
Тут проще старенькую О7 по дешевке найти(или TD какую).

aipik
24.02.2010, 08:47
Step7 и WinPlc7 почти ничем не отличаются, у них даже модули взаимозаменяются

lara197a
24.02.2010, 09:15
согласен.
есть некоторые отличия в библиотеках, в основном специальные функции.

Николаев Андрей
24.02.2010, 09:54
эфо на сайте випы - центр знаний...

aipik
24.02.2010, 10:51
адрес подробнее можно написать?

Николаев Андрей
24.02.2010, 11:04
адрес подробнее можно написать?

www.efo.ru

aipik
24.02.2010, 11:11
Нет возможности контроллер к нам привезти на пару дней?
Ну и к стати я бы взял какую нибудь програмулину, типа ModBus Tester и попробовал проверить по какому адресу регистры распологаются, какой командой их считывать...

Напишите куда точнее, может и приеду

Николаев Андрей
24.02.2010, 11:38
Попробуйте сначала все-таки проверить обмен с помощью ModBus Tester.
Если совсем никак - привозите к нам в центральный офис.
Сразу сделать не обещаем - может понадобится несколько дней - загрузка нереальная...

vadfal
24.02.2010, 16:49
Для организации обмена по Modbus-RTU (RS-485) между VIPA CPU 214-2BS32 и внешним устройством необходимо использовать программные функции:
SFC 216 (SER_CFG) - Parameterization
SFC 217 (SER_SND) - Send
SFC 218 (SER_RCV) - Receive

aipik
24.02.2010, 21:40
Для организации обмена по Modbus-RTU (RS-485) между VIPA CPU 214-2BS32 и внешним устройством необходимо использовать программные функции:
SFC 216 (SER_CFG) - Parameterization
SFC 217 (SER_SND) - Send
SFC 218 (SER_RCV) - Receive

Я использовал функции SFC216, 217 и 218, на ПЛК мигает светодиод RX, а пенель пишет "потеря связи"

lara197a
24.02.2010, 21:46
значит панель получает неверный ответ на запросы или ответ не вовремя.

aipik
24.02.2010, 23:16
что значит неверный ответ?

aipik
25.02.2010, 01:06
Попробуйте сначала все-таки проверить обмен с помощью ModBus Tester.

Если бы я еще знал как кушать этот ModBus Tester.

aipik
25.02.2010, 01:17
Modbus Tester пишет "CRC error in received frame"

aipik
25.02.2010, 13:18
Помогите по Modbus Tester. На страничке Modbus Poll пишет "CRC error in received frame", на Comm Monitor выходит две строчки:
- черная [FF][F9][FF][FF][FF][F8][F7][EF]
- синяя [01][03][00][00][00][0A][C5][CD]
Что это значит?

vadfal
25.02.2010, 14:35
[01][03][00][00][00][0a][c5][cd] это посылка (запрос)
[01] адрес подчиненного
[03] функция (чтение двоичного содержания регистров в подчиненном)
[00] начальный адрес ст.
[00] начальный адрес мл.
[00] количество регистров ст.
[0а] количество регистров мл. (читается 10 ригистров подчиненного, начиная с адреса 0)
[c5] и [cd] это Crc16
[ff][f9][ff][ff][ff][f8][f7][ef] это скорее всег неверный ответ подчиненног, проблемму надо искать в Step7 программе Cpu Vipa.

aipik
25.02.2010, 14:37
что значит crc16?

vadfal
25.02.2010, 14:49
Crc16 контрольная сумма, в Cpu Vipa считается на уровне внутренней прошивки, в Step7 программе не обрабатывается.

aipik
25.02.2010, 14:54
Я подключил Modbus Tester к панели ИП320, включил Polling на Comm Monitor начало выдавать три строки:
синяя - [01][03][13][88][00][0A][41][63]
две темные строки с одинаковыми значениями:
[0A][03][00][00][00][01][85][71].
Отключил Polling - синяя исчезла, начала появляться только черная (не темная) [0A][03][00][00][00][01][85][71]
Как это расшифровать, и что где нужно поменять?

vadfal
25.02.2010, 14:56
[01][03][00][00][00][0a] это полезная информация, от неё считается CRC16 [c5][cd] - необходима для проверки достоверности запроса/ответа

vadfal
25.02.2010, 15:05
[0A][03][00][00][00][01][85][71] и [01][03][13][88][00][0A][41][63] это запросы.
[0A][03][00][00][00][01][85][71] отправляет скорее всего панель, [01][03][13][88][00][0A][41][63] отправляет тестер.
Modbus адрес панели 10?

aipik
25.02.2010, 15:09
10 адрес ПЛК (ПЛК -Slave). Я поменял на конфигураторе панели 10 на 4, теперь вместо [0A] появляется [04], а на месте [85][71] - [84][5F] соответственно

vadfal
25.02.2010, 15:28
Да, логично, значит [01][03][13][88][00][0A][41][63] отправляет тестер.
Теперь подключите ПЛК к тестеру, параметрируйте в SFC216 модбус-адрес - 01 (также проверьте скорость и четность, совпадение с тестером).
Нажмите Poling, посмотрите, что ответит ПЛК.

aipik
25.02.2010, 15:40
а как проверить совпадение скорости и четности?

vadfal
25.02.2010, 16:05
В OB100 вызывается SFC216, где параметрируется RS-485 интерфейс/сеть:

CALL SFC 216
Protocol :=B#16#5 // 5=Modbus RTU
Parameter :=DB1
Baudrate :=B#16#9 // 9600
CharLen :=B#16#3 // 8 Bit
Parity :=B#16#0 // non
StopBits :=B#16#1 // 1
FlowControl:=B#16#1
RetVal :=MW106 // Return-Code

Параметры скорости, стоп-бит и четности должны совпадать с параметрами установленными в тестере.

aipik
25.02.2010, 22:44
Да я вроде бы параметризацию сделал, только немного отличающуюся от Вашей
CALL SFC 216
Protocol :=B#16#7 // 5=Modbus RTU slave
Parameter :=P#DB10.dbx0.0 byte4
Baudrate :=B#16#9 // 9600
CharLen :=B#16#3 // 8 Bit
Parity :=B#16#0 // non
StopBits :=B#16#3 // 2
FlowControl:=B#16#0
RetVal :=MW106 // Return-Code

aipik
25.02.2010, 22:54
У меня еще одна проблема:
на ПК у меня нет COM-порта, с ПЛК я соединяюсь при помощи зеленого кабеля от Vipa и переходника USB<>COM UR1FT. Не знаю как подключить RS485. На ПЛК - проблем нет, а вот поддерживает ли переходник RS485 и к каким ножкам паяться.

lara197a
26.02.2010, 08:42
грин кабель можно подключать к переходникам. у меня работало.

aipik
26.02.2010, 09:45
дело в том, Cpu 2bs32 по документации поддерживает только Rs485 (имеется ввиду COM-порт)

lara197a
26.02.2010, 10:22
обычно для таких разъемов 5-земля, 2 и 3- дата (a и B). землю подключать не обязательно. попробуйте методом тыка.
можно осицилографом. а и в-два противонаправленных по потенциалу сигнала.(если а1в, то в-1в)

aipik
26.02.2010, 11:28
Нестыковка получается с ИП320-
с ПЛК идет соединение с ножек 8 и 9, а на ModbusTester с ножек 2 и 3.
Тестер информацию считывает, а вот на счет ПЛК я что-то сомневаюсь.
Прозвонил переходник, получилось 2-2, 3-3, 5-5, 8-В, 9-А, 7-8

vadfal
26.02.2010, 12:00
В CPU VIPA 21x-2BS32 разъм COM - RS-485:
RxD/TxD-P (B) 3pin
RxD/TxD-N (A) 8pin
этот разъем мы используем для соединения с панелью ОВЕН ИП320.

Разъем MP2I используется для:
1. програмирования и отладка программы (RS-232-зеленый кабель или MPI)
2. связь с панелью, если панель имеет MPI
3. связь с OPC-сервером (RS-232-зеленый кабель или MPI)

lara197a
26.02.2010, 12:01
такой переходничок придется самому распаять.

vadfal
26.02.2010, 12:24
Панель ОВЕН ИП320 можно подключить к CPU VIPA распояв кабель
RS-485 - RS-485

Для тестирования CPU VIPA с помощью программы Modbus-тестер понадобиться преобразователь USB - RS-485.
UR1FT если я не ошибаюсь RS-485 не поддерживает?

aipik
26.02.2010, 15:13
трудно сказать - подделживает или нет. ему уже лет 8

aipik
26.02.2010, 16:15
кабель для соединения если не экранирован не страшно же?

lara197a
26.02.2010, 16:23
витая пара помех не боится.

aipik
26.02.2010, 23:06
Купил конвертер USB<>RS485 подключил контроллер в режиме master
Подключил все это к ПК, запустил Modbus Tester, контроллер выдает следующую информацию - [FF][FE][F4][3E][FC]. Что с этим делать?

DARNER
26.02.2010, 23:51
витая пара помех не боится.

все отсительно ;)

vadfal
27.02.2010, 10:54
как спараметрирован Sfc217 ?

aipik
27.02.2010, 10:59
A M 1.1
JNB M000
CALL SFC217
DataPtr:=P#DB1.DBX 0.0 BYTE 2
DataLen:=MW220
RetVal:=MW222
M000 :NOP 0

vadfal
27.02.2010, 12:55
Попробуйте сформировать Modbus запрос:

L B#16#1
T DB1.DBB 0
L B#16#3
T DB1.DBB 1
L B#16#0
T DB1.DBB 2
L B#16#0
T DB1.DBB 3
L B#16#0
T DB1.DBB 4
L B#16#A
T DB1.DBB 5

CALL SFC 217
DataPtr:=P#DB1.DBX0.0 BYTE 6
DataLen:=MW220
RetVal :=MW222

В тестере должны увидеть [01][03][00][00][00][0A][C5][CD]

aipik
27.02.2010, 19:44
ничего не выходит. скорость передачи-получения очень высокая. в тестере творится не понятно что.

aipik
27.02.2010, 21:45
В SFC 217 появилась ошибка "Wrong slave address in respond"

aipik
28.02.2010, 00:51
а как можно изобразить Sfc218?

vadfal
28.02.2010, 11:00
Уменьшите скорость запросов, DB10.DBB0 -> 10000 (1сек.)

Return-Code - "Wrong slave address in respond"???
У вас же настроен режим Modbus Master (Protocol :=B#16#5)?

CALL SFC 216
Protocol :=B#16#5
Parameter :=DB10
Baudrate :=B#16#9
CharLen :=B#16#3
Parity :=B#16#0
StopBits :=B#16#1
FlowControl:=B#16#1
RetVal :=MW106

В DB10 один параметр DBB0 (тайм-аут), еще можно записать Parameter :=P#DB10.dbx0.0 byte2

SFC 218 пока рассматривать нет смысла, надо добиться нормальной передачи.

aipik
28.02.2010, 17:43
в тестере появляются только значения типа -
[df][ee][fe][df][ee][fe][df][ee]
[fe][df][ee][fe][df][ee][fe]
[df][ee][fe][df][ee][fe]

vadfal
28.02.2010, 18:18
Скорость опросов поменялась (1сек.)?

В OB1 напишите (в начале блока) и загрузите в PLC:

L B#16#1
T DB1.DBB 0
L B#16#3
T DB1.DBB 1
L B#16#0
T DB1.DBB 2
L B#16#0
T DB1.DBB 3
L B#16#0
T DB1.DBB 4
L B#16#A
T DB1.DBB 5

CALL SFC 217
DataPtr:=P#DB1.DBX0.0 BYTE 6
DataLen:=MW220
RetVal :=MW222

BE

aipik
28.02.2010, 18:26
Cкорость опросов 10ms. По другому выходит или слишком мало значений или наоборот. В DB1 пробовал ставить разные значения, а отличий в тестере почти не наблюдается

vadfal
28.02.2010, 18:59
После люблго изменения в OB100 и DB10 необходимо перегружать PLC (код в OB100 выполняется только при старте).

Напишите в OB100:

L W#16#2710
T DB10.DBW0

CALL SFC 216
Protocol :=B#16#5
Parameter :=P#DB10.dbx0.0 byte2
Baudrate :=B#16#9
CharLen :=B#16#3
Parity :=B#16#0
StopBits :=B#16#1
FlowControl:=B#16#1
RetVal :=MW106

aipik
28.02.2010, 19:25
я перегружаю каждый раз

aipik
28.02.2010, 22:36
Что такое формат Intel или Motorola?

vadfal
28.02.2010, 23:10
Хранение значений в диапазоне адресов процессора.
В формате Motorola байты располагаются по убыванию (1-ый байт старший, 2-ой байт младший). В формате Intel по возрастанию.

Какое отношение эти форматы имеют к Modbus-у?

aipik
28.02.2010, 23:46
Мне пришло сообщение с техподдержки - "Насколько я знаю, ОП работает как Modbus-master, ПЛК - slave, т.е.
идеологически у вас все верно. Разбирайтесь с адресацией (+0 или +1,
длинный/короткий, формат Intel или Motorola и т.д.),
таймаутами и т.д." Все, чем они смогли мне помочь

Николаев Андрей
01.03.2010, 01:41
Мне пришло сообщение с техподдержки - "Насколько я знаю, ОП работает как Modbus-master, ПЛК - slave, т.е.
идеологически у вас все верно. Разбирайтесь с адресацией (+0 или +1,
длинный/короткий, формат Intel или Motorola и т.д.),
таймаутами и т.д." Все, чем они смогли мне помочь
Это от какой поддержки пришло?

aipik
01.03.2010, 02:41
от efo с Питера

vadfal
01.03.2010, 10:37
Еще вариант обновить firmware CPU VIPA.

У вас есть возможность подвезти CPU VIPA к нам в офис (Санкт-Петербург, район метро "Нарвская")? Сложно решать проблему на расстоянии.

aipik
01.03.2010, 11:53
Новая беда - в SFC216 ошибка в CharLength. Как ее устранить?

vadfal
01.03.2010, 12:24
CharLen :=B#16#3 ?

aipik
01.03.2010, 12:42
CharLen:=B#16#3.
Пишу в SFC 216 Parameter:=P#DB10.DBX0.0 BYTE4 выдает ошибку -
Access error in parameter DB (DB too short), а в SFC217 все время ошибка
RS232 interface not configured.

vadfal
01.03.2010, 12:55
Для режима Master Parameter:=P#DB10.DBX0.0 BYTE2

Пропишите в OB100: Посмотрите запустится ли CPU?

M001: NOP 0

CALL SFC 216
Protocol :=B#16#5
Parameter :=P#DB10.DBX0.0 BYTE2
Baudrate :=B#16#9
CharLen :=B#16#3
Parity :=B#16#0
StopBits :=B#16#1
FlowControl:=B#16#1
RetVal :=MW106

L MW 106
SRW 12
L B#16#8
==I
JC M001

aipik
01.03.2010, 13:02
Мигает светодиод Run, а светодиод Stop не выключается

vadfal
01.03.2010, 13:14
Понятно, ошибка есть, причина не ясна.
Пробуйте обновить firmware, или привозите. Сколько лет CPU, кокая прошивка?

aipik
01.03.2010, 13:24
CPU - новый. На счет прошивки не знаю, я c Vipa работаю недавно. Ошибка появилась после обновления firmware

vadfal
01.03.2010, 14:49
Если ошибка появилась после обновления, перешить еще раз.
Где скачено Firmvare?

vadfal
01.03.2010, 14:59
ftp://ftp.vipa.de/support/firmware/System%20200V/CPU/

aipik
01.03.2010, 15:07
чем перешить? Firmware скачано именно тут (ftp://ftp.vipa.de/support/firmware/.)

vadfal
01.03.2010, 15:10
MMC карта, инструкция есть в manual-е.

aipik
01.03.2010, 15:14
какой программой?

vadfal
01.03.2010, 15:15
(214-2BS32_a1.408) меняем имя файла и расширение на (firmware.bin), записываем на MMC, далее по инструкции.

vadfal
01.03.2010, 15:17
CPU - новый. На счет прошивки не знаю, я c Vipa работаю недавно. Ошибка появилась после обновления firmware

А как обновляли раньше?

aipik
01.03.2010, 15:17
раза 4 уже пробовал - результат тот же. мне бы вернуть его в прежнее состояние

vadfal
01.03.2010, 15:24
На FTP есть версия V. 3.8.7 (214-2BS32_a1.387).

aipik
01.03.2010, 15:29
Проверьте в диагностическом буфере, стоит ли новая версия firmware и произведите сброс ошибок.
Как в диагностическом буфере проверить, стоит ли новая версия firmware?
И как производится сброс ошибок?

vadfal
01.03.2010, 15:49
Проверьте в диагностическом буфере, стоит ли новая версия firmware и произведите сброс ошибок.
Как в диагностическом буфере проверить, стоит ли новая версия firmware?
И как производится сброс ошибок?

Откуда данная информация?

Стр. 4-26 (http://www.vipa.de/uploads/tx_sbdownloader/hb97e_cpu_06-29.pdf)

Версия firmware в закладке General

aipik
01.03.2010, 15:51
http://www.novoconcept-e.com.ua/faq/vipa-1

aipik
01.03.2010, 16:01
А как запустить Simatic Manager? Его тоже надо устанавливать?

vadfal
01.03.2010, 16:23
возможности приехать нет?

aipik
01.03.2010, 16:26
а куда ехать?

vadfal
01.03.2010, 16:36
Проверьте в диагностическом буфере, стоит ли новая версия firmware и произведите сброс ошибок.
Как в диагностическом буфере проверить, стоит ли новая версия firmware?
И как производится сброс ошибок?

Если вы пользуетесь WINPLC7:
Стр. 137 (http://www.winplc7.com/Download/WinPLC7-V4-user-manual.pdf)

vadfal
01.03.2010, 16:38
а куда ехать?

Санкт-Петербург, район метро "Нарвская".

aipik
01.03.2010, 16:51
далековато будет

aipik
01.03.2010, 17:42
где же можно найти золотую середину между ошибками 8092 и 8094 в Sfc216? другие программы работают нормально

aipik
01.03.2010, 21:47
получается, что обновить я программу не смог, только испортил существующую. только не могу понять - пк карточку видит, а плк нет. объем памяти ммс (64мв) роль играет?

vadfal
01.03.2010, 23:05
Посмотрите версию firmware в WINPLC7.
CPU понимает MMC карты объемом до 1Гв.

aipik
01.03.2010, 23:33
в плк прошивка - V3.8.7

aipik
01.03.2010, 23:35
плк пишет нет доступа к Mmc

aipik
02.03.2010, 09:10
все, обновил в 4.0.8.(карточка была отформатирована в Fat32).
можем продолжать дальше?

aipik
02.03.2010, 09:38
в тестере одни нули, но нет постоянства в их кол-ве

vadfal
02.03.2010, 11:56
Пишите простейшую тестовую программу для Modbus-тестера (DB могут не совпадать с вашими):
OB100:

L 10000
T DB1.DBW 0

M001: NOP 0

CALL SFC 216
Protocol :=B#16#5
Parameter :=P#DB1.DBX0.0 BYTE 2
Baudrate :=B#16#9
CharLen :=B#16#3
Parity :=B#16#0
StopBits :=B#16#1
FlowControl:=B#16#1
RetVal :=MW106

L MW 106
SRW 12
L B#16#8
==I
JC M001

OB1, network 1:

L B#16#1
T DB30.DBB 0
L B#16#3
T DB30.DBB 1
L B#16#0
T DB30.DBB 2
L B#16#0
T DB30.DBB 3
L B#16#0
T DB30.DBB 4
L B#16#A
T DB30.DBB 5

CALL SFC 217
DataPtr:=P#DB30.DBX0.0 BYTE 6
DataLen:=MW20
RetVal :=MW22

L W#16#2000
L MW 22
==I
JC SEND

L W#16#2001
L MW 22
==I
JC FESE
JU NEXT

SEND: NOP 0
FESE: NOP 0

CALL SFC 218
DataPtr:=P#DB21.DBX0.0 BYTE 19
DataLen:=MW14
Error :=MW16
RetVal :=MW18

NEXT: NOP 0

BE

aipik
02.03.2010, 13:28
а почему L W#16#2000 и L W#16#2001? таких ошибок в Sfc217 нет.

vadfal
02.03.2010, 14:35
См. алгоритм в документации, это условия вызова SFC218.
2000h Send ready without error
2001h Send ready with error

Как я уже писал, мы пробуем тестовый вариант программы, поэтому все условия не проверяем и ошибки не обрабатываем. Наша цель, организация связи (проверка оборудования и физического соединения).

vadfal
02.03.2010, 16:28
Я просмотрел параллельную ветку на форуме журнала "СТА"
http://forum.cta.ru/forum_posts.asp?TID=3599

Вижу у вас проблемы не только с организацией Modbus обмена, но и с языком STEP7.

Рекомендую прослушать курсы по программированию PLC VIPA, проводимые компанией "ПРОСОФТ" Петербург
http://www.prosoft.ru/support/training/spb/

В программе курса рассматривается Modbus RTU обмен для PLC VIPA 314-6CG03 с использованием SFC216/217/218.

aipik
02.03.2010, 16:43
больших проблем с языком у меня нет, он не далеко ушел от step5

aipik
02.03.2010, 17:35
кое-как добился стабильности.
Когда я в DB30 ставлю одни нули в тестере следуещее -
[FF][FE][FC][FE][FE][FE][FC][92][FE]
Ставлю в DB30 b0 - 3, b1 - -10, b2 - -10, дальше нули, получается -
[FF][F2][04][02][00][02][55][3A]. B DB1 поставил скорость - 1000 (при 10000 слишком долго ждать). А до того было не понятно что.
Что можете посоветовать?

aipik
12.03.2010, 21:07
всем спасибо, проблема закрыта