|
SMLogix Вопросы о работе в среде SMLogix и о FBD-программировании |
|
Опции темы | Поиск в этой теме |
21.06.2017, 11:45 | #1 |
Member
Регистрация: Jun 2017
Сообщения: 56
Благодарил(а): 7 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Вопрос по FBD
Добрый день.
Не подскажете новичку, как в FBD реализовать функционал схожий с IF? До этого прогал на ST и тяжело перестраиваться. Проще говоря что хочу сделать: При нажатии кнопки влево инкрементировать значение переменной на произвольное значение (допустим 0.1), а при нажатии вправо декрементировать на это же значение . CTUD инкрементирует-декрементрирует на 1, поэтому мне не подходит. |
21.06.2017, 11:49 | #2 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Вопрос по FBD
Умножайте на 10, инкрементируйте, делите на 10 - один из вариантов.
Ещё лучше - использовать регистр для хранения значения и сумматор для инкремента/декремента. Стало легче, или рисовать нужно? __________________ В сегнетиксе не работаю с самого начала 2019 года. |
21.06.2017, 11:51 | #3 |
Member
Регистрация: Jun 2017
Сообщения: 56
Благодарил(а): 7 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Вопрос по FBD
Было бы понятнее с рисунком. Меня что смущает - у блока ADD нет дискретного входа, поэтому я не очень понимаю как связать математические операции с дискретным сигналом нажатия кнопки
|
21.06.2017, 11:54 | #4 |
Member
Регистрация: Jun 2017
Сообщения: 56
Благодарил(а): 7 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Вопрос по FBD
И если уж задавать дурацкие вопросы, то по полной - не подскажете как задавать переменные в SMLogix? Я работал немного в FBD на Codesys и помню что там можно было создавать блоки-произвольных переменных.
|
21.06.2017, 11:56 | #5 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Вопрос по FBD
Отдельно надо будет поработать с загрузкой изначального числа, так как в примере будет от 0 начинаться. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
21.06.2017, 11:56 | #6 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Вопрос по FBD
Цитата:
Если нужны "переменные" в теле программы, то используйте в их роли регистры (блоки REG()). __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
21.06.2017, 12:05 | #7 |
Member
Регистрация: Jun 2017
Сообщения: 56
Благодарил(а): 7 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Вопрос по FBD
Большое спасибо за оперативные ответы! Буду разбираться.
Честно говоря странно что в FBD нет какого-то блока а-ля IF и нужно делать это подобным образом через преобразования типов с мультиплексором |
21.06.2017, 12:14 | #8 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Вопрос по FBD
Не нужен никакой if в fbd. А на счёт преобразования типов и мультиплексора - обратите внимание на библиотеку макросов.
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
21.06.2017, 13:42 | #9 |
Member
Регистрация: Jun 2017
Сообщения: 56
Благодарил(а): 7 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Вопрос по FBD
А подскажите, вот хочу сделать защиту через Min Max(real) от вылезания символов за экран при переполнении, ставлю максимум и минимум +9.9 и -9.9, а при загрузке на контроллер он почему-то округляет их до 10
|
21.06.2017, 13:45 | #10 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Вопрос по FBD
От вылезания за экран - редактируйте формат вывода числа в блоке Screen(Real)
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
21.06.2017, 14:08 | #11 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Вопрос по FBD
Цитата:
http://dl.segnetics.com/WebHelp/SMLo...reen_group.htm http://dl.segnetics.com/WebHelp/SMLo...er_formats.htm __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
21.06.2017, 14:12 | #12 | |
Member
Регистрация: Jun 2017
Сообщения: 56
Благодарил(а): 7 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Вопрос по FBD
Цитата:
У меня почему-то при загрузке на контроллер выставлялись старые параметры в мультиплексоре и блоке мин-макс(как раз те самые злополучные 10 и -10 которые я поставил при первой загрузке, я и решил что это блок мин-макс округляет нецелочисленные значения); Решилось перезагрузкой SMLogix, не знаю в чем причина. Я так понимаю если задавать новичковые вопросы именно по FBD, то лучше задавать их сюда вместо того чтобы сыпать новыми темами? http://forum-segneti.1gb.ru/showthread.php?t=202 |
|
21.06.2017, 14:38 | #13 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Вопрос по FBD
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|