Как сделать простой транзистор тестер на arduino

—>Персональный сайт Пьяных А.В. —>

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

Итак, возможности прибора:

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

  • 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
  • Тиристоры
  • Симисторы
  • Диоды
  • Двухкатодные сборки диодов
  • Двуханодные сборки диодов
  • Два последовательно соединенных диода
  • Диоды симметричные
  • Резисторы
  • Конденсаторы
  • Индуктивности
  • H21e (коэффициент усиления по току) — диапазон до 10000
  • Обнаружение защитного диода в биполярных и MOSFET транзисторах
  • Прямое напряжение – Uf [mV]
  • Напряжение открытия (для MOSFET) — Vt [mV]
  • Емкость затвора (для MOSFET) — C= [nF]
  • Разрешение измерения сопротивления до 0.01 Ω, величина измерения — до 50 МΩ.(на экране отображаются 4 знака)
  • Измеряемая емкость конденсаторов 25pF — 10000uF.
  • ESR конденсатора измеряется с разрешением 0.01 Ω для конденсаторов ёмкостью более 0.18 uF
  • Для конденсаторов ёмкостью выше 5000 pF может быть определена потеря напряжения после воздействия импульса зарядки. Потеря напряжения дает оценку добротности (качества) конденсатора.
  • Стабилитроны могут быть определены, если их обратное напряжение пробоя ниже 4.5V.
  • Для резисторов сопротивлением ниже 2100 Ω измеряется индуктивность. Диапазон измерений от 0.01 mH до 20 H.

Официальный сайт с прошивкой, схемами, описанием.

  • Микроконтроллер ATMEGA328P-PU DIP-28 — 1 шт- куплен на Али за 90р;
  • Высокоточные резисторы на 680 Ом и 470кОм — 3 шт каждого номинала;
  • Кварц на 8 МГц;
  • LCD экран 2х16;
  • Остальную мелочевку найти легко.

Я собирал тестер по упрощенной схеме. Выкинул всю левую часть. Она отвечает за автоотключение-включение. Сначала схема была собрана на беспаечной макетке. Проверена работоспособность прошивки микроконтроллера. Тестер просто дико пи%дел был немного не точен. Иногда отказывался калиброваться. Я списал все на резисторы, которые воткнул нужного номинала, не подбирая одинаковое сопротивление. Потом выяснил первый косяк. На макетной плате почему-то было сильное падение напряжения питания. В точке подсоединения питания на макетку было 5,1В, а к противоположному концу макетки падало до 4,6В. Может в китайских макетках используют металл с большим сопротивлением. Решил проблему подключением питания параллельно к обеим сторонам макетки. Стало лучше. Остальное списал на резисторы. На Али купил по 100 резисторов номиналами 680 Ом и 470 кОм. От этих резисторов зависит точность измерения. У тестера есть режим самотестирования. В этом режиме тестер калибруется с учетом неточности этих резисторов, напряжения питания и сопротивления проводов, идущих к щупам. Мультиметром Agilent U1251B (внесен в Госреестр средств измерения и поверен) с погрешностью измерения сопротивления 0,08% выбрал наиболее подходящие резисторы. Из сотни резисторов оказались всего 3 одинаковых (в пределах точности прибора) сопротивлением 680 Ом и из другой сотни 4 резистора 470 кОм. остальные резисторы и конденсаторы измерял и наиболее подходящие использовал в схеме, хотя это не так важно. Желательно поточнее выбрать резисторы R11 и R12 (достаточно точности обычного мультиметра). На этих резисторах собран делитель для измерения напряжения на батарее питания. Внимательно отнеситесь к блокировочному конденсатору С4. Его наличие обязательно. В начале я его не припаял, подумал, что он не очень нужен, так как после стабилизатора L7805 стоит конденсатор на 47uF. Измерения были не точны. Погрешность была небольшой, порядка 3-5 Ом на 100 измеряемых. Вспомнив статью о полезности и необходимости блокировочных конденсаторов, которую читал полгодика назад, решил надо ставить. После подпайки конденсатора тестер стал показывать 100,1 Ом. Погрешность в 0,1% меня устраивает. Единственное, что осталось доделать по электрической части, — это установить кварц по частоте наиболее близкий к 8 МГц (пока точно частоту измерять нечем) и установить источник опорного напряжения на 27 ногу микроконтроллера. Без ИОН 27 ногу необходимо притянуть к VCC через резистор 47кОм. В этом случае тестер будет калиброваться относительно внутреннего ИОН 1,1В.

