Омметр на ардуино своими руками
Миллиомметр с ЖК-индикатором на Arduino своими руками
У каждого радиолюбителя, инженера, разработчика есть различного рода измерительные приборы. Это могут быть как сложные многофункциональные приборы промышленного изготовления, так и простые вольтметры, амперметры, измерители емкости аккумуляторов, омметры, измерители ESR, которые собраны своими руками. Об одном из таких приборов, который пригодиться любому радиолюбителю, пойдет речь в статье (Рисунок 1).
Миллиомметер – прибор, использующийся для измерения малых сопротивлений резисторов, проводников на печатной плате, обмоток двигателя, катушек индуктивности, обмоток трансформатора, а также может использоваться для расчета длины проводов. Он имеет высокое разрешение, несвойственное обычным мультиметрам, что позволяет получать точные данные измерений в диапазоне миллиом.
Рисунок 1. | Миллиомметр с ЖК-индикатором на Arduino. |
В сети Интернет можно встретить много подобных конструкций, но в статье мы рассмотрим версию прибора, которая отличается реализацией аппаратной части. В миллиомметре используется прецизионный приемник тока и аналого-цифровой преобразователь (АЦП) высокого разрешения. Управление приемником тока (для выбора диапазона измерений) и АЦП осуществляет микроконтроллер (МК) на плате Arduino Nano (Рисунок 2). Полный список компонентов, примененных в приборе, приведен в Таблице 1 ниже.
Рисунок 2. | Принципиальная схема миллиомметра на Arduino. |
Микросхема LT3092 представляет собой интегральный прецизионный источник тока, но в данной конструкции используется в режиме приемника тока (или источника втекающего тока). Для управления приемником тока использованы цепи на транзисторах T1, T2, T3 и резисторах R12, R13, R14. Управление транзисторами (выбор диапазона измерения) выполняет МК через микросхему ULN2003 (набор мощных составных ключей).
Чтобы уменьшить влияние сопротивления измерительных проводов (щупов) на результаты измерений, в приборе для подключения исследуемого резистора к точке измерения используются специальные тестовые зажимы Кельвина (Рисунок 3). Это 4-проводные щупы предназначенные для измерения сопротивления методом Кельвина.
Рисунок 3. | Специализированные тестовые щупы Кельвина. |
Прибор имеет три диапазона измерений:
- Диапазон 0m1: от 0.1 мОм до 12.999 Ом;
- Диапазон 1m0: от 1 Ом до 129.999 Ом;
- Диапазон 10m: от 10 Ом до 1299.99 Ом.
Выбор диапазона измерения производится одной из двух кнопок в приборе. Результаты измерений и текущий диапазон измерения отображаются на двухстрочном ЖК индикаторе (стандартный ЖК индикатор 16×2).
Питается прибор от внешнего блока 12 В. Питание измерительных цепей, приемника тока, АЦП, ЖК индикатора осуществляется от встроенного на плату Arduino Nano регулятора напряжения 5 В.
Из-за сложности проекта не рекомендуется выполнять монтаж элементов на монтажной плате, это отнимет много времени и не исключит ошибки. Для прибора была разработана печатная плата в САПР Eagle. Внешний вид проекта печатной платы изображен на Рисунке 4. Схема и проект печатной платы доступны для скачивания в разделе загрузок. Вид готовой платы представлен на Рисунке 5. Как можно заметить (по печатной плате и по списку примененных компонентов), большинство элементов в корпусах для поверхностного монтажа, поэтому для их установки потребуется пинцет, паяльный фен или паяльник с тонким жалом.
За универсальным тестером будущее. Всего лишь при подсоединении щупов, универсальный пробник определяет сопротивление, ёмкость, ЭПС, диодную проводимость, распиновку и коэффициенты усиления транзисторов, прозванивает лампочки и светодиоды, сообщает на дисплее о повреждении электронного элемента. Работает подобный тестер автоматически, без переключения селектора или кнопок.
Для работы мультитестера нужен микроконтроллер минимум с 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 В.
- Тиристоры, семисторы: только маломощные.
Подобный пробник полупроводниковых деталей можно купить под заказ из Китая или собрать самому. Все необходимые для самоделки детали можно купить через интернет у производителей из Китая, Малайзии, Сингапура, Италии.
Список комплектующих
Подключение питания
Для точности измерений тестера рекомендуется, но не обязательно, запитать его от прецизионного стабилизатора напряжения 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:
Подключение к цифровым выходам 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 в микроконтроллер,аналогично как делали ранее.
- После удачно осуществленной прошивки, отключаем программатор.
Дабы не было проблем с полным отсутствием отображения на дисплее, заливать в память EEPROM следует файл с расширением HEX, а не BIN.
Начинать работу с тестером надо после сброса на кнопке SW2 Reset.
Есть куча приборов, куда можно поместить собираемый универсальный пробник: старые мультиметры, токовые клещи, большие калькуляторы, даже ночные часы.
Как пример свой мультитестер на Arduino можно засунуть в корпус испорченного модема.
Недавно я нашел на просторах интернета краткое описание и схему о том, как самому в домашних условиях собрать тестер полупроводниковых элементов на микроконтроллере 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.
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 В.
- Тиристоры, семисторы: только маломощные.
Подобный пробник полупроводниковых деталей можно купить под заказ из Китая или собрать самому. Все необходимые для самоделки детали можно купить через интернет у производителей из Китая, Малайзии, Сингапура, Италии.
Список комплектующих
Подключение питания
Для точности измерений тестера рекомендуется, но не обязательно, запитать его от прецизионного стабилизатора напряжения 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:
- 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 можно засунуть в корпус испорченного модема.
Читайте также: