PDA

Просмотр полной версии : ТРМ 202 и ПЛК 160, обмен данными через RS-485



s3rjke
13.09.2012, 08:54
Добрый день. Заранее извиняюсь за очень тупые вопросы, но вожусь уже полдня, а разобраться всё не получается.

Имеется оборудование: Овен ПЛК-160; Измеритель-регулятор ТРМ 202. К ТРМ 202 подключен пока один температурный датчик (какой-то из ДТС035, скорее всего, главное, что температуру кажет исправно). ТРМ 202 подключен к ПЛК 160 через RS-485 по витой паре, длина провода в пределах метра-двух.

На данный момент стоит задача снять показания температуры с ТРМ 202 при помощи ПЛК 160. Скачал с сайта пример проекта в codesys 2.3, вот отсюда ("http://www.owen.ru/catalog) (файл называется "Пример опроса ТРМ202 по протоколу OWEN (Target 2.10)").

Открыв скачанный пример в codesys, увидел, что некоего кода он не содержит. Но там зато была конфигурация прибора (Ресурсы -> Конфигурация ПЛК), которую я и взял за основу (конкретно -- раздел Owen (Master) [VAR]) и сделал точно такую же в своем пробном проекте.

Собсно, всё. Пробую подключиться к ПЛК, чтобы хотя бы значения переменных посмотреть в разделе Ресурсы -> Конфигурация ПЛК, чтобы убедиться, что что-либо приходит. Все переменные по нулям, кроме Last error = 81; Last hash = 47327; Last address = 128.

При этом светодиод с подписью RS, находящийся на передней панели ТРМ 202, не горит, не мигает, словом, никак себя не проявляет.

В ТРМ 202 настройки связи следующие:
Протокол обмена -- OWEN;
Скорость обмена -- 115.2;
Номер прибора в сети -- 16;
Длина сетевого адреса -- 8 бит;
Задержка ответа от прибора по RS -- 20 мс.

Собсно, куда рыть, что не так, где я ошибся? Файл со своим мега-проектом прилагаю.

Gans
13.09.2012, 11:10
Здравтсвуйте, s3rjke.


В ТРМ 202 настройки связи следующие:
Протокол обмена -- OWEN;
Скорость обмена -- 115.2;
Номер прибора в сети -- 16;
Длина сетевого адреса -- 8 бит;
Задержка ответа от прибора по RS -- 20 мс.

Собсно, куда рыть, что не так, где я ошибся? Файл со своим мега-проектом прилагаю.
1. Глянул выложенный Вами проект и не нашел проблемы, но есть мнение, что "Задержка ответа от прибора по RS -- 20 мс." это очень много поставте 2 мс.
2. Проверте монтаж.
3. Попробуйте подключится к ТРМ202 с компа по RS485.
4. Чуть не забыл пока что удалите запись уставки из ПЛК-конфигурации.
Проблема и прояснится :-)

P. S. По окончанию работ не забудьте лишние библиотеки удалить из проекта.

s3rjke
13.09.2012, 13:01
1. Глянул выложенный Вами проект и не нашел проблемы, но есть мнение, что "Задержка ответа от прибора по RS -- 20 мс." это очень много поставте 2 мс.
2. Проверте монтаж.
3. Попробуйте подключится к ТРМ202 с компа по RS485.
4. Чуть не забыл пока что удалите запись уставки из ПЛК-конфигурации.
Проблема и прояснится :-)

P. S. По окончанию работ не забудьте лишние библиотеки удалить из проекта.

Спасибо большое за помощь! Сперва выполнил все рекомендации из пунктов 1 и 4, как наиболее быстрые. Это не помогло. После чего плюнул и заменил имеющийся провод на другой, более короткий, тщательно контролируя подключение.

И все заработало! Успешно подключил второй датчик, теперь снимаю показания с обоих.

Понимаю, что ошибка глупая -- плохое соединение приборов, но, с другой стороны, вы посмотрели мои настройки и нашли их удовлетворительными. Учитывая то, что промышленный контроллер впервые увидел и потрогал неделю назад, такая проверка получилась хорошим подспорьем, еще раз спасибо!

s3rjke
17.09.2012, 13:25
Вот еще один вопрос возник, принципиального характера. В качестве контроллера опять же Овен ПЛК160.
У меня получается работать через RS-485 с ТРМ202 по протоколу OWEN. Помимо этого, получается работать через RS-485 с панелью СП270 по протоколу Modbus (панель идет мастером, контроллер ПЛК160 слэйвом).

Получится ли объединить эти три устройства в сеть на RS-485, при условии, что ПЛК160 работает с ТРМ202 по протоколу OWEN, а с СП270 по протоколу Modbus? Т.е. ПЛК160 забирает данные с ТРМ202 и отдает на панель. А протоколы между трм-плк и плк-панель при этом разные.

В принципе, это возможно? Или надо единый протокол соблюдать для всех устройств одной сети?

capzap
17.09.2012, 13:38
Вот еще один вопрос возник, принципиального характера. В качестве контроллера опять же Овен ПЛК160.
У меня получается работать через RS-485 с ТРМ202 по протоколу OWEN. Помимо этого, получается работать через RS-485 с панелью СП270 по протоколу Modbus (панель идет мастером, контроллер ПЛК160 слэйвом).

Получится ли объединить эти три устройства в сеть на RS-485, при условии, что ПЛК160 работает с ТРМ202 по протоколу OWEN, а с СП270 по протоколу Modbus? Т.е. ПЛК160 забирает данные с ТРМ202 и отдает на панель. А протоколы между трм-плк и плк-панель при этом разные.

В принципе, это возможно? Или надо единый протокол соблюдать для всех устройств одной сети?

лучше соблюдайте единый протокол, но не забывайте что сетевые настройки 202 несколько отличаются на модбасе от установок "по умолчанию"

s3rjke
18.09.2012, 14:23
Добрый день. В общем, имеются в наличии следующие устройства фирмы Овен: ПЛК160, ТРМ202, СП270. Устройства включены в сеть на RS-485. Между ПЛК160 и ТРМ202 идет обмен по протоколу OWEN (ПЛК160 -- мастер, ТРМ202 -- слэйв). Между ПЛК160 и СП270 идет обмен по протоколу modbus (ПЛК160 -- мастер, СП270 -- слэйв).

Через masterscada реализовано задание уставки на ТРМ202, переключение в режим ручного управления, управление реле. Ну и мониторинг показаний температуры.

Стоит задача реализовать что-то подобное и на панели СП270.

Благодаря этому (http://www.owen.ru/uploads/sp270_slave_-plc_master_.rar) примеру, в тестовом проекте удалось передавать значения с панели СП270 на контроллер ПЛК160 и обратно.

После чего в "рабочем" проекте были использованы аналогичные настройки из тестового проекта. В результате чего, успешно удается передавать данные с ТРМ202 на СП270 через ПЛК160. Однако, почему-то, не удается передать какое-либо значение с СП270 на ПЛК160.

Если же использовать тестовый проект (в котором есть ровно те же переменные, берущие данные из ровно тех же регистров, что и на "рабочем"), то в нем прекрасно работает чтение значений с панели СП270. При этом конфигурация панели в обоих случаях не меняется. Меняются только проекты codesys (с тестового на "рабочий"). При этом переменные и их привязки к регистрам в тестовом и "рабочем" проектах, повторюсь, одинаковые.

Кто-нибудь может разъяснить, почему так и как это исправить?

Оба проекта прилагаю.

s3rjke
19.09.2012, 11:40
Вопрос можно считать снятым -- переделал на modbus RTU и панель, и ТРМку.