|
Вопросы о программировании Вопросы, касающиеся программирования на FBD |
|
Опции темы | Поиск в этой теме | Опции просмотра |
12.02.2019, 12:27 | #721 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
12.02.2019, 12:27 | #722 |
Новичок
Регистрация: Jan 2019
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
Добавлено через 1 минуту |
12.02.2019, 12:32 | #723 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
Этот кран совершает возвратно-поступательные движения (иначе это не кран, а конвейер). Пока всё верно? __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
12.02.2019, 12:44 | #724 |
Новичок
Регистрация: Jan 2019
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
|
12.02.2019, 13:00 | #725 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
Ок, как кран возвращается обратно? __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
12.02.2019, 13:18 | #726 |
Новичок
Регистрация: Jan 2019
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
Ручной режим весь изладил, кнопка вверх - кран вверх на верхнем датчике переключается на движение вперед горизонтально, потом доезжает до двух горизонтальных датчиков начинает опускаться. Все было хорошо... потом заказчик говорит надо чтобы все было на двух скоростях и опускание и поднимание и вперед и назад. Вначале движения макс. скорость перед завершением пониженная скорость, там привада для этого. Застопорился когда стало надо не только просто замкнуть один дискрет на включение, но еще одновременно подать на аналог с начало 10 вольт, потом 3 вольта. Этот механизм что-то ниакак не пойму. |
12.02.2019, 13:22 | #727 |
Новичок
Регистрация: Jan 2019
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
Ели интересно вот проект.
Вперед вниз как раньше было, вверх в состоянии разрухи. Последний раз редактировалось Arsie, 19.02.2019 в 10:26 |
12.02.2019, 14:12 | #728 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
В общем, как я понял, "кран" уезжает с "датчика 2" по нажатию другой кнопки.
Тогда так: Левый MUX переключает скорости, правый включает/выключает аналоговый выход. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
12.02.2019, 14:32 | #729 |
Новичок
Регистрация: Jan 2019
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
Похоже ларчик как всегда просто открывался. В мыслях что-то подобное и было но не понимал как в фбд. Спасибо!
|
12.02.2019, 14:46 | #730 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
Задача движения с торможением делится на две независимые подзадачи, имеющие разные источники (как говорят в Европе и США, триггеры) запуска и обе заканчиваются в одно и то же время. В итоге, если правильно проговорить ТЗ, то решение уже готово. Даже название блоков есть)) __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
22.02.2019, 07:33 | #731 |
Новичок
Регистрация: Feb 2019
Сообщения: 22
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
Здравствуйте, помогите пожалуйста сделать эту картинку средствами SMLogix, не могу понять полностью функционал т.к. контроллера запасного нет(единственный стоит в непрерывном цикле), опробовать не на чем. И если кому не сложно, объясните каким путем, в данном язычке решаются вопросы EN\ENO, сеты\ресеты, позитивного и негативного фронта.
Последний раз редактировалось ВалераМ, 22.02.2019 в 07:59 |
22.02.2019, 12:23 | #732 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
Иногда ещё говорят передний/задний фронт, но это неграмотно ещё и лексически, т.к. само по себе слово "Фронт" (Raise) означает движение вверх. "Отрицательное движение вверх" сродни "отрицательному росту" в устах наших политиков, а "заднее движение вверх" вообще ни в какие ворота не лезет)) Сеты/Ресеты - это глухие триггеры, RS, с единственной подключенной линией, S (set) или R (reset). Глухие - потому что их невозможно перевести в противоположное состояние без перезапуска контроллера. ENO - бессмысленная конкретно для языка FBD операция (наследство от LAD), вопрос решается отсечением вывода блока наиболее подходящим способом: мультиплексором (MUX), если результат отключения должен быть предустановленным или регистром-защёлкой (D-trigger или REG), если должен быть сохранён предыдущий результат обработки. EN - тоже бессмысленная, однозначно имитируется имитатором ENO на входе, но при наличии ENO достаточно просто ничего не делать - ничего это в логике прохождения данных не изменит, выход и так не изменится. Инверсия делается пропусканием логического сигнала через инвертор, NOT. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
22.02.2019, 23:38 | #733 |
r/o
Регистрация: Mar 2010
Сообщения: 363
Благодарил(а): 1 раз(а)
Поблагодарили:
2 раз(а) в 2 сообщениях
|
Ответ: FBD чайникам
А как можно весь проект , например конструктора, свернуть в макрос ?
__________________ Красота в истине |
23.02.2019, 18:02 | #735 |
r/o
Регистрация: Mar 2010
Сообщения: 363
Благодарил(а): 1 раз(а)
Поблагодарили:
2 раз(а) в 2 сообщениях
|
Ответ: FBD чайникам
не получается выделить
__________________ Красота в истине |
23.02.2019, 20:29 | #736 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 125
Благодарил(а): 239 раз(а)
Поблагодарили:
161 раз(а) в 153 сообщениях
|
Ответ: FBD чайникам
|
23.02.2019, 22:13 | #737 |
r/o
Регистрация: Mar 2010
Сообщения: 363
Благодарил(а): 1 раз(а)
Поблагодарили:
2 раз(а) в 2 сообщениях
|
Ответ: FBD чайникам
Премного благодарен
__________________ Красота в истине |
26.02.2019, 09:49 | #738 |
Новичок
Регистрация: Feb 2019
Сообщения: 22
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
А с верхней просьбой моей поможете?
на скриншоте. Очень прошу. Есть еще один скрин, подобный. помогите сделать на SMlogix |
26.02.2019, 13:27 | #739 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
1) F_TRIG №0 - это детектор спада. Спад по английски называется Fall. Move - в данном применении выполняет функцию либо регистра-защёлки, либо мультиплексора, либо демультиплексора. Скорее всего функцию демультиплексора. 2) BLINK - обычный генератор для лампы, которая мигает как маячок. Собственно, в нашей библиотеке макросов есть макрос маячка, чтобы не делать эту функцию вручную. 3) Маячок используется не по назначению, но в данном случае это не мешает - повезло, что счётчик CTUD ловит фронты на счётном входе, а не уровень. А вот последующий ADD может отработать с ошибкой, т.к. перенос осуществляется не мгновенный, а в течении 500 мс. Это явный алгоритмический ляп, из-за которого пришлось ставить блок R_TRIG №4. Блок сложения в конце одновременно выполняет функцию защёлки результата (блокировкой входных данных). Похоже, складываются какие-то аналоговые величины в виде накопительного кольцевого буфера. 4) Блок DIV делит результат счёта на 20. Счётчик тоже считает до 20 и схема очень похожа на плавное наращивание аналоговой величины от 0 до 100%. 5) Результат деления в виде плавно наращиваемой величины никому не нужен, поэтому можно сделать предположение, что эта схема является всего лишь усредняющим фильтром, реализуемом на двух блоках что в Кодесисе, что в Степе, что Лоджике. Собственно "trig3" совместно с блоком MOVE #12 как раз и занимается тем, что отсекает выход в процессе накопления и усреднения. 6) Блоки №14, №15 и №16 занимается обнулением кольцевого буфера каждый раз, как счётчик досчитает до 20. Исходя из вышеописанного, я лучше сделаю накопительный буфер так, как его нужно строить в SMLogix. Прямое копирование будет неэффективно, тем более, что эта схема некорректно себя ведёт при повторном запуске. Логика работы схемы следующая: по сигналу режим = 1 на выход схемы каждые 20 циклов передаётся входная величина и затем она же, но усреднённая по 20 выборкам. По смене сигнала на режим = 0 входная величина передаётся без усреднения. PS. Я потому редко выполняю просьбы о преобразовании или примерах программирования, потому что невинный вопрос "как заменить блок" или "покажите пример" выливается в потерю часа-двух-трёх времени на анализ задачи. Сейчас это время было откушено от других посетителей форума и техподдержки. Кольцевой буфер "набросать" на Лоджике дело примерно 10 минут, если есть понимание, зачем это нужно. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
26.02.2019, 13:30 | #740 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
26.02.2019, 13:44 | #741 |
Новичок
Регистрация: Feb 2019
Сообщения: 22
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
Спасибо большое , теперь есть понимание работы многих элементов.
А все таки симулятор облегчил бы жизнь и Вам и нам. Очень благодарен Вам, Arsie. А вообще мне очень понравилась и среда и контроллер. Как разберусь с Лоджиком буду еще их заказывать. Добавлено через 19 минут Мне нужно было усреднить за время, входное аналоговое значение и записать среднее на аналоговый выход. Причем на выходе никогда не должно быть нулевое значение. Ну видать я объясняльщик не от бога (программистского) посему, мучаюсь. |
26.02.2019, 14:17 | #742 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
27.02.2019, 11:40 | #743 |
Новичок
Регистрация: Feb 2019
Сообщения: 22
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: FBD чайникам
Здравствуйте! Arsie, а каким образом защелка пропускает в начале цикла значение на выход, я просто стоял наблюдал, 1 не приходит никогда на блок OR, который стоит перед защелкой.
И как сделать чтоб время на втором таймере чередовалось например сначала 20 сек, потом 40 сек, потом опять 20 сек? Заранее спасибо. ЗЫ: Мультиплексор у Вас макросом в Select реализован? (на входе Bool) И еще, точность таймера может упасть если программа не вместиться в 100мс? |
27.02.2019, 12:40 | #744 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
И это не секунды, это итерации. Длительность одной итерации задаётся первым таймером. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
10.03.2019, 21:46 | #745 |
r/o
Регистрация: Mar 2010
Сообщения: 363
Благодарил(а): 1 раз(а)
Поблагодарили:
2 раз(а) в 2 сообщениях
|
Ответ: FBD чайникам
Подскажите пожалуйста, какие есть особенности работы с датчиками кислорода (О2) выход 4... 20мА, какой к ним подойдет макрос. Прикрутил макрос датчика влажности, но может есть еще какая -нибудь информация. ?
__________________ Красота в истине |
11.03.2019, 10:37 | #746 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
14.03.2019, 11:38 | #747 |
Senior Member
Регистрация: Dec 2018
Адрес: Tomsk
Сообщения: 431
Благодарил(а): 10 раз(а)
Поблагодарили:
4 раз(а) в 4 сообщениях
|
Ответ: FBD чайникам
Добрый день! Подскажите пожалуйста по поводу работоспособности счетчика.
Требуется организовать энергонезависимый циклический счетчик. Он должен сохраняться в момент пропадания питания. Работоспособно ли данное решение? Последний раз редактировалось Arsie, 25.03.2022 в 16:48 |
14.03.2019, 11:48 | #748 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
14.03.2019, 12:07 | #749 |
Senior Member
Регистрация: Dec 2018
Адрес: Tomsk
Сообщения: 431
Благодарил(а): 10 раз(а)
Поблагодарили:
4 раз(а) в 4 сообщениях
|
Ответ: FBD чайникам
как понял что если напряжение питания не восстанавливается в исходное состояние то сигнал на данном выходе не появляется. А тогда есть другие способы понять что контроллер отключается и при этом успеть записать значение в память?
|
14.03.2019, 12:13 | #750 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили:
655 раз(а) в 599 сообщениях
|
Ответ: FBD чайникам
Другой вопрос, нужно ли вам это. Требует ли этого ваша задача или вы просто выполняете её первым пришедшим на ум способом. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перевод FBD программы на FBD Logix | atp-service | Вопросы о программировании | 5 | 28.07.2022 19:13 |
Отсутствует связь по RS-485 при управлении параметрами из FBD | АндрейЛ | Связь с внешним миром | 16 | 15.05.2018 14:15 |
Кнопки в SMArt, управление из FBD (решено) | dp38 | SMLogix | 5 | 24.04.2017 18:33 |
C в FBD | Airborne | Вопросы о программировании | 21 | 14.08.2015 23:33 |
Прошу помощи, как будет на FBD | partner | Вопросы о программировании | 9 | 13.05.2014 15:27 |