![]() |
![]() ![]() |
|
Вопросы о программировании Вопросы, касающиеся программирования на FBD |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
![]() |
#1 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]()
У меня есть задача автоматизации котла газового. Там есть 2 процессе где ябы использовал SFC.
1, Запуск котла. Начинается с продувки котла умтановлено количество времен, потом включается запальник и клапан газовый запальника. Потом искра выключается но газ идет. Потом включается малое горение и идет прогрев котла и потом включается большое горение. 2, Переключение из малого в большое горение и обратно. Здесь сначала задвижка переходит в положение нужное потом срабатывают клпана с разницой примерно в 100мс. И обратно так же. Скажите как можно имулировать или можно пример программы проследовательных действий. Не обязательно по теме можно просто что угодно что бы понять принцип как правльно на FBD писать SFC. |
![]() |
![]() |
![]() |
#2 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 011
Благодарил(а): 12 раз(а)
Поблагодарили:
585 раз(а) в 534 сообщениях
|
![]() Чем выделенные режимы отличаются друг от друга? __________________ Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
![]() Если я правильно понял, то основное затруднение - это выполнение FBD активных шагов и невыполнение FBD неактивных шагов. Так? Тогда проблема решается очень просто: на поляну ставятся RS-триггеры по количеству шагов. На вход S триггера подключается выход FBD выполнения условия перехода в данный шаг. На вход R триггера подключается выход FBD выполнения условия перехода из данного шага. Выход триггера является разрешением для FBD выполнения действий в шаге. Все очень просто... ![]() __________________ Автомат АК - самый распространенный преобразователь стека в очередь |
![]() |
![]() |
![]() |
#4 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() Вы понимаете что это все не идеально описаный процесс? Там много других дейсвий еще есть которые я не упомянул. Может вы это имеете в виду? |
![]() |
![]() |
![]() |
#5 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#6 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 011
Благодарил(а): 12 раз(а)
Поблагодарили:
585 раз(а) в 534 сообщениях
|
![]() Программной памяти в наших контроллерах достаточно, поэтому не вижу ничего плохого в таком подходе, если он вам привычен. __________________ Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#7 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() В чем не коректность моего вопроса я не понимаю. Ну не описал я задачу четко, но мне не нужно помочь решить задачу, я сам ее решу. Я вообще ее описал для примера. Сейчас мне интересно как вы решилибы какойто секвенционный код. Любой. Прочто пример. |
![]() |
![]() |
![]() |
#8 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 011
Благодарил(а): 12 раз(а)
Поблагодарили:
585 раз(а) в 534 сообщениях
|
![]() Что касается сути вашего уточнения, то могу лишь сказать, что техподдержка решает технические вопросы, но никак не вопросы обучения языкам программирования, алгоритмическим подходам и методам проектирования. Часто, если человеку нужен пример - я могу его сделать, но только не в том случае, когда человек задаёт вопрос в стиле "давайте, рассказывайте, как космические корабли бороздят просторы Большого театра". Метод программирования всегда выбирается исходя из задачи. Цена ошибки очень велика - выбранный алгоритм может и не позволить решить задачу, если задача изначально была описана некорректно. __________________ Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#9 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]()
Спасибо за сылку, почитал.
Я согласен со всем. Четко поставленная задача помогает более точно дать советы как ее решить. Я не просил меня учить програмировать на FBD я принцип понимаю и делал уже несколько программ. Но нужно понимать что до этого я работал в CodeSys и мыслю как бы теми категориями. Я знаю что ваш FDB тоже в стандарте IEC-61131-3 но для решения определнных задачь я привык использовать SFC. Сейчас меня привлекли ваши котроллеры. Мне нравятся некоторые решения но я пытаюсь выяснить для себя на сколкьо сложно мне будет перейти на них в плате программирования которое будет ограничено только FDB. Я знаю что практически любую задачу можно на этом решить. Я думаю что я пошел правильным путем и задал правильный вопрос. Если бы вы просто сделали небольшую программу с 2 шаками и одним перходом, возможно зацикленную, где каждый шаг это просто счетчик или таймер это не важно, то мне этого хватило бы что бы начать переносить свой код из CodeSys. А если бы моя задача встала в тупик, то тогда, я бы задал уже конкретный вопрос конкретной задачи. Вы же пытаетесь сказать мне что я все равно не пойму потому что я не смог сформулировать вопрос так как вы считаете он должен был быть сформулирован. Вы просто попробуйте написать даже словами как бы вы решили задачу. Может вы удивитесь и мне будет этого достаточно. В любом случае спасибо за помощь. Очень ценю то что вы на форуме так хорошо помогаете. Это дает мне уверености перейти на ваш котроллер и что я всегда смогу решить задачу если зайду в тупик. |
![]() |
![]() |
![]() |
#10 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 011
Благодарил(а): 12 раз(а)
Поблагодарили:
585 раз(а) в 534 сообщениях
|
![]() Каждые 100 мсек (по умолчанию) выполняются абсолютно все блоки программы. Полная эмуляция электрической схемы. Состояния либо динамически присутсвуют, либо защёлкиваются на триггерах, становясь тем самым статическими. Переходы можно сэмулировать на блоках AND. Счётчик - просто отдельный блок. Если заданием счётчика является время, то этот счётчик выполняет функцию таймера. Примеры всегда есть в справке: http://dl.segnetics.com/WebHelp/SMLo...y_function.htm http://dl.segnetics.com/WebHelp/SMLo...l_function.htm http://dl.segnetics.com/WebHelp/SMLo...le_dfilter.htm http://dl.segnetics.com/WebHelp/SMLo...le_afilter.htm __________________ Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#11 |
Senior Member
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 751
Благодарил(а): 0 раз(а)
Поблагодарили:
8 раз(а) в 8 сообщениях
|
![]() http://forum.segnetics.com/attachmen...2&d=1400207210 __________________ В жизни 2 правила успеха: 1 Не говори всего что знаешь 2 ... |
![]() |
![]() |
![]() |
#12 |
Senior Member
Регистрация: Nov 2013
Адрес: Санкт-Петербург
Сообщения: 213
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]()
Если актуально, могу скинуть пример небольшой программы в SMLogix, реализующей управление схемы АВР с основным вводом и дизель-генератором. Там нечто среднее между SFC и автоматом состояний (что, в принципе, после пары кружек пива почти одно и то же). Там всего 4 состояния и переходы между ними в зависимости от условий. Плюс определение начального состояния, при включении контроллера.
|
![]() |
![]() |
![]() |
#13 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#14 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 011
Благодарил(а): 12 раз(а)
Поблагодарили:
585 раз(а) в 534 сообщениях
|
![]() __________________ Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
#15 |
Senior Member
Регистрация: Jul 2009
Сообщения: 246
Благодарил(а): 0 раз(а)
Поблагодарили:
9 раз(а) в 9 сообщениях
|
![]()
Вы бы сразу попросили программу, а самому лень писать, там есть еще такой параметр как опрессовка газового блока, котле какой? Е1,0-0,9??
|
![]() |
![]() |
![]() |
#16 |
Senior Member
Регистрация: Nov 2013
Адрес: Санкт-Петербург
Сообщения: 213
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() |
![]() |
![]() |
![]() |
#17 |
Senior Member
Регистрация: Jul 2009
Сообщения: 246
Благодарил(а): 0 раз(а)
Поблагодарили:
9 раз(а) в 9 сообщениях
|
![]()
Пиши адрес кину прогу на ешку.
|
![]() |
![]() |
![]() |
#18 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]()
По идее шкаф будет универсальным под любой котел с одной горелкой до 5 меговат. В наличии горелка для теста ГГ1. Не произведение искуства, но тот же принцип, планируертся сделать универсальную программу.
Скинуть можно на почту serg4172 собака майл ру. Но вобщемто можно и тут закачать прям в теме. Вдруг кому еще понадобится. Ну или на крайняк в личку можн. Программа мне нужно не потому что писать лень, а что бы посмотреть как делают другие, и соеденив со своим опытом, сделать совершенно новую программу. |
![]() |
![]() |
![]() |
#19 |
Member
Регистрация: Nov 2015
Сообщения: 54
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
![]() Не совсем понимаю как сигнал активного экрана мне тут помогает? Я правильно понимаю что я просто когда в первом шаге закончил, просто запускаю следующий экран, а уже следующий шаг начинает работать по сигналу активноси? И что лучше использовать экран активен или переход на экран? Послединй это импульс как я понимаю? Так? |
![]() |
![]() |
![]() |
#20 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 011
Благодарил(а): 12 раз(а)
Поблагодарили:
585 раз(а) в 534 сообщениях
|
![]() 2) Добавляете второй экран 3) Смотрите внимательно под изображением контроллера Там всё очень просто. http://forum.segnetics.com/showthread.php?t=1097 http://forum.segnetics.com/showthread.php?t=1014 http://forum.segnetics.com/showthread.php?t=1613 __________________ Добро всегда побеждает зло. Кто победил - тот и добрый. |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
SM CONNECT (Подробная инструкция в картинках как настроить) | alekseyeve | SMConnect & SMConfig | 216 | 04.05.2023 12:26 |
Как построить отказоустойчивую сеть SMconnect? | Bayk | SMConnect & SMConfig | 19 | 16.05.2020 14:31 |
Как подключить привод к контроллеру Pixel | Arsie | ЧаВо - Часто задаваемые Вопросы | 0 | 31.10.2013 18:04 |
Как оценить время выполнения программы в контроллере? | Arsie | ЧаВо - Часто задаваемые Вопросы | 0 | 04.10.2013 16:51 |
Не понятно как настроить | 165 | SMConstructor (теплопункты) | 10 | 24.09.2013 13:53 |