Site Loader

Вольтметр на микроконтроллере ATMEGA-8 2 — Измерительная техника — Инструменты

Данный вольтметр может применяться для измерения напряжения радиолюбительских блоков питания, контроля заряда аккумуляторов и т.п. Устройство реализовано на микроконтроллере ATMEGA8 и светодиодном индикаторе с общим анодом FYT3031-BSR-21.

Технические характеристики:

Напряжение питания:                   6..14 В

Потребляемый ток:

Число разрядов индикатора:                 3

Диапазон измерения:            от 0 до 50 В

Шаг измерения:                              0,1 В

Расчетная погрешность                    0,3%

Принципиальная схема вольтметра показана на рис.1.

 

Рис.1.

 

Краткое описание схемы.

Входное напряжение питания ограничивается и стабилизируется микросхемой 7805. Диод VD1 служит для защиты от перепутывания полярности.

Измеряемое напряжение через делитель R1 R2 поступает на вход АЦП микроконтроллера и преобразуется в цифровой код. Для сглаживания пульсаций код усредняется по 16 замерам. Далее код масштабируется и величина напряжения раскладывается на десятичные разряды (десятки, единицы и десятые доли вольт). Полученные величины поочередно выводятся в соответствующие разряды индикатора методом динамической индикации. Резисторы R4..R11 ограничивают ток сегментов индикатора до безопасных значений.

Детали и настройка.

Резистор R1 желательно применить прецизионный, например типа С2-36 с допуском 0,5% или С2-29В-0,125 с допуском 0,25-0,5%. Резистор R2 подстроечный многооборотный, например типа 3296W.  Резисторы R3-R11 мощностью 0,125-0,5Вт с допуском ±10%, например С2-33, CF1/4 и т.п. Конденсаторы С1 и С2 любые электролитические на температуру 105С и емкостью 22-47мкФ. Конденсатор С3 керамический, например К10-17Б. Диод VD1 заменить на 1N4148 или более мощные КД247, 1N4001 и т.п. Стабилизатор напряжения на 5В DA1 любой в корпусе TO-220,  например КР142ЕН5А и т.п.

Для настройки устройства на его  вход подают образцовое напряжение около 50В (но не более этого значения 🙂 ) и регулируя R2 добиваются совпадения показаний вольтметра с образцовым напряжением. После этого ось подстроечного резистора контрится быстросохнущей нитрокраской или цапон лаком.

Замечания по конструированию и результаты испытаний.

1) При динамическом управлении светодиодными индикаторами надо учесть эффект накопления заряда в светодиодах. Если мы просто снимем напряжение с сегмента, то в накопленные в диффузной емкости pn перехода заряды будут некоторое время вызывать свечение индикатора, пока емкость перехода полностью не разрядится.

Это приводит к неприятной паразитной подсветке индикатора. Поэтому, для быстрого рассасывания этого заряда и четкого гашения индикатора надо подавать на сегменты напряжение обратной полярности (например для индикатора с общим анодом на сегменты-катоды надо подавать высокий уровень 5В, а на аноды низкий уровень 0В)


2) Точность микроконтроллерных вольтметров с 10 разрядным АЦП не очень высока и составляет примерно 0,3%

Она вычисляется так — это ошибка дискретизации 1LSB + погрешность нелинейности, по даташиту это 2LSB. Общая ошибка будет 3LSB, а относительная погрешность 3/1024~0,3%

Абсолютная погрешность показаний 50В*0,3=±0,15В

 

При этом разница между завышенными и заниженными показаниями вдвое больше и равна 0,3В. Иначе говоря, настраивать прибор надо так, чтобы отклонения его показаний были бы не односторонними, а симметричными относительно заданной характеристики.

 

Результаты сравнения показаний вольтмера и промышленного прибора Щ300 показаны в табл.1

Показания Щ300, ВПоказания вольтметра, ВОтносительная погрешность, %
2,972,8-0,34
7,967,8-0,32
13,0312,9-0,26
18,0417,9-0,28
23,0322,9-0,26
28,0128,0-0,02
33,0333,0-0,06
38,0038,0 0
43,0043,1 0,2
48,0048,1 0,2

  

