- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Разработка весового терминала(алгоритм взвешивания)
-
- здесь недавно
- Сообщения: 8
- Зарегистрирован: 15 июн 2017, 21:35
- Имя: Алексей
- Страна: Россия
- город/регион: Москва
Разработка весового терминала(алгоритм взвешивания)
Доброго времени суток всем!
Упала задача от руководства разработать весовой терминал для взвешивания.
Исходные данные, есть в наличии весовая платформа Тензо М ВПА-100-1, контроллер в среде программирования (Codesys),модуль аналогового ввода для подключения тензо-мостов. Принцип реализации взвешивания и калибровки вроде понятен по двум точкам написал блок, но возникла следующая проблема. Код АЦП постоянно прыгает в последнем разряде, т.е например при переводе в кг
23.456 кг постоянно прыгают последние два разряда, вибраций и воздействий на систему особых нет. Пробовал усреднять значения и скользящим и медиальным средним эффекта особого нет.
Если кто сталкивался с подобными задачами подскажите советом, может есть уже алгоритм наработанный, как убрать эти скачки и что я не учёл ещё.
Заранее благодарен!
Упала задача от руководства разработать весовой терминал для взвешивания.
Исходные данные, есть в наличии весовая платформа Тензо М ВПА-100-1, контроллер в среде программирования (Codesys),модуль аналогового ввода для подключения тензо-мостов. Принцип реализации взвешивания и калибровки вроде понятен по двум точкам написал блок, но возникла следующая проблема. Код АЦП постоянно прыгает в последнем разряде, т.е например при переводе в кг
23.456 кг постоянно прыгают последние два разряда, вибраций и воздействий на систему особых нет. Пробовал усреднять значения и скользящим и медиальным средним эффекта особого нет.
Если кто сталкивался с подобными задачами подскажите советом, может есть уже алгоритм наработанный, как убрать эти скачки и что я не учёл ещё.
Заранее благодарен!
-
- частый гость
- Сообщения: 404
- Зарегистрирован: 25 фев 2016, 12:18
- Имя: Жидков Игорь Алексеевич
- Страна: РФ
- город/регион: Королев/Фрязино
- Благодарил (а): 4 раза
- Поблагодарили: 12 раз
Разработка весового терминала(алгоритм взвешивания)
Так какая вам точность нужна в итоге? На таком весе о грамме точности и не мечтайте, за десятки можно побороться, но только если у вас АЦП 24 бит, и есть возможность помеху 50 Гц отфильтровать.
А так источник помех может быть любой, нестабильность питания, наводки на провода, малые вибрации..
А так источник помех может быть любой, нестабильность питания, наводки на провода, малые вибрации..
Компилятор - лучший друг человека!
-
- здесь недавно
- Сообщения: 8
- Зарегистрирован: 15 июн 2017, 21:35
- Имя: Алексей
- Страна: Россия
- город/регион: Москва
Разработка весового терминала(алгоритм взвешивания)
Разрешение модуля 16 Bit, а требуемая точность +/- 50г, в модуле вроде как написано фильтр 50 Hz встроен..izhidkov писал(а): Так какая вам точность нужна в итоге? На таком весе о грамме точности и не мечтайте, за десятки можно побороться, но только если у вас АЦП 24 бит, и есть возможность помеху 50 Гц отфильтровать.
А так источник помех может быть любой, нестабильность питания, наводки на провода, малые вибрации.
-
- здесь недавно
- Сообщения: 14
- Зарегистрирован: 07 окт 2009, 19:57
- Имя: Смирнов Юрий Николаевич
- Страна: Россия
- город/регион: Рыбинск
- Поблагодарили: 1 раз
Разработка весового терминала(алгоритм взвешивания)
Лучшее решение - цифровая фильтрация. Например взять за основу http://smirn.bget.ru/product/digit.htm
-
- здесь недавно
- Сообщения: 8
- Зарегистрирован: 15 июн 2017, 21:35
- Имя: Алексей
- Страна: Россия
- город/регион: Москва
Разработка весового терминала(алгоритм взвешивания)
А какой то исходник программы есть, чтобы на codesys ST перенести?? А то не все понятно...
-
- частый гость
- Сообщения: 404
- Зарегистрирован: 25 фев 2016, 12:18
- Имя: Жидков Игорь Алексеевич
- Страна: РФ
- город/регион: Королев/Фрязино
- Благодарил (а): 4 раза
- Поблагодарили: 12 раз
Разработка весового терминала(алгоритм взвешивания)
какой НПВ и какая частота опроса? Если вы говорите что сделали усреднение и все равно толку нет, значит, вероятно, не так делали усреднение.
Компилятор - лучший друг человека!
-
- здесь недавно
- Сообщения: 8
- Зарегистрирован: 15 июн 2017, 21:35
- Имя: Алексей
- Страна: Россия
- город/регион: Москва
Разработка весового терминала(алгоритм взвешивания)
НПВ 150КГ, частота опроса модулем 500ms.. да вроде усреднял правильно по формулам, просто если глубину фильтра делать больше (кол-во выборок) реакция системы на изменение веса ну очень медленно...
Может быть подход при усреднении не правильный, если есть какой то пример программы только рад буду посмотреть...
-
- здесь недавно
- Сообщения: 14
- Зарегистрирован: 07 окт 2009, 19:57
- Имя: Смирнов Юрий Николаевич
- Страна: Россия
- город/регион: Рыбинск
- Поблагодарили: 1 раз
Разработка весового терминала(алгоритм взвешивания)
Используйте саму формулу фильтра Y = 0,0009 * Xi + 1,9556 * Yib - 0,9565 * Yia, где
Xi - входной отсчет АЦП
Yia - выходное значение формулы на предыдущем (i-1) измерении (шаге)
Yib - выходное значение формулы на пред.предыдущем (i-2) измерении (шаге)
Это будет фильтр 2-го порядка. Два последовательно включенных таких фильтра дадут 4 порядок
Больше для весов и не требуется.
Xi - входной отсчет АЦП
Yia - выходное значение формулы на предыдущем (i-1) измерении (шаге)
Yib - выходное значение формулы на пред.предыдущем (i-2) измерении (шаге)
Это будет фильтр 2-го порядка. Два последовательно включенных таких фильтра дадут 4 порядок
Больше для весов и не требуется.
-
- здесь недавно
- Сообщения: 8
- Зарегистрирован: 15 июн 2017, 21:35
- Имя: Алексей
- Страна: Россия
- город/регион: Москва
Разработка весового терминала(алгоритм взвешивания)
Измеренные значения я должен из массива какого то брать или просто три строчки:Юрий См писал(а):Используйте саму формулу фильтра Y = 0,0009 * Xi + 1,9556 * Yib - 0,9565 * Yia, где
Xi - входной отсчет АЦП
Yia - выходное значение формулы на предыдущем (i-1) измерении (шаге)
Yib - выходное значение формулы на пред.предыдущем (i-2) измерении (шаге)
Это будет фильтр 2-го порядка. Два последовательно включенных таких фильтра дадут 4 порядок
Больше для весов и не требуется.
Y:=0.0009*X+1.9556*Yib-0.9565*Yia;
Yia:=Y;
Yib:=Yia;
Запутался в трёх соснах....
-
- здесь недавно
- Сообщения: 14
- Зарегистрирован: 07 окт 2009, 19:57
- Имя: Смирнов Юрий Николаевич
- Страна: Россия
- город/регион: Рыбинск
- Поблагодарили: 1 раз
Разработка весового терминала(алгоритм взвешивания)
Можно после каждого измерения АЦП, если нет ограничений...
Только последовательность действий:
Y:=0.0009*X+1.9556*Yib-0.9565*Yia;
Yib:=Yia;
Yia:=Y;
Частота среза фильтра зависит от частоты выборки АЦП
Только последовательность действий:
Y:=0.0009*X+1.9556*Yib-0.9565*Yia;
Yib:=Yia;
Yia:=Y;
Частота среза фильтра зависит от частоты выборки АЦП
-
- здесь недавно
- Сообщения: 33
- Зарегистрирован: 09 авг 2017, 14:50
- Имя: Александр
- Страна: Россия
- город/регион: Надмосковье
- Поблагодарили: 11 раз
Разработка весового терминала(алгоритм взвешивания)
Фильтров применяемых для обработки сигналов много и у каждого есть и плюсы и минусы, и каждый под свою задачу. Так же, иногда, целесообразно применять комбинацию фильтров. Выбор того или иного фильтра требует анализа сигнала.
Общую информацию можете посмотреть http://teracompany.ru/signal-filter/
В части конкретных фильтров:
Скользящие http://teracompany.ru/signal-filter-sma/
Экспоненциальные http://teracompany.ru/signal-filter-ema/
Медианные http://teracompany.ru/signal-filter-mf-1/
и пр.
Общую информацию можете посмотреть http://teracompany.ru/signal-filter/
В части конкретных фильтров:
Скользящие http://teracompany.ru/signal-filter-sma/
Экспоненциальные http://teracompany.ru/signal-filter-ema/
Медианные http://teracompany.ru/signal-filter-mf-1/
и пр.