|
Вопросы о программировании Вопросы, касающиеся программирования на FBD |
|
Опции темы | Поиск в этой теме |
19.11.2016, 19:59 | #1 |
Member
Регистрация: Jun 2012
Адрес: Магнитогорск
Сообщения: 71
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
МС-04хх-хх, опрос AIN
Пишу сюда, потому как в тему о быстродействии контроллеров под названием " Поговорим о быстродействии контроллеров " простых смертных обсуждать не пускают. Так вот я столкнулся с другой ситуацией - скорость иногда не самый важный параметр контроллера. Время опроса аналоговых входов МС-04хх-хх в среднем 0.1с на канал 0-10В (хотя и для токового 4-20мА аналогично вроде). Суть в следующем - у меня в программе есть привод положения не самый быстрый, время движения от концевых до концевых аж 4 секунды. Так вот, задействовав все 8 аналоговых входов, я получил шляпу - суммарное время опроса всех входов стало 0.8 сек, и поймав худо-бедно с точностью в несколько процентов положение привода с одним аналоговым входом, я полностью разрегулировал систему управления при всех подключенных аналоговых входах. Я понимаю, что Вы там подстраховались, в свойствах контроллера в окне SMLogix пишется просуммированное время опроса аналоговых сигналов, но для меня был неприятной неожиданностью следующий факт. Оказывается, время опроса каналов не зависит от цикла контроллера и даже от типа контроллера, и приобретя быстродействующий контроллер 2Gi, я не получил уменьшение времени опроса всех каналов до приемлемого значения 8х10мс (цикл программы 10 мс). Почти секунда уходит на опрос всех входов, это же очень много! Выходит, что нет возможности привязать в МС не постоянные 100мс на канал, а к времени цикла контроллера? Как мне выйти из этой ситуации - я уже знаю, буду заказывать модбасный быстрый аналоговый модуль... А разработчики что могут сказать об этой проблеме? Будет ли когда-нибудь решение с привязанным к времени цикла контроллера опросом входа?
|
19.11.2016, 22:25 | #2 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Возьмите "Векторный ПИД-регулятор." - и будет Вам счастье
Или у Вас привод 0...10 В с обратной связью? Тогда 4 сек. - это очень даже быстро. Стандартное время привода в HVAC - 120..180 сек.. Если у Вас такое быстрое регулирование - то FBD вам не подойдёт. Надо аналоговый контроллер. Если будете использовать FBD - то попробуйте выдавать управляющие воздействия медленнее, либо порционно. В конце концов, просто увеличить время интегрирования в ПИ регуляторе. И вообще - поизучайте макросы в библиотеке и на форуме, множество вопросов отпадёт само собой. __________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. Последний раз редактировалось serg-el, 19.11.2016 в 22:35 |
19.11.2016, 23:51 | #3 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 784
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
А причем здесь вообще контроллер если это характеристика самого МС? Вроде никто быстродействующий и не обещал.
|
20.11.2016, 12:53 | #4 |
Member
Регистрация: Jun 2012
Адрес: Магнитогорск
Сообщения: 71
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Да, 0-10В с обратной связью, по резистивному датчику положения... И еще - я не зря уточнил, что мне нужна точность порядка нескольких процентов (что на самом деле не очень сложно достигнуть), и суть проблемы не в точности, а в увеличении времени реакции аналогового модуля при увеличении количества входов. Читайте описание проблемы правильно! Поработав с некоторыми другими микроконтроллерами, считаю правильным иметь привязку времени опроса входов завязанным на время цикла программы. Вам мое мнение может не нравиться, но раз проект развивается, должно быть движение вперед и по этой проблеме.
|
20.11.2016, 14:47 | #5 |
Senior Member
Регистрация: May 2009
Сообщения: 1 034
Благодарил(а): 9 раз(а)
Поблагодарили:
22 раз(а) в 22 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
А зачем?
__________________ RTFM |
20.11.2016, 18:10 | #6 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
МС модуль внешний, со своим АЦП, процессором, памятью, шинным контроллером.
Уж какой есть. Даже если возьмёте внешний модуль другой фирмы, время опроса модуля в любом случае не будет совпадать с циклом программы. Это в любом случае не синхронные процессы. __________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
20.11.2016, 18:46 | #7 |
Senior Member
Регистрация: Jan 2012
Адрес: Саратов
Сообщения: 179
Благодарил(а): 1 раз(а)
Поблагодарили:
3 раз(а) в 3 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Если угодно: питерский модуль WAD-AIK-BUS имеет время измерения напряжения и тока 15 миллисекунд, сопротивления - 30 миллисекунд на канал, АЦП - 24 разряда и цену ~220 евро. А зачем такое быстродействие при нагреве помещения?
|
20.11.2016, 21:01 | #8 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 784
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
|
21.11.2016, 09:53 | #9 |
Member
Регистрация: Jun 2012
Адрес: Магнитогорск
Сообщения: 71
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
"Как мне выйти из этой ситуации - я уже знаю, буду заказывать модбасный быстрый аналоговый модуль... " Все предложенные всеми обсуждающими варианты решения мне давно известны, спасибо, я всех Вас услышал...
|
21.11.2016, 11:07 | #10 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Есть одна проблема в применении любого модбасного модуля аналогового ввода: скорость обмена по сети + ошибки передачи данных.
Я бы использовал отдельный аналоговый пид-регулятор (отдельным прибором) с rs-485 интерфейсом. Он измерял бы контрольный параметр своим входом и учитывал бы положение сервопривода + осуществлял быстрое регулирование (таким способом, мне удавалось "поймать" разрежение в котле шибером дымососа, разрежение менялось стремительно, особенно при розжиге и переходе ступеней горелки, там реакция регулятора должна была быть прям в реальном времени). А по интерфейсу этот прибор будет получать только уставку и отдавать измеренное значение. Таким образом, вы можете задавать ему задание, а уж о скорости регулирования он сам позаботится. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
21.11.2016, 11:27 | #11 |
Senior Member
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
О чём я и писал выше.
__________________ Всё, что нельзя выразить в цифрах — это не наука, это — мнение. |
21.11.2016, 11:32 | #12 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 084
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Цитата:
Допустим, привод настолько неточен, что в ответ на напряжение 5В встаёт в позицию 75%. Мне сложно такое представить, но допустим, что такие нехорошие приводы существуют. В этом случае вам один раз в жизни нужно откалиброваться по обратной связи. Т.е. выставить на аналоговом выходе последовательно напряжения 1, 2, 3 ... 10В и сравнить с сигналом обратной связи. Если есть разница, ввести поправочные коэффициенты. Далее при каждом включении убеждаться, что привод работоспособен и управляемый орган не закис: гонять его в позицию 0% и 100% с проверкой по обратной связи. Ну или сравнивать реальную позицию с заданной при задержке привода в одной позиции дольше, чем на 5 сек. Резюмирую. Быстродействующий модуль в этом случае не нужен. --------------- Если же у вас "дискретный" привод с обратной связью 0..10В, то рассматривать уже нужно задачу в целом. В этом случае тоже есть варианты решения. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. Последний раз редактировалось Arsie, 21.11.2016 в 12:07 |
|
21.11.2016, 20:32 | #13 |
Member
Регистрация: Jun 2012
Адрес: Магнитогорск
Сообщения: 71
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
"Есть одна проблема в применении любого модбасного модуля аналогового ввода: скорость обмена по сети + ошибки передачи данных." Странно слыщать такой ответ от представителя компании. Внутри Modbus протокола организована проверка пакета (контрольная сумма) именно для исключения передачи неверного пакета. Поэтому проблемой будет лишь скорость, но расстояния в моем проекте минимальны, скорость позволительна максимальная, всего несколько метров. Поправьте меня если я не прав.
|
21.11.2016, 21:30 | #14 |
Senior Member
Регистрация: May 2009
Сообщения: 1 034
Благодарил(а): 9 раз(а)
Поблагодарили:
22 раз(а) в 22 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Особенно от представителя компании, которая свой модуль аналогового ввода сделать так и не смогла и, каждый раз при нехватке аналоговых входов, рекомендует увеличивать их кол-во именно по Modbus.
__________________ RTFM |
22.11.2016, 10:45 | #15 | |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Цитата:
Сейчас уже у всех, даже китайцев, проверка контрольной суммы в модбасе есть, ожидал, что все к этому привыкли. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
|
22.11.2016, 11:57 | #16 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 084
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: МС-04хх-хх очень медленный опрос A_In.
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|