Проверочная макетная платка 🙂

Прошивка и исходный текст программы.

Микроконтроллер настроен на работу с внутренним RC генератором частотой 2МГц. Фьюз биты устанавливаются в следующие значения: CKSEL=0100, SUT=10.

Блок схема программы, ее исходный текст на языке С (для компилятора WinAVR) и

hex файл прошивки см в архиве: volt.zip

 

Литература.

Есть хороший сайт, где можно почитать о работе АЦП в микроконтроллерах AVR http://www.avrlab.com/node/94

Простой вольтметр на AVR на 50, 5 и 0.3В

Плата нашего измерительного прибора универсальна и в зависимости от установленных элементов может выполнять функции как вольтметра, так и амперметра с различными пределами измерений. В этой статье речь пойдет о том, как из нее сделать простой вольтметр на AVR с разными пределами измерения. В отдельной статье рассказано о том, как на основе той же самой платы можно сделать амперметр.

Схема измерительного прибора

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

Схема измерительного прибора

Делитель напряжения R2, R3 позволяет измерять напряжения больше 5ти вольт. Для измерения малых напряжений входной сигнал пропускается через операционный усилитель DA2 с регулируемым коэффициентом усиления. Его коэффициент усиления задается резисторами R4, R5. Для измерения тока на входе прибора должен быть установлен шунт R1.
Основой схемы служит микроконтроллер Atmega8. После преобразования уровня сигнала он поступает на вход АЦП, встроенного в микроконтроллер. Микроконтроллер выводит полученное значение на трехразрядном сегментном индикаторе с общим анодом. Напряжение на аноды разрядов поступает через транзисторы. Резисторы в эмиттерах R9, R10, R11 задают яркость индикатора. Способ индикации — динамический.
Питание можно подавать напрямую от источника напряжения 5В, либо через стабилизатор. Обратите внимание, что минус питания и минус измерительного входа соединены друг с другом.

Печатная плата

Плата измерительного прибора

Плата односторонняя и содержит все элементы измерительного прибора. Резистор R1 (шунт амперметра) имеет несколько посадочных мест для корпусов разной мощности. Файл с платой, нарисованной в формате Sprint-Layout 5.0 можно скачать по ссылке.

Программа

При включении устройства в течении двух секунд на индикатор выводится приветствие «HI», после чего начинается работа прибора. В AVR-микроконтроллерах используется 10-ти разрядный АЦП. В нашем проекте мы используем только девять разрядов. Эта разрядность позволяет получить конечную приборную точность 1%. Для большей стабильности и плавности изменения показаний берется выборка из ста отсчетов и на дисплей выводится наибольший из них. Если входное напряжение превышает диапазон измеряемых значений на индикатор выводится сообщение: -0. Третий разряд не включается, если он не используется.
HEX-фал для каждой версии свой. Мы будем их прикладывать к каждой версии отдельно. Фьюз-биты всегда должны оставаться заводскими. Прошивка загружается через стандартный 6ти-пиновый разъем ISP-программирования.

Технические характеристики

  • напряжение питания, 5В либо 7-12В
  • потребляемый ток, не более 60мА
  • частота обновления индикатора, 56Гц
  • пределы измерения, 0.5В, 5В, 50В
  • входное сопротивление, не менее 10кОм
  • точность, не менее, 10%

Вольтметр на 50В

Для сборки вольтметра с пределом измерения 50В нужно установить все элементы, кроме R1, R4, R5, DA2. Если вы не планируете использовать нестабилизированное питание, то можно не устанавливать также конденсатор C1 и стабилизатор DA1.

Плата вольтметра на 50В

После сборки плата с лицевой стороны выглядит так:

Вольтметр на 50В. Лицевая сторона

…и с обратной стороны:

Вольтметр на 50В. Обратная сторона

