avatar
TI сделала видео о конфигурации этих модулей:

video platformvideo managementvideo solutionsvideo player
avatar
На ютубе видос был по производству видюх, этап тестирования тоже показывали… Видюха выступает в качестве ветчины в этаком сендвиче: 2 листа оргстекла с туевой хучей подпружиненных игл, которые при закрытии этого сендвича упираются в тестпоинты, ну а дальше запускается тест… Но это для действительно крупносерийки )
avatar
«ФНЧ хорошо подходит для аддитивного белого гауссовского шума, а медианный-для одиночных мощных выбросов» ©Автор оригинальной статьи в комментах. Я прогнал на симуляторе оба этих фильтра с одним и тем же набором входных данных, и получил, что для того, чтобы отфильтровать импульс, равный троекратному значению нормального сигнала, и при этом не выйти за требуемый порог (нормальный уровень+10%), альфа и бэта ФНЧ фильтра должны быть таковы, что время установления Ntau составит несколько секунд, что для моей задачи неприемлемо. В случае же медианного фильтра же время время реакции составляет 1-5 измерений (в зависимости от выбранной размерности).
avatar
Дак в статье рассказали, чем медианный фильтр отличается от обычных БИХ/КИХ.
avatar
На сколько я понимаю, с подобной задачей справляется ФНЧ (LPF).
И с точки зрения куда ФНЧ намного компактнее.
avatar
так, жена же еще в Украине ;)
так что не проблема ;)
avatar
Для больших партий делают тестовый стенд, который подключается ко всем внешним выводам устройства и автоматом их тестирует. Беда в том, что часто стенд сложнее самого устройства.

Китайцы делают по другому — они просто набирают толпу людей с осциллографами и делают то-же, что и я. Для того, чтобы компенсировать низкий уровень знаний таких рабочих, на осциллографах обычно есть функция pass/fail: она сверяет сигнал с шаблоном и включает красную лампочку если что не так.
avatar
А какой алгоритм тестирования больших партий?

Можно как нибуть автоматизировать тестирование? Мой знакомый тестирует переферию микроконтроллера python скиптом. Скрипт исполняеться, и по уарт кадает дание, потом по уарт принимает дание з переферии МК и сравнивает, сразу пишет какой модуль pass а какой fail. Думал слелать подобное, пока не знаю подойдет ли )
avatar
Ну хорошо, но не раньше выходных
avatar
Дык расскажи нам про экспоненциальный фильтр в виде статьи с кодом. Будет полезно.
avatar
Не, если отключишь землю осциллографу, выжигать он ничего не будет (хотя, тут тоже есть нюансы). А вот ударить с отключенной землей может насмерть.
avatar
а в моем случае кроме шума, еще и выпалит все к чему коснешься, и током стукнет при первом удобном случае
я нашел трансформатор 1:1 на 220В, судя по словам продавца именно для гальванической развязки.
Надеюсь это так, на нем написано Т20х40-80 В2-220/220-50
avatar
Использовать медианный фильтр надо очень осторожно. Он относится к нелинейным фильтрам, а Это приводит к нескольким критичным моментам:
1. Происходит появление новых гармоник в спектре выходного сигнала (линейный фильтр такого не делает)
2. По выходному сигналу невозможно восстановить исходный.
Фильтр со скользящим средним=с арифметическим усреднением, тоже не хорош, поскольку его частотная характеристика — периодическая функция, которая при увеличении частоты сигнала не падает в ноль, т.е. некоторые частоты выше частоты отсечки такой фильтр совсем не сгладит.
На мой взгляд, одним из наиболее удобным в реализации цифровым фильтром является экспоненциальный фильтр, преобразование занимает мало-мало места-времени, частотная характеристика имеет спад 6dB/oct, аналогично как и у обычного электрического RC-фильтра.
avatar
Нельзя, это против правил техники безопасности. Кроме этого, сам осциллограф будет показывать намного более шумную картинку.
avatar
А нельзя просто отключить заземление у осциллографа?
avatar
Можешь и засунуть, только не понятно, как ты ее отправлять будешь.
avatar
что ли ради прикола, свои платы модуля ARM7MODA засунуть в продажу?
мож кому еще нужны будут?
хотя на фоне поголовного фанатизма от стм32 есть сомнения :)
avatar
Подумал.
Вот так вроде правильно и все еще менее ресурсоемко:
#define MAX(a, b) ((a) > (b)) ? (a) : (b)
#define MIN(a, b) ((a) < (b)) ? (a) : (b)
#define MIDDLE(a, b, c) MAX(MAX(MIN(a, b), MIN(a, c)), MIN(b, c))
avatar
Хорошая статья, спасибо.

По поводу реализации фильтра размерностью 3 — по моему так проще и менее ресурсоемко:
#define MAX(a, b) ((a) > (b)) ? (a) : (b)
#define MIN(a, b) ((a) < (b)) ? (a) : (b)
#define MIDDLE(a, b, c) MAX(MIN(a, b), MIN(a, c))

или, если без дефайнов:
min1 = (a < b) ? a : b;
min2 = (a < c) ? a : c;
middle = (min1 > min2) ? min1 : min2

Не, так не работает.
Сейчас еще подумаю :)
avatar
Даже диф. входам нужна земля :)