» » Универсальный вольтметр - амперметр на PIC16F676 с открытым программным кодом. Часть 2

 
 
 
8

Универсальный вольтметр - амперметр на PIC16F676 с открытым программным кодом. Часть 2

Разместил kotyk7 10 апреля 2013. Просмотров: 30 735

Универсальный вольтметр - амперметр на PIC16F676 с открытым программным кодом. Часть 2

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

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

Индикаторы больших размеров


Итак, рассмотренная ранее схема примет вид, показанный на рис. 2. Добавилось три транзистора VT1-VT3 буферного каскада на каждый разряд индикатора. Установленный буферный каскад инвертирует выходной сигнал МК. По сему, входное напряжение на базе VT2 инверсно относительно коллектора указанного транзистора, а значит подходит для подачи на вывод формирования запятой. Это дает возможность убрать транзистор VT1, который был ранее в схеме на рис. 1, заменив последний развязывающим резистором R12. Не забудьте, что изменились и номиналы резисторов в цепях базы транзисторов VT1-VT3.
Если желаете поставить индикаторы с нетрадиционно большими габаритами, то придется в цепи коллекторов указанных транзисторов поставить низкоомные (1 – 10 Ом) резисторы для ограничения бросков тока при их включении.

Логика работы МК для этого варианта нуждается только в небольшом изменении программы в части инверсии выходного сигнала управления разрядами, а именно портов RA0, RA1, RA5.
Рассмотрим только то, что изменится, а именно подпрограмму, уже известную нам под условным названием «Функция формирования динамической индикации» в Листинге №2 (смотрите папку «тр_ОЕ_30V» в архиве или первую часть статьи):

Сравните оба варианта. Инверсия сигнала по порту RA (строка 20 Листинга №2) легко читается, поскольку записано в двоичной форме. Достаточно совместить выводы МК и двоичное число. В строках 19 и 37 появились немного странные условия, которых не было вначале. В первом случае: «задержать сигнал логического нуля на порту RA1 во время индикации второго разряда». Во втором: «в случае если на порте RA2 логический нуль, инверсия». Когда будете компилировать финальную версию программы можете их удалить, а вот для симуляции в PROTEUSе они нужны. Без них не будет нормально индицироваться запятая и сегмент «G».
Почему? — спросите Вы, ведь первый вариант прекрасно работал.

Слово в защиту PROTEUSа

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

На самом деле все проблемы от незнания. Начиная ставить PROTEUS-у задачи, которые выходят за рамки простых, многие не удосуживаются поинтересоваться о важных принципах работы использованных в схеме компонентов. Ведь в нем заложены идеализированные модели и константы, либо как в нашем случае — условия работы индикатора. В частности индикатор то у нас не «простой», а динамический и значит, согласно «мнению» симулятора должен получать на вход только импульсный сигнал с периодом не менее 1 мс.
Во время симуляции, быстродействующий МК выполняет команды слишком быстро и сигнал на указанном порту получается недостаточной длины. Индикатор симулятора игнорирует его. Запятая не высвечивается. На лицо «ошибка» программы, которой на самом деле нет.
Вот и формируется негативное мнение о симуляторе, а ведь все проблемы в нас самих.

Войдя в свойства этого компонента можно изменить нужный нам параметр в сторону его уменьшения. Тогда все будет показывать и без указанной строчки программного кода. Но с учебной целью делать этого не будем, а то ненароком породим множество новых проблем. С этой же целью введены строки 37-38. В данном случае решен вопрос времени засветки сегмента «G». Без них, в симуляторе он будет слегка мерцать. Сказываются расчеты симулятора задержек прохождения сигнала по буферным транзисторам. Он ведь целенаправленно оптимизирован под цифровую технику, а тут аналоговые детали в чистом виде. Учитывая, что симулятор в своей работе использует идеализированные модели, для «нормальной» работы PROTEUSа также введены дополнительные резисторы в цепях их коллекторов. В «железе» их можно не ставить.

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

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