Элементы схемы на предел 50В:

  1. C2 — танталовый конденсатор, 22мкФ, 16В T491C226K016AT, 1шт.
  2. C1,C3,C4 — конденсаторы на 0,1мкФ в корпусе 0805
  3. DA1 — стабилизатор L7805 в корпусе D2PAK, 1шт.
  4. DD1 — микроконтроллер Atmega8a-au, 1шт.
  5. J1 — чип-резистор 1206 с сопротивлением 0 Ом, 1шт. (перемычка)
  6. HL1 — сегментный индикатор BA56-12YWA, 1шт. (желательно устанавливать через колодку)
  7. R2 — подстроечный резистор CA6V на 2,5кОм, 1шт
  8. R3 — чип-резистор 0805 на 10кОм, 1шт.
  9. R6-R8, R12 — чип-резисторы 0805 на 1кОм, 4шт.
  10. R9-R11 — чип-резисторы 0805 на 56Ом, 3шт. (можно взять с меньшим сопротивлением для увеличения яркости)
  11. VT1-VT3 — транзисторы BC807-40, 3шт.
  12. Гребенка PLS-контактов

Вольтметр на 5В

На плату необходимо установить следующие элементы:

  1. C2 — танталовый конденсатор, 22мкФ, 16В T491C226K016AT, 1шт.
  2. C1,C3,C4 — конденсаторы на 0,1мкФ в корпусе 0805
  3. DA1 — стабилизатор L7805 в корпусе D2PAK, 1шт.
  4. DD1 — микроконтроллер Atmega8a-au, 1шт.
  5. J1 — чип-резистор 1206 с сопротивлением 0 Ом, 1шт. (перемычка)
  6. HL1 — сегментный индикатор BA56-12YWA, 1шт. (желательно устанавливать через колодку)
  7. R2 — подстроечный резистор CA6V на 25кОм, 1шт
  8. R3 — чип-резистор 0805 на 1кОм, 1шт.
  9. R6-R8, R12 — чип-резисторы 0805 на 1кОм, 4шт.
  10. R9-R11 — чип-резисторы 0805 на 56Ом, 3шт. (можно взять с меньшим сопротивлением для увеличения яркости)
  11. VT1-VT3 — транзисторы BC807-40, 3шт.
  12. Гребенка PLS-контактов

Вольтметр на 300мВ

Для работы с пределом измерения от 0 до 300мВ потребуется дополнительный каскад на микросхеме LM358N. Принципиальная схема при этом принимает следующий вид:

Схема вольтметра на 300мВ

Резисторы R4, R5 задают коэффициент усиления усилителя. R1 необходим для того, чтобы в отсутствии входного сигнала вольтметр показывал 0В.
Элементы платы:

  1. C2 — танталовый конденсатор, 22мкФ, 16В T491C226K016AT, 1шт.
  2. C1,C3,C4 — конденсаторы на 0,1мкФ в корпусе 0805
  3. DA1 — стабилизатор L7805 в корпусе D2PAK, 1шт.
  4. DA2 — операционный усилитель L358N в корпусе SO8, 1шт.
  5. DD1 — микроконтроллер Atmega8a-au, 1шт.
  6. J1 — чип-резистор 1206 с сопротивлением 0 Ом, 1шт. (перемычка)
  7. HL1 — сегментный индикатор BA56-12YWA, 1шт. (желательно устанавливать через колодку)
  8. R1 — чип-резистор 0805 на 10кОм, 1шт.
  9. R4 — чип-резистор 0805 на 1кОм, 1шт.
  10. R5 — подстроечный резистор CA6V на 25кОм, 1шт
  11. R6-R8, R12 — чип-резисторы 0805 на 1кОм, 4шт.
  12. R9-R11 — чип-резисторы 0805 на 56Ом, 3шт. (можно взять с меньшим сопротивлением для увеличения яркости)
  13. VT1-VT3 — транзисторы BC807-40, 3шт.
  14. Гребенка PLS-контактов

Предосторожности в работе и особенности эксплуатации

Вольтметр предназначен для встраивания в любительскую радиоаппаратуру и поэтому не имеет встроенных схем защиты. Вы можете его раз и навсегда встроить его в свой лабораторный блок питания или для контроля показаний какого-либо датчика. Он не предназначен для повседневного использования в качестве тестера, поэтому необходимо соблюдать предосторожности при работе с ним:

  1. Вольтметр рассчитан только для измерения постоянного напряжения
  2. У вольтметра нет встроенной защиты от смены полярности входного напряжения
  3. Измерения производятся относительно напряжения питания. Другими словами стабильность питающего напряжения определяет точность показаний вольметра.
  4. У вольтметра нет защиты по входу. Не стоит подавать на него напряжения больше предельного
  5. Вход вольметра не имеет гальванической развязки. Если вы питаете основную схему и предложенный вольтметр от одного и того же источника питания измерения можно производить только относительно общего провода. В случае, когда необходимо измерить разность потенциалов между двумя точками на которых есть напряжение, необходимо использовать для питания вольтметра отдельный источник питания с гальванической развязкой через трансформатор. И при этом обязательно подключать минус вольтметра к точке с меньшим напряжением!
  6. Если необходимо увеличить яркость индикатора, можно уменьшить сопротивление резисторов R9-R11. Однако не стоит ставить сопротивление меньше 20Ом
  7. Если вы планируете использовать вольтметр для индикации бортового напряжения в автомобиле вам потребует подключить только два провода: минус автомобиля к «GND» вольтметра, а плюсовой провод к выводам разъема «7-12V» и «+»

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

Мы будем очень рады, если вы поддержите наш ресурс и посетите магазин наших товаров shop.customelectronics.ru.

Вольтметр с кодом Морзе

Скачать исходники сборки AVRStudio (формат HTML): morbcna.html

Загрузите AVRStudio Hex (формат Intel Intellec 8/MDS): 050219A. hex

Project Обзор

Фото 1. Недорогое устройство телеметрии состоит из ATMega8, последовательного интерфейса
и некоторых развязывающих компонентов. Кристалл не нужный.

ОБЗОР

Бюджетное устройство телеметрии (LTD) отличается низкой стоимостью и минимальным количеством деталей. телеметрический ключ count с использованием микроконтроллера Atmel ATMega8. ООО отправляет данные путем измерения уровней напряжения до четырех аналоговых каналов через встроенный 10-битный аналого-цифровой преобразователь (АЦП) и преобразование их в числа и отправки измерений с помощью азбуки Морзе. Есть два сигнальных выхода — один представляет собой двоичный сигнал азбуки Морзе, такой как используется для управления передатчиком непрерывной волны (CW), а другой выход тонально модулированный и может использоваться для подключения небольшого динамика к аудио вход передатчика.

Опции позволяют установить скорость кода 25, 10, 5 или 1 слово в минуту, 1 тон кГц или 500 Гц и измерение 1, 2, 3 или 4 аналоговых каналов. параметры могут быть установлены с помощью перемычек или с помощью терминала EIA-232, а в в случае настройки через терминал, текстовая строка до 80 символы могут быть отправлены вместе с данными. Настройки терминала 9600 Бод, без паритета.

Полностью современная азбука Морзе
Азбука Морзе, которой уже более 150 лет, давно перестала использоваться Береговая охрана, флот и другие военные службы в пользу современных связь режимы обычно передаются по микроволновым или спутниковым каналам связи.

Поэтому возникает вопрос, зачем использовать азбуку Морзе, когда у нас есть такие вещи, как Bluetooth или 802.11 для отправки данных? Ответ прост и надежен. Когда Сэмюэл Морс продемонстрировал телеграф Конгрессу в 1844 году. Понятно, что одной из ключевых особенностей его устройства была простота. Только позже использование RF продемонстрирует свою надежность в плохом RF условия. Помимо надежности, хорошего отношения сигнал/шум и фактор простоты, азбука Морзе имеет еще одну особенность, которая делает ее полностью современный: способность быть расшифрованным человеческим ухом.

Код Морзе по-прежнему имеет миллионы поклонников радиолюбителей по всему миру. которые клянутся его способностью «проходить» при плохих радиочастотных условиях. Хотя де-факто он больше не используется в качестве режима связи, он по-прежнему необходимые знания военному спецназу и некоторым радиолюбителям Лицензии операторов.

В особом случае использования радиолюбителями идентификация данных строка может быть запрограммирована в контроллер для обеспечения правильного идентификатора или другая дополнительная информация при использовании устройства в качестве ретранслятора контроллер или автоматический ключ. Например, радиолюбители могут использовать LTD в качестве конкурсного ключа, превратив аналоговый в цифровой отключите каналы и введите текстовое сообщение «CQ».

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

Обучение Micro to Tap Dance — Обзор аппаратного обеспечения

Как упоминалось выше, простота аппаратного обеспечения была главной задачей для этого проекта, поэтому, естественно, подойдет один микроконтроллер ATMega8. награды (см. рисунок 1). Этот чип превратили в умную азбуку Морзе оператора при использовании микросхем аналого-цифрового преобразования особенность. Для этого проекта 28-выводная версия устройства PDIP позволяет для 4-канального 10-разрядного ввода АЦП в качестве простого прототипа.

Рисунок 1. Функциональная блок-схема ООО. Все блоки, кроме дополнительный буфер EIA-232 находится на ATMega8.

Прошивка контроллера, которая описана в отдельном разделе, содержит подпрограммы для сканирования от одного до четырех 10-битных аналоговых входных каналов и отправить измерения азбукой Морзе, как определено любой перемычкой настройки или параметры, установленные с помощью последовательного терминала, и параметры хранится во внутренней EEPROM чипов. Когда параметры устанавливаются с помощью серийный терминал, текстовая строка до 80 символов может быть опционально отправляется вместе с измеренными напряжениями.

Если операция не настроена с помощью последовательного терминала, операция определяется установкой аппаратных перемычек на землю (микросхема имеет внутренние подтягивающие резисторы около 50кОм.), и одна специальная перемычка заставит выбор перемычки отменить любую предыдущую настройку информация хранится во внутренней EEPROM.

Здесь можно выбрать настройки перемычек.

Работа по умолчанию (PDIP, контакт 11)
Когда этот контакт заземлен, работа определяется исключительно перемычкой конфигурации, что означает, что все параметры, хранящиеся в EEPROM, будут игнорируются, хотя эти параметры все еще можно редактировать, если EIA-232 терминал подключен.

Выбор тона (1 кГц, 500 Гц) (вывод 5 PDIP) частота 500 Гц или 1 кГц.

Разомкнут = тон 1 кГц
Заземлен = тон 500 Гц

Выбор каналов АЦП (PDIP Контакты 4 и 5) Состояния этих контактов в комбинация определяет, будут ли измеряться 1, 2, 3 или 4 канала АЦП.

Контакт 5     Контакт 4      Измерено каналов
Открыто Открыто       Только канал А
Земля    Открыто Каналы А и В только
Открыть Заземление     Только каналы A, B и C
Заземление    Заземление Каналы A, B, C и D

Скорость азбуки Морзе (контакты 27 PDIP) и 28).

Штифт 28 Контакт 27 Азбука Морзе Скорость
Открыть Открыть 10 слов в минуту
Открыть Земля 1 слово в минуту
Земля Открыть 5 слов в минуту
Земля Земля 25 слов в минуту

Скорость кода 1 слово в минуту предназначена для очень низкой скорости компьютер-компьютер радио связи, где отношение сигнал/шум очень плохое.

Обратите внимание, что заземление контакта 11 и оставление других контактов незаземленными приводят к тому, что только аналоговый канал A многократно измеряется и отправляется в 10 слов в минуту с частотой 1 кГц.

Схема

Рис. 2. Добавление только блока питания и дополнительного буфера EIA-232 позволяют использовать все функции чипов.

Схема LTD в значительной степени представляет собой ATMega8, работающий со своими внутренними 4 Тактовая частота МГц, а также источник питания и дополнительный буфер EIA-232. В самая простая реализация, буферы EIA-232 могут быть опущены и работа задается только путем заземления выбранных контактов.

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

