Андрей Смирнов
Время чтения: ~12 мин.
Просмотров: 0

Как сделать тестер микросхем своими руками

За универсальным тестером будущее. Всего лишь при подсоединении щупов, универсальный пробник определяет сопротивление, ёмкость, ЭПС, диодную проводимость, распиновку и коэффициенты усиления транзисторов, прозванивает лампочки и светодиоды, сообщает на дисплее о повреждении электронного элемента. Работает подобный тестер автоматически, без переключения селектора или кнопок.

Для работы мультитестера нужен микроконтроллер минимум с 8 кБ флеш-памяти, такой как ATmega8, ATmega168, ATmega328.

tester-1-300x225.jpg

Электрическая схема мультитестера на Arduino

Характеристики тестера электроэлементов на Arduino:

  1. Сопротивление: 0…50 МОм, точность до 0.01 Ом (на ATmega8 точность 0.1 Ом).
  2. Ёмкость: 25 пФ…100 мФ, точность 0,1 пФ.
  3. ЭПС (эквивалентное последовательное сопротивление) определяется для емкостей 90нФ…100 мФ.
  4. Биполярные транзисторы: нахождение базы, коллектора, эммитера (BCE) при проводимости NPN, PNP.
  5. Полевые транзисторы: N-канальные, P-канальные.
  6. Диоды, диодные сборки: кремниевые, германиевые, Шотки, определение анода катода.
  7. Стабилитроны: обратное напряжение пробоя менее 4,5 В.
  8. Тиристоры, семисторы: только маломощные.

Подобный пробник полупроводниковых деталей можно купить под заказ из Китая или собрать самому. Все необходимые для самоделки детали можно купить через интернет у производителей из Китая, Малайзии, Сингапура, Италии.

Список комплектующих

  1. Плата Arduino nano V 3.0, можно Pro mini.
  2. LCD дисплей графический WH1602A на контроллере HD44780. Используйте только дисплей, поддерживающий кириллицу (сообщения на русском языке на экране). Прошивки на английском языке для примененной схемы подключения и задействованных функций не существует.
  3. Стабилизатор (на схеме IC1) — прецизионный LM336-Z2.5, MCP1702-5002, можно обычный 7805L.
  4. Кнопка с фиксацией SW1.
  5. Кнопка без фиксации SW2.
  6. Резистор переменный R7 — 10 кОм, 0.5 Вт.
  7. Резисторы R1, R3, R5 — 680 Ом, 0.25 Вт.
  8. Резисторы R2, R4, R6 — 470 кОм, 0.125 Вт.
  9. Резистор R8 — 100 Ом, 0.25 Вт.
  10. Резистор R9 — 22 кОм, 0.125 Вт.
  11. Резистор R10 — 10 кОм, 0.125 Вт.
  12. Резистор R11 — 3.3 кОм, 0.125 Вт.

Подключение питания

Для точности измерений тестера рекомендуется, но не обязательно, запитать его от прецизионного стабилизатора напряжения 5.00 В, например от MCP1702-5002.

При невыполнении этого условия, в случае использования менее точного стабилизатора типа 7805, настоятельно советуем подключить источник опорного напряжения (ИОН).

Стабилизированный ИОН на 2.5 В надо подсоединять к выводу А4 микроконтроллера. На приведенной электрической схеме это подключение не показано. Благодаря подключенному ИОН, мультиметр будет более точно измерять напряжение на батарейках VBAT, наибольший положительный потенциал на полупроводниках VСС.

В программе самодиагностики микроконтроллера ATmega заложено определение отсутствия ИОН. Эта функция самодиагностики активна только при подключении ножки А4 к напряжению 5 В через резистор 47 кОм.

Можно таки случайно закоротить ножки микросхемы А4 и А5. После этого начнутся проблемы с точностью измерения VBAT и VСС. Поэтому удаляйте несанкционированные мостики между выводами, смывайте сгоревший флюс с платы.

