Этот проект возник из любопытства – что мы можем сделать на таком маленьком микроконтроллере? Оказывается, много чего. В этом проекте микроконтроллер будет измерять напряжение, ток и температуру, пересчитывать их и выводить на ЖК дисплей формата 16×1. Несмотря на необычные решения, и несколько недостатков, его также можно использовать как измеритель напряжения питания. Размеры печатной платы составляют 35×16 мм.

Дисплей использует 6 контактов, поэтому вывод RESET придется сконфигурировать как обычный порт ввода/вывода. Это следует делать ПОСЛЕ программирования. Измерение напряжения осуществляется с помощью резистивного делителя. Измерения в диапазоне от 0 до 99.9 В выполняются с точностью 0.1 В. Ток измеряется путем измерения падения напряжения на шунтирующем резисторе сопротивлением 0.1 Ом. Диапазон измерения составляет от 0 до 9.99 А, точность 0.01 А. Температура измеряется с помощью аналогового датчика LM35 в диапазоне от 0 до 99.9 °С с точностью 0.01 °С. В качестве о напряжения для АЦП используется внутренний источник опорного напряжения микроконтроллера ATtiny13, его напряжение составляет 1.1 В. Таким образом, для измерения тока нам не придется использовать операционный усилитель (и отрицательное напряжение питания для него), а вычисления становятся гораздо проще.

АмперВольтметр на ATtiny13 - схема

Такому простому устройству свойственны небольшие недостатки. Измерение происходит на тех же самых выводах, по которым передаются данные для ЖК-дисплея, а выводам дисплея требуется ток около 80 мкА, чтобы подтянуть их к земле. Резистор сопротивлением 100 Ом в резистивном делителе плохо справляется с этой функцией, и на нем остается около 7 мВ относительно земли. Эти 7 мВ просто вычитаются из результата измерений, из за чего возникает погрешность и результат измерений получается нелинейным. Эта погрешность наиболее сильно проявляется в диапазоне измеряемых напряжений от 0 до 5 В.

Помните, что для измерения больших токов и напряжений мощности шунтирующего и добавочного резисторов должны быть соответствующими. Устройство калибруется с помощью двух подстроечных потенциометров. Контраст ЖК дисплея не регулируется, он задан с помощью двух резисторов, получаемое напряжение равно приблизительно 1 В. Большинство ЖК дисплеев хорошо работают с этим напряжением, но при желании вы можете установить свое значение. Ток измеряется относительно шины земли. Земля источника питания соединяется с землей на плате. Шунтирующий резистор подключается между землей (на схеме GND) и входом -V. Если вы захотите запитать это устройство от источника измеряемого напряжения, просто подключите вход стабилизатора напряжения ко входу +V. Не забывайте, что максимальное напряжение, которое вы можете подать на вход стабилизатора 7805, составляет 30 В. Таким образом, если вы захотите измерять более высокие напряжения или измерять напряжение в диапазоне от 0 В, понадобится отдельный источник питания для устройства. В этом случае перережьте дорожку под потенциометром калибровки напряжения, измеряемое напряжение подключите к контакту +V, а затем подключите источник питания к контакту ZAS на плате.

Плата спроектирована так, чтобы разместить на ней стабилизатор 7805 в корпусе TO252, но на ней можно без проблем поставить микросхему 78L05 в корпусе TO92. Общий ток, потребляемый устройством, включая подсветку ЖК-дисплея, составляет около 30 мА, так что стабилизатора 78L05 вполне хватит.

Диапазон измеряемых напряжений : 0 - 99 Вольт, с дискретностью 0,1 Вольт

Диапазон измеряемого тока : 0 - 9,9 Ампер (С шунтом 0,1 Ом)

Диапазон измеряемых температур : 0 - 99° С, с дискретностью 0,1° С

Программирование: порт сброса (reset) микроконтроллера должен быть запрограммирован как обычный порт (fuse RSTDISBL). Внимание! При установке бита RSTDISBL=0, дальнейшее программирование микроконтроллера с помощью ISP будет невозможным. Восстановить заводскую конфигурацию микроконтроллера можно с помощью этого устройства. Остальные FUSE - биты по умолчанию.

В архив добавлен файл tiny13lcd_9_64-sample, это обновленная версия программы для микроконтроллера, производящая 64 измерения и отображающая их среднее значение.


Архив для статьи "АмперВольтметр на attiny13"
Описание:
Размер файла: 74.18 KB Количество загрузок: 6 693 Download

Комментарии  
+1
А фузы какие ставить? На ихнем языке ни фига не понятно :-? ... Уверен,мне никто не ответит :lol:
+3
я думаю тут дефолтные заводские настройки
Если бы еще экран HD44780 на более дешевый заменили , цены бы ему не было
+1
Какие фьюзы выставить ?
RSTDISBL=0 это обязательно надо ?

Цитирую @лексей:

Какие фьюзы выставить ?
RSTDISBL=0 это обязательно надо ?


Обязательно RSTDISBL=0, остальные по умолчанию
+1
прошил все как по инструкции файлом TINY13LCD_9_64-SAMPLE.hex. Показания начали моргать на экране.
А датчик температуры подключал? Если да то попробуй без него
Датчик температуры не подключен
Как у вас работает без датчика температуры ? Показания не моргают в виде бегущей строки
А есть прошивка без датчика температуры ?
+1
Перед тем как разместить статью собирал этот прибор, включал без датчика, показывал все нормально. Но не помню какую прошивку заливал. А исходник можно изменить, чтоб не показывал температуру
+1
Ребят, подскажите, подойдет ли для этой схемы дисплей PVC160202AYL 16х2? Или нужно будет переделывать что-то в прошивке?
+1

Цитирую Kondrattt:

Ребят, подскажите, подойдет ли для этой схемы дисплей PVC160202AYL 16х2? Или нужно будет переделывать что-то в прошивке?


Подойдет без проблем
Собрал этот мерник. Точнее собрал давно, подключил только сегодня. Напряжение показывает вполне прилично, а с током проблема, причем серьезная. При отключенном входе показывает какой-то серьезный ток, но подстроечником можно выставить 0, но тогда врет неимоверно, занижает ток в несколько раз. Если при токе 1А выставить 1А и на дисплее, то при снижении реального тока до 0 на дисплее 0,33А и меньше не становится, только подстроечником можно убрать, но тогда настройка, естественно, к черту. Что бы это могло значить?

Цитирую Гость:

Если бы еще экран HD44780 на более дешевый заменили , цены бы ему не было


А проблемы нет :)
Берете пару регистров К561ИР2 и семисегментник - и вот вам экран - дешево и сердито))
Даже вывод RESET можно высвободить
+1
А исходник можно?

Цитирую Alex4221908:

А исходник можно?


Исходник(Бейсик) в архиве
Я восхищаюсь автором, очень круто получилось.
А шунт на 0.01 заменить возможно?
А схему в RUSplane можно?
Эиком - электронные компоненты и радиодетали