Вход RXD также имеет внутренний подтягивающий резистор, так что если Дискретный буфер буфера EIA232 используется вместо MAX32, Подтягивающий резистор на входе RXD не нужен.

Конструкция

LTD был смонтирован и припаян к перфорированному прототипу с контактной площадкой. доска из

AVR2004 Entry A3692 Стр. 6 из 62

Эпоксидная смола FR-4, с использованием простых методов соединения точка-точка. Все полупроводниковые устройства вставляются в гнезда, за исключением 5-вольтового регулятора 7805.

9-вольтовая батарея Bunny обеспечивает постоянный ток для устройства. Несколько двухпозиционных Клеммы на печатной плате обеспечивают 4 аналоговых входа, вход постоянного тока батареи, и регулируемый 5 вольт постоянного тока для подключения к внешним устройствам. А DB25 (25-контактный разъем D), который является интерфейсом для последовательного терминал, приподнят над платой с помощью стоек. См. Фото 1.

Пример Приложение

Этот проект демонстрирует практическое применение LTD с использованием Датчик температуры LM34Z. Это устройство обеспечивает точность Преобразование температуры в напряжение для ввода в LTD.

Рис. 3. Блок-схема простого автономного термометра азбуки Морзе.

Преобразователь температуры в напряжение, изготовленный компанией National Semiconductor LM34 и операционный усилитель National Semiconductor LMC7111 обеспечивают LTD с напряжением, пропорциональным току. Каждые несколько секунд, LTD измеряет аналоговое напряжение и отправляет сигнал азбукой Морзе что соответствует температуре воздуха. например, воздух температура 23,1 градуса по Цельсию приведет к отправке 232 в азбуке Морзе. Блок-схема демонстрационной системы показана на Рисунок 3, а его фотография показана на Фото 2.

Пример использования выхода KEY LTD для управления SAW-системой преобразователь показан на рис. 4.

Фотографии 2. Для платы датчика температуры требуется только три проводники для подключения к плате LTD — +5 вольт, выход датчика, и земля.

Рис. 4. Пример управления передатчиком на ПАВ.

Бесконечные возможности
Можно добавить функцию шумоподавления, с помощью которой каналы ниже некоторого заданного порога не будет отправлено.

Можно добавить часы реального времени, чтобы LTD отправлял данные в определенное время. раз, или разрешить условную телеметрию, или отметку времени для регистрации целей. Можно представить приложение, в котором LTD подключен к дверному выключателю, и при открытии двери LTD будет отправить сообщение азбукой Морзе: ДВЕРЬ ОТКРЫТА В 22:15.

Прошивка Обзор недорогого устройства телеметрии

Прошивка позволяет работать чипу (количество каналов для сканирование, скорость кода и т. д.), которые можно определить, настроив его через Терминал ASCII, в котором рабочие параметры хранятся на микросхеме ATMega8. ЭСППЗУ,. или выбором перемычки. В случае выбора перемычки дополнительная перемычка позволяет перемычкам игнорировать любую информацию о настройке хранятся в EEPROM, таким образом гарантируя, что работа чипов может быть запрограммирован без использования терминала, даже если он был ранее настроенный с помощью терминала.

После сброса при включении питания или после перезапуска микросхема обнаруживает наличие действительной информации о настройке терминала

в EEPROM (последовательность инициализации показано на блок-схеме «Пуск» выше). Если действительная информация о настройке присутствует, он запускает программу, управляющую работой чипа на основе этой информации о настройке. Если действительная информация о настройке не присутствует, он запускает программу, которая многократно сканирует перемычки и управляет последовательностью работы чипов на основе настроек джемперы.

Выше приведен снимок экрана, показывающий вывод ASCII во время запуска. отображается версия прошивки (morbecon040516D), а затем установка параметры, хранящиеся в EEPROM, после чего следует первое аналоговое измерение. Если бы текстовая строка была запрограммирована, она выглядела бы просто до первого аналогового измерения. Текстовая строка, если она есть, и аналоговые измерения (C200 в приведенном выше примере) также были отправлены в Азбука Морзе.

Программа, управляющая работой чипа на основе положения перемычек (эта программа иллюстрируется блок-схемой основного цикла по умолчанию, выше) выполняет последовательность проверки установки перемычек и настройка выбора аналогово-цифровых каналов, скорости и тона азбуки Морзе шаг, затем измерение аналогово-цифровых каналов с 10-битным разрешением, преобразование аналоговых данных в десятичные, а затем отправка данных в виде Код Морзе, а также для последовательного вывода в виде данных ASCII. Один раз каждый цикла, буфер приемника UART проверяется, затем опустел. Если в буфере обнаружен символ возврата каретки (ASCII $0D), аналоговый цикл опроса и отправки останавливается, и управление передается программа, позволяющая выполнять настройку с помощью ASCII-терминала.

Программа, управляющая работой чипа на основе настроек, сохраненных в встроенная EERPOM (эта программа иллюстрируется основным циклом для Блок-схема запрограммированной операции выше) проходит через последовательность настройка рабочих параметров, измерение аналоговых каналов, должны быть измерены, и отправки результатов измерения. Подобно программе по умолчанию, основной цикл для запрограммированной операции также проверяет возврат каретки в приемном буфере UART и переключает управление на программа, позволяющая настроить работу чипа с помощью ASCII-терминала.

Измерение до четырех аналоговых каналов на основе хранилища настроек в EEPROM показано на блок-схеме MeasureAndSendProgVolts, выше. Процесс сохранения настроек в EEPROM отличается от аналоговое сканирование и вывод под управлением перемычек в том случае, когда Используя параметры, хранящиеся в EEPROM, любой из четырех каналов может быть произвольно включается в любой комбинации, находясь под управлением перемычки, разрешена только одна из следующих комбинаций, согласно следующая таблица:

Бит 3 Бит 2 Измерение
1 1 Только канал A (АЦП 0)
0 1 Каналы A и B (АЦП 0,1)
1 0 Каналы A, B и C (АЦП 0,1,2)
0 0 Каналы A,B,C и D (АЦП 0,1,2,3)

Простой редактор позволяет редактировать рабочие параметры, как показано на приведенную выше блок-схему (под названием «Редактор параметров») и снимок экрана в запуск редактора, ниже. Все команды представляют собой один символ в длина. Текстовые строки длиной до 80 символов можно вводить с помощью простой линейный редактор.


(Вверху) Скриншот меню в редакторе.

Блок-схема SendMorseASCII иллюстрирует процесс, посредством которого ASCII символы преобразуются в азбуку Морзе. Шестнадцатеричное значение $31 вычитается из символа ASCII для создания индекса в таблице. Таким образом индекс, созданный из ASCII A ($41 в шестнадцатеричном формате), будет равен $11 в шестнадцатеричном формате. Некоторые ASCII символы не имеют эквивалентов азбуки Морзе и молчат. Тихий символы кодируются как 0b00000001, что приводит к циклу отправки завершение перед отправкой любой азбуки Морзе.

Азбука Морзе выбивается из PORTB, бит 3 и модулируется тон код генерируется переключением бита 2 PORTB во время прерывания. переключение, генерирующее тоны, управляется внутренним флагом, который устанавливается во время точки или тире. Код, который выдает азбуку Морзе, показано на блок-схеме под названием SendCodedCode.

Основной единицей времени азбуки Морзе является точка, а все остальные тайминги — тире, интерсимвол, интерсимвол и интерслово интервалы кратны периоду точки. Точечный период рассчитан по прошивку, установив 16-битный таймер и дождавшись его завершения. переполнение. Причина, по которой таймер используется для определения времени периода точки, а не чем использование временной петли, так что прерывания для тона (который может происходить с частотой 2000 или 1000 прерываний в секунду) не влияют точечный период.


Упрощенный биполярный вольтметр 50 В и амперметр 5 В

Упрощенный двухполюсный вольтамперметр Блок питания постоянного тока, выполненный в виде модуля для удобства добавления на переднюю панель.

