Страница 1 из 1
Как в FLProg пользоваться условием Else?
Добавлено: 10 янв 2020, 18:05
Dorovskikh
Приветствую всех. Ранее уже знакомился с Ардуиной, когда делал GSM автосигнализацию с автозапуском. Но пользовался стандартным Arduino IDE. Всё получилось, но с дикими усилиями, т. к. профессия моя далека от программирования. И вот недавно наткнулся на чудесный FLProg, с которым работать намного приятнее, но уже привыкнув к некоторым основам Ардуиновского кода возник вопрос:
а каким образом в FLProg пользоваться условиями If / else / else if ?
в данный момент прописываю вручную необходимые условия при помощи стандартных AND и т. п. К примеру если на первых трёх выводах true, тогда после AND тоже true. Каким образом выполнить другую задачу, если на первых двух, или первом и третьем выводе true? Надеюсь вопрос понятен. Заранее спасибо за ответы. По форуму не смог найти похожей темы с разжевыванием

Как в FLProg пользоваться условием Else?
Добавлено: 10 янв 2020, 18:14
SSSergeich
Не совсем.. Чем комбинация с блоком или не устраивает?

Как в FLProg пользоваться условием Else?
Добавлено: 10 янв 2020, 18:34
Ingwar
Dorovskikh писал(а): 10 янв 2020, 18:05
К примеру если на первых трёх выводах true, тогда после AND тоже true. Каким образом выполнить другую задачу, если на первых двух, или первом и третьем выводе true?
Попробуйте это
[spoiler]
Безымянный.png
[/spoiler]
Как в FLProg пользоваться условием Else?
Добавлено: 10 янв 2020, 19:07
Sancho
[ref]Ingwar[/ref], Это перебор...

[ref]Dorovskikh[/ref], Типа так:
[spoiler]
screenshot_20-01-10_19-06-29.png
[/spoiler]
Как в FLProg пользоваться условием Else?
Добавлено: 10 янв 2020, 19:57
com
еще вариант
Как в FLProg пользоваться условием Else?
Добавлено: 10 янв 2020, 23:27
Ingwar
[ref=#ff8000]Sancho[/ref], я имел ввиду возможность создавать различные варианты...

Другое дело если ТС раньше использовал только "И".
Как в FLProg пользоваться условием Else?
Добавлено: 11 янв 2020, 00:03
Rodgerask
//del
Как в FLProg пользоваться условием Else?
Добавлено: 11 янв 2020, 05:38
edyapd
[ref=#ff8000]Sancho[/ref], у вас не выполняются условия, которые задал ТС. Ingwar в этом смысле предложил более простое решение, хотя и занимающее больше памяти.
Отправлено спустя 3 минуты 26 секунд:
[ref]Rodgerask[/ref], у вас при выполнении "задачи 1", будет выполняться и "другая задача". А условия if - else работают по другому.
Как в FLProg пользоваться условием Else?
Добавлено: 11 янв 2020, 09:01
Sancho
[ref]edyapd[/ref], Согласен.
Тогда проще так, два варианта, второй правильнее, на мой взгляд.
[spoiler]
screenshot_20-01-11_08-50-35.png
screenshot_20-01-11_08-53-05.png
[/spoiler]
Как в FLProg пользоваться условием Else?
Добавлено: 11 янв 2020, 11:16
Dorovskikh
Ingwar писал(а): 10 янв 2020, 18:34Попробуйте это
Да, уже пытался через таблицу состояний, но когда начал вручную выставлять состояния входов и выходов подумал, что есть вариант попроще.
Большое спасибо всем ответившим. Буду испытывать ваши советы на практике

Как в FLProg пользоваться условием Else?
Добавлено: 11 янв 2020, 17:15
SSSergeich
Dorovskikh писал(а): 10 янв 2020, 18:05
К примеру если на первых трёх выводах true, тогда после AND тоже true. Каким образом выполнить другую задачу, если на первых двух, или первом и третьем выводе true?
Чот туго у меня с пониманием, но на сколько понял, то вроде бы вот так можно, не?
[spoiler]
а так.JPG
[/spoiler]
Как в FLProg пользоваться условием Else?
Добавлено: 12 янв 2020, 20:04
SSSergeich
[ref]Dorovskikh[/ref], как Ваши успехи, проверили варианты в работе?
Как в FLProg пользоваться условием Else?
Добавлено: 12 янв 2020, 22:23
Dorovskikh
SSSergeich писал(а): 12 янв 2020, 20:04
[ref]Dorovskikh[/ref], как Ваши успехи, проверили варианты в работе?
Да, спасибо большое за советы. Всё работает, но в процессе тестирования меня осенило, что в моём случае можно ещё больше упростить задачу. Я контролирую сигнал с 3х датчиков дверей, и используя AND, если на всех датчиках TRUE, тогда присваиваю TRUE для переменной. А в остальном коде пользуюсь этой переменной, если она FALSE, значит какой-либо датчик двери разомкнут. Вот так и получается аналог ELSE для такого простого примера
Собираю автомобильную сигнализацию с дистанционным управлением для пассажирского автобуса. Там требуется своя специфика при подключении, что простые сигналки не будут работать как я хочу

Как в FLProg пользоваться условием Else?
Добавлено: 12 янв 2020, 22:38
SSSergeich
Dorovskikh писал(а): 12 янв 2020, 22:23
Всё работает, но в процессе тестирования меня осенило, что в моём случае можно ещё больше упростить задачу. Я контролирую сигнал с 3х датчиков дверей, и используя AND, если на всех датчиках TRUE, тогда присваиваю TRUE для переменной. А в остальном коде пользуюсь этой переменной, если она FALSE, значит какой-либо датчик двери разомкнут. Вот так и получается аналог ELSE для такого простого примера
Умеете же Вы нкпонятно объяснять..

Вообще все примеры работают?))
Даже интересно стало, а что за вторая задача была, та, которая не понадобилась?))
Мой пример проверяли, работает?
Как в FLProg пользоваться условием Else?
Добавлено: 13 янв 2020, 16:05
Dorovskikh
SSSergeich писал(а): 12 янв 2020, 22:38Мой пример проверяли, работает?
Да Ваш пример работает, но немного не совсем так. В Вашем случае При сработке датчика первой двери и второй, либо третьей выполняется задача 2, а мне нужно было, чтобы при сработке любой из 3х дверей произошла задача 2, отличная от задачи 1.
Видимо я и в правду не точно выразился. Все равно спасибо, ведь эти схемы меня натолкнули на правильный вариант
Отправлено спустя 5 минут 39 секунд:
Dorovskikh писал(а): 10 янв 2020, 18:05Каким образом выполнить другую задачу, если на первых двух, или первом и третьем выводе true?
Здесь я подразумевал, как выполнить другую задачу, отличную от первой.
То есть на языке Ардуино я бы написал: IF на 1 2 и 3 выводе TRUE, тогда выполнить задачу 1, ELSE выполнить задачу 2
Как в FLProg пользоваться условием Else?
Добавлено: 13 янв 2020, 17:23
SSSergeich
[ref]Dorovskikh[/ref], Понятно) Да, разница существенная))

Как в FLProg пользоваться условием Else?
Добавлено: 13 янв 2020, 17:42
Sancho
Dorovskikh писал(а): 13 янв 2020, 16:05
То есть на языке Ардуино я бы написал: IF на 1 2 и 3 выводе TRUE, тогда выполнить задачу 1, ELSE выполнить задачу 2
Куда проще?[spoiler]
screenshot_20-01-13_17-42-04.png
[/spoiler]
Как в FLProg пользоваться условием Else?
Добавлено: 13 янв 2020, 19:48
SSSergeich
Sancho писал(а): 13 янв 2020, 17:42Куда проще?
Ну это уже когда знаешь полные условия задачи
