PDA

Просмотр полной версии : сп270-т не отвечает в режиме слейв



БДВ
18.02.2010, 11:49
Здравствуйте все!
У меня две проблемы. Может я плохо искал по форуму - но не нашел. Подскажите где искать.
Проблема 1.
СП270-Т не отвечает в режиме слейв.
Связь с контроллером wago. До этого стояла панель ИП320 все работало.
Контроллер вообще не получает от СП ничего. (функции модбаса 3h и 10h).
(ИП в случае ошибок хоть отвечал по стандарту модбаса 80h+номер функции)
Сделал тестовые проекты. Для верности исключил контроллер. Связал ИП320 и СП270. Тестовые проекты (пара регистров) для СП в режиме мастер и ИП слейвом работают прекрасно.
Наоборот - ИП пишет "потеря связи..."
В обоих случаях параметры связи одинаковые 9600,8,нет,1. Протокол Модбас РТУ, порт RS-485, длина кабеля 1м :). Провод А - пин 4 порта PLC.
Провод B - пин 7 порта PLC.
Вопрос: что делать? (кто виноват - не так интересно:))

Проблема 2.
Не менее важная.
Если пытаюсь в элементе данных указать регистр PSB и поставить к примеру номер 2400. То конфигуратор меня мягко посылает:
"Неверное значение поля !![0 - 1023]"
Я конечно понимаю что он имеет в виду. Что в настройках памяти всего 1024. Но я же указываю номер бита! То есть 300*8! Тут вычитал, что "не желательно" использовать адреса < 256.
Но 256*8=2048 > 1023!
Вопрос: что делать? :)

Если я что-то не так делаю, просьба не пинать. Просто ткните носом в ссылку.
С нетерпением жду ответов. Спасибо.
e-mail, ICQ: bmhe@mail.ru

БДВ
18.02.2010, 17:23
Отвечаю на свои вопросы.
По проблеме 1.
Оказалось, что сп 270 в режиме слейва не отвечает на запросы вообще ничего, если ип обращается к регистрам до 256 адреса!
Вообще-то по стандарту модбаса он должен ответить, что не верный адрес.
Да и фраза "не желательно использовать адреса до 256" в руководстве должна выглядеть больше, быть тверже и стоять самой первой.

По проблеме 2.
Как я понял из экспериментов адреса Psw и Psb не пересекаются в принципе. То есть нельзя записать, например, слово, а потом обратиться к его отдельному биту, как это работает в ип320. А жаль. Придется много кода теперь перепахивать. Или я не прав? И есть какой-нибудь способ?

Спасибо за внимание. Я кончил:)

БДВ
26.02.2010, 15:06
Так я и не смог победить СП270!
Господа разработчики, скажите, пожалуйста, в чем различие реализации интерфейсов RS-485 у панели СП270 и панели ИП320?
Одна и та же тестовая программа (отличие в одной цифре - адрес записываемого регистра: для ИП320-адрес 114, для СП270-адрес 314), на одном и том же контроллере, с одними и теми же проводами, с одинаковыми настройками 9600,8,N,1,master, работает с ИП320(слейв) и не работает с СП270(слейв). Программа и проекты для панелей проще некуда. Один регистр. Программа посылает раз в секунду значение в указанный регистр. Функция 10hex (16dec). ИП320 работает без вопросов. СП270 прикидывается мертвой. Хотя, если ИП320 перешить мастером и соединить с СП270 теми же проводами - СП270 работает!
Сразу скажу что скорость обмена я поднять не могу! Контроллер не позволяет.
Что делать-то? Хотели менять все ИП320 на СП270.
Может уже кто откликнется?
А то я как придурок сам с собой тут беседую.
Вообще, почитав форум, создается впечатление, что весь Овен сделан в Китае. А наши доблестные программисты могут только английские буковки на русские менять. И то не везде.

Ельцов Андрей
26.02.2010, 19:31
здравствуйте, бдв.
просим прощения, что оставили ваш пост без внимания.
постараюсь прокомментировать ваши изыскания:
регистры в режиме слейв, действительно, не должны быть меньше 256.
что касается фразы "не желательно", то она действительно звучит не корректно, но регистры в панели существуют, они содержат в себе системные переменные панели.
если говорить о памяти Psw и Psb то она не пересекается, но при добавлении примитива, управляемого битом, его можно привязать к отдельному биту регистра.
а вот с впечатлением вы погоречились. рынок есть рынок, упустить момент значит потерять кусок навсегда. мы никогда до этого не занимались панелями и было бы с нашей стороны глупо затевать такое изделие чисто своими силами без осознавания требований и не видя полной картины. поэтому мы прибегли к аутсорсингу (или оем, как хотите так и называйте). теперь мы готовы к своим проектам и если вы видели на сайте спк2хх, то это чисто наша разработка. она составит конкуренцию более сложным и продвинутым панелям оператора и контроллерам.
при этом сп270 мы не собираемся снимать с продаж. т.к. бюджетные решения всегда нужны.