Смена типа индикаторов

Если использовать индикатор с общим катодом, надо опять менять буферные транзисторы на проводимость «n-p-n» и выходные логические уровни МК на противоположные. Учтите, что, после смены транзисторов на их коллекторах будет не логическая единица, а логический нуль. Транзисторы указанной структуры управляются также не логическим нулем, как «p-n-p», а единицей. Значит, в программе нужно использовать готовую подпрограмму, описанную в Листинге №1 для управления разрядами, а вот подпрограмму вывода сегментов «void Cod_to_PORT (char DIGIT_NUMBER)» придется полностью изменить в части инверсии всех выходных сигналов. Ибо в данном случае засвечивать сегменты будут логические единицы.

Программное управление измерениями, формирование шкалы

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

Вся эта часть программы в нашем случае находится в теле главной функции void main () {}, которая начинается с 62 строки. Хотя компилятор все подготовит и измерит сам, согласно полученным командам, указанным в строке 66. Но результат такого измерения будет не в Вольтах. На самом деле это будет некое число, имеющее в своей основе соотношение максимально возможного напряжения приложенного к входному выводу МК (максимально 5 Вольт) и разрядности включенного АЦП. В нашем случае 10 разрядов. Если все это сказать доступно, то при входном напряжении в 5 Вольт результатом работы 10 разрядного АЦП будет число 1023 (в случае 8 разрядного – 255).
Таким образом, 10 разрядный АЦП измеряет напряжение в 100 Вольт, с предделителем конечно, без дополнительных манипуляций. Строку 67 можно исключить.

Если нам нужен вольтметр со шкалой в 50 Вольт, необходимо сделать программное масштабирование. Самый простой вариант №1 этого описан в строке 67 (см. Листинг в 1 части):

ADC_1 = adc_rd/2; //шкала до 50 Вольт

Суть его проста, число 1023 делим на 2 и получаем 511, которое соизмеримо с входным напряжением в 5 Вольт.
Хотя с тем же успехом можно написать и немного более «по науке», например, как вариант №2:

ADC_1 = ((adc_rd * 5) /10);

Затем, из полученного трехзначного числа, выделяем цифры каждого разряда для их последующей индикации (строки 69-71).

Уже здесь видна вносимая небольшая погрешность. Хотелось бы шкалу точно в 50,0 Вольт, а получилось – 51,1. Тем не мене этот простой вариант очень удобный для шкалы в 25 Вольт. Просто делим на 4 и получим шкалу в 25,5 Вольт. Чтобы на индикаторе не отображался лишний «хвост» после запятой его можно просто исключить. Для этого после расчетов поставьте условие, что все, что больше 50 Вольт — отбросить. Теперь индикатор будет четко показывать не больше желаемых пяти десятков.

Для более точного измерения используют соответствующие приемы-формулы. Рассмотрим вариант №3, рассчитанный на 30 Вольт, как чуть более сложный. Ведь деление максимального значения числа, полученного с помощью АЦП, на 3 в результате дает число 341. Такое значение уже может быть неприемлемо как с практической точки зрения, так и эстетики восприятия. Чтобы решить эту проблему нужно строку 67 изложить в следующем виде:

ADC_1 = (30*adc_rd)/(1024/10); //шкала на 30,0 Вольт

В этом варианте легко менять размер шкалы. Ведь он заложен в виде числа-константы «30». Но данное выражение соответствует истине только от 0 до 64 Вольт. Поскольку возникает ограничение больших чисел при расчете переменной ADC_1, которая нами объявлена как переменная типу «unsigned int». Тем не менее, воспользовавшись этим вариантом, поставив соответствующий входной делитель и убрав элементы засветки запятой можно изготовить вольтметр до 600 Вольт.
Неплохой показатель для радиолюбителя, немного даже опасный. Обязательно соблюдайте правила техники безопасности! Безусловно, это не предел для данного вольтметра. Можно и больше, максимум – 999 Вольт, просто нужно ввести в программе соответствующие корректировочные коэффициенты. Поскольку такие высоковольтные случаи больше относятся к разряду экзотики, рассматривать их здесь не будем.

В случае необходимости достичь точности измерения больше чем в 0,3%, например 0,1%, нужно предпринять ряд дополнительных мер. Первая – точность и стабильность опорного напряжения, которое подается на АЦП. В нашем случае это 5 Вольт питания. Поставьте фильтры по цепи питания индикаторов. Затем надо подстроить программу под имеющееся фактическое опорное напряжение, в нашем случае напряжение с интегрального стабилизатора типа 7805 (142КРЕН5).
Тоесть напряжение, которое у нас получается на конкретном стабилизаторе, со всеми его неточностями, можно подставить в формулу в самой программе как константу. Для этого его нужно под нагрузкой предварительно измерить напряжение точным высокоомным прибором.

Полученное значение вставляем в программу и компилируем под конкретный стабилизатор. Естественно, при его замене программу нужно будет «перешивать». Либо в дальнейшем в случае необходимости замены стабилизатора, придется уже подбирать сам стабилизатор под прошитое значение, которое следует написать маркером на корпусе микросхемы.

Рассмотрим последний вариант №4 (смотрите папку «тр_ОЕ_50VK»):
Вначале программы декларируем следующие строки:
#define vref_p 5000 //выходное напряжение стабилизатора в милливольтах (идеальный вариант)
#define vref_m 0 //потенциал «земляного» провода
#define Kstb (vref_p - vref_m)/1024.0 // рассчитываем коэффициент поправки
Затем в главной функции после строки работы с АЦП пишем:
ADC_1 = (Kstb*(adc_rd))/10;

В этой, всего одной, строке получается высокоточное измерение на шкалу от 5 до 500 Вольт. Главное выставить «запятую» в нужном разряде.
Хотя с виду в данном случае «много арифметики», не стоит на это обращать внимание. Компилятор как обычный калькулятор все за нас посчитает, главное не жалеть скобок, а то он может неверно истолковать приоритетность исполнения кода.

Следует понять, что не совсем типичная форма расчетов шкалы получилась в процессе ухода от необходимости использования при операциях умножения либо деления переменных типа «long», а тем более «float», что имеет значение, учитывая небольшой размера памяти в данном МК.
По этой же причине, чтобы не потерять нужные нам итоговые данные, в формулах используется лишние на первый взгляд действия с умножения/деления на 10. Это простейший способ вывести цифры второго/третьего разряда влево за запятую, после которой в процессе присвоения значения переменной типа «int» все отбрасывается. Уже на индикаторе это мнемонически будет представлено высвечиванием запятой в соответствующем разряде.

Измерение в симуляторе времени обновления разрядов индикатора дает результат более 50Гц, чего на практике более чем достаточно. Чтобы не было эффекта мерцания минимальное значение должно быть больше 25 Гц.
Особо замечу, что в программе умышленно не использовано функции прерывания для формирования динамической индикации, как с целью упрощения выкладки и освоения материала, так и за ненадобностью, учитывая полученное значение частоты обновления разрядов. В дальнейшем, при желании, можете задействовать и его.

Для радиолюбителя, наиболее вероятно не придется изменять что-либо в подпрограммах, разве что в главной функции — в строках обработки значений АЦП, основные варианты которых уже выложены, подгоняя их под свои нужды.
В результате компиляции занято всего чуть более 30% ресурсов МК. Места для творчества еще достаточно.

Способы усреднения

Хотя компилятор "MikroC PRO" формирует довольно стабильный показатель измеряемых величин, иногда измеряемое напряжение имеет ярко выраженную импульсную либо непостоянную во времени функцию. В данном случае, показания будут часто меняться, что может сказаться на читаемости результатов. Чтобы это предотвратить, нужно сделать программное усреднение показаний n-ого числа измерений.

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

На досуге просто проверьте такие примеры:
Возьмем дважды по 10 чисел-выборок напряжения (1, 4, 3, 1, 1, 4, 2, 4, 1, 1) и (2, 1, 2, 3, 2, 2, 2, 3, 3, 2) — их сума одинакова и равна 22. Если просто поделить их на число итераций, получится среднее число 2,2 Вольт. Верно ли это для обоих случаев? Очевидно, что нет. Чтобы повысить точность при наличии пиковых значений надо использовать иной способ подсчета.

То есть, если известно, что уровень напряжения будет изменяться мало, можно пользоваться простым усреднением, а если нет, то используйте более сложный алгоритм подсчета. Его еще называют программным фильтром низких частот (ФНЧ). Для него нужно результат каждого суммирования запомнить и просуммировать между собой в отдельной переменной и потом поделить на их количество:
1. 2
2. (2+1)/2=1,5
3. (1,5+2)/2=1,75
4. (1,75+3)/2=2,37
5. (2,37+2)/2=2,18
6. (2,18+2)/2=2,09
7. (2,09+2)/2=2,04
8. (2,04+3)/2=2,52
9. (2,52+3)/2=2,76
10. (2,76+2)/2=2,38

Получив усреднение между каждым из замеров, снова усредняем:
(2+1,5+1,75+2,37+2,18+2,09+2,04+2,52+2,76+2,38)/10 =2,16 ≈2,2 В.
Как видим, этот вариант еще точнее. Из практического опыта — применение такого «программного» ФНЧ все же не освобождает нас от применения ФНЧ в «железе» на входе АЦП (резистор с емкостью). Он еще дополнительно «срежет» часть шумов по входу.

Практика программирования этого метода очень простая, но по началу, из-за невнимательности, можно «большой огород нагородить» множеством переменных, которых будет тем больше, чем большее количество итераций. При этом у МК бестолково отбирается много ресурсов. Иногда даже хвастаются использованием массивов. На самом деле для ее реализации понадобятся всего-то четыре обычных переменных. Итак, как пример, в виде готовой подпрограммы, которую легко можно интерпретировать в предложенную ранее для изучения:
//вводим дополнительные переменные:
unsigned int res_ADC; //данные АЦП  текущее измерение
unsigned int res0_old; //данные АЦП предыдущего измерения
unsigned int temp; //промежуточные данные: переменная суммирования
unsigned char i; //количество итераций
ADC_sum(void){
for (i=0; i<64; i++) // цикл усреднения на 64 выборки (более чем достаточно)
{res_ADC = ADC_Read(3); //меряем напряжение по входу
if (i == 0) // если первое включение (первая выборка)
 {res0_old = res_ADC;// первое значение выборки, отправляем «старые данные»
 temp = res0_old;} // те же данные в сумматор
else //значит уже не первый раз, тогда
{res0_old += res_ADC; // сложили текущее значение с предыдущей выборкой
res0_old /= 2; // поделили на 2
temp += res0_old;} // сразу же просуммировали в сумматоре
}// уже сложили все 64 раза
temp /= 64;// cумму делим на 64
ADC_1 = temp; //результат отправляем в привычную нам переменную
return ADC_1;} // все, вернули полученный результат для последующей индикации


Измерение переменного напряжения

Следует учесть, что для измерения переменного напряжения, нужно использовать иной способ, который будет учитывать амплитудное и среднеквадратичное значения. Немного практической теории:

 — Амплитудное значение напряжения характеризует максимально возможное значение напряжения данной формы – максимальное отклонение от нуля (пиковое). Размах синусоидального напряжения равен 2Um.

 — Среднеквадратичное значение напряжения U, еще называют эффективным или действующим. Среднеквадратичное значение переменного напряжения численно равно значению постоянного напряжения или тока, развивающего на некотором активном сопротивлении такую же мощность, как и данное переменное напряжение или ток.

Для практического использования, наиболее доступным способом измерения переменного напряжения с помощью АЦП есть возведение полученных мгновенных значений в квадрат. Чтобы затем суммировать их и вычислить из этой суммы квадратный корень.

