Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

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

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

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

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

Сообщение kiselevmixail » 30 июл 2012, 09:41

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


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2555
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 41 раз
Поблагодарили: 70 раз

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

Сообщение Ryzhij » 30 июл 2012, 11:31

Давайте не будем путать зелёное с квадратным, хорошо?
Что мы хотим?
Вариант 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,чтобы свойства тега прописались в базу.
[spoiler=Из мануала]При вводе информации кнопки Prev (предыдущий) и Next (следующий) превращаются в кнопки Accept и Discard. Выберите Accept для сохранения тега и информации по сигналам тревоги. Выберите Discard для отмены изменений тега.[/spoiler]
[spoiler=Из мануала]Масштабирование и смещение модифицируют «исходные данные», поступающие от программируемого контроллера и направляемые в него, перед их сохранением в таблице значений. Также масштабирование и смещение модифицируют значение, заданное в RSView32, перед его записью в программируемый контроллер. Масштаб представляет собой множитель – значение из PLC умножается на масштаб. Смещение является фиксированной величиной – после того как значение из PLC умножается на масштаб, к нему добавляется величина смещения. Данная формула показывает взаимосвязь между значением PLC и итоговым значением, который сохраняется в таблице значений RSView32:
RSView32 value = (PLC value * scale) + offset[/spoiler]

Вариант 3.
Базу данных тегов тоже не трогаем, но на экранах проекта во всех объектах отображения для нашего тега вместо его значения вставляем выражение с умножением на 2.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


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

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

Сообщение kiselevmixail » 30 июл 2012, 12:24

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


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2555
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 41 раз
Поблагодарили: 70 раз

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

Сообщение Ryzhij » 30 июл 2012, 14:29

Для рассчёта прежде всего нам понадобиться плотность жидкости р [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, 14:27
Ф.И.О.: Киселев Михаил Владимирович

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

Сообщение kiselevmixail » 30 июл 2012, 14:38

Я так себе это представляю:
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, 14:27
Ф.И.О.: Киселев Михаил Владимирович

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

Сообщение kiselevmixail » 30 июл 2012, 14:40

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



Имеется ввиду что Scale 0.012755 (в моем случае 0,0125)?


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2555
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 41 раз
Поблагодарили: 70 раз

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

Сообщение Ryzhij » 30 июл 2012, 14:55

С коффициентом для получения внутри RSView32 значений тэга от 0 до 100 процентов всё, пожалуй, верно.
Если Вы планируете использовать линейный индикатор в процентах, то пределы значений тэга выбраны верно.

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


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

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

Сообщение kiselevmixail » 30 июл 2012, 15:02

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

А у меня же 100 %. Верно ли у меня?


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2555
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 41 раз
Поблагодарили: 70 раз

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

Сообщение Ryzhij » 30 июл 2012, 15:10

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


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

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

Сообщение kiselevmixail » 30 июл 2012, 15:54

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


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



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей