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

Масштабирование сигнала с датчика давления

Модераторы: Глоб.модераторы, специалисты по PLC

Ответить

Автор темы
iteng
осмотрелся
осмотрелся
Сообщения: 101
Зарегистрирован: 12 июл 2017, 07:18
Имя: Сергей
Благодарил (а): 12 раз
Поблагодарили: 3 раза

Масштабирование сигнала с датчика давления

Сообщение iteng »

Добрый день, форумчане.
Не могу масштабировать сигнал 4-20 мА с датчика давления, шкала которого -1 +10 Бар.
Надо при 4 мА получить -1 бар, а при 20 мА 10 бар.
Как это реализовать?
Контроллер FX3GE + GXWorks2
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18758
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 973 раза
Поблагодарили: 1854 раза

Масштабирование сигнала с датчика давления

Сообщение Jackson »

iteng писал(а): 27 сен 2024, 08:08 Как это реализовать?
Что конкретно у Вас не получается? Я вообще проблем не вижу.
По вопросам работы Форума можно обратиться по этим контактам.

UNTK_RAA
здесь недавно
здесь недавно
Сообщения: 89
Зарегистрирован: 01 мар 2010, 17:37
Имя: Алексей Алексеевич
Страна: Россия
город/регион: Нижний Тагил
Благодарил (а): 17 раз
Поблагодарили: 9 раз

Масштабирование сигнала с датчика давления

Сообщение UNTK_RAA »

Код: Выделить всё

FUNCTION FC1: VOID //Масштабирование XMIN…XMAX -> YMIN…YMAX
TITLE = ' Масштабирование.'

VAR_INPUT //Входные переменные.
X:REAL; //Вход.
XMIN:REAL; //Минимум входного диапазона.
XMAX:REAL; //Максимум входного диапазона.
YMIN:REAL; //Минимум выходного диапазона.
YMAX:REAL; //Максимум выходного диапазона.
END_VAR

VAR_OUTPUT //Выходные переменные.
Y:REAL; //Выход.
END_VAR

//Алгоритм.
IF (XMAX<>XMIN) //Деление на 0 может остановить процессор.
THEN
Y:=(YMAX-YMIN)*((X-XMIN)/(XMAX-XMIN))+YMIN; //Масштабирование.
ELSE
Y:=0.0;
END_IF;
END_FUNCTION
Ссылка

olexsa
эксперт
эксперт
Сообщения: 1584
Зарегистрирован: 29 май 2009, 21:40
Имя: Александр
Страна: Россия
город/регион: Курган
Благодарил (а): 86 раз
Поблагодарили: 208 раз

Масштабирование сигнала с датчика давления

Сообщение olexsa »

я так то далек от програмирования. Но глядя на программу, как бы задумываюсь: вот значение измеренного значения ПЛК измерил, получил какое то значение тока (скорее всего это переменная Х), и надо высчитать в значение давления (наверное, это Y). Но не вижу, что для ПЛК задаются значение минимального и максимального значения диапазонов. Откуда ПЛК то узнает, от скольки до скольки ему считать значения? :ges_hmm:
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18758
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 973 раза
Поблагодарили: 1854 раза

Масштабирование сигнала с датчика давления

Сообщение Jackson »

А не получается-то что? :)
Чтобы разобраться, каждую операцию выполняйте отдельной строкой и отображайте результат.

Отправлено спустя 2 минуты 23 секунды:
olexsa писал(а): 27 сен 2024, 10:42 вот значение измеренного значения ПЛК измерил, получил какое то значение тока (скорее всего это переменная Х), и надо высчитать в значение давления (наверное, это Y)
Программирование тут вообще ни при чём - это арифметика. Надо взять лист бумаги и карандашом это сначала решить. Посчитали дельту макс-мин входа, такую же дельту выхода. Отмасштабировали первое во второе. К результату добавили смещение. Вот и всё решение.
Не забудем что либо значения должны быть signed float, либо надо не забыть умножить на коэффициент, кратный 10 - это будет разрешение.
iteng, выводите промежуточные результаты и увидите, где у Вас проблема. А "сделайте за меня" - это не про этот форум. Готовых алгоритмов в интернете тоже тьма.
По вопросам работы Форума можно обратиться по этим контактам.

leon78
эксперт
эксперт
Сообщения: 1146
Зарегистрирован: 25 июл 2008, 10:06
Имя: Леонид
Страна: РФ
Благодарил (а): 49 раз
Поблагодарили: 134 раза

Масштабирование сигнала с датчика давления

Сообщение leon78 »

Мне кажется, данный вопрос возникает на форуме регулярно. Хотя тут всего лишь школьная алгебра. Может, пора в FAQ поместить и на него давать ссылку очередному спрашивающему?
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18758
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 973 раза
Поблагодарили: 1854 раза

Масштабирование сигнала с датчика давления

Сообщение Jackson »

leon78, Можно поместить.
По вопросам работы Форума можно обратиться по этим контактам.

leon78
эксперт
эксперт
Сообщения: 1146
Зарегистрирован: 25 июл 2008, 10:06
Имя: Леонид
Страна: РФ
Благодарил (а): 49 раз
Поблагодарили: 134 раза

Масштабирование сигнала с датчика давления

Сообщение leon78 »

Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18758
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 973 раза
Поблагодарили: 1854 раза

Масштабирование сигнала с датчика давления

Сообщение Jackson »

leon78 писал(а): 27 сен 2024, 14:49 viewtopic.php?t=20069
Только я бы тогда выделил отдельный FAQ с названием "типовые алгоритмы" или "алгоритмы типовых задач". Иначе под словами "структура программ" его точно никто не догадается искать.
По вопросам работы Форума можно обратиться по этим контактам.

Sergy6661
специалист
специалист
Сообщения: 655
Зарегистрирован: 19 фев 2019, 22:38
Имя: Сергей
Страна: Россия
город/регион: Краснодар
Благодарил (а): 20 раз
Поблагодарили: 89 раз

Масштабирование сигнала с датчика давления

Сообщение Sergy6661 »

Jackson писал(а): 27 сен 2024, 17:49 точно никто не догадается искать
Искать? Многие програмные комплексы имеют штатные готовые функциональные блоки для преобразований таких, обзываются обычно "Shcaler" или F_Lin2, надо просто немного изучить вопрос, а так скоро будете в FAQ таблицу умножения размещать.

leon78
эксперт
эксперт
Сообщения: 1146
Зарегистрирован: 25 июл 2008, 10:06
Имя: Леонид
Страна: РФ
Благодарил (а): 49 раз
Поблагодарили: 134 раза

Масштабирование сигнала с датчика давления

Сообщение leon78 »

Jackson писал(а): 27 сен 2024, 17:49 Только я бы тогда выделил отдельный FAQ с названием "типовые алгоритмы" или "алгоритмы типовых задач".
Надо тогда добавить такой раздел
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 18758
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 973 раза
Поблагодарили: 1854 раза

Масштабирование сигнала с датчика давления

Сообщение Jackson »

leon78 писал(а): 30 сен 2024, 09:27 Надо тогда добавить такой раздел
В админке обсуждение
По вопросам работы Форума можно обратиться по этим контактам.
Ответить

Вернуться в «Mitsubishi»