реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> из matlab в DSP, генерация кода для сигнальника матлабом
maxis
сообщение Apr 12 2011, 08:23
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 67
Регистрация: 2-06-09
Пользователь №: 49 843



Вообщем синтезировал фильтр Калмана в матлабе, теперь всё это необходимо перенести в сигнальник С6713 от TI. Так как весь расчёт проводится через матрицы и вектора а также очень страшные операции то если честно у меня нет желания переносить код руками( Слышал что можно получить из матлаба код непосредственно для внедрения его на ДСПшник или ПЛИСину. Неподскажете в какую сторону копать, где можно почитать об этом?
Go to the top of the page
 
+Quote Post
Иван Панченко
сообщение Apr 12 2011, 13:18
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 74
Регистрация: 29-11-08
Из: санкт-петербург
Пользователь №: 42 061



оптимальный местом копания по матлабу - является хэлп по матлабу=)
>>doc
затем fdatool.
еще хорошее место прочитать про матлаб:
matlab.exponenta.ru
Хотя я бы на вашем месте, сделал это ручками, через экспорт коэффициентов фильтра в матлаб и приведение их там в нужный мне вид
(ну для fpga делаю именно так)
Go to the top of the page
 
+Quote Post
maxis
сообщение Apr 12 2011, 14:11
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 67
Регистрация: 2-06-09
Пользователь №: 49 843



Цитата(Иван Панченко @ Apr 12 2011, 17:18) *
оптимальный местом копания по матлабу - является хэлп по матлабу=)
>>doc
затем fdatool.
еще хорошее место прочитать про матлаб:
matlab.exponenta.ru
Хотя я бы на вашем месте, сделал это ручками, через экспорт коэффициентов фильтра в матлаб и приведение их там в нужный мне вид
(ну для fpga делаю именно так)

Насколько я знаю фильтра Калмана нет в fdatool. И вообще его там быть не может) Данный фильтр нужен для получения максимально точной оценки смешивая несколько неточных.
Математика данного фильтра у меня описана в *.m файле. Этот код нужно перенести на си. Написание функций для транспортирования матриц, умножения матриц на вектор, нахождения обратной матрицы и т.д. займёт крайне много времени. Соответственно и возник вопрос можно ли сгенерировать си код для сигнальника из m-файла.
Go to the top of the page
 
+Quote Post
1lliivv1
сообщение Apr 12 2011, 17:51
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 15-03-10
Пользователь №: 55 996



Пройдите по ссылкам из второго сообщения этой темы, может поможет

http://electronix.ru/forum/index.php?showtopic=88786
Go to the top of the page
 
+Quote Post
maxis
сообщение Apr 12 2011, 19:23
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 67
Регистрация: 2-06-09
Пользователь №: 49 843



Цитата(1lliivv1 @ Apr 12 2011, 21:51) *
Пройдите по ссылкам из второго сообщения этой темы, может поможет

Там по интересующей теме ничего нет, только ссылки на несуществующие ссылки.
Цитата(1lliivv1 @ Apr 12 2011, 21:51) *

Это всё есть и в предыдущих версиях, вот только документацию на Real-Time Workshop в свободном доступе не найти.
Go to the top of the page
 
+Quote Post
shf_05
сообщение Apr 16 2011, 08:25
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 22-04-08
Из: г. Екатеринбург
Пользователь №: 36 992



из м файла в С вроде легко перегоняется, если код не использует ряд тулбоксов.
см. хелп на mcc - матлаб компилер.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Apr 16 2011, 08:59
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(maxis @ Apr 12 2011, 12:23) *
Вообщем синтезировал фильтр Калмана в матлабе, теперь всё это необходимо перенести в сигнальник С6713 от TI. Так как весь расчёт проводится через матрицы и вектора а также очень страшные операции то если честно у меня нет желания переносить код руками( Слышал что можно получить из матлаба код непосредственно для внедрения его на ДСПшник или ПЛИСину. Неподскажете в какую сторону копать, где можно почитать об этом?



Поищите библиотеки "очень страшных операций" (каких же? Холецкий что-ли, для корневой реализации Калмана?) в плавучке, и через них уже перенесите. но если потребуется оптимизация, чтобы выжать максимальную скорость - то возможно придется поработать и ручками, если вдруг не найдете реализации этих очень страшных операций для процессора у самого TI.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
EIN ENGEL
сообщение Apr 17 2011, 18:03
Сообщение #8





Группа: Новичок
Сообщений: 2
Регистрация: 21-01-08
Из: Москва
Пользователь №: 34 288



в 32х версии Матлаба есть тулбоксы для синтеза кода под ЦСП. В хелпе они помечены зелёной книжкой. Посмотрите Target Support Package и Embedded IDE Link.

в 64х версии их нет. Или я просто не смог найти дистрибутива Матлаба с ними. :-)
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение Apr 18 2011, 13:24
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



2 maxis: Как говорится, лучше один раз увидеть, чем сто раз услышать или прочитать: во вложении я прилагаю простейшую модель под микроконтроллер TMS320F28335. Си-код с модели можно получить следующим образом: Tools -> Real-Time Workshop -> Build model. Сгенерится Си-код, вызовется Code Composer, проект соберётся сам и загрузится в микроконтроллер на исполнение через внутрисхемный эмулятор. Вуаля!
По теме я читал пдфки из документации "Матлаба". На мой взгляд, там есть всё, что необходимо. Удачи!
Прикрепленные файлы
Прикрепленный файл  TimerCheck.zip ( 71.5 килобайт ) Кол-во скачиваний: 52
 
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение Apr 19 2011, 12:30
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



2 maxis: Наверное стоит добавить, что необходимое преобразование расчётов из m-файла в Си-код наиболее просто можно сделать путём вставки содержимого m-файла в блок "Embedded MATLAB function", который затем следует подключить к общей модели в "Симулинке". Внутри встроенной матлабовской функции расчёты будут производиться в дробных числах. Я делал явное приведение типов к целым внутри неё. В отличие от встроенных функций, S-функции требуют предвательной сборки перед общей сборкой модели, что слегка напрягает. По своему опыту могу сказать, что избыточности Си-кода, полученного из "Матлаба", я не ощутил, ручками написал бы так же, да и мощности микроконтроллера хватило с запасом. Успехов!
Go to the top of the page
 
+Quote Post
Alex-GTU
сообщение May 26 2011, 07:19
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 587
Регистрация: 23-05-05
Пользователь №: 5 318



Цитата(Enthusiast @ Apr 18 2011, 17:24) *
2 maxis: Как говорится, лучше один раз увидеть, чем сто раз услышать или прочитать: во вложении я прилагаю простейшую модель под микроконтроллер TMS320F28335. Си-код с модели можно получить следующим образом: Tools -> Real-Time Workshop -> Build model. Сгенерится Си-код, вызовется Code Composer, проект соберётся сам и загрузится в микроконтроллер на исполнение через внутрисхемный эмулятор. Вуаля!
По теме я читал пдфки из документации "Матлаба". На мой взгляд, там есть всё, что необходимо. Удачи!




Вы используете плату езДСП, а если попробовать TE-TMS320F28335 + TE-XDS100? Будет работать? Вроде, процессоры одинаковые.


--------------------
В дебрях коры, в мозговой глубине, стремные мысли пригрезились мне.
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение May 26 2011, 08:18
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



Цитата(Alex-GTU @ May 26 2011, 11:19) *
Вы используете плату езДСП, а если попробовать TE-TMS320F28335 + TE-XDS100? Будет работать? Вроде, процессоры одинаковые.

Я использовал отладочную плату "TE-TMS320F28335" от "Терраэлектроники" с внутрисхемным эмулятором "SAU510-USB Plus JTAG" от "Sauris". Внутрисхемный эмулятор от "Терраэлектроники" я не пробовал использовать, только потому что у нас уже имелся в наличии саурисовский.
Между делом говоря, на этой отладочной плате напаян кварцевый генератор на 25 МГц. Внутри микроконтроллера рабочая частота получалась равной: 25 * 10 / 2 = 125 МГц вместо 150 МГц максимальных. Зачем терраэлектрониковские инженеры поставили генератор на 25 МГц вместо 30 МГц максимальных до сих пор для меня остаётся загадкой. Если бы вдобавок они установили штыревые разъёмы расширения торчащими штырями вниз, а не наверх, как сейчас, то эту отладочную плату можно было бы просто насадить на большую макетную плату, исключая жгуты при сопряжении плат. Цены бы плате не было. Ну да ладно, и так хорошо тоже.
Успехов!
Go to the top of the page
 
+Quote Post
Alex-GTU
сообщение May 26 2011, 08:42
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 587
Регистрация: 23-05-05
Пользователь №: 5 318



Цитата(Enthusiast @ May 26 2011, 12:18) *
Я использовал отладочную плату "TE-TMS320F28335" от "Терраэлектроники" с внутрисхемным эмулятором "SAU510-USB Plus JTAG" от "Sauris". Внутрисхемный эмулятор от "Терраэлектроники" я не пробовал использовать, только потому что у нас уже имелся в наличии саурисовский.
Между делом говоря, на этой отладочной плате напаян кварцевый генератор на 25 МГц. Внутри микроконтроллера рабочая частота получалась равной: 25 * 10 / 2 = 125 МГц вместо 150 МГц максимальных. Зачем терраэлектрониковские инженеры поставили генератор на 25 МГц вместо 30 МГц максимальных до сих пор для меня остаётся загадкой. Если бы вдобавок они установили штыревые разъёмы расширения торчащими штырями вниз, а не наверх, как сейчас, то эту отладочную плату можно было бы просто насадить на большую макетную плату, исключая жгуты при сопряжении плат. Цены бы плате не было. Ну да ладно, и так хорошо тоже.
Успехов!


Планирую приобрести "TE-TMS320F28335", какие ещё недостатки замечены или проблемы с ней были у Вас?


--------------------
В дебрях коры, в мозговой глубине, стремные мысли пригрезились мне.
Go to the top of the page
 
+Quote Post
Enthusiast
сообщение May 26 2011, 09:46
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 163
Регистрация: 25-09-09
Из: Nizhny Novgorod, Russia
Пользователь №: 52 588



Цитата(Alex-GTU @ May 26 2011, 12:42) *
Планирую приобрести "TE-TMS320F28335", какие ещё недостатки замечены или проблемы с ней были у Вас?

Мы ведь говорим об одной и той же плате? Я спрашиваю, потому что приведённая выше ссылка у меня не открывается. К плате придётся докупить четыре стойки, чтобы печатная плата своей нижней стороной не касалась рабочего стола. В остальном вроде бы всё в порядке. Модель, которую я приводил выше, как раз вроде бы сделана под эту плату, авось поможет поначалу. Успехов!
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 9th August 2025 - 18:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.0156 секунд с 7
ELECTRONIX ©2004-2016