Этот проект возник из любопытства – что мы можем сделать на таком маленьком микроконтроллере? Оказывается, много чего. В этом проекте микроконтроллер будет измерять напряжение, ток и температуру, пересчитывать их и выводить на ЖК дисплей формата 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 442 Скачать

Комментарии  

+1 #1 Guest 23.04.2010 23:05
А фузы какие ставить? На ихнем языке ни фига не понятно :-? ... Уверен,мне никто не ответит :lol:
Сообщить модератору
+3 #2 Guest 26.04.2010 12:37
я думаю тут дефолтные заводские настройки
Сообщить модератору
+1 #3 Guest 23.02.2011 22:51
Если бы еще экран HD44780 на более дешевый заменили , цены бы ему не было
Сообщить модератору
+1 #4 Guest 19.03.2011 02:28
Какие фьюзы выставить ?
RSTDISBL=0 это обязательно надо ?
Сообщить модератору
0 #5 AntonChip 19.03.2011 04:35
Цитирую @лексей:
Какие фьюзы выставить ?
RSTDISBL=0 это обязательно надо ?

Обязательно RSTDISBL=0, остальные по умолчанию
Сообщить модератору
+1 #6 Guest 20.03.2011 00:54
прошил все как по инструкции файлом TINY13LCD_9_64- SAMPLE.hex. Показания начали моргать на экране.
Сообщить модератору
0 #7 AntonChip 20.03.2011 01:37
А датчик температуры подключал? Если да то попробуй без него
Сообщить модератору
0 #8 Guest 20.03.2011 02:51
Датчик температуры не подключен
Сообщить модератору
0 #9 Guest 22.03.2011 21:14
Как у вас работает без датчика температуры ? Показания не моргают в виде бегущей строки
Сообщить модератору
0 #10 Guest 22.03.2011 21:24
А есть прошивка без датчика температуры ?
Сообщить модератору
+1 #11 AntonChip 22.03.2011 21:57
Перед тем как разместить статью собирал этот прибор, включал без датчика, показывал все нормально. Но не помню какую прошивку заливал. А исходник можно изменить, чтоб не показывал температуру
Сообщить модератору
0 #12 Kondrattt 01.03.2012 10:21
Ребят, подскажите, подойдет ли для этой схемы дисплей PVC160202AYL 16х2? Или нужно будет переделывать что-то в прошивке?
Сообщить модератору
+1 #13 boogyman 01.03.2012 19:05
Цитирую Kondrattt:
Ребят, подскажите, подойдет ли для этой схемы дисплей PVC160202AYL 16х2? Или нужно будет переделывать что-то в прошивке?

Подойдет без проблем
Сообщить модератору
0 #14 P_M_Ch 01.11.2012 19:54
Собрал этот мерник. Точнее собрал давно, подключил только сегодня. Напряжение показывает вполне прилично, а с током проблема, причем серьезная. При отключенном входе показывает какой-то серьезный ток, но подстроечником можно выставить 0, но тогда врет неимоверно, занижает ток в несколько раз. Если при токе 1А выставить 1А и на дисплее, то при снижении реального тока до 0 на дисплее 0,33А и меньше не становится, только подстроечником можно убрать, но тогда настройка, естественно, к черту. Что бы это могло значить?
Сообщить модератору
0 #15 Радуга 11.07.2013 09:35
Цитирую Гость:
Если бы еще экран HD44780 на более дешевый заменили , цены бы ему не было

А проблемы нет :)
Берете пару регистров К561ИР2 и семисегментник - и вот вам экран - дешево и сердито))
Даже вывод RESET можно высвободить
Сообщить модератору
+1 #16 Alex4221908 16.12.2013 21:35
А исходник можно?
Сообщить модератору
0 #17 AntonChip 16.12.2013 22:09
Цитирую Alex4221908:
А исходник можно?

Исходник(Бейсик ) в архиве
Сообщить модератору
0 #18 HWman 26.09.2014 00:05
Я восхищаюсь автором, очень круто получилось.
Сообщить модератору
0 #19 totsamiyya 09.04.2015 14:18
А шунт на 0.01 заменить возможно?
Сообщить модератору
0 #20 SUN 05.04.2024 18:52
А схему в RUSplane можно?
Сообщить модератору