БДВ
27.02.2010, 08:58
здравствуйте, андрей.
извините, что не сдержался и задел за живое.
с первыми двумя вопросами, как вы видели, я уже сам разобрался.
а мой последний вопрос вы оставили без внимания.
может что-то подобное вам уже встречалось?
хотелось бы узнать ваши версии (за исключением версии с кривыми руками - я ее уже две недели прорабатываю).
еще раз извините за "наезд". это способ привлечь внимание.
согласитесь - сработало.

Ельцов Андрей
28.02.2010, 15:39
скажите, пожалуйста, какой тип переменной вы пытаетесь записать?
вы можете скинуть лог обмена между панелью и контроллером?
вы пробовали записывать по 6й функции?

БДВ
28.02.2010, 17:35
Тип переменной word т.е. один регистр.
Собственно не получается не только записать, но и считать по функции 3.
Я так полагаю, что для получения лога мне нужно подключить к линии компьютер через преобразователь интерфейса и использовать какую-нибудь программу-снифер? Подскажите, пожалуйста, какую лучше. Я ими не разу не пользовался :)
Шестой функцией не пробовал. Попробую завтра. И поищу преобразователь.
Спасибо большое за совет. :)

Ельцов Андрей
01.03.2010, 10:54
Да, все правильно поняли. ПЛК-RS485-Панель к ним подключаете ПК через преобразователь.
Запускаете программу снифер (я пользуюсь portmon, в яндексе найдете) указываете в ее настройках какие порты хотите слушать.
После чего запускаете какую-нибудь программу, которая бы смогла открыть СОМ-порт и при этом ничего туа не посылать (например hyperterminal) указываете настройки интерфейса на которых у Вас идет обмен и смотрите лог в снифере. Он должен показать, что порт открыт и что там идет какой-то обмен. По логу будет проще разобраться.

БДВ
01.03.2010, 16:45
Здравствуйте, Андрей!
Сделал все как вы сказали.
Соединил ИП320 (слейв №2) и СП270 (слейв №1) с контроллером по RS-485.
К этой шине подключил преобразователь ICP CON i-7520, к нему со стороны RS-232 подключил ПК через кабель СОМ-USB. На компьютере запустил программу Hyper Terminal Personal Edition 7.0 и Portmon 3.02.
Все это включил. ИП320 посылки получает. СП270 нет.
Посылки делаю поочередно на слейв 1 и слейв 2 через секунду. Функция 6.
В ИП320 адрес регистра 114 (72h), в СП270 адрес регистра 314 (13Ah).
В качестве значения регистра посылается контрольная сумма посчитанная для предыдущей посылки.
Прикладываю архив с логом портмона и проектами ИП и СП.
Никакого криминала, кроме разве сбоев с ответами ИП320.
Где грабли?

Ельцов Андрей
02.03.2010, 09:12
у вас у сп адрес - 1.

БДВ
02.03.2010, 09:30
ну да, адрес 1. так задумано.
а что, это незаконно? :)
в логе хорошо видно как контроллер посылает на адрес 1 (для сп270) восемь байт, через секунду посылает на адрес 2 (для ип320) и тут же получает ответ. поэтому получается стока 16 байт.
ответа от сп нет.
если вы считаете, что адрес 1 это плохо, то я менял им адреса - не помогает.
крылов про музыкантов правду писал. :)

Ельцов Андрей
02.03.2010, 09:50
прошу прощения.
не правильно понял. запутался.
проверим.

Илья Кареткин
04.03.2010, 11:17
Здравствуйте.
Проверили панель слэйв, скорость 9600. Запись/ чтение регистра ( напоминаю адресация которого в режиме слэйв начинается с psw256!!!) - все работает.
Чтение 3 функция. Запись 6 или 10.

БДВ
04.03.2010, 13:18
Здравствуйте.
Если бы вы прочитали сообщения внимательно, то поняли бы меня правильно.
Повторюсь.
С адресами я все понял. Использую регистр 314(dec).
Есть работающая система: контроллер-ИП320.
Когда я подключаю вместо ИП320 панель СП270(с учетом смены регистров выше psw256) связь пропадает.
Написал тестовую программу для контроллера - она раз в секунду посылает запрос поочередно на ИП320(регистр 114) и СП270(регистр 314).
С ИП320 связь есть. С СП270 - нет.
Связывал между собой следующие устройства в разных комбинациях:
ПК, ПЛК, ИП320, СП270.
Связь есть во всех случаях кроме ПЛК-СП270!
Если у вас есть какие-нибудь соображения, буду рад их услышать.
У меня осталась только версия с расхождением частот приемо-передатчиков. Не знаю как проверить.