Что касается портативности, то в качестве первичного источника для мультиметра рекомендуется использовать батарейку типа Крона или два последовательно соединенных литийионных аккумулятора. Правильно собранный прибор будет работать от любого источника питания, напряжением от 7 до 15 В.

При организации питания прибора от сетевого адаптера 220/9–12 В, следует позаботиться об экранировании микроконтроллера, устранить пульсации на входе с помощью конденсатора. Нельзя близко располагать, как в одной плоскости, так и сверху снизу, входные цепи питания к плате Arduino.

Сборка измерительной схемы

Правильнее будет собрать пробную схему мультитестера на беспаечной макетной плате для проверки совместимости найденного дисплея с микропроцессором Arduino, а также других комплектующих.

tester-2-300x226.jpg

Встроенный светодиод на выходе D13 обязательно выпаять! Этот выход будет использоваться как источник образцового напряжения при прозвонке диодов, транзисторов, тиристоров, и нагрузка, садящая на нем напряжение, не нужна.

tester-3-300x226.jpg

Подключение к аналоговым выходам Arduino:

  • A0 — «минусовой» черный щуп.
  • A1 — «плюсовой» красный щуп.
  • A2 — «прозвоночный» желтый щуп.

Подключение к цифровым выходам Arduino:

  • D0 — получение RX на Arduino nano или mini.
  • D1 — передача TX на Arduino nano или mini.

Прошивка микроконтроллера

Загрузить прошивку в Arduino можно как с помощью программатора USB, так и применив другой Arduino nano для перепрограммирования. Мы же воспользуемся программатором USBasp и приложением SinaProg, о чем расскажем подробно.

  • Скачиваем и устанавливаем на ПК приложение SinaProg 2.1.
  • В поле Programmer находим свой программатор USBasp и нажимаем кнопку Search для поиска подключенного контроллера. 
  • После определения контроллера, скачиваем Aрхив с прошивкой для мультитестера на Arduino и распаковываем. 
  • В архиве две прошивки: TransistorTester.eep для работы памяти EEPROM микроконтроллера, TransistorTester.hex непосредственно для микроконтроллера. Сначала загружаем TransistorTester.eep в память EEPROM микроконтроллера.

Иконка выбора пути к прошивке

  • Загружаем аналогично TransistorTester.hex в микроконтроллер и запускаем Program.

Об успешном завершении прошивки дается сообщение в описании процесса установки

 

  • Загружаем TransistorTester.hex в микроконтроллер, аналогично как делали ранее.

  • После удачно осуществленной прошивки, отключаем программатор.

Дабы не было проблем с полным отсутствием отображения на дисплее, заливать в память EEPROM следует файл с расширением HEX, а не BIN.

Начинать работу с тестером надо после сброса на кнопке SW2 Reset.

Есть куча приборов, куда можно поместить собираемый универсальный пробник: старые мультиметры, токовые клещи, большие калькуляторы, даже ночные часы.

Как пример свой мультитестер на Arduino можно засунуть в корпус испорченного модема.

Автор: Виталий Петрович. Украина

Сегодня я бы хотел поговорить о тестере деталей на ардуино. Я сделал себе такой прибор и в принципе он меня устраивает хотя все равно, при прозвонке деталей, привирает показания. Но для меня это не совсем критично, мне главное знать маркировку. Что же, начинаю описание как и что я сделал.Прежде всего хочу обратить ваше внимание на то что в интернете предлагают схему на Ардуино Нано, у меня Нано на тот момент не было в наличии и я решил использовать Про-Мини, т.к. контроллеры в них стоят совершенно одинаковые.  После продолжительных поисков я решил сделать вот такую схему:

Схема тестера на Ардуино

