Стартовая страница › Форумы › Разработка и интеграция › Клиент для работы со скадой
- В этой теме 2 ответа, 3 участника, последнее обновление 7 лет назад сделано Vyacheslav.
-
АвторСообщения
-
24.03.2017 в 15:08 #4899djbond07Участник
Добрый день! В статье про интеграцию со скадой (http://rapidscada.ru/integration-with-rapid-scada/) во 2-м способе получения данных в начале кода написано.
using Scada.Client;
Как я понял, это какой-то класс, созданный для интеграции скады в другие программы (могу грубо ошибаться в терминах, но не суть)
В общем, есть ли подобные клиенты на python или rubby? Либо есть ли информация как его использовать в связке с этими языками? Извините за размытый вопрос, пока только начинаю вникать в эту сферу.24.03.2017 в 20:07 #4901MikhailМодераторДобрый день!
using Scada.Client; — это пространство имен с полезными классами. Оно сейчас переименовано. Все эти классы находятся в ScadaData.dll, их можно изучить на GitHub.Реализаций на python или rubby нет. Как уже говорили ранее, для Вас удобнее всего будет REST API и JavaScript интеграция.
24.03.2017 в 20:33 #4905VyacheslavУчастникЕсли текущий этап только начальный, то я бы например не стал погружаться в указанные вами языки.
На мой взгляд было бы неплохо начать с C#. Изучить текущую архитектуру RapidScada. Получить опыт в написании простейшего клиента. Разобраться с базовыми адаптерами из библиотеки ScadaData
Изучение адаптеров позволит сформировать понимание внутреннего представления текущего среза, и архивных срезов а также других объектов на базе которых формируются пакеты для взаимодействия по сети.После этого периода, я думаю пройдет не мало времени все зависит от текущего опыта работы с С#, можно приступать в зависимости от задач к поиску альтернативных способов взаимодействия.
В качестве базовой основы вам необходимо разобраться с концепцией программирования клиент серверной архитектуры. Разобраться с понятием сокетов. написать простейшего TCP клиента.
После того как это будет понятно. Необходимо изучить используя исходный код проекта в части протокола взаимодействия с RapidScada. Понять структуру пакетов, расположение необходимых заголовков. По исходному коду разобраться в какой последовательности отправлять запросы и разобрать полученные ответы.
Как этот этап будет пройден. Можно приступать к поиску аналогичных объектов взаимодействия в других языках программирования.
Например для реализации задач взаимодействия с RapidScada я бы использовал следующие яыки: С/С++,Go,JavaScript+node.js,Lua . Думаю, что это самый оптимальный набор для написания сторонних клиентов. Ну и на указанных языках тоже можно написать клиента.
Наверно было бы проще если бы архитектура RapidScada была в виде графической схемы с описанием структуры всех пакетов для взаимодействия и хранения данных.
Но опять же при определенном опыте можно разобраться в этом самостоятельно по исходному коду. Ключевые исходные файлы документированы достаточно подробно. -
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.