Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Цифровые сигнальные процессоры Вопросы, связанные с применением цифровых сигнальных процессоров: программирование, отладочные средства, алгоритмы...

 
Опции темы
Непрочитано 02.07.2010, 15:51  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

Сообщение от Nikopol Посмотреть сообщение
и выяснил, что метод Калмана, в моем случае, не применим.
Вы это не выяснили а приняли на веру.
Реклама:
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 03.07.2010, 15:00  
Nikopol
Вид на жительство
 
Аватар для Nikopol
 
Регистрация: 05.01.2007
Адрес: Украина, г. Макеевка
Сообщений: 408
Сказал спасибо: 229
Сказали Спасибо 62 раз(а) в 52 сообщении(ях)
Nikopol на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

Уважаемый avr123-nm-ru, это уже не Вам решать на сколько я разобрался в методе и принял решение основываясь на личных выводах либо выводах других. Для меня данная ветка оказала большую помощь, не без Вашего участия тоже, и необходимых результатов я добился в рамках своей задачи. Если же Вас что то не устраивает, пожалуйсто, продолжайте тему, задавайте вопросы, я не против, наоборот будет очень интересно прочесть. ТЕм более есть пользователи готовые ответить на конкретные вопросы. Удачи!
__________________

____________________________________________
Internet Explorer - это такая программа, с помощью которой можно зайти на сайт http://opera.com и скачать себе браузер...
Nikopol вне форума  
Непрочитано 11.07.2010, 04:22  
YuriDp
Прохожий
 
Регистрация: 13.09.2008
Сообщений: 1
Сказал спасибо: 2
Сказали Спасибо 1 раз в 1 сообщении
YuriDp на пути к лучшему
Сообщение Re: Нужна помощь в реализации фильтра Калмана

Возможно, мой совет запоздал по времени, но он имеет достаточно универсальный характер, и, я думаю, пригодится многим. Дело в том, что в пакете MatLAB имеется огромный набор различных алгоритмов (в т. ч. и фильтра Калмана), реализованных соответствующими функциями. Самое замечательное, что все встроенные функциии реализованы в виде m-файлов, которые представляют собой обычный текстовый файл, содержащий исходный код функции на встроенном языке пакета MatLAB. Этот язык - бейсикоподобный, достаточно прост для понимания теми, кто знаком с каким-либо языком программирования. Как показывает опыт, перевод алгоритмов MatLAB'а на другие языки программирования, не вызывает каких либо затруднений. Единственная особенность - высокая степень вложенности функций - даже самые сложные функции редко когда содержат более 10 строк кода - обычно большую часть файла занимают весьма подробные комментарии. В коде функции обычно идет обращение к более низкоуровневым функциям, которые, в свою очередь обращаются к еще более низкоуровневым функциям и т. д. Поэтому для полного раскрытия алгоритма приходится иногда проходить от 5 до 10, а иногда - и более уровней.
YuriDp вне форума  
Сказали "Спасибо" YuriDp
Proventom (28.10.2010)
Непрочитано 21.03.2013, 23:38  
Aledio
Прохожий
 
Регистрация: 21.03.2013
Сообщений: 1
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Aledio на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

Доброго времени суток. В одном иностранном источнике наткнулся на применение Information filter в задаче навигации. Из того, что удалось понять - это фильтр, который проще фильтра Калмана и в некоторых случаях его использование более оправдано. Знаний, чтобы корректно перевести англоязычный источник не хватает. Начал искать русскоязычные публикации по этому фильтру, но по запросу "информационный фильтр" ничего толкового не находит. Может кто-то сталкивался с этим фильтром и может посоветовать русскоязычную литературу? Или же возможно подскажет, как в русскоязычных публикациях интерпретируется Information filter.
__________________
Автолидер
Aledio вне форума  
Непрочитано 22.03.2013, 12:45  
Alecsej
Вид на жительство
 
Регистрация: 10.08.2005
Сообщений: 385
Сказал спасибо: 0
Сказали Спасибо 161 раз(а) в 140 сообщении(ях)
Alecsej на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

А на русском все, что публикуется выходит в основном на бумаге.
http://www.elektropribor.spb.ru/publ/rpubl
эти товарищи конференции проводят и сборник к ним выпускают.
Там на русском кое-что полезного можно почерпнуть.
Привыкайте к английскому и японскому.