В конечном варианте схема собрана на плате для прототипирования. С печатной платой решил не заморачиваться. На плате распаян разъем ISP для программирования МК. Через него залил программу и данные EEPROM. Использовал программатор USBasp и программу для заливки SinaProg 2.1.1.

Бутерброд из платы и экрана

Плата с подключенным SPI

Запускаем программу SinaProg. Выставляем тип программатора и микроконтроллера и нажимаем Search. Если программа увидела МК в правой части будет написано AVR device initialized. Если напишет Error. ищите ошибку в подключении, распайке, драйверах.

Далее нажимаем кнопку Открыть файл, указываем на hex-файл прошивки и нажимаем Program в блоке Flash

Ждем пока зальется прошивка.

Далее снова нажимаем Открыть и выбираем eep-файл и жмем Program в блоке EEPROM

На сайте http://arduino-project.net/tester-poluprovodnikov-arduino/ Вы можете найти прошивку для ардуино nano с поддержкой русского языка. Ресурс рекомендую, много полезных вещей можно найти. У меня LCD экран без поддержки русского, поэтому мне эта прошивка не подходит. Да и размеры ардуино nano сопоставимы с размерами готовой платы тестера.

При повторении устройства внимательно смотрите на какой частоте работает МК и какая прошивка у Вас. В моем варианте это 8 МГц, как и в оригинале. В прошивке с arduino-project.net это частота работы arduino nano 16 МГц. При попытке залить прошивку с mikrocontroller.net в ардуино будут искажены показания, связанные с измерениями емкости, в два раза. Я пытался залить прошивку на 8 МГц в ардуино и выставить фьюзами внутреннее тактирование 8 МГц вместо 16 от внешнего кварца ардуино. У меня ничего не получилось, скорее всего что-то не то делал. Калькулятор фьюзов брал тут http://www.engbedded.com/fusecalc/

Теперь необходимо откалибровать тестер. Для этого нужно замкнуть все три вывода тестера. Тестер спросит о калибровке. Нажимаем кнопку. Запустится процесс калибровки. Когда тестер попросит, размыкаем выводы. Потом для калибровки попросит подключить между 1 и 3 выводом конденсатор емкостью от 100nF до 20uF. Калибровка на этом завершена.

Примеры работы тестера

Еще одного транзистора

конденсатора на 10000uF

Корпус уже заказан и находится во власти Почты России. Когда приедет не знает никто.

Как подключить транзистор к Ардуино

Подключение полевого / биполярного транзистора к Arduino — рассмотрим на этом занятии устройство и применение транзисторов в электронной автоматике. Запрограммируем работу мотора постоянного тока в зависимости от показаний датчика влаги или фоторезистора. Вспомним использование операторов if, else и рассмотрим тип данных — unsigned int, который часто используется в языке C++.

Устройство и принцип работы транзистора

Транзистором называется полупроводниковый прибор, предназначенный для усиления и генерирования электрических колебаний. Транзисторы являются ключами (кнопками) в сетях с постоянным током. Биполярные транзисторы могут управлять электрической цепью до 50 В, полевые транзисторы могут управлять приборами до 100 В (при напряжении на затворе 5 В). В сетях с переменным током использую реле.

Фото. Устройство полевого и биполярного транзистора

Фото. Устройство полевого и биполярного транзистора

При отсутствии напряжения на базе или затворе транзистора, эмиттерный и коллекторный переход находятся в равновесия, токи через них не проходят и равны нулю. Таким образом, подавая на базу биполярного транзистора напряжение в 5 В, мы можем включать электрические цепи до 50 Вольт. Сегодня этот полупроводниковый элемент встречается почти в любом устройстве (в телефоне, компьютере и т.д.).

Транзисторы являются основой для построения микросхем логики, памяти и микропроцессоров компьютеров. Транзистор — это электронный элемент из полупроводникового материала, обычно с тремя выводами, позволяющий с помощью входного сигнала управлять током высокого напряжения. Использование транзистора — это наиболее простой способ подключения к Ардуино мотора постоянного тока.

Как подключить транзистор к Ардуино

Для этого занятия нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • макетная плата;
  • 1 биполярный транзистор;
  • 1 мотор постоянного тока;
  • 2 резистора от 1 до 10 кОм;
  • провода «папа-папа» и «папа-мама».

Подключить мотор постоянного тока напрямую к цифровым или аналоговым портам Arduino не получится. Это обусловлено тем, что пины на плате Ардуино не способны выдавать ток более 40 мА. При этом мотору постоянного тока, в зависимости от нагрузки, необходимо сотни миллиампер. Потому и возникает потребность управления электрической цепью высокого напряжения транзистором или Motor Shield L293D.

