MVTriton

Ответы в темах

Просмотр 15 сообщений - с 1 по 15 (из 17 всего)
  • Автор
    Записи
  • в ответ на: База конфигурации в PostgreSQL #38007
    MVTriton
    Участник

    Добрый день! Ищу подробные мануалы по связке (экспорт данных из RS в SQL) postgesql и rapid scada. Есть инструкция на сайте со связью с базой. С postgesql никогда до этого не работал, установил, все настройки по умолчанию. По инструкции на модуль экспорта настраиваю, вроде как связь есть, но данные не записываются, видимо что то в самой sql надо еще добавлять.
    Так же по ссылке есть скрип, вроде как для экспорта, но что с ним делать и куда его девать не понятно. В общем буду благодарен, если кто нить подскажет по шагам что и куда или скинет подробный мануал. Яндекс, ютуб и рутуб на эту тему особо ничего не предлагают.

    в ответ на: Интеграция Influx, Grafana #36436
    MVTriton
    Участник

    Понял, спасибо за ответ.

    в ответ на: Интеграция Influx, Grafana #36432
    MVTriton
    Участник

    Добрый день! Прочитал ветку, часть ответов на свои вопросы получил.
    п.1. Имеется RapidSCADA 5й версии, там же вертится Grafana версии 9.2.5, все работает уже наверное 3й год без сбоев, один раз сделал и с тех пор проблем нет. Там всего 6 аналоговых сигналов, Графана безусловно в плане визуализации и отчетов удобнее, на далее следует п.2
    п.2. Попытался сделать всё на последней 6й версии RapidSCADA. Данные собираются, все так же как и на 5й работает. Решил поставить так же Графану, выяснилось, что плагин Simple-JSON-DataBase уже не поддерживается и вместо него используется плагин Infinity. Попробовал Инфинити по мануалам с 5й версией, запустить, не заработало, с 6й тоже. Ну и в начале темы написано, что интеграции с 6й версией вроде как больше нет.

    Вопрос: Есть ли работающие связки RapidSCADA 6 + Grafana без заморочек. Если можно описать вкратце и где почитать. Из этой темы особо ничего не понял. Понял что либо Postgres или Influx. Если про первое что-то слышал, то про второе нет, т.к. преимущественно работаю с КИП и контроллерами и классическими SCADA системами, тут всё-таки немного из другой области.

    в ответ на: Выделить бит #29223
    MVTriton
    Участник

    С SetBit экспериментировал, но только с OPC. В 6й версии штатно не было формулы SetBit, дописывал в скрипты, согласно с формулам с форума и экспериментировал не по одной теме. Пока реализация управления выходами не требуется, всё-таки связь не стабильная, как будет приемлемое качество связи, можно будет поэкспериментировать. Главное данные принимаются и нормально рассчитываются и отображаются, это в приоритете.

    в ответ на: Выделить бит #29216
    MVTriton
    Участник

    float нормально принимались. Перестановка байт в данном случае не требовалось, т.к. в ПР200 настроено 012345678, так же и в скаде.
    В общем бился бился, переделал шаблон устройства с 1 на 0, теперь адресация соотвествует адресации ПР200, а не +1, удалил все старые каналы, переименовал их другим именем, перезапустил, всё заработало как надо. Данные принимаются по 512 регистру, нужный бит читается. Дальше видимо буду доделывать запись бита в числе, но у же не через OPC))))
    Всем кто откликнулся, спасибо за ответы!

    в ответ на: Выделить бит #29212
    MVTriton
    Участник

    Поколдовал с настройками GPRS модема, увеличил таймауты и время опроса устройства. Показания стали стабильнее, от OPC сервера отказался. Возник вопрос. По опросу.
    В ПР200 считываются данные 512 регистр. ОРС сервер прекрасно данные принимаются, выделял бит и оттуда и сразу было понятно состояние оборудование.
    Теперь при Modbus RTU в RAPID SCADA, значения с плавающей точкой читаются хорошо, а вот 512 никак, при том что по логам всё отлично, значение всё время приходит 0.
    В скаде опрашивается 512+1=513 регистр, тип данных ushort (16 бит, 2 байта, целочисленное), перестановка байт не используется. Где можно покапать ?

    Отправка (8): 0A 03 02 00 00 01 84 C9
    Приём (2/2): 0A 03
    Приём (5/5): 02 02 00 1C E5

    в ответ на: Выделить бит #29120
    MVTriton
    Участник

    <Извините, с OPC такое наверное не прокатит. Речь о драйвере Modbus

    Вообще использовать OPC при встроенных возможностях работы с Modbus напрямую это полное извращение>

    Насчёт того, что это костыли, я согласен, но с эти костылями работает стабильнее. Опрос стоял раз в 1с, что в скаде, что в ОРС. В итоге ОРС работает лучше при тех же настройках. Когда будет реальная связь в полевых устровиях, тогда и поэксперементирую с настроками. Пока только через ОРС, конечно же изначально пробовал modbus.

    в ответ на: Выделить бит #29112
    MVTriton
    Участник

    Попробовал сделать как я написал выше, в OPC сервере создал 4 переменных, ссылающиеся на регистр в ПР200. Каждая переменная берет бит с 0го по 3й.
    В скаде в шаблон добавил подписки, Создал входноую/выходную запись. Тип записи вкл/откл, формула выходная: SetVal(120, Cmd). Всё работает. Вкл. и отклюсчатся отределённый выход ПР200. Но все же хочется релиазовать череp SetBit. Подозреваю, что загвозка в типах данных.

    в ответ на: Выделить бит #29111
    MVTriton
    Участник

    <Команду дополнительно в шаблоне добавьте для 116-ого который так же будет писать значение в регистр, связанный со 115-м каналом и все по идее >

    Не совсем понял о каком шаблоне идёт речь? если о шаблоне настроек самого устройства как подписка на OPC, то тут есть 2 нюанса:
    OPC имеет возможность самостоятельно выделять бить нужного регистра, т.о. образом можно получить тег, его будет можно и читать и записывать. Честно этот вариант не пробовал.
    Цель использования возможностей скады, это сокращение количества тегов, из за плохой связи, а так же сокращение обращений между скадой и ОРС, т.к. есть некие предубеждения на счет скорости работы данной связки, поэтому их взаимодействие и тэгов хотелось бы уменьшить, и при этом оставить функционал без изменений.

    в ответ на: Выделить бит #29101
    MVTriton
    Участник

    Значение записывается в 115й, меняется, но не передаётся, а если руками записать в 115й не бит, а всё число, то данные передаются и всё работает.

    в ответ на: Выделить бит #29100
    MVTriton
    Участник

    Так как тогда передать данные бита в 115й канал. У меня 116й ссылается на 115й, а 115й имеет связь с прибором. Цепочка такова. Да в и большинстве тем, именно так строится связь по передаче данных в прибор. 116й дорасчетный, берёт значение 115го, считывает его, дальше выходная команда, для записи значения в 115й канал.

    в ответ на: Выделить бит #29094
    MVTriton
    Участник

    При изменении формулы SetBit
    public double SetBit(double n, int index, double value)
    {
    long nn = Convert.ToInt64(n);
    return value > 0 ? nn | (1 << index) : nn & ~(1 << index);
    }
    Попробуйте так. Задавайте в команде 0 или 1
    Сообщение #19585
    Scada вообще перестаёт запускаться. Кстати в 6й версии формулы SetBit не было, её добавлял вручную. GetBit была.

    • Ответ изменён 3 года, 2 месяца назад пользователем MVTriton.
    в ответ на: Выделить бит #29093
    MVTriton
    Участник

    Добры день! С 5й версией так ничего и не получилось. Продолжил тестировать на 6й версии, но немного на другом оборудовании.
    Вкратце обрисую ситуацию. Есть ПР200 в скаду передает число типа Int — 10 бит, это маска выходов ПР200 8DI+2Светодиода. ПР200 связывается сервером по RS485 — GPRS модем.
    Если описать подключать на прямую как протокол модбас, то связь со скадой и ПР200 есть, но очень много потерь и ошибка CRC, связываю это с плохим сигналом GPRS. Решил попробовать все сделать тоже самое через OPC сервер InSat ModbusOPC. Работает, связь более стабильная, но потери так же есть, задержка по сигналам есть, но работает, данные считываются. Это была предыстория использования OPC, а не напрямую Modbus из Скады.
    Так вот Маску выходов я считываю. Например, что бы включить все выходы надо оправить число 1023, что бы отключить 0, число от 0 до 1023 это уже комбинация отдельных выходов.
    Что бы управлять конкретным выходом надо соответственно записать бит в нужной позиции числа.
    Создан 115й канал типа Входной/Выходной, где читается маска выходов, тут же можно и записать значение, реле переключаются.
    Что бы записать 0й бит в 115й канал, создал 116 дорасчетный канал типа Расчётный/Выходной,
    Входная формула GetBit(Val(115), 0)
    Выходная формула SetVal(115, SetBit(Val(115), 0, Convert.ToBoolean(Cmd))) Тип команды Включит/Отключить

    В скриптах забита формула SetBit
    public double SetBit(double n, int index, bool value)
    {
    long nn = Convert.ToInt64(n);
    return value ? nn | (1 << index) : nn & ~(1 << index);
    }

    В общем при выполнении команды для 116 переменной, значение и 116й и 115й меняется как нужно, только значение это на ПР200 не передается, т.е. значение меняется, но будто не передается во вне, а просто меняется 115я переменная внутри самой скады, а вот если перезаписать саму 115ю переменную, то значение отправляется на ПР200 и реле переключается. В чем может быть проблема? перечитал всю тему https://forum.rapidscada.ru/?topic=%D0%BF%D0%BE%D0%BC%D0%BE%D0%B3%D0%B8%D1%82%D0%B5-%D1%80%D0%B0%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D1%82%D1%8C%D1%81%D1%8F-%D1%81-%D0%BA%D0%BE%D0%BD%D1%82%D1%80%D0%BE%D0%BB%D0%BB%D0%B5%D1%80%D0%BE%D0%BC-beck

    Попробовал разные вариации, результат тот же.

    в ответ на: Web клиент #28562
    MVTriton
    Участник

    Я всем доволен. Поделился своим опытом установки. Возможно кому то пригодится. Порт не менял специально. Насколько я помню с 5.8 таких проблем не было. Визуально поменялся интерфейс, некоторые вкладки исчезли, на русском языке поменялось название некоторых параметров, на английском не смотрел. В 5.8 вкладка интерфейс, в 6й версии — представление. Функционал тот же.

    в ответ на: Web клиент #28557
    MVTriton
    Участник

    Столкнулся с подобной проблемой. До этого была версия 5.8 и если посмотреть в настройках IIS был один сайт по умолчанию с портом 80. На роутере прописал правило Внеш_IP:XXXXX — >>> ВнутрIP:80. Всё прекрасно работало.

    Поставил версию 6. Сделал всё аналогично, но уже предположил, что с первого раза не запустится, так и получилось. В настройках IIS уже 2 сайта. Один по умолчанию :80, второй это скада с :10008. Локально всё работает, а вот из вне ну никак, хотя правило уже было Внеш_IP:XXXXX — >>> ВнутрIP:10008.

    В итоге, зашёл в настройки -> безопасность windows -> браундмаур и безопасность сети -> Дополнительные параметры. Далее создается правило для входящих подключений, порт TCP, номер порта 10008, профиль для Всех (частный доменный и т.д.), Имя RapidScada. Сохраняется и Вуаля. Есть доступ из вне.

Просмотр 15 сообщений - с 1 по 15 (из 17 всего)