Переставляя «запятую» на разрядах индикатора, и изменяя значение формулы масштабирования данных АЦП можно получить не только вольтметр на разные напряжения, но и амперметр либо, по желанию, милливольтметр. В последнем случае вместо входного делителя напряжения на входную линию МК под условным названием «IN» (смотрите схему рис. 3.) нужно поставить блок усиления напряжения на операционном усилителе (ОУ), например, LM358. С его помощью формируется напряжение пропорциональное силе тока в нагрузке и значению сопротивления шунта.
Один из таких вариантов описан в (1), а на практике рассмотрим пример из папки «А_тр_ОЕ_5АК», где в отличие от (1) использовано оба встроенных в корпус усилителя. Какой вариант выбирать, решайте сами. В нем программная шкала рассчитана на 5А. При этом, не забываем на индикаторе перенести «запятую» на один разряд влево.

LM358 — это классический представитель однополярного ОУ, главная особенность которого возможность работать при низком напряжении питания без средней точки. Поскольку в примере микросхема усилителя питается от 5 Вольт, то на ее выходе максимально возможное напряжение 3,5 Вольта. Значит, амперметр получится на 3,50 Ампер. Для получения большего значения измеряемого тока нужно повысить значение питающего напряжения ОУ, отделив его от шины питания схемы. В этом случае не забываем о защитном стабилитроне на входе МК.

Особенности РIС 16F676

Хочу обратить внимание, что описанная конструкция на МК РIС 16F676 имеет ряд важных для изучения отличий от вольтметра, созданного на микроконтроллере от конкурирующей фирмы AVR Mega8. В первую очередь это усложненная система вывода результата на индикатор в результате наличия «укороченных» портов (в Mega8 вывод всех сегментов вместе с запятой «укладывается» в один порт, чего нельзя сделать с помощью PIC 16F676). Несмотря на это, в нашем случае, это большой плюс ибо, изучив чуть-чуть более сложное, легко поймешь и легкое. Во-вторых: микросхема PIC 16F676 меньше по массогабаритным показателям, дешевле и доступнее.
Освоив методику раздельного управления регистрами двух портов для вывода индикации, сможете перенести этот проект на иную элементарную базу.

Детали и конструкция

Еще раз вернемся к Схеме №1, рассмотренной в 1 части.

IС1 – PIC 16F676. В описываемой схеме рис. 1 применён индикатор с общим анодом BA56-12GWA, который через токоограничивающие резисторы подключен к МК. Этот индикатор отличается низким потреблением тока.
Индикаторы, как указано выше, можно применить с общим катодом или анодом любого типа и размера в зависимости от программного обеспечения. От выбора индикатора и их размеров будет разное значение тока в их цепи. Посему возможен подбор сопротивлений в цепи между индикатором и портом РВ МК в диапазоне 100 — 300 Ом. Но обязательно все одинаковые.

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

Расчетная точность описанных вольтметров 0,3%, кроме последнего, где учитывается погрешность опорного напряжения АЦП, — 0,1%. В то же время следует учесть, что простота схемотехники не гарантирует точность измерений даже в пределах имеющегося разрешения. Необходимо помнить, что в микроконтроллерах среднего семейства МК источником опорного напряжения АЦП является напряжение питания. Поэтому необходимо СТАБИЛИЗИРОВАТЬ питание МК и ОТДЕЛИТЬ его от питания сегментного индикатора, поскольку значительный и меняющийся ток потребления индикатора создает помехи измерениям. Так же надлежит озаботиться падением, создаваемым вытекающим током общего пина МК, т.е. грамотной разводкой измерительной и силовой земель устройства.

Стабилизатор на микросхеме типа 142КРЕН5 либо аналоги. Он собран по стандартной схеме, посему не приводится.
Не забываем, что в зависимости от выбираемых шкал отображения, необходим расчет и подстройку входного резистивного делителя. Рекомендую в обязательном порядке параллельно к входу АЦП присоединять стабилитрон любой мощности на 5,1 Вольта, например 1N4733A.