Information filter

In the information filter, or inverse covariance filter, матрицы ковариации и вектора состояния заменяются информационной матрицей и информационным вектором соответственно. These are defined as:

...


Главный плюс information filter N измерений обрабатываются на каждом шагепросто суммированием информационных матриц и векторов.
Alecsej вне форума  
Сказали "Спасибо" Alecsej
Aledio (24.03.2013)
Непрочитано 26.03.2013, 01:13  
whoim
Почётный гражданин KAZUS.RU
 
Аватар для whoim
 
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
whoim на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

.h
Код:
#ifndef _KALMAN
#define _KALMAN

#include ‹avr\io.h›

typedef struct {
	double q; //process noise covariance
	double r; //measurement noise covariance
	long double x; //value
	double p; //estimation error covariance
	double k; //kalman gain
	uint8_t i; //init flag
} kalman_state;

kalman_state kalman_init(double q, double r, double p, long double intial_value);
void kalman_update(kalman_state *state, long double measurement);

#endif
.c
Код:
#include "kalman.h"

kalman_state kalman_init(double q, double r, double p, long double intial_value)
{
	kalman_state result;
	result.q = q;
	result.r = r;
	result.p = p;
	result.x = intial_value;
	result.i = 1;

	return result;
}

void kalman_update(kalman_state *state, long double measurement)
{
	//prediction update
	//omit x = x
	state-›p = state-›p + state-›q;

	//measurement update
	state-›k = state-›p / (state-›p + state-›r);
	state-›x = state-›x + state-›k * (measurement - state-›x);
	state-›p = (1 - state-›k) * state-›p;
}
Код:
#define kalman_q 0.0000000001
#define kalman_r 0.000001
#define kalman_p 1

 x = kalman_init(kalman_q, kalman_r, kalman_p, xxx);
or
 kalman_update(&x, xxx);
whoim вне форума  
Непрочитано 21.07.2016, 22:47  
miwutka
Почётный гражданин KAZUS.RU
 
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
miwutka на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

Мужики спидометр по датчику скорости работает супер. А вот тахометр подключил - он скачет сильно и когда газ нажимаешь не реагирует особо. Непойму что тахометр работать не будет?? Когда на ИНТ0 подключал то конечно работало. Делал подсчет импульсов. А тут такое не прокатит??? Вроде ж тожесамое....
miwutka вне форума  
Непрочитано 21.07.2016, 22:48  
miwutka
Почётный гражданин KAZUS.RU
 
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
miwutka на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

не в той теме написал, сорри ))
miwutka вне форума  
Непрочитано 21.07.2016, 22:57  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 918
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Нужна помощь в реализации фильтра Калмана

А вот мой калман:
Код:
void KalmanFloatCalc (KalmanFloatStructTypeDef * KalmanFloatStruct)
{
  KalmanFloatStruct-›Result = KalmanFloatStruct-›K * KalmanFloatStruct-›Value;
  KalmanFloatStruct-›Value = 1.0 - KalmanFloatStruct-›K;
  KalmanFloatStruct-›Previous *= KalmanFloatStruct-›Value;
  KalmanFloatStruct-›Result += KalmanFloatStruct-›Previous;
  KalmanFloatStruct-›Previous = KalmanFloatStruct-›Result;
}
Код:
typedef struct
{
  float Result;                 //результирующее значение
  float Value;                  //исходное значение
  float Previous;               //результат вычисления в предыдущей интерации
  float K;                      //коэффициент стабилизации, по-умолчанию = 0.1
}KalmanFloatStructTypeDef;
Easyrider83 вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь ORION tv8201 offo Видеотехника 43 30.04.2010 08:12
Нужна помощь с картой SD в режим SD! (не SPI) backa Микроконтроллеры, АЦП, память и т.д 2 23.04.2010 15:28
Нужна помощь по схемотехнике (устройство - нечто вроде электронного ключа) aknyazhev Электроника - это просто 10 31.03.2010 19:10
AVR Studio и AT89S51 - нужна помощь roobeeaz Микроконтроллеры, АЦП, память и т.д 5 13.03.2010 18:34
Mega16 нужна помощь Alex_Megavolt_79 Микроконтроллеры, АЦП, память и т.д 12 02.03.2010 03:03


Часовой пояс GMT +4, время: 03:02.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot