Реализация Калмана Фильтра в LabView
-
- beginner
- Сообщения: 26
- Зарегистрирован: 22 ноя 2008, 02:29
- Версия LabVIEW: 8.5
- Контактная информация:
Реализация Калмана Фильтра в LabView
Здравствуйте! Совсем недавно занялась проектом, в котором мне необходимо реализовать Калман фильтра в LabView.
На данном эпапе мною просто реализованы основные уранения Калмана Алгоритма.
Недавно в литературе проситала, что Калман фильтр может быть реализован легко в LabView, так как имеется там уже готовый компонент. К сожалению, как и что делается - я так и не нашла.
Если кто-нибудь располагает интересующей меня информацией - пожалуйста пишите!
P.S.: Второй вопрос как вообще можно внедрить C или Matlab код в LabVIEW. Если у меня уже есть готовые программы для Калмана Фильтра на С и модели в Matlab.
Заранее огромное спасибо
На данном эпапе мною просто реализованы основные уранения Калмана Алгоритма.
Недавно в литературе проситала, что Калман фильтр может быть реализован легко в LabView, так как имеется там уже готовый компонент. К сожалению, как и что делается - я так и не нашла.
Если кто-нибудь располагает интересующей меня информацией - пожалуйста пишите!
P.S.: Второй вопрос как вообще можно внедрить C или Matlab код в LabVIEW. Если у меня уже есть готовые программы для Калмана Фильтра на С и модели в Matlab.
Заранее огромное спасибо
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
Я бы предложил второй вариант, раз алгоритмы уже есть. Внедрить код можно с помощью Formula Node. Для этого есть готовые примеры в .
-
- beginner
- Сообщения: 26
- Зарегистрирован: 22 ноя 2008, 02:29
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
В том то и дело, что мне необходимо самой реализовывать Калман фильтр. :)
А про внедрение кода расскажите, пожалуйста, подробнее. Я думала, что Formula Node служит только для вычисления обычных мат.уравнений, а не для огромной программы, например на С.
А про внедрение кода расскажите, пожалуйста, подробнее. Я думала, что Formula Node служит только для вычисления обычных мат.уравнений, а не для огромной программы, например на С.
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
Нет, ну я же не говорю всю Си-прогу засунуть в Formula Node. Программа алгоритма ведь состоит из нескольких мат. функций. Вот эти мат. функции, каждую поотдельности засунуть в Formula Node, определить входы и выходы и использовать в основной программе.
Я так недавно сделал в одном из моих проектов.
Я так недавно сделал в одном из моих проектов.
-
Konstantin Sumenko
- expert
- Сообщения: 1439
- Зарегистрирован: 17 июл 2008, 12:20
- Награды: 2
- Версия LabVIEW: 2010
- Откуда: Moscow
- Поблагодарили: 1 раз
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
Фильтр калмана... забавный фильтр. Я нашел готовое решение, но его не проверял: http://home.cfl.rr.com/csduffey/Kalman.zip
-
- beginner
- Сообщения: 26
- Зарегистрирован: 22 ноя 2008, 02:29
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
eg:
1)Функцию Formula Node я уже использовала как раз для того, чтобы просто реализовать все уравнения для Калмана фильтра.
Еще я читала про функцию Code Interface Node-CIN. С помощью нее тоже можно внедрить С код в LabView? Или там есть какие-то заморочки?
2) Еще появился вопрос о том, как можно считывать входные данные из файла. Например, из текстового или из mat- файла. Спасибо заранее
crowbar:
Спасибо Вам! Сейчас все посмотрю
1)Функцию Formula Node я уже использовала как раз для того, чтобы просто реализовать все уравнения для Калмана фильтра.
Еще я читала про функцию Code Interface Node-CIN. С помощью нее тоже можно внедрить С код в LabView? Или там есть какие-то заморочки?
2) Еще появился вопрос о том, как можно считывать входные данные из файла. Например, из текстового или из mat- файла. Спасибо заранее
crowbar:
Спасибо Вам! Сейчас все посмотрю
-
Viktor
- expert
- Сообщения: 1408
- Зарегистрирован: 23 мар 2008, 10:56
- Награды: 4
- Версия LabVIEW: 2020
- Откуда: Санкт-Петербург
- Благодарил (а): 17 раз
- Поблагодарили: 3 раза
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
Похоже эта библиотека для версий 5 или нижеCrowbar писал(а):Фильтр калмана... забавный фильтр. Я нашел готовое решение, но его не проверял: http://home.cfl.rr.com/csduffey/Kalman.zip
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
CINом лучше непользоваться, заморочек много и вообще устаревшая это вещь. Если, то лучше сделать DLL.Irina_Gushchina писал(а):eg:
1)Функцию Formula Node я уже использовала как раз для того, чтобы просто реализовать все уравнения для Калмана фильтра.
Еще я читала про функцию Code Interface Node-CIN. С помощью нее тоже можно внедрить С код в LabView? Или там есть какие-то заморочки?
2) Еще появился вопрос о том, как можно считывать входные данные из файла. Например, из текстового или из mat- файла. Спасибо заранее
crowbar:
Спасибо Вам! Сейчас все посмотрю
Считывать данные с файла совсем несложно. Примеры можно найти в нашем форуме. Если возникнет конкретный вопрос по этому поводу, можно будет обсудить в отдельном топике.
-
- beginner
- Сообщения: 26
- Зарегистрирован: 22 ноя 2008, 02:29
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
eg:
Я что-то не нашла на форуме примеров , как загрузить данные из файлов и создала отдельную тему... :(
К сожалению, никто не пишет. Подскажите, где находятся примеры - я все просмотрю.
И еще вопрос по-поводу MatLab. Код из MatLab также в можно загрузить ,используя Formula Node?
Я что-то не нашла на форуме примеров , как загрузить данные из файлов и создала отдельную тему... :(
К сожалению, никто не пишет. Подскажите, где находятся примеры - я все просмотрю.
И еще вопрос по-поводу MatLab. Код из MatLab также в можно загрузить ,используя Formula Node?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
Ну можно попробовать Matlab Script Node, в нём можно выполнять м-файлы через матлаб. То есть будет вызывать Matlab, а Matlab будет исполнять свой м-файл и выдавать ответы через этот узел обратно в
Или можно использовать MathScript Node, в него можно скопировать код из м-файла. Тогда код будет исполнятся в . В синтаксисе могут быть некоторые различия, но их можно подогнать.
Formula Node работает примерно так же как и MathScript Node, но по-моему больше ориентирован на синтаксис Си.
Или можно использовать MathScript Node, в него можно скопировать код из м-файла. Тогда код будет исполнятся в . В синтаксисе могут быть некоторые различия, но их можно подогнать.
Formula Node работает примерно так же как и MathScript Node, но по-моему больше ориентирован на синтаксис Си.
-
- beginner
- Сообщения: 26
- Зарегистрирован: 22 ноя 2008, 02:29
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
Спасибо за ответ, но теперь возникает следующий вопрос: каким образом объявить в блоке Formula Node динамический массив (матрицу) на выходе? Размеры этого массива будут известны только в процессе выполнения кода.eg писал(а):Нет, ну я же не говорю всю Си-прогу засунуть в Formula Node. Программа алгоритма ведь состоит из нескольких мат. функций. Вот эти мат. функции, каждую поотдельности засунуть в Formula Node, определить входы и выходы и использовать в основной программе.
Я так недавно сделал в одном из моих проектов.
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Реализация Калмана Фильтра в LabView
Можно например заранее зарезервировать массив максимального размера в и подать на вход Formula Node, а там этот массив заполнить и выдать на выходе. Так же выдать размер (ведь он уже будет известен). Ну а после выполнения Formula Node можно средствами обрезать массив на нужный размер.
А может быть и есть варианты попроще, точно не знаю.
А может быть и есть варианты попроще, точно не знаю.
-
- doctor
- Сообщения: 2210
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 26 раз
Re: Реализация Калмана Фильтра в LabView
Возникла следующая проблема с этим фильтром: Он присутствует в Control Design & Simulation модуле. А если быть точнее - Control Design & Simulation/Control Design/Implementation/CD Discrete Kalman Filter.vi
Проблема в следующем - невозможно (я пока не вижу путей) запустить выполнение двух и более процессов обработки с этим фильтром, с разными параметрами. Функция нереентрантная, мало того - невозможно получить доступ даже к передней панели VI. Может, кто подскажет, как обеспечить выполнение двух нереентрантных экземпляров ?
Проблема в следующем - невозможно (я пока не вижу путей) запустить выполнение двух и более процессов обработки с этим фильтром, с разными параметрами. Функция нереентрантная, мало того - невозможно получить доступ даже к передней панели VI. Может, кто подскажет, как обеспечить выполнение двух нереентрантных экземпляров ?
-
IvanLis
- guru
- Сообщения: 5462
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 86 раз
Re: Реализация Калмана Фильтра в LabView
Если внутри не используются другие "зависимые" библиотеки и функции, то можно попробовать создать копию с другим именем и использовать для работы в другом процессе.Borjomy_1 писал(а):Может, кто подскажет, как обеспечить выполнение двух нереентрантных экземпляров ?
Я как-то делал два экземпляра DLL, что бы запустить две "зависимых" .
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- doctor
- Сообщения: 2210
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 26 раз
Re: Реализация Калмана Фильтра в LabView
Все-бы ничего, но!Если внутри не используются другие "зависимые" библиотеки и функции, то можно попробовать создать копию с другим именем
И VI отсутствует Hierarchy, а также в Browse Relationships/Unopened SubVIsневозможно получить доступ даже к передней панели VI
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 0 Ответы
- 1844 Просмотры
-
Последнее сообщение Anastasia
-
- 3 Ответы
- 2027 Просмотры
-
Последнее сообщение PozhiloyGoblin
-
- 0 Ответы
- 322 Просмотры
-
Последнее сообщение maxim_MA
-
- 23 Ответы
- 2261 Просмотры
-
Последнее сообщение dadreamer
-
- 2 Ответы
- 373 Просмотры
-
Последнее сообщение ujin1