|
|
  |
Как следует тестировать программу КИХ фильтра?, Code Composer Studio v3.3 + MatLab/Simulink + TMS320F28335 |
|
|
|
Dec 12 2012, 08:48
|
Местный
  
Группа: Участник
Сообщений: 211
Регистрация: 27-12-11
Из: Челябинск
Пользователь №: 69 111

|
Недавно осилил КИХ-фильтр. Он выполняет сразу и децимацию (т.е. лишние выходные отсчеты не высчитывает => соответствующим образом посчитаны требования к фильтру). Как следует поступать, чтобы проверить правильность его работы? Что было сделано: - до того , как заставил фильтр работать, посидел с пошаговой отладкой, исправил баги. - затем подал тестовые сигналы - с Матлабом есть на глаз сходства =) - этого стало мало, решил подать ступенчатую функцию Хэвисайда (переходная характеристика) и дельта-функцию Дирака (импульсная х-ка). Результаты сравнил с Матлабом (FDA tool). ах, да... тут я коэффициент децимации установил в 1 (чтоб фильтр не прореживал выходные отсчеты) - а так, он был равен 10. что-то еще надо??? подскажите =). Или можно ехать дальше? прикрепляю отчетный документик. ссылки кликабельны (это если качество картинок не нравятся).
Сообщение отредактировал beaRTS - Dec 12 2012, 08:49
--------------------
"Об уме человека вернее судить по его вопросам, нежели по его ответам" (с)
|
|
|
|
|
Dec 12 2012, 10:28
|
Местный
  
Группа: Участник
Сообщений: 211
Регистрация: 27-12-11
Из: Челябинск
Пользователь №: 69 111

|
Цитата(Gyga @ Dec 12 2012, 12:46)  Осталось проверить децимацию выполняется. На картинке доказательство. Да и в пошаговой отладке специально акцентировал на этом внимание - каждые М-раз (М-коэфф децимации) заходил в нужную ветку if(). а вообще, как тестировать ЦОС модули, ну, или просто ПО, например, систему АРУ цифровую (которая управляет RF-усилителями на плате). Стоит для этого скриптовый язык углублять, например, Питон, чтобы писать какие-нибудь скрипты для входных воздействий и скрипты для обработки выхода модуля в удобочитаемую форму ??? и как вообще (через встраивание проги на С++ в Питон или ....??) и для чего делается связка скриптового языка + компилируемый (С++)? есть TDD, (не погружался) есть Google C++ Mocking Framework (тоже только слышал пока что) что хорошо, а что плохо?
Сообщение отредактировал beaRTS - Dec 12 2012, 10:30
Эскизы прикрепленных изображений
--------------------
"Об уме человека вернее судить по его вопросам, нежели по его ответам" (с)
|
|
|
|
|
Dec 12 2012, 11:21
|
Местный
  
Группа: Участник
Сообщений: 211
Регистрация: 27-12-11
Из: Челябинск
Пользователь №: 69 111

|
Цитата(Gyga @ Dec 12 2012, 14:11)  Либо на железе. Либо должна быть модель этого железа. Google C++ Mocking Framework для этого не нужен "Либо должна быть модель этого железа." что значит модель железа?? это типа, как в Code composer studio есть эмулятор их процессоров ??? Ну, например, есть у меня отладочная плата EzDsp TMS320F28335. а делать плату приборчика своего нет желания, хоть и радиотракт отмакетирован и вылизан. Не хочу просто время тратить, по максимуму хочу ЦОС и программку на С++ замутить (тем самым прокачать скилы), пока предприятие до конца не развалили... да искать себе применение по прокаченным навыкам. Так вот. ПОнятно что ЦОС могу и на отладочной плате проверить: тот же цифровой детектор доделать поэтапно... а вот как-нибудь АРУ, например, можно проверить без реальной платы устройства??? Отсюда вопрос про скрипты и возник. Может быть, не на целевой платформе, так на Писюке ??
--------------------
"Об уме человека вернее судить по его вопросам, нежели по его ответам" (с)
|
|
|
|
|
Dec 12 2012, 14:34
|
Местный
  
Группа: Участник
Сообщений: 211
Регистрация: 27-12-11
Из: Челябинск
Пользователь №: 69 111

|
Цитата(DRUID3 @ Dec 12 2012, 14:38)  Сам код на C в python просто так не вставишь, нужно немного переделать(а это оверхед). ну, я просматривал оный вопрос. И правда, самый гемор со вставкой Питона в С/С++. Легче С/С++ в Питон приделать. Цитата(vetal @ Dec 12 2012, 14:38)  Вы входное воздействие как-то формируете? Если да, то и воздействовать на него можно: Увых(АРУ)=Увх*f(АРУ); просто не думал еще. на данном этапе понимания, все ПО разбил пока на части, которые - думается - вполне можно делать по отдельности: - система АРУ (цифровая часть, которая через ЦАПы управляет аналоговой частью АРУ) - цифровой (скорее) синхронный детектор - ну всякие интерфейсные функции по работе с RS232, SPI - работа с "внешним миром": LCD, клавиатура, и т.д... Пока взялся за детектор, т.к. на уровне детектированного сигнала будет работать та же АРУ (как - пока смутно представляю ) Цитата(vetal @ Dec 12 2012, 14:38)  Увых(АРУ)=Увх*f(АРУ); наверно, да - входным для АРУ будет некий уровень принимаемого сигнала с детектора. Так что для тестирования вход можно в том же матлабе сформировать... буду думать, когда доберусь. а так просто хотелось узнать про полезность скриптовых языков. и как побыстрее то отлаживать можно. у TI есть RTDX технология для реал тайма, но еще не осваивал.
Сообщение отредактировал beaRTS - Dec 12 2012, 14:38
--------------------
"Об уме человека вернее судить по его вопросам, нежели по его ответам" (с)
|
|
|
|
|
Dec 12 2012, 16:11
|
Местный
  
Группа: Участник
Сообщений: 211
Регистрация: 27-12-11
Из: Челябинск
Пользователь №: 69 111

|
Цитата(DRUID3 @ Dec 12 2012, 17:37)  ...не в том дело, что ... все - Вы спалились =) теперь знаю кого мучить в нужное время по поводу Питошки =). Цитата(beaRTS @ Dec 12 2012, 18:34)  у TI есть RTDX технология для реал тайма, но еще не осваивал. печаль несусветная.. "As of 6/24/2010 RTDX is no longer supported. Alternative transports should be considered for the acquision of data, such as serial ports and ethernet. If you are currently using the technology and have no issues, there is no need to change. However, no action will be taken for support inqueries." (с) ссылка ндааа
Сообщение отредактировал beaRTS - Dec 12 2012, 15:38
--------------------
"Об уме человека вернее судить по его вопросам, нежели по его ответам" (с)
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|