Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Теория и практика автоматизации
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

OPC через GPRS, скорость работы

 Ответить Ответить Страница  12>
Автор
Сообщение
vladi33 Смотреть выпадающим
Участник
Участник


Присоединился: 13 Май 2005
Online Status: Offline
Публикации: 61
Свойства публикации Свойства публикации   Ответить, цитируя автора - vladi33 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: OPC через GPRS, скорость работы
    Опубликовано: 20 Январь 2011 10:08

Здравтвуйте. Есть задача передавать данные с удаленных контроллеров по GPRS. Контроллеры ADAM-5510/TCP -> Router ER75 -> Modbus OPC Server. В контроллере написал простую программу на BC++, с библиотекой Modbus OPC сервера. Текущие данные передаются по ModbusTCP, при разрыве GPRS соединения связь автоматически восстанавливается- это работает, но медленно.

  Вопрос заключается в том, что т.к. ping роутера достигает 3х секунд и более, OPC сервер опрашивает регистры контроллера с интервалом на много превосходящим скорость изменения сигналов на входе, т.е. если сработал дискретный датчик на входе контроллера кратковременно, допустим на 2 секунды, то это изменение сигнала с большой вероятностью будет потеряно. И это без учета того что GPRS-соединение периодически пропадает.

Может быть организовать передачу только OPC-HDA и забирать только архивы из контроллера, тогда данные теряться не будут, но теряется оперативность доступа к данным.

Или задачу таким образом вообще решать идеалогически не верно и т.к. ModBus не допускает инициирование передачи сервером события. Какие могут быть варианты?

Наверх
MuadDib Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 27 Июль 2006
Online Status: Offline
Публикации: 304
Свойства публикации Свойства публикации   Ответить, цитируя автора - MuadDib Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Январь 2011 11:15
Тема сообщения сформулирована некорректно. Через GPRS у вас идет обмен не по OPC, а по Modbus TCP.
Идея с OPC HDA и архивами на контроллере чисто теоретически осуществима, но для этого вам понадобится OPC HDA сервер собственной разработки, который будет обмениваться архивными данными с вашим контроллером, по вашему же протоколу. Обычные OPC HDA серверы, имеющиеся в продаже, получают _оперативные_ исходные данные (например, по OPC DA), складывают их в БД и уже из собственной БД выдают клиентам OPC HDA данные. Если задействовать в вашем случае такой OPC HDA, никакого выигрыша не будет.
Исключения из такой схемы - связки "прибор со встроенной архивацией" - "OPC DA/HDA  сервер", предлагаемые некоторыми производителями оборудования а-ля вычислители потребления энергоресурсов. Такой софт заточен под конкретный прибор конкретного производителя и вам не подойдет.
Возможный вариант в вашем случае - передавать по интерфейсу не сигналы с датчиков непосредственно, а некий набор событий либо состояний. Например, срабатывание датчика на 2 секунды вызывает установку определенного бита в регистре Modbus в единицу. Сброс бита после обработки события системой верхнего уровня.
И кстати Modbus действительно не допускает инициирование передачи сервером. Однако никто вас не заставляет делать Modbus-сервером именно контроллер... Из-за багофич используемого ПО мне в свое время приходилось делать контроллер мастером (т.е. клиентом) обмена по последовательному интерфейсу. Значения переменных передавались на слейв (СКАДА) посылками на запись новых значений. Система получилась кривая, однако выбора тогда не было :S
Теория - это когда все знаешь, но ничего не работает.
Практика - это когда все работает, но никто не знает как.
Наверх
vladi33 Смотреть выпадающим
Участник
Участник


Присоединился: 13 Май 2005
Online Status: Offline
Публикации: 61
Свойства публикации Свойства публикации   Ответить, цитируя автора - vladi33 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Январь 2011 11:42

"Система получилась кривая, однако выбора тогда не было" - а сейчас есть выбор? Просто возникает простой вопрос, а как же на самом деле работают контроллеры с поддержкой GPRS в реальном времени? Или про это умалчивается (что идет потеря событий), или только HDA, или свои собственные решения. Хочется сделать решение на основе открытых стандартных решений.

Может использовать подобное решение Moxa Active OPC Server - где контроллеры сами инициируют передачу данных.

Наверх
poison Смотреть выпадающим
Участник
Участник
Аватар

Присоединился: 02 Декабрь 2010
Online Status: Offline
Публикации: 68
Свойства публикации Свойства публикации   Ответить, цитируя автора - poison Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Январь 2011 12:37
Добрый день! Протокол ModBus вообще не поддерживает архивирование событий на момент отсутствие связи, он также не может инициализировать передачу от ведомого к ведущему этих событий. Для этих целей используются совсем другие протоколы обмена данных, например DNP3 или МЭК 61870-5-104
Наверх
vladi33 Смотреть выпадающим
Участник
Участник


Присоединился: 13 Май 2005
Online Status: Offline
Публикации: 61
Свойства публикации Свойства публикации   Ответить, цитируя автора - vladi33 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 21 Январь 2011 13:55
Если не ошибаюсь, сам по себе протокол не решает такие задачи как архивация и подъем событий на верхний уровень. Нужен какойто буфер событий с автоматической докачкой этой очереди и гарантированной достакой с подтверждением. Может быть есть готовые решения - как передавать данные в ОРС через GPRS без потерь? Иначе получается что все удаленные контроллеры через GPRS обладают низкой надежностью передачи данных (о чем не пишется).
Наверх
poison Смотреть выпадающим
Участник
Участник
Аватар

Присоединился: 02 Декабрь 2010
Online Status: Offline
Публикации: 68
Свойства публикации Свойства публикации   Ответить, цитируя автора - poison Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 21 Январь 2011 15:46
Если этот контроллер поддерживает GPRS подключение и только протокол ModBus TCP тогда вы правы вся эта затея не стоит ваших усилий, вам придется изобретать свой подуровень протокола ModBus.
Но допустим если контроллер поддерживает GPRS связь и протокол DNP3 (вместо ModBus) тогда в надежность доставки данных нет сомнения, т.к. DNP3 сам буферизирует все события (по настройке), присваивает метку времени каждому событию, и сам ждет, когда с ним свяжется мастер устройство чтобы все это ему передать или может сам инициализировать связь с мастером зависит все от настроек. Мастер в свою очередь подтверждает все принятое, только тогда ведомое устройство сбрасывает свой буфер или если подтверждения от мастера не поступила, ведомое устройство повторяет свою посылку к мастеру.
В вашем случае можно сделать так: Контроллер с TCP аппаратной реализацией DNP3 протокола -> GPRS-> OPC DNP3 ->база данных.
Хотелось бы узнать для каких целей понадобилась такая сложность с GPRS соединением?


Наверх
AlexM Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 11 Октябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 392
Свойства публикации Свойства публикации   Ответить, цитируя автора - AlexM Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 21 Январь 2011 19:22
Как вариант, "гонять" ModBus, через промежуточный ОРС шлюз, например SplitOPC :
http://www.prosoftsystems.ru/products/product.htm?pid=165 , который и предназначен для "плохих" каналов связи. Решение использование такой связки, в том числе и с другими ОРС серверами различных расходомеров газа использовано здесь : http://www.prosoftsystems.ru/products/product.htm?pid=168 , система работает в нескольких "регионгаз" , но насколько надежно и качественно сказать не могу - не юзал.
А еще у Матрикона есть интересные ОРС сервера : http://www.matrikonopc.com/drivers/telemetry-scada.aspx


PS. Не совсем правильно выразился вначале, ModBus не гоняется через SplitOPC,
ModBusOPCserver отдает данные SplitOPC, тот гонит их на верхний уровень, где в свою очередь то же стоит SplitOPC, который уже отдает данные либо СКАДЕ либо другому ОРСклиенту, либо гонит их еще дальше на другой узел, еще более верхнего уровня и т.д.

Наверх
vladi33 Смотреть выпадающим
Участник
Участник


Присоединился: 13 Май 2005
Online Status: Offline
Публикации: 61
Свойства публикации Свойства публикации   Ответить, цитируя автора - vladi33 Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 24 Январь 2011 20:58
Спасибо.
Хотелось бы узнать для каких целей понадобилась такая сложность с GPRS соединением?
Применение на объектах телемеханики, контроль температур, давления, открывания дверей, итп. Если DNP3 содержит буферизацию- есть ли тот же принцип в IEC 60870-5-104 (пока не нахожу в описании)? Рассматриваю вариант на контроллере ADAM5510M если удастся реализовать один из данных протоколов или найти соответствующие библиотеки. Еще есть вариант промПК с локальными OPC-серверами, логированием и доступом к логам по VPN. Или использовать аппаратный конвертор данных протоколв с буферизацией. В общем думаю каким путем идти, нужно массовое не дорогое решение.
  
Наверх
poison Смотреть выпадающим
Участник
Участник
Аватар

Присоединился: 02 Декабрь 2010
Online Status: Offline
Публикации: 68
Свойства публикации Свойства публикации   Ответить, цитируя автора - poison Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 25 Январь 2011 09:23
Могу посоветовать вот такой контроллер SCADAPack с аппаратной поддержкой протоколов DNP3 и IEC 104 но это, наверное, будет дорого. В нем точно поддерживается буферизация событий для 104 протокола (сам проверял). Ну а самым дешевым будет способ реализовать программным путем любой из протоколов DNP3 или 104 для контроллера ADAM 5510E/TCP, только есть проблема врятле вы найдете готовую библиотеку для ADAMA, придется делать самому, если решитесь могу только посоветовать реализуйте 104 протокол он вcеж проще чем DNP3 и документация есть на русском. Ну а насчет буферизации в 104, ее можно реализовать, если даже в стандарте не описано. Есть еще вариант сделать свей протокол с буферизацией но тогда и OPC придется своё программировать. Ну а насчет промПК с локальными OPC-серверами мне кажется выдет дороже чем контроллер SCADAPack и к этому прибавятся проблемы с надежностью всей системы.
Извините за ошибкиSmile
Наверх
murasik Смотреть выпадающим
Новичок
Новичок
Аватар

Присоединился: 02 Март 2011
Online Status: Offline
Публикации: 3
Свойства публикации Свойства публикации   Ответить, цитируя автора - murasik Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 02 Март 2011 19:08
     Могу поделиться своим решением.  Я использовал GSM контроллер TS-30M8 (модем с программой и  GPRS ОРС сервером).    GSM контроллер(модем) в связке с GPRS ОРС сервером дает возможность управлять входами/выходами удаленного устройства,  а также позволяет организовывать прозрачный канал передачи данных между СОМ портом GSM модема и виртуальным СОМ портом  компьютера на котором установлен GPRS ОРС сервер.
     Таким образом можно подключить любое устройство и опрашивать его стандартным  ОРС сервером или другой программой, используя виртуальный СОМ портThumbs Up.  Метод для самых ленивых(ничего не программировать).

    GSM модем выступает как повторитель порта и удаленное устройство ввода/вывода.

     Для работы GPRS ОРС сервера обязательно подключение к сети интернет и внешний статический IP-адрес. 

    Есть подобные устройства с резервированием канала и СИМ карты.
Наверх
 Ответить Ответить Страница  12>

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz