1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Маштабирование в RSview32

SCADA, серверы, АРМ верхнего уровня, диспетчерские
Ответить

Автор темы
kiselevmixail
здесь недавно
здесь недавно
Сообщения: 30
Зарегистрирован: 27 июл 2012, 15:27
Имя: Киселев Михаил Владимирович

Маштабирование в RSview32

Сообщение kiselevmixail »

Добрый день.
Помогите разобраться с вопросом.
Есть датчик давления диапазоном 0...40 кПа. При достижения давления 40 кПа от контроллера приходит сигнал 10000 ед. (100%) Что соответствует 4 метрам водяного столба.
Датчик установлен в 2-х метровую емкость, как подобрать масштаб, что бы уровень в 2 метра (20кПа) соответствовал 10000 ед. (100%). Измерения идут в процентах.

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Re: Маштабирование в RSview32

Сообщение Ryzhij »

Давайте не будем путать зелёное с квадратным, хорошо?
Что мы хотим?
Вариант 1.
Чтобы контроллер выдавал нам 10000 единиц (100%) на уровне 2 метра? Тогда при чём тут RSView32?
Перенастройте шкалу датчика или возьмите другой датчик.
Можно и в контроллере шкалу изменить, оставив датчик с прежней шкалой, но тогда мы теряем в точности ровно в два раза.

Вариант 2.
Датчик и контроллер мы по каким-либо причинам не трогаем, но на экране компьютера жаждем увидеть 100% шкалы при 50% показаниях датчика ( 5000 ед. с контроллера). На снижение точности мы согласны.
Тогда в базе данных тэгов RSView32 в свойствах Вашего тега выставляете:
Minimum (Минимальное значение) "0" (как видимо и было);
Maximum (Минимальное значение) "10000" (как видимо и было);
Scale (Множитель) "0.02" (вместо "0.01");
Offset (Смещение) "0" (если у Вас "0" датчика соответствует 0% уровня)
Units (Единицы измерения) "%" (ну, раз уж Вы пишите, что измерения у Вас идут в процентах)
По окончании заполнения полей не забудьте нажать на кнопки Prev/Accept или Next/Discard,чтобы свойства тега прописались в базу.
[+] Из мануала
При вводе информации кнопки Prev (предыдущий) и Next (следующий) превращаются в кнопки Accept и Discard. Выберите Accept для сохранения тега и информации по сигналам тревоги. Выберите Discard для отмены изменений тега.
[+] Из мануала
Масштабирование и смещение модифицируют «исходные данные», поступающие от программируемого контроллера и направляемые в него, перед их сохранением в таблице значений. Также масштабирование и смещение модифицируют значение, заданное в RSView32, перед его записью в программируемый контроллер. Масштаб представляет собой множитель – значение из PLC умножается на масштаб. Смещение является фиксированной величиной – после того как значение из PLC умножается на масштаб, к нему добавляется величина смещения. Данная формула показывает взаимосвязь между значением PLC и итоговым значением, который сохраняется в таблице значений RSView32:
RSView32 value = (PLC value * scale) + offset
Вариант 3.
Базу данных тегов тоже не трогаем, но на экранах проекта во всех объектах отображения для нашего тега вместо его значения вставляем выражение с умножением на 2.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)

Автор темы
kiselevmixail
здесь недавно
здесь недавно
Сообщения: 30
Зарегистрирован: 27 июл 2012, 15:27
Имя: Киселев Михаил Владимирович

Re: Маштабирование в RSview32

Сообщение kiselevmixail »

Спасибо большое что откликнулись Вячеслав. Извините если не достаточно точно описываю суть вопроса, человек я в этом новый.
Мне подходит второй вариант. У меня нет ни возможности залезть в ПО контроллера, ни знаний что бы это сделать.
Не могли бы Вы привести формулы для расчета множителя. Просто мне еще необходимо (аналогично), что бы при датчике 30кПа, значение 100% наступало при высоте столба жидкости 2,4 метра. Как это рассчитать?

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Re: Маштабирование в RSview32

Сообщение Ryzhij »

Для рассчёта прежде всего нам понадобиться плотность жидкости р [kg/m^3], высоту столба которой H [m] мы собираемся измерять.
Затем, вычисляем значение давления P [kPa], которое будет оказывать интересующий нас столб жидкости.
P=H*p*g ; где g=9.8 [m/c^2] ускорение свободного падения на планете Земля (часто округляют до 10, как в предыдущем случае)

Допустим, мы имеем дело с водой, у которой плотность p=1000 [kg/m^3], тогда давление столба воды высотой 2,4 метра составит:
P= 2,4*1000*9,8 = 23520 [Pa] = 23,52 [kPa]
Что составляет [(23,52-0)/30]*100% = 78,4% от шкалы датчика 0-30 kPa (при условии, что нулевые показания датчика соответствуют нулевому давлению)

Теперь архитрудная задача: "Надо определить, а на какой такой коэффициент K надо умножить 78,4%, чтобы получилось 100%?"

Немного поскрипев мозгами приходим к выводу, что K= 100/78,4 = 1,2755

Используя эту методику Вы можете уточнить множитель в предыдущем случае, приняв более точно ускорение свободного падения g=9.8 [m/c^2], а не 10.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)

Автор темы
kiselevmixail
здесь недавно
здесь недавно
Сообщения: 30
Зарегистрирован: 27 июл 2012, 15:27
Имя: Киселев Михаил Владимирович

Re: Маштабирование в RSview32

Сообщение kiselevmixail »

Я так себе это представляю:
30 кПа - 10000 ед. - 3 м.вод.ст. (беру g=10)
2,4 м.вод.ст. - 8000 ед.
множитель=100/8000=0,0125
таким образом при:
Minimum "0";
Maximum "100";
Scale"0.0125";
Offset "0";
Units "%"
получаю что при уровне жидкости 2,4 метра показания в RSview будут соответствовать 100%
Верно ли я посчитал?

Автор темы
kiselevmixail
здесь недавно
здесь недавно
Сообщения: 30
Зарегистрирован: 27 июл 2012, 15:27
Имя: Киселев Михаил Владимирович

Re: Маштабирование в RSview32

Сообщение kiselevmixail »

Ryzhij писал(а):
Немного поскрипев мозгами приходим к выводу, что K= 100/78,4 = 1,2755
Имеется ввиду что Scale 0.012755 (в моем случае 0,0125)?

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Re: Маштабирование в RSview32

Сообщение Ryzhij »

С коффициентом для получения внутри RSView32 значений тэга от 0 до 100 процентов всё, пожалуй, верно.
Если Вы планируете использовать линейный индикатор в процентах, то пределы значений тэга выбраны верно.
Имеется ввиду что Scale 0.012755 (в моем случае 0,0125)?
Если Вы и 10000ед к 100% приводите заодно, то да, конечно.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)

Автор темы
kiselevmixail
здесь недавно
здесь недавно
Сообщения: 30
Зарегистрирован: 27 июл 2012, 15:27
Имя: Киселев Михаил Владимирович

Re: Маштабирование в RSview32

Сообщение kiselevmixail »

Все в принципе понятно, но обращу внимание на параметр maximum. Вы писали в первом сообщении
Ryzhij писал(а): ...
Maximum (Минимальное значение) "10000" (как видимо и было);
...
Units (Единицы измерения) "%" (ну, раз уж Вы пишите, что измерения у Вас идут в процентах)
А у меня же 100 %. Верно ли у меня?

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Re: Маштабирование в RSview32

Сообщение Ryzhij »

Вопрос лишь в том, что Вы будете делать со значениями тэга. Если индицировать как число, разницы нет. Если тэг и читается из ПЛК, и пишется в контроллер, то лучше указать полный диапазон 10000.
Если Вы используете значение тэга в бар-графах, в трендах, в анимированных шкалах, то удобнее указать верхний предел 100%.
[+] Из мануала
Минимум и максимум
Введите минимальное и максимальное значения, которые могут записываться в программируемый контроллер или сервер. Эти значения не влияют на то, что считывается из программируемого контроллера или сервера. Например, если вы зададите в качестве минимума 0, а максимума 100, RSView32 сможет считать значение 200 из PLC и сохранить это значение в таблице, но не сможет записать это значение в PLC.
Разность между минимальным и максимальным значением не должна превышать максимальной величины с плавающей точкой (3.402823466E38).
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)

Автор темы
kiselevmixail
здесь недавно
здесь недавно
Сообщения: 30
Зарегистрирован: 27 июл 2012, 15:27
Имя: Киселев Михаил Владимирович

Re: Маштабирование в RSview32

Сообщение kiselevmixail »

Теперь стало совсем ясно! Спасибо огромное за помощь! =)
Ответить

Вернуться в «Верхний уровень автоматизации (отображение)»