Простой цифровой милливольтметр постоянного тока

Views: 4098


ch4020vm-05-150

Простой цифровой вольтметр постоянного тока. Три диапазона измерений с автоматическим переключением 1 – 0,001 – 0,999 V, 2 – 0,01-9,99 V, 3 – 0,1-99,9. Четыре управляемых выхода с возможностью задания функции контроля и времени реакции на событие. Программная калибровка. Функция амперметра, возможность использования для преобразования напряжения шунта для индикации тока.  Устройство выполнено на универсальной плате ch-4000.


 


 Функциональная схема вольтметра.

ch4030vm-11

АЦП – выполняет измерение напряжения и передает данные в модуль контроля. Модули контроля позволяют выполнять контроль напряжения по 4 функциям. 1-контроль наличия напряжения в заданных пределах, если напряжение находиться внутри диапазона заданных напряжений реле замкнуто. 2 – контроль выхода напряжение за установленные границы. Если напряжение выше или ниже заданных параметров – реле замкнуто. 3 – реле замкнуто если напряжение ниже минимального уровня и отключено если выше максимального. 4-реле замкнуто если напряжение выше максимального уровня и разомкнуто если напряжение ниже минимального уровня.


Схема вольтметра. 

Это конфигурации платы для функции аналогового входа. Это вариант для простого вольтметра с одним диапазоном от 0,01 до 10.00 вольт, если R1=180 k, R3=20k (1/10). Если удалить R3, будет диапазон от 0,001 до 1,000 вольта. Если R1=180 k, а R3=1,8 k, это будет 1/100 диапазон от 0,1 до 100,0 вольт.

ch-4030_01

Но плата позволяет сделать 2 автоматических диапазона, ну а если и еще извратиться (бросить проводок), то трех диапазонный. проблема только в том, что логический ноль на выходе контроллера не совсем ноль, это уровень порядка до 20 милливольт, но это терпимо, для диапазон измерения до 10 и 100 вольт. Эти вносимые погрешности можно программно скомпенсировать.

ch-4030_02


Монтажная схема платы.

Оставлены только используемые компоненты. Расположение элементов на верней стороне платы.

ch4020vm-02

Расположение элементов на нижней стороне платы.

ch4020vm-03


 Перечень элементов необходимых для сборки.  

Наименование  Типоразмер  Тип (замена)  Количество  Примечание 
Микроконтроллер SSOP PIC16F1829 1 PIC1
Стабилизатор SO-8 78L05 1 ST1
Ключи SO-14 ULN2003D 1 U1
Индикатор SR410561N/32 1 LD1
Диод SM4007 1 D1
Резистор 1206 0 1 R4
Резистор 1206 22 1 R5
Резистор 0805 680 8 R7,R8,R9,R24,
R25,R26,R27,R28
Резистор 0805 1K 4 R30,R31,R32,R33
Резистор 0805 10K 1 R12
Резистор 0805 180K 1 R1
Резистор 0805 1.8K 1 R13
CHIP BEADS 0805 LCBB-601 1 R11
Резистор 0603 0 1 R37,R39
Конденсатор 0805 0.1x50v 3 C4,C7,C5
Тактовая кнопка SMD TACT 6×6-15.0 4 PB1-PB4
Конденсатор керамический 1206 10,0х25v 1 C8
Конденсатор электролитический 220,0х25v 1 C3
Конденсатор электролитический 100,0х16v 1  C6
Стабилитрон SOT23 BZX84-C5V1 1 Z1
Стабилитрон SOT23 BZX84-C30 1 Z6

Проблема простоты и точности.

Первая простота заключена в самом микроконтроллере. в нем встроен источник опорного напряжения, который позволяет нам получить опорное напряжение 1024 милливольта. Т.е. мы сразу имеем точный отсчет. Это даст без преобразования измерять, просто подавая на вход контролера напряжения от 0,001 до 1,000 вольта.

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

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

ch-4000_volt01

Для реализации механизма устранения “блыманья” надо будет применить три метода, что-бы получить индикацию приемлемого вида.

Для борьбы с помехами мы применим три метода

  1. Вычисление среднего из N – измерений.
  2. Применение “накапливающего интегратора”.
  3. Поиск минимального сигнала в циклах “накапливающего интегратора”.

 Что дает каждый метод в отдельности.

