Мультитестер на Arduino своими руками
За универсальным тестером будущее. Всего лишь при подсоединении щупов, универсальный пробник определяет сопротивление, ёмкость, ЭПС, диодную проводимость, распиновку и коэффициенты усиления транзисторов, прозванивает лампочки и светодиоды, сообщает на дисплее о повреждении электронного элемента. Работает подобный тестер автоматически, без переключения селектора или кнопок.
Для работы мультитестера нужен микроконтроллер минимум с 8 кБ флеш-памяти, такой как ATmega8, ATmega168, ATmega328.
Электрическая схема мультитестера на Arduino
Характеристики тестера электроэлементов на Arduino:
- Сопротивление: 0…50 МОм, точность до 0.01 Ом (на ATmega8 точность 0.1 Ом).
- Ёмкость: 25 пФ…100 мФ, точность 0,1 пФ.
- ЭПС (эквивалентное последовательное сопротивление) определяется для емкостей 90нФ…100 мФ.
- Биполярные транзисторы: нахождение базы, коллектора, эммитера (BCE) при проводимости NPN, PNP.
- Полевые транзисторы: N-канальные, P-канальные.
- Диоды, диодные сборки: кремниевые, германиевые, Шотки, определение анода катода.
- Стабилитроны: обратное напряжение пробоя менее 4,5 В.
- Тиристоры, семисторы: только маломощные.
Подобный пробник полупроводниковых деталей можно купить под заказ из Китая или собрать самому. Все необходимые для самоделки детали можно купить через интернет у производителей из Китая, Малайзии, Сингапура, Италии.
Список комплектующих
- Плата Arduino nano V 3.0, можно Pro mini.
- LCD дисплей графический WH1602A на контроллере HD44780. Используйте только дисплей, поддерживающий кириллицу(сообщения на русском языке на экране). Прошивки на английском языке для примененной схемы подключения и задействованных функций не существует.
- Стабилизатор (на схеме IC1) — прецизионный LM336-Z2.5, MCP1702-5002, можно обычный 7805L.
- Кнопка с фиксацией SW1.
- Кнопка без фиксации SW2.
- Резистор переменный R7 — 10 кОм, 0.5 Вт.
- Резисторы R1, R3, R5 — 680 Ом, 0.25 Вт.
- Резисторы R2, R4, R6 — 470 кОм, 0.125 Вт.
- Резистор R8 — 100 Ом, 0.25 Вт.
- Резистор R9 — 22 кОм, 0.125 Вт.
- Резистор R10 — 10 кОм, 0.125 Вт.
- Резистор 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, а также других комплектующих.
Встроенный светодиод на выходе D13 обязательно выпаять! Этот выход будет использоваться как источник образцового напряжения при прозвонке диодов, транзисторов, тиристоров, и нагрузка, садящая на нем напряжение, не нужна.
Подключение к аналоговым выходам 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 можно засунуть в корпус испорченного модема.
Автор: Виталий Петрович. Украина
Источник
Спутниковое телевидение
- MIGSAT.RU »
- Ремонт »
- Схема тестера на Arduino Pro Mini с цветным дисплеем
Схема тестера на Arduino Pro Mini с цветным дисплеем
Недавно я нашел на просторах интернета краткое описание и схему о том, как самому в домашних условиях собрать тестер полупроводниковых элементов на микроконтроллере Atmega328P. ESR тестер на построен на плате Arduino Pro Mini плюс имеет дисплей TFT 1.8″ 128*60 SPI Color TFT L на базе контроллера ST7735. Эти модули можно купить AliExpress по доступной цене.
Необходима доработка платы Arduino Pro Mini:
Начал изучать схему Arduino Pro Mini и выяснил, что все вывода от микроконтроллера Atmega328P на самой плате как и полагается правильно разведены. Более того в плату запаян стабилизатор 5 вольт. Единственно необходимо выпаять на плате Arduino Pro Mini с микроконтроллером Atmega328P — несколько деталей.
— Убрать конденсатор 0,1мкФ с вывода AREF и выпаять резистор и светодиод от вывода (PB5 (SCK/PCINT5))
Что касется кварца, то в Arduino Pro Mini уже установлен кварц на 16 МГц. Его оставляем.
Схема тестера на Arduino Pro Mini с цветным дисплеем
Список электронных компонентов для сборки ESR тестера
Резистор 680 Ом — 3 шт.
Резистор 3,3 кОм — 1 шт.
Резистор 10 кОм — 6 шт.
Резистор 27 кОм — 1 шт.
Резистор 470 кОм — 3 шт.
Резистор 39 Ом — 1 шт.
Кнопка обычная — 1 шт.
Плата Arduino Pro Mini — 1 шт.- стоимость в Китае 100-120 руб.
Дисплей TFT 1.8″ 128*60 SPI Color TFT L на базе контроллера ST7735 — стоимость в Китае 150-200 руб.
Для прошивки arduino mini использовал следующий программатор. Как подключить программатор USBASP смотрите схему ниже. Заказывал в Китае на AliExpress.
Источник
ArduTester
ТехнарьКто
Транзистортестер на Arduino Nano и I2C LCD1602 дисплее. В скетче любой может подставить адрес своего I2C дисплея и легко собрать ArduTester. Схема простая, только надо отпаять резистор идущий к светодиоду на 13-м пине, иначе при пустых щупах будет показывать емкость в несколько микрофарад.
Определение элемента с указанием порядка подключенных выводов.
NPN транзисторы
PNP транзисторы
N-канальные-обогащенные MOSFET — N-E-MOS
P-канальные-обогащенные MOSFET- P-E-MOS
N-канальные-обедненные MOSFET — N-D-MOS
P-канальные-обедненные MOSFET — P-D-MOS
N-канальные JFET
P-канальные JFET
Тиристоры маломощьные
Симисторы маломощьные
Диоды
Стабилитроны низковольтные
Двухкатодные сборки диодов
Двуханодные сборки диодов
Два последовательно соединенных диода
Диоды симметричные
Резисторы
Переменные резисторы
Конденсаторы (емкость, ESR ЭПС, Vloss утечки)
Индуктивности
Авторы изначального проекта : Markus Frejek,Karl-Heinz Kubbeler,Markus Reschke. Все продаваемые китайцами транзистортестеры — это копии проекта немецких радиолюбителей. Автор с сайта pighixxx.com на основании ассемблерного кода от Markus-а разработал скетч для Arduino UNO. Автор скетча arduinec с сайта arduino.ru воодушевившись этим тоже сделал скетч одной из версий транзистор тестера, и как водиться, оба автора забросили поддержку ардуино скетчей. Автор plouc68000 с сайта arduino.cc сделал скетч на практически самую новую версию ардуино тестера. В общем, все скетчи хороши, выбирай на вкус. Скетч под новую версию транзистортестера очень сложный, а прибор слишком хорош для макетной платы. А если делать все по правильному, то теряется смысл скетча для Arduino. Проще сделать прошивку из исходников немецких радиолюбителей написанных на асемблере и прибор сделать по их же схеме. Почему хороший скетч хуже более старого, в случае макетирования и ардуино? Да потому, что на С++ код будет больше и функций в приборе будет меньше, а те функции которые поместятся, обладают избыточным качеством при повторении на макетной плате. Новый прибор может измерять доли пикофарад и доли ома, а соединения на макетной плате дают изменяющиеся величины сопротивления в пределах пары Ом, что сводит на нет все достоинства нового прибора изготовленного на макетной плате. Длинные провода дают изменяющуюся величину емкости в десяток пикофарад, следовательно диапазон измерения единиц пикофарадов, теряет весь смысл. Длинные провода — это удобно. Измерение от десятков пикофарад и от единиц ом обеспечивает и старый скетч. Зато перечисленные выше недостатки для сборки на макетной плате, уже не так важны. Единственное, что авторы скетчей для arduino так и не разобрались с появляющимися ошибками у некоторых пользователей, которые пытались повторять проекты. Старый скетч «устал» от изменений в новых версиях Arduino IDE и перестал компилироваться. Изучив работу прибора от Karl-Heinz Kubbeler, посмотрев скетчи от plouc68000, остановился на наработках автора arduinec. Привинтил к самому простому скетчу LCD1602 I2C дисплей и заствил скетч компилироваться в новых версиях Arduino IDE. В скетче мной добавлена возможность подставить адрес имеющегося у Вас I2C дисплея в первой строке кода. Разбирая ошибки при повторении проектов с показаниями в несколько микрофарад при пустом щупе, решение найдено еще arduinec. Надо удалить цепочку на ноге микропроцессора участвующей в измерении. Это резистор и светодиод на 13-м пине. Вторая и последняя из замеченых мной ошибок, завышение емкости электролитов, ровно в два раза. Мной из документации от «Markus..» вычитана причина. Необходимые изменения, мной внесены в схему ardutestera. В итоге получился работоспособный транзистортестер на Arduino Nano с I2C LCD1602 дисплеем который легко собрать даже на макетной плате.
Информация от arduinec переделавшего код транзистортестера в скетч для ардуино.
«Исходные файлы объединены в один скетч, границы файлов можно увидеть по разделителям типа /* -=- -=- -=-*/.
Функция main() разделена на setup() и loop(). Отключено энергосбережение, автоотключение и Watchdog.
Функции для дисплея переделаны для использования через стандартные библиотеки LiquidCrystal.
Функции для задержек заменены на ардуиновские. Немецкие слова к коде заменены на английские.
Из языков только английский и язык авторов программы — немецкий.
Для функции GetESR() использована функция us500delay(), которая равносильна delayMicroseconds().
Ошибки:
При получении результатов через Serial monitor после «testing. » в порт попадает какой-то мусор, но дальнейшему выводу он не мешает, поэтому все на это забили. В функции uart_putc() добавлена задержка на 2 мс, так как при скорости 9600 серийный порт не успевал выталкивать данные.
Что ещё есть:
у Arduino Nano остались свободные аналоговые пины A6 и A7. В начале loop() кнопка сначала проверяется на нажатие — после этого на дисплей можно вывести полезную информацию (например о напряжении внешнего питания), затем идёт проверка на отпускание кнопки и запускается тестирование.»
Скетчей два с окончанием old и new. По функционалу оба скетча идентичны. Old — старый, условно для более старых Arduino IDE под WindowsXP проверял на «arduinoIDE-v1.6.9-windows_32bit». New — условно для новых Arduino IDE (новый на момент написания этого текста, март 2021 года). Проверял на «arduinoIDE-v1.8.12-windows7_64bit» и «arduinoIDE-v1.8.13-windows7_64bit».
Источник