Схема элементарная, прошивок в интернете вообще море и написано как прошивать, но прошивать именно Нано а не Про. Я сделал отдельно плату со всеми деталями, присоединил плату к индикатору 1602 и припаялся напрямую к выводам ардуино про-мини. Как оказалось позже надо было бы вставить в панельку и подгонять прошивку но я уже запаял и перепаивать что то дико ломает. Я же рассудил так- чем лучше контакт тем точнее показания. Вы можете развести плату самостоятельно, но я приведу и свой вариант  Плата тестера , для тех кто захочет повторить мой проект. Прошивка тестера, которой прошил я свой аппарат, тоже можете скачать у меня. Теперь переходим непосредственно к прошивке контроллера. Для того чтобы прошить Ардуино Про-Мини я использовал Ардуино Уно в режиме программатора ISP.  Для этого сделайте следующее: откройте консоль управления Ардуино, откройте следующий скетч:

Ардуино в режиме программатора ISP

Залейте его в Ардуино Уно. Теперь Уно является программатором для внешних устройств! Вставляем Про-Мини в макетную доску и подсоединяем к Уно таким образом:

UNO         ProMini
+5v Vcc
GND GND
D10 RST
D11 D11
D12 D12
D13 D13

Теперь мы можем заливать скетчи не только через Ардуиновский интерфейс но и с помощью любой другой программы для прошивания HEX файлами! Я использовал, как и советовалось на сайте с которого я вычитал про тестер, программу SinaProg2.1.1. Кстати в архиве тоже лежат файлы для прошивки тестера.  Далее запускаем эту программу. Надеюсь Адуино Уно и присоединенная к ней Про уже подключены к USB порту? В Sinaprog в секции Device выбираем наш контроллер 328p и жмем кнопку Search. Платы помигают и выдастся сообщение типа ОК- контроллер найден! Если не нашелся контроллер то проверьте снова все цепи соединений. Затем выбираем файл *.eep и прошиваем сначала EEPROM, заметьте что активна будет только кнопка в данной секции, затем выбираем файл *.hex и уже прошиваем Flash. Все, конроллер прошит, никаких фьюзов шить больше НЕНАДО. Подключаем и смотрим на результат. Если все сразу заработало- закладывайте в корпус и пользуйтесь прибором, а вот если нет никакой индикации. Я угробил 2 дня на поиск неисправности, раза 3-4 перешивал контроллер разными прошивками. Результат все равно был нулевой. Вы представьте только- я 3-4 раза отпаивал все контакты Про- Мини, прошивал, и заново запаивал. Работа была адская и я уже матерился во весь голос но, это все равно не помогало- тестер не работал, точнее экран светился но никакой информации не выдавал. Я опять перерыл весь интернет и не нашел ничего что прольет свет на мою проблему. Везде, такое чувство, просто тупой копипаст и более ничего нового нет. Дошел то того что замерил осциллографом сигналы идущие на 1602. Какие то иглообразные имульсы я увидел, но правильно ли работает индикатор, нет… сказать я не мог, но подумал что контроллер все таки дает сигналы на индикатор и что то собрано не так. Тогда я решил качнуть схему Про мини с оф. сайта и сравнить с той Прохой что пришла мне из Китая. И что же я увидел? Приведу 2 картинки которые я нашел и попробуйте найти разницу.

Китайская версияPro Mini
Официальная распиновка Pro Mini

Дам подсказку где искать- ищите на выводах которые должны подключаться к индикатору. Если нашли- молодцы, не нашли… что же, внимательность надо развивать, просто совет на будущее. Ну а в нашем случае оказалось неправильно написана маркировка выводов на китайской про- мини. Там где у официальной версии прохи стоит 1 цифровой выход, у китайской- 0, и наоборот, где у официальной 0- у китайской 1 цифровой выход. Большинство ориентируются именно по тому что написано  на платах но видимо здесь не тот случай. Как только я поменял местами 2 провода- тестер заработал! Я перепробовал практически все наличиствующие типы деталей и он правильно определил цоколевку и некоторые параметры. Но при измерении сопротивлений выше 3 кОм и конденсаторов выше 1нФ прибор начал безбожно врать. Можно конечно подобрать данные в прошивке с помощью Makefile и WinAVR но опять отпаивать и припаивать проху мне просто катастрофически не захотелось. Мне достаточно того что данный прибор кажет цоколевку полупроводников и их характеристики.  Собрал тестер в большую распределительную коробку, сделал на передней панели 3 контактных площадки для подключения деталей, кроме того вытянул еще 3 провода с «крокодилами» для закрепления измеряемых деталей. На этом сборка тестера была окончена.