Сборка и наладка

Правильно собранный вольтметр начинает работать сразу. Сборку производить сначала из пассивных элементов.
Программаторов для внесения откомпилированной программы существует много. Я считаю, что самый удачный для радиолюбителей это JDM программатор под управлением программной оболочки "Ic-prog", в которую для наших проектов необходимо внести конфигурационное слово: «0×31B4». С его помощью включается внутренний генератор с частотой 4 МГц, и соответственно высвобождаются ножки порта RA для нужных нам целей.
Программировать микроконтроллер можно как в отдельно собранном программаторе, так и внутрисхемно.

Не забываем о константе калибровки внутреннего генератора, которая расположена в последнем адресе памяти МК. Она легко стирается при программировании. Посему нужно сначала прочитать содержимое МК, выписать на бумагу имеющееся значение константы. Затем загрузить файл в оболочку программатора и руками повторно внести ее обратно по адресу, где она была перед финальной прошивкой.
Процесс практической прошивки PIC 16F676 детально описан на Датагоре (ссылка 1).

Файлы для прошивки микроконтроллеров и файлы проектов для практического изучения и применения выложены в архиве в первой части статьи.

Литература

1. Простой цифровой вольтметр от 0 до 30 Вольт на 3 сегмента
2. Лабораторный блок питания с микроконтроллерным управлением 0…25,5В с двойной защитой, «Радиоаматор» №3, март 2011 г., ст.26-30.
3. //alex-exe.ru/radio/microcontrollers/atd-pic16f676-7seg-old/
4. Официальный сайт компилятора MikroElektronika

В завершение, вспомните слова кузнеца из фильма «Формула Любви»: «…если один человек построил, другой завсегда разобрать может!».
Удачи!
Владимир (kotyk7)
Местоположение в тайне.
Профиль kotyk7
О себе автор ничего не сообщил.
 

Понравилось? Палец вверх!

  • всего лайков: 58

Поделись с друзьями!

Связанные материалы:


Схема на Датагоре. Новая статья Входной буфер и регулятор уровня громкости для УМЗЧ. Часть 2... Привет! Продолжаем тему, поднятую в моей статье «Входной буфер и регулятор уровня громкости...
Схема на Датагоре. Новая статья Входной буфер и регулятор уровня громкости для УМЗЧ. Часть 1... В усилителях мощности звуковой частоты (УМЗЧ), выполненных по схеме инвертирующего усилителя...
Схема на Датагоре. Новая статья Блок питания с защитой + микроконтроллер ATMEGA16, ATMEGA8535, PIC16F877. Часть вторая, практическая... Читайте также первую часть статьи о БП, лирическую. Я описал эту конструкцию с сокращениями...
Схема на Датагоре. Новая статья Простой модульный вольтметр переменного напряжения на PIC16F676... Простой вольтметр переменного напряжения с частотой 50 Гц, выполнен в виде встраиваемого модуля,...
Схема на Датагоре. Новая статья Схемка в блокнот. Устройство для разрядки никель-кадмиевых аккумуляторов... При эксплуатации никель-кадмиевых аккумуляторов перед тем как ставить их на зарядку, их надо...
Схема на Датагоре. Новая статья Универсальный вольтметр - амперметр на PIC16F676 с открытым программным кодом. Часть 1... Статья предназначена для широкого круга радиолюбителей, желающих освоить азы работы...
Схема на Датагоре. Новая статья Простой прибор для подбора пар мощных транзисторов... Предельно простое, но удобное устройство для подбора пар кремниевых транзисторов средней и большой...
Схема на Датагоре. Новая статья Регулируемый стабилизатор напряжения с регулируемым оганичением выходного тока... Простенькая относительно схемка, со средними параметрами, на основe транзисторoв с большим...
Схема на Датагоре. Новая статья Микроконтроллерный регулятор мощности на Atmega16... На фото представлен действующий макет регулятора мощности, схема которого (с небольшими...
Схема на Датагоре. Новая статья "Бетник" для мощных транзисторов... Описана конструкция прибора для измерения коэффициента усиления мощных транзисторов. Несмотря...
Схема на Датагоре. Новая статья Усилитель на К174УН7 (A210K, ТBА810AS, LA4420) с уменьшеным уровнем искажений... Да, это старая-добрая К174УН7 (аналог A210K ТBА810AS, LA4420 ), но на ней при небольшой мощности 4...
Схема на Датагоре. Новая статья Блок питания с защитой по току для наладки усилителей и пр. радиоконструкций... Нередко при ремонте или создании нового усилителя возникает проблема безопасной проверки его...
<
  • Главный редактор
10 апреля 2013 19:19

Игорь Петрович Котов / Datagor

Цитата
  • С нами с 25.02.2011
  • Ушёл в реал Пользователь offline
  • 1 652 комментария
  • 265 публикаций
 
  • 0
Владимир, спасибо!
У вас получилось целое исследование на тему, всячески достойное внимания, особенно для новичков.
На Датагоре не так много авторов, которые так же глубоко преподносят материал в своих статьях. Пожалуйста продолжайте в том же духе!
drinks

<
  • Гражданин
10 апреля 2013 22:30

Сергей / Chugunov

Цитата
  • С нами с 30.09.2009
  • Ушёл в реал Пользователь offline
  • 309 комментариев
  • 29 публикаций
 
  • 0
Ждём подробного продолжения.
То, что Вам кажется элементарным и не заслуживающим описания,
для других - камень преткновения.

<
  • Гражданин
11 апреля 2013 03:01

Владимир / kotyk7

Цитата
  • С нами с 8.11.2009
  • Ушёл в реал Пользователь offline
  • 30 комментариев
  • 5 публикаций
 
  • 0
Игорь, спасибо за такую оценку. Буду, так сказать, стараться.
Я в даное время на одном из сайтов предложил разработать новую версию блока питания с управлением на МК (первая версия упоминалась в статье по второй ссылке (уже второй год им пользуюсь)), который будет настраивать не только напряжение, но и ток. Цифровая часть готова, программа тоже где-то на 80% написана, осталась аналоговая часть. И тут пока дебаты. Если все "сростется" напишу.
Chugunov, и другие Граждане всегда готов помочь чем могу, пишите, либо создайте ветку форума и сообщите о ней.

<
  • Кандидат
12 апреля 2013 14:14

Юрий / KYV

Цитата
  • С нами с 19.10.2008
  • Ушёл в реал Пользователь offline
  • 8 комментариев
  • 0 публикаций
 
  • 0
Не вводите людей в заблуждение фразой: "что в микроконтроллерах среднего семейства МК источником опорного напряжения АЦП является напряжение питания", это один из возможных вариантов. Вывод RA1 является также входом внешнего опорного напряжения. Существуют источники опорного напряжения (ИОН) на 2,56 В, на 4,096 В эти "кривые напряжения" позволяют нам точно измерять. Числа 256 и 4096 это двойка в 8й и 12й степени соответственно. Таким образом будет исключена погрешность связанная с остатками при делении.
Если уж так сильно приперло, что ИОН это питание, то есть радиолюбительский рецепт: в питание ставим LM317 и выкручиваем ей выходное напряжение 5,12В и вспоминаем, что 512 это двойка в девятой степени.
Еще на точность будет влиять тот факт, что от одного и того же источника подается опорное напряжение и там-же висят индикаторы управляемые динамически.
Может имеет смысл взять микроконтроллер с 18 ногами? Сильного удорожания не будет, но можно будет приделать к нему ИОН, что позволит избавиться от погрешностей округления и устранить влияние динамической индикации на точность измерений, "одновременно" измерять ток и напряжение, при этом появится возможность еще и мощность показать.

<
  • Главный редактор
12 апреля 2013 16:19

Игорь Петрович Котов / Datagor

Цитата
  • С нами с 25.02.2011
  • Ушёл в реал Пользователь offline
  • 1 652 комментария
  • 265 публикаций
 
  • 0
Юрий (KYV), очевидно вы замечательно владеете материалом.
Пожалуйста поделитесь, научите, пришлите хоть плохинькую статью, а мы покритикуем, а?

Н. А. Некрасов, «Сеятелям» (1876г.)

Сеятель знанья на ниву народную!
Почву ты, что ли, находишь бесплодную,
Худы ль твои семена?

Робок ли сердцем ты? слаб ли ты силами?
Труд награждается всходами хилыми,
Доброго мало зерна!

Где ж вы, умелые, с бодрыми лицами,
Где же вы, с полными жита кошницами?

Труд засевающих робко, крупицами,
Двиньте вперёд!

Сейте разумное, доброе, вечное,
Сейте! Спасибо вам скажет сердечное
Русский народ…

<
  • Кандидат
12 апреля 2013 17:00

Юрий / KYV

Цитата
  • С нами с 19.10.2008
  • Ушёл в реал Пользователь offline
  • 8 комментариев
  • 0 публикаций
 
  • 0
Было, сейчас в другой области работаю. Кто проходил техосмотр на тормозных стендах СТС и кому проверяли фары прибором ОПК вспоминайте незлым тихим словом. yes
Вроде старался в виде ликбеза отзыв написать без злого умысла.
Про тепловые трубы интересно будет? Ими сейчас и занимаюсь.

<
  • Гражданин
13 апреля 2013 01:06

Владимир / kotyk7

Цитата
  • С нами с 8.11.2009
  • Ушёл в реал Пользователь offline
  • 30 комментариев
  • 5 публикаций
 
  • 0
KYV, не обижайтесь, статья написана прежде всего для начинающих. Предлагать им подымать напряжение питания микроконтроллера выше 5 вольт (которые неизвесно чем и как будут измеряться), я думаю не очень разумно, то есть дорого, однако, может в итоге "получиться". Со временем осилив этот "кусочек знаний" пойдут дальше и изучат не только это, но и разберуться с более сложными случаями/вариантами источников опорного напряжения МК. Будем считать, что Вы о них напомнили, кому будет интересно завсегда попробовать сможет, Верно?

<
  • Гражданин
13 апреля 2013 03:22

Сергей / Chugunov

Цитата
  • С нами с 30.09.2009
  • Ушёл в реал Пользователь offline
  • 309 комментариев
  • 29 публикаций
 
  • 0
KYV, я понимаю, что у нас "гранаты не той системы".
Но вы не подумали - зачем усложнять и удорожать конструкцию, если перед ней не стоит задача быть эталонным или поверочным прибором?
Установка прецизионного ИОН (скорее всего дорогого и дефицитного) далеко не гарантирует высокой точности, требуется целый комплекс мер.
И настолько ли это важно, чтобы видеть какое я установил напряжение на своем блоке питания - 12,61 или 12,63 В ? Тем более, что это напряжение внутри источника, а нагрузка по проводам получит уже другое напряжение.
Специалист должен это понимать.
Кроме того, проблемой становится калибровка и настройка прибора, где я возьму прибор на порядок точнее? А без этого какой вообще смысл в "точности"? Это тоже должен понимать специалист, даже по тепловым трубам.
И подобных замечаний много.
Для абсолютного большинства применений точности и диапазона простого предлагаемого прибора вполне хватит.
Чем проще схема и чем доступнее для нее детали, тем больше вероятность, что ее успешно повторят и тем больше будет пользы.

Добавление комментария


Налетай! Паяльники, станции, жала с доставкой
  • smilelolbyewinkyahoocoollaughing
    crazybadcryingsadirefulsickstraight
    ballooncakegooddrinksmailbombsun
    nightrainstarscolddashguitar-manhandshake
    musicnegativenopardonshoksleepunknown
    wackoyawnblushbullyhashsmokingwhew
Скопируйте текст вашего комментария на случай неверного ответа на контрольный вопрос.