Большинство доступных модулей либо не могут считывать отрицательные напряжения и токи, либо являются дорогостоящими для любителя. Схема проста и требует одного положительного источника питания (от 8 до 12 В постоянного тока).

 

См. полную схему:

Здесь микроконтроллер ATMEGA8 является сердцем проекта. Каналы АЦП микроконтроллера непрерывно считывают напряжения, доступные на 4 контактах (23, 24, 25 и 26), затем обрабатывают и отображают на 2-строчном 16-колоночном ЖК-дисплее.

Положительное напряжение делится с помощью делителей сопротивления, а отрицательное напряжение преобразуется в положительное напряжение с помощью LM358 (один операционный усилитель используется из двойного операционного усилителя IC) и питается от отдельного источника питания 6 В через фиксированный стабилизатор напряжения IC 7806. Остальная цепь питается от другого фиксированного стабилизатора напряжения IC 7805. 

Ток измеряется с помощью модулей ACS712-5A, которые могут измерять ток в диапазоне от -5 А до +5 А. Два аналогичных модуля ACS712-5A используются для измерения положительного и отрицательного тока, а схема и способ подключения модулей показаны ниже.

Первоначальная настройка/калибровка:

После того, как компоненты припаяны к печатной плате (здесь используется печатная плата общего назначения) в соответствии со схемой, файл BipolarVAmeter. HEX должен быть загружен в ATMEGA8 с помощью любого подходящего программатора, использующего порт ISP. .

После подключения источника питания к цепи (рекомендуется батарея 9 В) включите питание цепи. Теперь подключите положительный и отрицательный разъемы источника питания к входу для положительного напряжения и входу для отрицательного напряжения для измерения напряжения. Считайте входные напряжения на мультиметре (режим напряжения) и отрегулируйте подстроечные потенциометры 200K для отображения того же напряжения на ЖК-дисплее.

Для калибровки показаний тока соедините последовательно два модуля ACS712-5A, как показано на рисунке, с мультиметром в режиме 10 А. Необходимо сделать небольшую печатную плату с двумя кнопками, подключенными к контактам 4 и 5 ATMEGA8. Теперь перезапустите схему, выключив и включив питание (или нажмите кнопку сброса).

Считывание текущего расхода в амперах на мультиметре, ЖК-дисплее для положительных и отрицательных значений. если на ЖК-дисплее отображается нулевое значение (0,0 А), поменяйте местами входное питание для конкретного модуля ACS712-5A после отключения питания цепи.

Если отображаемое значение (ампер) не соответствует значению мультиметра, запишите процент ошибки для положительных и отрицательных ампер на ЖК-дисплее, относительно. до многометрового значения.

Теперь сбросьте схему и просто нажмите любую кнопку, пока на ЖК-дисплее отображается название проекта (упрощенный биполярный вольт-амперметр).

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

Описанный выше процесс необходимо повторять до тех пор, пока значения тока, отображаемые на ЖК-дисплее, не совпадут со значением на мультиметре.

После завершения начальной настройки и калибровки схема готова к использованию. Здесь показана схема подключения модуля Volt Amp к существующему источнику питания и окончательная сборка на передней панели.

 

НАСЛАЖДАЙТЕСЬ. ВСЕГО НАИЛУЧШЕГО.

щелкните ссылку / вложение, чтобы загрузить файл и переименовать его в BipolarVAmeter.HEX , затем загрузите его в ATMEGA8 с помощью любого подходящего программатора AVR.

Чтобы получить исходный код (на языке C), (BipolarVAmeter.C), отправьте сообщение через контактную форму. Код будет отправлен на вашу электронную почту.

BipolarVAmeter.TXT

Упрощенный биполярный вольтамперметр

Этот проект является РАСШИРЕНИЕМ для проекта упрощенного вольтамперметра, который отображает мощность и сводку в дополнение к вольтам и амперам как для положительного, так и для отрицательного напряжения постоянного тока и потребляемого тока .

Основное отличие состоит в том, что ЖК-дисплей должен быть заменен на 4 строки по 16 столбцов вместо 2 строк по 16 столбцов.

alexxlab

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

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