Помогите оформить задачу в FLProg

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Hibernator
Рядовой
Сообщения: 17
Зарегистрирован: 04.11.2015{, 11:53}
Репутация: 0
Откуда: Санкт-Петербург

Помогите оформить задачу в FLProg

#1

Сообщение Hibernator » 10.01.2016{, 00:01}

Друзья, запутался и не могу оформить задачу в Программе.
Задача:

Есть 3 датчика температуры, т.е. три значения.
Необходимо определить датчик, показывающий второе значение для дальнейшей с ним работы.

Что такое второе значение:
1-й датчик показывает 21.1, 2-й датчик показывает 23.2, 3-й датчик показывает 22.0.
В этом случае второе значение показывает 3-й датчик, его и нужно определить для дальнейшей работы в Программе.

Заранее спасибо.

Airis
Сержант
Сообщения: 175
Зарегистрирован: 24.09.2015{, 07:27}
Репутация: 0

Помогите оформить задачу в FLProg

#2

Сообщение Airis » 10.01.2016{, 00:39}

Что это  "22.0"- минимальное температура трех датчиков, среднее математическое всех трех датчиков , или что то другое? Если температура "22.0" и выбор датчика поддается логическому, математическому вычислению, то применяем советующее математическое вычисление, а если выбор датчика происходит наугад, то в FLProg есть функция RANDOM.
Последний раз редактировалось Airis 10.01.2016{, 00:40}, всего редактировалось 1 раз.

Hibernator
Рядовой
Сообщения: 17
Зарегистрирован: 04.11.2015{, 11:53}
Репутация: 0
Откуда: Санкт-Петербург

Помогите оформить задачу в FLProg

#3

Сообщение Hibernator » 10.01.2016{, 01:01}

Airis писал(а):Что это  "22.0"- минимальное температура трех датчиков, среднее математическое всех трех датчиков , или что то другое? Если температура "22.0" и выбор датчика поддается логическому, математическому вычислению, то применяем советующее математическое вычисление, а если выбор датчика происходит наугад, то в FLProg есть функция RANDOM.
Это показание 3 датчика. Все цифры - это текущие показания датчиков.
Именно, второе значение (что это я описал в первом посте), его логический поиск я и не понимаю как собрать в FLProg.

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Помогите оформить задачу в FLProg

#4

Сообщение Олег » 10.01.2016{, 01:21}

Можно сделать на компараторах. В приложении вы увидите как это сделать если 1-й датчик имеет среднее значение, аналогично делайте для второго и третьего датчиков. Еще вопрос как вы хотите обрабатывать ситуацию когда на двух или трех датчиках температура одинаковая.
Вложения
Vybor.flp
(122.65 КБ) 45 скачиваний

Hibernator
Рядовой
Сообщения: 17
Зарегистрирован: 04.11.2015{, 11:53}
Репутация: 0
Откуда: Санкт-Петербург

Помогите оформить задачу в FLProg

#5

Сообщение Hibernator » 10.01.2016{, 01:34}

Олег писал(а):Можно сделать на компараторах. В приложении вы увидите как это сделать если 1-й датчик имеет среднее значение, аналогично делайте для второго и третьего датчиков. Еще вопрос как вы хотите обрабатывать ситуацию когда на двух или трех датчиках температура одинаковая.
Олег, спасибо за идею.
Да, хороший вопрос, в принципе, в этом случае берется любой.

Может быть я решаю задачу через не то место...
На самом деле, задача такая: Резервирование датчика температуры.
Сейчас есть 2 датчика. Один как основной, другой для резерва. При температуре ниже 4 градуса должна включиться печка. Сейчас это работает через OR, т.е. если какой-либо датчик ушел ниже 4, включается печка через реле с задержкой. Была ситуация, когда датчик сломался и показывал 0 градусов. Т.е. печка заработала и уже не отключалась. Хочу ввести 3-й датчик, тем самым смоделировать следующее: выбирается среднее показание и по нему работаю.

Аватара пользователя
DerAlex
Лейтенант
Сообщения: 437
Зарегистрирован: 06.09.2015{, 08:39}
Репутация: 11
Откуда: Новосибирск

Помогите оформить задачу в FLProg

#6

Сообщение DerAlex » 10.01.2016{, 06:45}

Нужно ввести какие то минимальные и максимальные значения датчика при превышении которых считать датчик неисправным и не использовать его показания.
аврора

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Помогите оформить задачу в FLProg

#7

Сообщение Олег » 10.01.2016{, 09:40}

С тремя датчикам самый надежный вариант. Нижний предел сложно задать, а то возможен вариант что резко мороз ударит, а система ТЭН выключит. Хотя можно попробовать сделать так: задаем нижнюю температуру в 0 градусов и считаем разницу между показаниями обоих датчиков. Если один датчик показывает 0, а второй 6, а допустимая разница 4 градуса, то работаем по второму.
 Еще вариант, делаем проверку на изменение температуры, для этого надо знать особенности своего помещения. Если включен ТЭН, то отслеживаем динамику температуры за определенное время, если температура не поднимается, то переходим на второй датчик.
 А если и на втором то-же самое, то тогда ТЭН сдох или пускатель и включаем аларм.

Balzamalex
Сержант
Сообщения: 102
Зарегистрирован: 07.09.2015{, 21:21}
Репутация: 0

Помогите оформить задачу в FLProg

#8

Сообщение Balzamalex » 10.01.2016{, 13:00}

Может быть так:
2251144.png
8323474.png
2146349.png
7497879.png
Наверняка есть способ намного проще, только он в голову не приходит  Изображение

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Помогите оформить задачу в FLProg

#9

Сообщение Олег » 10.01.2016{, 14:45}

Мне кажется так проще будет.
Вложения
4992834.flp
(407.11 КБ) 53 скачивания

gore-40
Рядовой
Сообщения: 29
Зарегистрирован: 04.10.2015{, 18:02}
Репутация: 0

Помогите оформить задачу в FLProg

#10

Сообщение gore-40 » 10.01.2016{, 19:13}

Hibernator писал(а):Была ситуация, когда датчик сломался и показывал 0 градусов. Т.е. печка заработала и уже не отключалась. Хочу ввести 3-й датчик, тем самым смоделировать следующее:
надо делать по схеме 2 из 3 как на производстве, тогда при выходе из строя 1 датчика таких ситуаций не возникнет.
включай нагрузку  при достижении заданной температуры 2х датчиков.
Последний раз редактировалось gore-40 10.01.2016{, 19:26}, всего редактировалось 1 раз.

Hibernator
Рядовой
Сообщения: 17
Зарегистрирован: 04.11.2015{, 11:53}
Репутация: 0
Откуда: Санкт-Петербург

Помогите оформить задачу в FLProg

#11

Сообщение Hibernator » 10.01.2016{, 20:47}

Олег писал(а):Мне кажется так проще будет.
Олег, спасибо.
Все заработало!
gore-40 писал(а):надо делать по схеме 2 из 3 как на производстве, тогда при выходе из строя 1 датчика таких ситуаций не возникнет.включай нагрузку  при достижении заданной температуры 2х датчиков
Gore согласен, но эта схема тоже не лишена недостатков.
Мне ближе к этой задачи тройное резервирование с алгоритмом Олега.
В этом случае, если датчик умер, а умирает он показывая или 0 или 86, 1 из 3 точно выживет.
Мне очень далеко нужно ехать для замены датчика.

Еще вопрос про удаленный мониторинг, однозначно нужен GSM модуль для этого.
Они дорогие, но есть вот такой - GSM/GPRS модуль SIM800L.
Кто с ним работал?

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Помогите оформить задачу в FLProg

#12

Сообщение Олег » 11.01.2016{, 01:10}

Думаю, что задав вопрос с названием модуля в теме, будет больше шансов найти единомышленников.
Последний раз редактировалось Олег 11.01.2016{, 01:13}, всего редактировалось 1 раз.

Ответить

Вернуться в «Спросить у знатоков»