1. В сообществе нашего форума Вконтакте создан раздел по продаже электронных компонентов.
    Каждый может продать в нем свои залежавшиеся детали. Подробности здесь.

Калман на Basic - е

Тема в разделе "Программирование", создана пользователем Дмитрий BASIC, 4 фев 2016.

  1. Дмитрий BASIC

    Дмитрий BASIC Живет здесь

    Сообщения:
    156
    Симпатии:
    88
    Довольно часто нужно сгладить какие нибудь данные ,например от какого нибудь датчика типа "BMP085" , для СИ - шников и людей дружных с вышМАТОМ это не проблема о чем написано много статей в интернете и есть много красивых формул , но все таки хочется как-то попроще без всяких там заморочек и матриц.

    Первое что пришло мне на ум это вычислить средние арифметическое значение но как показывает диаграмма ниже оно запаздывает и чем больше массив тем больше будет запаздывать.

    Вообщем услышал про фильтр Калмана .... не цензурная лексика .... и проведя пару дней перед компом, получилась вот такая картинка ниже .

    Бери народ , благо я не жадный но злой бываю!!!

    Kalman_sc.png
     
  2. Дмитрий BASIC

    Дмитрий BASIC Живет здесь

    Сообщения:
    156
    Симпатии:
    88
    Kalman=0.5.png Kalman=0.2.png Kalman=0.1.png Kalman=0.05.png Несколько картинок с разными значениями :
  3. UL7AAjr

    UL7AAjr В доску свой

    Сообщения:
    1.895
    Симпатии:
    310
    Род занятий:
    инженер-программист
    Адрес:
    Алма-Ата
    Для обработки сигналов от датчика не стоит использовать фильтр Кальмана. У него либо медленная реакция на большие перепады, либо излишняя чувствительность к мелким.

    Используйте среднее значение от кольцевого буфера длиной N после исключением K минимальных и K максимальных значений. Например для кольцевого буфера длиной 8 можно исключить одно или два минимальных и максимальных значений. Такой алгоритм может быть легко реализован без использования "плавающей" математики.
  4. Дмитрий BASIC

    Дмитрий BASIC Живет здесь

    Сообщения:
    156
    Симпатии:
    88
    Нужен тест , есть код этого алгоритма ?
  5. UL7AAjr

    UL7AAjr В доску свой

    Сообщения:
    1.895
    Симпатии:
    310
    Род занятий:
    инженер-программист
    Адрес:
    Алма-Ата
    У меня на Бэйсике нету. Да его написать-то 10-15 минут - потратить, быстрее чем искать готовый.
  6. _VN_

    _VN_ В доску свой

    Сообщения:
    468
    Симпатии:
    58
    Род занятий:
    Инженер
    Адрес:
    Алматы
    Нужна постановка задачи с самого начала:
    1. Если это делается для сертифицируемой в перспективе аппаратуры, то работать на основе существующих ГОСТ-ов или нормалей, например ГОСТ Р 8.736-2011 или аналогичный;
    2. Если приемлем п.1, то нужна индикация и установка режимов обработки информации,а , точнее, полная документация пользователя к программе, не раскрывающая секреты Вашей интеллектуальной собственности;
    3. Если пп. 1 и 2 Вас не раздражают, то отлаживать функциональные схемы алгоритмов удобнее в MathCad, а массивы данных для его тестирования вводить с Exel.
    P. S. Если работать таким образом, то Ваша работа может быть представлена как полезная и необходимая программа на любой выставке инноваций.

    Вложения:

  7. Дмитрий BASIC

    Дмитрий BASIC Живет здесь

    Сообщения:
    156
    Симпатии:
    88
    Ни хрена не понял , но нутром чую вещь нужная !!!

Поделиться этой страницей