Массивы, коммуникатор, названия каналов.

Стартовая страница Форумы Понять, как работает ПО Массивы, коммуникатор, названия каналов.

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

    Здравствуйте. Вопрос такой:
    Например, коммуникатор через OPC получает данные. В OPC создана подписка с одной строчкой Bool_array_1500, в настройках устройства коммуникатора стоит галочка массив, значение 1500.
    В каналах устройства создан один канал через мастер с указанной длиной данных 1500.
    Соответственно у нас получается массив каналов Bool_array_1500 с размером 1500 и названиями Bool_array_1500[0], Bool_array_1500[1] и т.д.
    Названия эти ни о чем не говорят, поэтому мы потом создаем каналы с кодами тега (Bool_array_1500[0], Bool_array_1500[1] и т.д.) для связи с устройством коммуникатора и называем каналы по человечески, например Канал_1_ток, Канал_2_напряжение, Канал_3_скорость и т.д.
    Проблема заключается в том, что для таблиц можно убрать галочку Автотекст, и в веб-интерфейсе будет отображаться название канала «Канал_1_ток» тега коммуникатора Bool_array_1500[0].
    А вот если построить график по этому тегу/каналу, то название все равно будет «Bool_array_1500[0]»?
    Это как-то можно победить?

    #35798
    manjey73
    Участник

    Вы в таблицу добавили все 1500 каналов для отображения?

    #35828
    Oleg
    Участник

    Да, я добавил устройство целиком в таблицу — и увидел, что отображение идет в виде Bool_array_1500[0], Bool_array_1500[1] …
    Потом в таблице каналов вместо канала Bool_array_1500 с длиной данных 1500 сделал несколько каналов Имя/Тег: Имя_1/Bool_array_1500[0], Имя_2/Bool_array_1500[1].
    В таблице убрал галочку «автотекст» и названия каналов в таблице стали отображаться как надо: Имя_1, Имя_2 …
    Но при открытии графика и в выборе каналов для отображения в графиках имена каналов те же: Bool_array_1500[0], Bool_array_1500[1] ..

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

    Добрый день!
    Скриншоты, иллюстрирующие написанное, помогут ответить на вопрос.

    #35860
    Oleg
    Участник

    Михаил, оформил скрины и описание в pdf:

    Скриншоты

    #35861
    manjey73
    Участник

    Так у вас стоит галочка Авто текст.
    Удалите, и пропишите другое имя.

    Единственное, там надо перейти на другую ячейку после смены имени, бывает «проскальзывает» применение параметра и смены имени.

    #35862
    manjey73
    Участник

    ааа. потому что имя канала на самом деле так и осталось именем массива…
    Похоже тут надо делать дубли и уже называть как вам надо.

    Графики не берут имена из таблиц представлений похоже.

    #35863
    Oleg
    Участник

    Похоже тут надо делать дубли и уже называть как вам надо.

    Просто это лишняя работа и лишняя нагрузка на сервер, копировать значения входных каналов в рассчетные. Если их 50 — ладно, а если 5000…

    Графики не берут имена из таблиц представлений похоже.

    В этом и проблема

    Я пробовал задать код тега в качестве привязки к данным коммуникатора вместо Real_array_4 и длины данных = 4 использовать каналы с тегами Real_array_4[0], Real_array_4[1], … и длиной данных 1. Тогда теряется привязка у коммуникатора.

    #35864
    manjey73
    Участник

    Это уже не первая доработка, которая просится в Графиках Про точно.
    Раз Таблицы научили подставлять свои мена в каналах, то Графики должны брать из таблиц эти имена.
    Имхо. Но это скорее всего в список задач Разработчику 😀

    Причем как-то это разруливать даже для мнемосхем.

    • Этот ответ был изменен 1 неделя, 4 дня назад от manjey73.
    #35880
    Mikhail
    Модератор

    Канал 210000 имеет длину 4, поэтому каналы 210001…210003 игнорируются Сервером. То есть их нет в базе практически.

    #35885
    Oleg
    Участник

    Канал 210000 имеет длину 4, поэтому каналы 210001…210003 игнорируются Сервером. То есть их нет в базе практически.

    Это уже ясно конечно, только получается, что если мы по OPC получаем массив, но свои имена каналам массива не дать для графиков? Только если создавать дублирующие каналы типа расчётный с копией значений оригинальных каналов?

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

    Имя канала 210000 общее для элементов массива.

    #35910
    Oleg
    Участник

    Михаил, здравствуйте.
    Как можно дать другие имена для отдельных элементов массива для отображения/подписи на Графикам Про?
    В Таблицах можно дать любое название канала для отображения на веб странице.

    #35911
    manjey73
    Участник

    Ну вероятно никак. Графики Про ведь не знают (хотя почему не знают, что его открывают из таблицы?).
    Ну смысл вы поняли — Графики получают номер канала и должны его вывести. А откуда, с таблицы, с мнемосхемы их видимо мало волнует.

    Интересный у вас набор данных, массив из 1500 булевых переменных 🙂

    #35916
    Oleg
    Участник

    Да, получается пока никак. Может в новых версиях появится возможность..
    Ну ничего, все равно OPC оптимизирует связь, и если в подписку добавить не массив в 1500 единиц, а 1500 переменных — сервер OPC все равно получает массив. Важно, чтобы адреса в PLC шли подряд.

    Там не только булевые, но и 500 INT, 500 DINT, 500 REAL (большая часть резерв).

    1500 это с запасом (из них 1200 это ошибки с HMI). Можно конечно читать с OPC не побитно, а 4х8 (DWORD) сразу, но тогда в SCADA нужно формулами биты выделять. Особо нет разницы.

    • Этот ответ был изменен 6 дней, 16 часов назад от Oleg.
Просмотр 15 сообщений - с 1 по 15 (из 17 всего)
  • Вы должны авторизироваться для ответа в этой теме.