Вот такие танцы с бубном проделал я при сборке тестера Маркуса. Если кому помогла данная информация то я буду только рад. Спасибо за внимание.

FVZUXG1IK1FMHYO.LARGE.jpg

Девайс работал хорошо до тех пор, пока я не перешел на Win7. На этом этапе он начал создавать проблемы, не распознавался в некоторых случаях, а сама программа могла зависнуть в момент IC тестирования. В поисках альтернативы я решил сделать тестер своими руками с некоторыми дополнительными улучшениями.

В результате я получил IC tester на Ардуино с возможностью вывода результатов проверки на серийный порт, при этом он работает в большинстве случаев (но до сих пор есть кое что, что можно улучшить).

Шаг 1: Что было в начале

F45UXM4IK1FMHAN.LARGE.jpg

Оригинальный тестер от Genius работал хорошо, но вначале нужно было сделать множество кликов, выбирая девайс и т.д. Всегда нужно было запускать программу и самое важное, что не было никакой информации об итогах тестирования. Если IC не был найден, то невозможно было определить по какой причине: из-за поломки, или из-за некорректного цикла тестирования (что случается с некоторыми IC).

Идея состояла в том, чтобы устранить эти недостатки разработав на Ардуино Нано свой тест.

Шаг 2: Схема

FWU7B0KIK1FMH9U.LARGE.jpg

Схема тестера конденсаторов довольно проста. Центральным элементом является Ардуино нано. Ввиду ограничения доступных портов, максимальное количество тестируемых пинов равняется 16 (чего вполне хватает для большинства IC).Чтобы добиться этого, коммуникация с экраном и EEPROM, содержащим тестовые данные, осуществляется через I2C. Нано берёт на себя коммуникацию с компьютером и отображает детальные результаты тестов.

Дисплей LCD — стандартный экран 16*2 с I2C конвертером, он занимает всего 2 пина на Ардуино.

Тестовые данные хранятся в I2C EEPROM AT24C512. Там хранится скрипт, который шаг за шагом проводит тестирование. Для каждого типа IC посылается последовательность логических входных данных, и определенные данные ожидаются на выходе. В случае если данные не соответствуют ожиданиям, скрипт перепрыгивает к следующей возможной части исполнения. В данной версии девайса EEPROM нужно отдельно программировать программатором. Я не нашел способа переправить 25кБ данных кроме как через серийный порт.

Тестовые скрипты находятся в текстовом виде, так что их можно легко модифицировать, синтаксис в скетче Ардуино.

При тестировании, несколько сигналов посылается на тестируемую часть, которая не соответствует спецификации и проверяются все возможные комбинации. Чтобы предотвратить перегрузку Arduino и детали, все соединения проходят через резисторы на 680 Ом. Это создает много сигналов «ниже спецификаций», что приводит к случайным выходам тестируемой ИС. Тем не менее, если IC подключается к тестируемым сигналам, выход тестируемой IC можно использовать.

Тестирование начинается с одного коммутатора, подключенного к одному из аналоговых входов.

Шаг 3: Девайс в работе

В приложенном видео можно посмотреть тестер в работе.

Как и его фабричные собраться, тестер работает не со всеми IC. С некоторыми работать сложно, так как не совсем понятно, какие сигналы нужно ожидать. Как только у меня будет свободное время, я проведу некоторую оптимизацию.

ФайлыNewliquidCrystal_1.3.4.zipИспользуемые источники:

  • https://volt-index.ru/high-tech/multitester-na-arduino-svoimi-rukami.html
  • https://samosdel.ru/arduino/tester-detaley-arduino-pro-mini/
  • https://masterclub.online/topic/13848-tester-mikroshem

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации