Копирование привязок каналов на мнемосхемах

Стартовая страница Форумы Новые идеи Копирование привязок каналов на мнемосхемах

В этой теме 19 ответов, 4 участника, последнее обновление Аватар manjey73 1 месяц назад.

Просмотр 15 сообщений - с 1 по 15 (из 20 всего)
  • Автор
    Сообщения
  • #12819
    Аватар
    manjey73
    Участник

    У меня такой вопрос, когда мнемосхемы идентичны, как сделать копию мнемосхемы с изменением номеров привязанных каналов ? Есть механизмы ?

    А то у меня тут вариант два по двести как в KFC, два комплекта мнемосхем абсолютно одинаковых по 200 объектов… Редактировать каждую копию ручками ?
    Копирование БД есть с указанием новых номеров каналов, а как с мнемосхемами дела обстоят ?

    з.ы. Михаил, можете скинуть на почту оценку подобной разработки ?

    #12823
    Аватар
    Kazam
    Участник

    была такая задача у меня. Клонировал 300 мнемосхем, могу скинуть проект на C#

    #12825
    Аватар
    manjey73
    Участник

    Скиньте пожалуйста. aburakhin@bk.ru
    А то чувствую без подобного будет просто жестоко все копировать….

    #12826
    Аватар
    Kazam
    Участник

    отправил )

    #12830
    Mikhail
    Mikhail
    Модератор

    У Вас схемы полностью одинаковые или после копирования со смещением номеров каналов потребуются дополнительные правки?

    #12854
    Аватар
    manjey73
    Участник

    Одинаковые.
    Вообще в тему Новых идей.
    1. Мнемосхема может состоять из уровня 0 — полностью одинаковая для всех. Подложка, статические и динамические тексты, кнопки переходов между подчиненными мнемосхемами
    2. Мнемосхема уровня 1, которая располагается сверху уровня 0, на которой кнопки, окна вывода каналов. Опять же, вся графическая часть одинаковая, только привязка к каналам разная
    3. собственно сами привязки к каналам, и только они меняются.

    Сейчас надо создать 200 сотни одинаковых мнемосхем — две сотни файлов.
    Почему не создать всего 3 файла ??
    1. уровень 0
    2. уровень 1
    3. файл описания каналов с привязками и идентификаторами внутри файла к какой конкретно мнемосхеме уровня 0 или 1 относятся записи ?

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

    Если новая мнемосхема совершенно другая, так же создаем Уровень 0, 1 и описание привязки каналов.
    И кстати если правки потребуются дополнительные, то можно сделать разделение — уровня изначально 1.1, 1.2, 1.3 и так далее.

    • Ответ изменён 1 месяц назад пользователем Аватар manjey73.
    #12856
    Аватар
    Romiros
    Участник

    Вообще для этого применяются текстовые имена тегов. Тогда для разных схем меняется только префикс тега и всё. Дальше они автоматически привязываются к другим каналам.

    #12857
    Аватар
    Romiros
    Участник

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

    #12858
    Аватар
    manjey73
    Участник

    Я бы сказал так, Схема, которая уже настроена, указывается как шаблон. Что-то типа кнопки создания каналов в Администраторе.
    Если схема не указана как шаблон, то при открытии диалога дать выбор какую схему использовать как шаблон. Настроенная схема связана с каким-то КП из какой-то dll.
    Создавая копию схемы так же связывать ее с новым КП, выставляя те же номера сигналов.
    Например в шаблонном КП сигнал 234 указан на схеме, на новой схеме этот же сигнал в БД имеет номер канала 328…

    Обычно то мнемосхемы привязаны к каналам какого-то конкретного КП. И если у нас все одинаково, и мы пользуемся созданием каналов либо дублированием в самом Администраторе со сменой КП то это ведь один прибор (тип КП то не меняется).

    Можно обойтись парой файлов вообще для целой пачки схем. Например в Мнемосхему уровня 0 вписывать все подчиненные схемы, а уровни 1.1 1.2 вынести в отдельные файлы, если там будут отличаться некоторые графические элементы. После того, как мы сделали дубль, уже в редакторе можно зайти и заменить какие-то отличия.

    #12859
    Аватар
    Romiros
    Участник

    КП может быть один и тот же для разных схем и содержать тысячи тегов, к нему привязываться нельзя.
    В промышленных скадах это все делается через текстовые имена, наверное можно ничего велосипедного не изобретать :).

    #12860
    Аватар
    manjey73
    Участник

    Разные схемы — значит у них разные Уровни 0. Как-то так. Речь идет о полном дублировании мнемосхемы с одного устройства на точно такое же устройство.
    То есть одна подложка и несколько полностью идентичных схем под «станок 1», «станок 2» и т.д.
    Если будет общая схема станков, где на нее вынесены важные параметры, то это априори уже другая мнемосхема, другой Уровень 0 и настраиваться уже будет по другому. И даже внутри нее может быть похожий механизм дублирования.

    • Ответ изменён 1 месяц назад пользователем Аватар manjey73.
    #12864
    Аватар
    Romiros
    Участник

    У Вас может быть один станок — одно КП, или один цех с кучей станков — одно КП. А у нас допустим все цеха — это одно КП. Поэтому разделять схемы по КП не получится, можно разве что по объекту. Вообще ситуации у всех разные, а метод должен быть универсальным, поэтому я думаю производители систем и пришли к текстовому наименованию тегов, как наиболее универсальному решению.

    #12871
    Аватар
    manjey73
    Участник

    Как могут быть все цеха с одним КП ? КП — Контролируемый ПРИБОР. То, на что мы кидаем в Коммуникаторе файлы шаблонов для чтения приборов. Modbus, Логика, Меркурий и т.д.
    Их же нельзя всунуть в один КП в принципе. Разные адреса, разный способ подключения, разные библиотеки драйверов и так далее и так далее.

    • Ответ изменён 1 месяц назад пользователем Аватар manjey73.
    #12874
    Аватар
    Romiros
    Участник

    Могут. Системы верхнего уровня работают с системами нижнего как с одним КП.

    #12877
    Аватар
    manjey73
    Участник

    А, ну в таком варианте нужен и другой подход. Не думаю, что там Уровень 0 будет прямо таки одинаковым в глобалиях. Можно использовать тот подход, какой есть в Scada по умолчанию.

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

Для ответа в этой теме необходимо авторизоваться.