1. Вычисление среднего их N – измерений. Позволяет выполнить несколько измерений и найти среднее значение, что естественно “сгладит” поверхностные пульсации вызванные электронаводками и цифровым шумом.

	if(GO==0)
	{
//------------------------------------------		
		volt[ctetizm]=ADRESL;			// чтение данных их АЦП
		volt[ctetizm]+=ADRESH<<8;		// ADC data read them
		if(++ctetizm>IZMR)ctetizm=0;
		GO=1;                                   // запуск измерения/start of measurement
		voltage=0;
		for(a=0;a<IZMR;a++)
		{
			voltage+=volt[a];
		}
		voltage=voltage/IZMR;
                if(voltage<voltageMIN)voltageMIN=voltage;

2. Применение “накапливающего интегратора”. Позволит выполнять смену индикации напряжения с “первого” показания (которое в настоящий момент на индикаторе) на “второе” (которое подготовлено блоком обработки сигнала), когда “второе” встречается  в N раз чаще чем “первое”.

	    // ФИЛЬТР устранения дрожания индикации при смене напряжения "накапливающий интегратор"
	    // FILTER jitter display by changing the voltage to "accumulate integrator"
		if(voltage!=voltager && timery)timery--;
		else 
		{
		   	voltager=voltageMIN;
		   	timery=500;				// нельзя делать очень большим, появится эффект тригерности
			voltageMIN=1023;
		}

3. Поиск минимального сигнала в циклах “накапливающего интегратора”. Будут выводить на индикатор минимальное значение, что как показала практика, является более достоверным. А так-ка поиск минимума, должен происходить не во всем времени, а только в моменты периода работы “накапливающего интегратора”, то как раз в эти моменты будет происходить сброс минимума текущего измерения. Сброс будет выполняться к максимальному значению АЦП.

Для автоматического выбора пределов используем условие превышения уровня сигнала выше 1000, для возврата на уровень ниже если ниже 99. Для предотвращения перепрыгивания на уровень выше необходимо сбросить уровень сигнала в буфере на среднее значение.

// функция автоматического переключения на нужный уровень
	if(voltage>1000&&tochraraz==1)
	{
		// выбор уровня 2
		LEVEL01=0;
		LEVEL02=1;
		tochraraz=2;
		for(a=0;a<IZMR;a++)// сброс значение в среднее хначение
		{
			volt[a]=200;
		}
	}	
	else if(voltage>1000&&tochraraz==2)
	{
		// выбор уровня 3
		LEVEL01=1;
		LEVEL02=0;
		tochraraz=3;
		for(a=0;a<IZMR;a++)// сброс измерение в среднее значение
		{
			volt[a]=200;
		}
	}	
	else if(voltage<99&&tochraraz==3)
	{
		// выбор уровня 2
		LEVEL01=0;
		LEVEL02=1;
		tochraraz=2;
		for(a=0;a<IZMR;a++)// сброс измерение в среднее значение
		{
			volt[a]=200;
		}
	}
	else if(voltage<99&&tochraraz==2)
	{
		LEVEL01=1;
		LEVEL02=1;
		tochraraz=1;
		for(a=0;a<IZMR;a++)// сброс измерение в среднее значение
		{
			volt[a]=200;
		}
	}

Расширение функций.

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


Описание назначений клавиш управления.

Позиционное расположение клавиш:

[←][→][↓][↑]

Основной режим работы:

[←] выключение или уменьшение задания таймера.

[→] запуск таймера и задание времени его работы.

[↓] вход в режим настройки параметров милливольтметра.

[↑] выбор предела измерений (АВТО/0,000/00,00/000,0).

Режим ввода пароля:

Сообщение [PASS] предупреждает о необходимости ввода пароля.  Сообщение [0.000] говорит от необходимости ввода пароля. Клавишей [→] выбираем разряд в который необходимо ввести число. Клавишей [←] вводится число, диапазон вводимого числа 0-9, A, B, C, D, E, F, G, H. Цифры выбираются последовательно и повторяются по кругу. При вводе пароля нажать клавишу [↓] – для перехода на уровень программирования функций. Каждый уровень имеет свой индивидуальный пароль. Если пароль введен, то до входа в основной режим работы, при движении по уровням, пароль в дальнейшем вводить не надо.

Режим настройки параметров:

[←] выбор функций на уровне функций, уменьшение задания параметра  на уровне параметра функции.

[→] выбор функций на уровне функций, увеличение задания параметра  на уровне параметра функции.

[↓] вход/выход в режим настройки параметра или переход на уровень ниже.

[↑] выход из режима настройки или настройки параметра функции.


 

Продолжение следует…

Схемы в формате pdf

Значок

Простой цифровой милливольтметр постоянного тока - cхемы формате pdf 27.29 KB 908 downloads

Простой цифровой милливольтметр постоянного...

Предварительная прошивка для тестирование, функции измерения и регулирования полностью работают, мастер пароль для всех уровней “1000”

Значок

Простой цифровой милливольтметр постоянного тока - прошивка beta 9.67 KB 760 downloads

Простой цифровой милливольтметр постоянного...

Это может быть интересно


  • Сенсорный выключатель светаСенсорный выключатель света
    Views: 12232 Хотя в настоящий момент актуальны системы управления освещением с передачей данных по электросети, но я думаю, что проекты такого рода тоже имеют право на жизнь. Анонс Три вида …
  • MPLAB® Harmony – или как это просто! Часть 1.MPLAB® Harmony – или как это просто! Часть 1.
    Views: 3590 Часть первая – Установка Гармонии. Музыкальная тема к статье, слушаем: В начале запуска нового проекта и выбора микроконтроллера стоит задача правильно его сконфигурировать, прежде чем перейти к реализации …
  • Гаджеты для домашней автоматики – Датчик движенияГаджеты для домашней автоматики – Датчик движения
    Views: 1452 Управление светодиодным освещением – Датчик движения. Данный гаджет предназначен для управления освещением рабочих столов (кухонных столов), освещение прихожих, освещение зеркал в прихожих, автоматическое включение света в коридорах. Датчик позволяет …
  • Altium Designer – подготовка документации для производства и сборки печатных платAltium Designer – подготовка документации для производства и сборки печатных плат
    Views: 3678 В процессе освоения Altium Designer много возникает вопросов по подготовке документации для производства плат, а также для её сборки. Altium Designer позволяет сделать все требуемые документы, хотя скажем …
  • Audio-bluetooth modules F-6188 (BK8000L)Audio-bluetooth modules F-6188 (BK8000L)
    Views: 2304Следующий модуль на чипе BK8000L. Заводское обозначение F-6188 также основным производителем не выпускается и отдан на тиражирование. с нижней стороны имеет маркировку В этом варианте мне попалась вроде полноценная …
  • Trimax – кодирование и декодирование ИК-командTrimax – кодирование и декодирование ИК-команд
    Views: 2215 Первое, что надо понять назначение кнопок клавиш пульта, а также, что за кодирование реализовано в ИК- пульте. Для назначения клавиш обратимся к описанию, а для взлома кодирования воспользуемся …
  • ESP8266  процедура получение данных даты и времени от серверов точного времени.ESP8266 процедура получение данных даты и времени от серверов точного времени.
    Views: 5884 Эта функция доступна уже в версии 1.6.1. Для многих приложений, необходимо часы реального времени,  если в вашем проекте есть модуль WiFI ESP8266, то легко можно сделать следующим образом. …
  • Модуль CAN в микроконтроллерах PIC18Модуль CAN в микроконтроллерах PIC18
    Views: 5765 Введение   CAN последовательный интерфейс связи, который эффективно поддерживает распределенное управление в реальном масштабе времени с высокой помехозащищенностью. Протокол связи полностью определен Robert Bosch GmbH, в спецификации требований …
  • Дифференциальный терморегуляторДифференциальный терморегулятор
    Views: 4004 Дифференциальный терморегулятор ch-3020 Назначение. Ch-c3020 представляет собой дифференциальный терморегулятор. Основное назначение солнечные системы горячего водоснабжения, а также вентиляционные системы управление притоком свежего воздуха. Контроллер позволяет работать пяти режимах. …
  • PIC18 – System ArbitrationPIC18 – System Arbitration
    Views: 572 Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый …



Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

Продолжайте читать

НазадДалее