Схема подключения мотора постоянного тока к Ардуино

Схема подключения мотора постоянного тока к Ардуино

Соберите электрическую цепь, как на рисунке выше. Если присмотреться к сборке на макетной плате, то вы заметите, что транзистор играет роль кнопки. Если кнопка замыкает электрическую цепь при нажатии на толкатель, то транзистор начинает пропускать ток при подаче напряжения на базу. Таким образом, мы можем сделать автоматическое или полуавтоматическое управление мотором на Ардуино.

Скетч. Управление мотором через транзистор

Если вы заметили, то это скетч из занятия — Включение светодиода на Ардуино. С точки зрения микропроцессора абсолютно не важно, что подключено к Pin13 — светодиод, транзистор или драйвер светодиодов для Светового меча на Ардуино. Обратите внимание на то, что резистор R1 подтягивает базу транзистора к земле, а резистор R2 служит для защиты порта микроконтроллера от перегрузки.

Скетч. Управление мотором от датчика

Скетч управления двигателем постоянного тока на Ардуино можно написать по-другому. Добавим в схему фоторезистор и сделаем автоматическое включение мотора при снижении уровня освещенности в комнате. Можно также использовать датчик уровня жидкости или любой другой датчик. В скетче мы используем операторы if и else для управлением (включением/выключением) мотора постоянного тока.

Управление двигателем постоянного тока на Arduino UNO

Управление двигателем постоянного тока на Arduino UNO

Ардуино для начинающих. Урок 9. Моторы и транзисторы

Сегодня мы поговорим о транзисторах и подключении нагрузки к Arduino. Сама Ардуино не может выдать напряжение выше 5 вольт и ток больше 40 мА с одного пина. Этого достаточно для датчиков, светодиодов, но если мы хотим подключить устройства более требовательные по току, нам придется использовать транзисторы или реле. В этом уроке мы подключим девяти вольтовый моторчик и сервопривод к ардуино с помощью транзисторов.

В этом уроке используется:

Arduino Uno: Купить
Инфракрасный дальномер: Купить
Высокоточный лазерный дальномер с I2C: Купить
Набор резисторов из 100 штук на все случаи: Купить
Небольшой моторчик: Купить
Слабенький сервопривод: Купить
Мощный сервопривод: Купить
Мосфет транзистор для управления переменным током высокого напряжения: Купить
Набор npn транзисторов из 100 штук: Купить

Подключение мотора к Arduino

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

Транзистор это радиоэлектронный компонент из полупроводникового материала способный от небольшого входного сигнала управлять значительным током в выходной цепи, что позволяет его использовать для усиления, генерирования, коммутации и преобразования электрических сигналов. Обычно у транзисторов 3 вывода: база, эмиттер и коллектор. Алгоритм действия можно сформулировать так: пропустить ток от коллектора к эмиттеру в зависимости от сигнала на базе. Транзисторы бывают разных типов и номиналов. Об этом можно подробнее почитать на википедии.

Будьте внимательны при выборе транзисторов для своих проектов. Некоторые рассчитаны на пропуск большого напряжения, или большого тока. Так же многие транзисторы не откроются от 5 вольт на базе. Всегда проверяйте характеристики транзисторов перед покупкой в datasheet. Так же обратите внимание, что для управления переменным током используются мосфет транзисторы.

Теперь давайте подключим мотор к ардуино по следующей схеме:

Подключение мотора к ардуино

Подключение мотора к ардуино

Как всегда ничего сложного. Главное не перепутать выводы транзистора. Обратите внимание на резистор через который ардуино подключена к базе. Это резистор на 1 кОм и нужен он для того что бы обезопасить нашу ардуинку. В видео к схеме добавлены диод и конденсатор, но они не обязательны. Так же можно добавить резистор на 10 — 100 кОм между эмиттером и коллектором для стабильности работы нашей схемы. Так же не забудьте, что земля на всех уровнях напряжения должна быть объединена. И взглянем на наш код:

Как видите скетч очень прост. По комментариям в коде вы легко разберетесь, что к чему. Единственная конструкция, которую мы еще не использовали это цикл for.

Подключение сервопривода практически ни чем не отличается от подключения моторчика. Отличие в том что у сервы 3 вывода. Плюс, минус и логический. В видео подробно об этом рассказано.

Добавим в нашу схему инфракрасный дальномер. Просто потому, что мы можем 🙂 Будем задавать положение сервопривода в зависимости от показаний дальномера. Мы уже подключали дальномер, поэтому схему рисовать не буду.
Подключаем его к пину А0. Новый скетч стал еще проще:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *