Какой блок использовать чтобы включить в true bool переменную?

Ответить
Alor
Рядовой
Сообщения: 6
Зарегистрирован: 18.01.2018{, 07:09}
Репутация: 0

Какой блок использовать чтобы включить в true bool переменную?

#1

Сообщение Alor » 18.01.2018{, 11:13}

Здравствуйте.
Начал осваивать FlProg, но периодически возникают вопросы использования библиотечных блоков.

Как установить состояние переменной в определенное состояние? Т.е. какой блок осуществляет присваивание?
b = true;

В CodeSys подобное
ST
b:=true;

CFC
делал через импульс по фронту r_trig фиксацией переменной с флагом S

FBD
либо оператором move.

КАк в FLProg?

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

Какой блок использовать чтобы включить в true bool переменную?

#2

Сообщение Олег » 18.01.2018{, 11:18}

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

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Какой блок использовать чтобы включить в true bool переменную?

#3

Сообщение pan » 18.01.2018{, 11:52}

Alor писал(а):
18.01.2018{, 11:13}
b:=true;
Изображение



Изображение

вы почаще то кнопочки разные нажимайте с свойства смотрите

Аватара пользователя
Sancho
Полковник
Сообщения: 3990
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Какой блок использовать чтобы включить в true bool переменную?

#4

Сообщение Sancho » 18.01.2018{, 12:13}

pan писал(а):
18.01.2018{, 11:52}
вы почаще то кнопочки разные нажимайте с свойства смотрите
Согласен.
Но Alor понимаю - в CoDeSys, в CFC это немного иначе. Но это всего-лишь вопрос времени. :yahoo:
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Alor
Рядовой
Сообщения: 6
Зарегистрирован: 18.01.2018{, 07:09}
Репутация: 0

Какой блок использовать чтобы включить в true bool переменную?

#5

Сообщение Alor » 18.01.2018{, 12:19}

Олег писал(а):
18.01.2018{, 11:18}
Если постоянно, то правой клавишей мыши на вход переменной и установить константу. Если запись с различных блоков, то включить в установrах вход En
Разве по En это не разрешение на запись?
Значение должно остаться после записи.
Т.е. допустим прошел импульс значение bool переменной переключилось в true и осталось в этом состоянии после снятия true на входе.
Константа и En тут не подходят

Наверное правильно будет скачать, что нужен оператор присваивание по разрешению.
Последний раз редактировалось Alor 18.01.2018{, 12:26}, всего редактировалось 1 раз.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Какой блок использовать чтобы включить в true bool переменную?

#6

Сообщение pan » 18.01.2018{, 12:23}

Alor писал(а):
18.01.2018{, 12:19}
допустим прошел импульс значение bool переменной переключилось в true и осталось в этом состоянии.
какой такой импульс. это соответствует коду

Аватара пользователя
Phazz
Полковник
Сообщения: 2064
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 249
Откуда: Сургут
Имя: Анатолий

Какой блок использовать чтобы включить в true bool переменную?

#7

Сообщение Phazz » 18.01.2018{, 12:24}

что-то я совсем не понял что Вы хотите

Аватара пользователя
Sancho
Полковник
Сообщения: 3990
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Какой блок использовать чтобы включить в true bool переменную?

#8

Сообщение Sancho » 18.01.2018{, 12:25}

Alor писал(а):
18.01.2018{, 12:19}
Разве по En это не разрешение на запись?
Значение должно остаться после записи.
Т.е. допустим прошел импульс значение bool переменной переключилось в true и осталось в этом состоянии.
Это оно и есть.
Олег имел ввиду, что константы здесь устанавливаются и таким образом. Например, если плата выполняется по условию, и там значение может изменится однажды, то вход en излишен. Когда делаешь по типу архитектуры SFC.
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Какой блок использовать чтобы включить в true bool переменную?

#9

Сообщение pan » 18.01.2018{, 12:27}

стоп. то что выше написал это относительно константы.

а по поводу EN...
это будет соответствовать

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

if(en) { b=true ; }

Аватара пользователя
Sancho
Полковник
Сообщения: 3990
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Какой блок использовать чтобы включить в true bool переменную?

#10

Сообщение Sancho » 18.01.2018{, 12:27}

Alor,
Запись по EN
if (en) then
a:=true
end if
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Аватара пользователя
Phazz
Полковник
Сообщения: 2064
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 249
Откуда: Сургут
Имя: Анатолий

Какой блок использовать чтобы включить в true bool переменную?

#11

Сообщение Phazz » 18.01.2018{, 12:34}

Разве не это?
СпойлерПоказать
Изображение

Alor
Рядовой
Сообщения: 6
Зарегистрирован: 18.01.2018{, 07:09}
Репутация: 0

Какой блок использовать чтобы включить в true bool переменную?

#12

Сообщение Alor » 18.01.2018{, 12:36}

Извиняюсь за путаницу лучше приведу графический пример, что нужно:

Изображение

Но подразумевал как именно присваивание осуществляется, может следующий раз уже не bool переменная может быть, а int или float.
В выше приведенном примере за присваивание отвечает оператор move без разницы на тип переменной, в FlpProg и интересовало есть такое или нет.

Аватара пользователя
Sancho
Полковник
Сообщения: 3990
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Какой блок использовать чтобы включить в true bool переменную?

#13

Сообщение Sancho » 18.01.2018{, 12:44}

Alor, Объедините переменную b и move - тоже самое, что Вам и писали в посте выше.

Отправлено спустя 43 секунды:
Alor писал(а):
18.01.2018{, 12:36}
за присваивание отвечает оператор move без разницы на тип переменной, в FlpProg и интересовало есть такое или нет.
Тоже самое - вход у переменной, любой, включаете En - получаете move
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Alor
Рядовой
Сообщения: 6
Зарегистрирован: 18.01.2018{, 07:09}
Репутация: 0

Какой блок использовать чтобы включить в true bool переменную?

#14

Сообщение Alor » 18.01.2018{, 12:53}

Ясно, немного другой подход, благодарю всех.

sherti
Рядовой
Сообщения: 37
Зарегистрирован: 20.01.2018{, 20:32}
Репутация: 0

Какой блок использовать чтобы включить в true bool переменную?

#15

Сообщение sherti » 20.01.2018{, 20:50}

Подскажите как можно реализовать выставление 1, 0 в зависимости от увеличения или уменьшения числа.
Например при любом увеличении числа ставить 1 при уменьшении ставить 0.
Число берется с датчика температуры.
Чем проще и прозрачней, тем надежнее.

av
Подполковник
Сообщения: 1417
Зарегистрирован: 25.09.2017{, 13:25}
Репутация: 126
Имя: Алексей

Какой блок использовать чтобы включить в true bool переменную?

#16

Сообщение av » 20.01.2018{, 21:17}

sherti, что то не понятно чего вы хотите. Куда "выставлять" на выход ,в память, переменную? Увеличение или уменьшение относительно какого значения ? Выражайтесь яснее. Здесь нет экстрасенсов ! Вероятно вам нужен блок сравнения.

sherti
Рядовой
Сообщения: 37
Зарегистрирован: 20.01.2018{, 20:32}
Репутация: 0

Какой блок использовать чтобы включить в true bool переменную?

#17

Сообщение sherti » 20.01.2018{, 21:24}

Есть датчик температуры с него идут показания от -15 до + 100 например.
Каким блоком или как можно реализовать на выходе 1 или 0 в зависимости от того растет или падает температура. Температура относительно предыдучего значения температуры.
В общем надо изменить направление вращения шагового двигателя в зависимости от растет или падает температура.
ЕЕПРОМ желательно не трогать.
Чем проще и прозрачней, тем надежнее.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Какой блок использовать чтобы включить в true bool переменную?

#18

Сообщение pan » 20.01.2018{, 21:28}

элементарно. раз в несколько секунд записываете температуру в дополнительную переменную, и подключаете
эту переменную и текущую температуру на блок сравнения.
радуемся.

sherti
Рядовой
Сообщения: 37
Зарегистрирован: 20.01.2018{, 20:32}
Репутация: 0

Какой блок использовать чтобы включить в true bool переменную?

#19

Сообщение sherti » 20.01.2018{, 21:34}

А не получится что там и там одна и таже температура будет записанна?
Щас попробую конечно.
Чем проще и прозрачней, тем надежнее.

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Какой блок использовать чтобы включить в true bool переменную?

#20

Сообщение pan » 20.01.2018{, 21:46}

конечно получится. она самая там и будет. но в момент изменения на выходе сравнения будет 1 или 0

Ответить

Вернуться в «Помогите, а то я "нимагу"»