- Вход / Регистрация
L/C метр (тестер) | Индуктивность, Конденсаторы |
О полезности и необходимости наличия измерителя емкостей конденсаторов и индуктивности катушек (L/C тестера) нет смысла рассказывать. Но на данный момент стоимость одного только измерителя емкости конденсаторов может шокировать своей необоснованностью. Предлагаемый мною L/C измеритель можно собрать без огромных усилий и при этом вложиться всего в $5.
Автор данной схемы L/C тестера и программного кода для микроконтроллера ATtiny2313 Александр Кленин, мной всего лишь был переработан программный код, под мой вариант схемы, внесены изменения в принципиальную схему L/C тестера, улучшающие его измерительные показатели, и разработана печатная плата в формате *.lay. Будьте внимательны при разводе или печати платы по моему исходнику, т.к. корпус микроконтроллера ATtiny2313, используемый в L/C тестере – SOIC, а не DIP.
Теперь немного о возможностях данного L/C тестера на микроконтроллере ATtiny2313: Измерение емкости конденсаторов в диапазоне от 0.00 pF до 9999 μF, измерение индуктивности в диапазоне от 0.00 μH до 9999 mH. Отклонения в измерениях – не более пары процентов, при условии высокой точности сборочных и отладочных компонентов схемы.
Можно использовать в схеме конденсаторы от 4 000 до 10 000 pF и индуктивность от 400 до 800 μH. Но при этом нужно будет производить калибровку несколько раз при отладке схемы.
Калибровка измерителя емкости конденсаторов проводится по следующему принципу:
1) Программируем микроконтроллер ATtiny2313, отключаемся от программатора, включаем L/C тестер и даем ему пару минут поработать.
2) Жмем кнопку ">0<" (к гнезду «Cx» в данный момент ничего не должно быть подключено) и после появления на экране надписи "0.00P" отпускаем ее.
3) Подключаем эталонный конденсатор к гнезду «Cx» и соотношением исходной емкости к показанной на экране, находим поправочный коэффициент.
4) Подключаем программатор, читаем с микроконтроллера EEPROM, заменяем в исходнике переменную E_CONST_C на значения из EEPROM (с 5й по 8й пары чисел включительно). Это позволит учесть паразитные параметры схемы при расчете проверяемых емкостей конденсаторов.
5) Значение COEFF_C в исходном файле преобразовываем при помощи стандартного калькулятора windows в десятичную систему и умножаем на поправочный коэффициент (из 3го пункта данной инструкции по калибровки) и обратно преобразовываем в 16тиричную систему, записываем новое значение COEFF_C.
6) Компилируем исходный код в программе AVR Studio и записываем обратно в микроконтроллер ATtiny2313 полученные файлы с расширением .hex и .eep. Проверяем работу L/C тестера.
Калибровка измерителя индуктивности проводится аналогично, только в п.2 гнездо «Lx» закорачиваем, а в п.4 используются с 13й по 16ю пары чисел. При необходимости калибровки повторяем.
Незабываем про фьюзы – галочки должны стоять только напротив SPIEN и BODLEVEL1. Индикатор я использовал с общим анодом, размером 0,56”.
Скачать бесплатно разводку печатной платы L/C тестера (L/C метра) и файлы для программирования микроконтроллера ATtiny2313 (индикатор с общим анодом) можно ЗДЕСЬ. Для индикатора с общим катодом файлы ЗДЕСЬ. Программу AVR Studio в Portable версии можно скачать ЗДЕСЬ.
Ниже привожу фотографии с примерами работы дынного измерителя емкостей конденсаторов и индуктивности.
4. Вот цитата описания автора схемы:
а я спрашиваю частоту отдельных генераторов ? вы не вкурсе какая она
Автор не я, не знаю.
Подскажите пожалуйста как правильно поставить фюзы бит в программе CVAVR?С уважением Владимир.
vocha, никогда не пользовался ей, так что подсказать не могу. Чем Вас не устраивает простой программатор и программа PonyProg?
У меня программатор AVRASPI он работает под AVR STUDIO и CVAVR, а под PonyProg нужно делать программатор.
Посмотрел на вкладку "Fuse Bits", действительно мало чего понятно. Читайте мануал.
Если верить данному калькулятору, то у Вас должно быть выставлено так:
0xFF LOW
0xDD HIGH
0xFF EXTENDED
Добрый вечер, собрал LC метр но не могу откалибровать (найти поправочный коэффициент) например подключаю конденсатор 1мкф тестер показывает 438 мкф подключаю 56пф показывает 7.4пф подключаю 15 нф показывает 6.57 мкф. Как высчитать коэффициент ?
(конденсаторы проверялись на мультиметре DT9208A , 1.005мкф\ 54пф\ 15.01 соответственно)
120024, сделайте больше замеров (минимум 10).
Ваш коэффициент: 0,0023
1.005/438 = 0,0023
54/7.4 = 7,47 (1 из 3, соответственно, принимаю за ошибку)
0.015/6.57 = 0,0023
уважаемые! объясните подробно пожалуйста. как откомпилировать файл.. убился уже.. не доганяю...
Скачиваете архив с исходниками. Открываете AVR Studio. Нажимаете новый проект. В окне "create new project" выберите Atmel AVR Assembler, напишите имя проекта. Нажмите кнопку "Finish". В открывшееся окно скопируйте все содержимое файла cl_led.asm из архива, сделайте необходимые изменения и нажмите Ctrl+F7. В папке с проектом появятся файлы проекта и необходимые Вам скомпилированные файлы ".hex" и ".eep".
да всё так и делал. но компилировалась со сплошными ошибками... потом рзобрались . после заремливания .INCLUDE "2313def.inc" всё скомпилировалось
Здравствуйте. Подскажите как найти поправочный коэффициент? по какой формуле. Подключаю конденсатор 22мкф. тестер показывает 11.5мкф, как рассчитать. И подскажите по:
4) Подключаем программатор, читаем с микроконтроллера EEPROM, заменяем в исходнике переменную E_CONST_C на значения из EEPROM (с 5й по 8й пары чисел включительно). Это позволит учесть паразитные параметры схемы при расчете проверяемых емкостей конденсаторов.
5) Значение COEFF_C в исходном файле преобразовываем при помощи стандартного калькулятора windows в десятичную систему и умножаем на поправочный коэффициент (из 3го пункта данной инструкции по калибровки) и обратно преобразовываем в 16тиричную систему, записываем новое значение COEFF_C. Прошиваю пони прог и программатором stk200, если можете то объясните пожалуйста, а то нервный тик начался. Я очень прошу, помогите!!! который день сижу и не могу понять, программированием занимаюсь пол года, обычно сам выкручивался а тут ни как. С уважением Сергей. Если по чистой случайности вы есть в icq то это мой номер 630971078
Serega-t34, 4 сообщения выше я описывал как вычислить поправочный коэффициент. Также я указал, что оптимальное количество замеров должно быть не менее 10.
4й пункт расписать более расширено сложно, в нем и так все доступно описано. Здесь Вам нужно вставить (или подключить) МК к программатору и при помощи программы PonyProg считать память EEPROM. С 5й по 8й пары чисел (включительно) из EEPROM скопируйте и вставьте в файле cl_led.asm (строка 103).
5й пункт. Переведите их с помощью стандартного калькулятора windows значение ($00,$9A,$44,$09) COEFF_C (файл cl_led.asm, строка 101) в десятичную систему и умножаем на поправочный коэффициент из пункта 3. После чего опять при помощи стандартного калькулятора windows переведите получившееся значение в 16тиричную систему, и замените значения на этой же строке (файл cl_led.asm, строка 101). Далее переходите к 6му пункту инструкции.
Вместо стандартного калькулятора windows можно использовать любой другой портативный инженерный калькулятор.
Здравствуйте! Сделал два прибора сразу под DIP и SOIC корпуса микросхем, платы переделаны для встраивания в корпус от маленького цифрового мультиметра. Внёс корректировку в исходник в AVR Studio5 но при компиляции выводятся ошибки: Undefined symbol : RAM_PEREGRUZKA : DC_ANODE и т. д. всего 10 ошибок. Может это то же что было у Serg7782 описанное выше, но что такое "заремливание .INCLUDE <<2313def.inc>> о котором он написал , может кто нибудь объяснить и как это делается? Спасибо.
2313def.inc - это файл, который необходим для работы с данным МК. Убедитесь, что он есть в библиотеке программы-компилятора.
У меня контроллер 2313А , в библиотеке он есть и в настройках проекта я указал именно его, но в прошивке указан 2313 без буквы потому и были ошибки. Изменил в проекте на 2313 и всё скомпилировалось, но в папке проекта есть файлы HEX, LSS, OBJ, TMP, C compiler map file, а файла eep нет, где он должен быть? подскажите пожалуйста.
*.eep есть в архиве со всеми файлами. В процессе отладки он будет просто Вами считываться с МК. При повторном программировании нужно заливать только *.hex
Здравствуйте admin. Коэффициент я нашел. Подскажите чем открыть .eep пробовал Авр-студио, пони прог.
Получается так: заливаю eep в контроллер, провожу процедуру с конденсаторами, затем копирую значения из контроллера epp в исходник eep? А чем лучше открыть?
Считываете при помощи программатора и PonyProg память EEPROM, вставляете указанный промежуток в соответствующие места в исходник. После компилируйте исходник и заливайте только откомпилированный HEX файл.
Открыть *.eep можно программой notepad++.
Исходник это eeprom? я извлекаю промежуток eep и вставляю его в исходник eep? так и или нет? И такая странность. Открываю в пони прог EEP исходник и EEP полсе теста с конденсатором и сравниваю их как на картинке, что в одном что в другом одно и тоже, такое впечатление что память не прописалась, такое возможно?? Делаю так: прошиваю контроллер, включаю тестер, нажимаю на (0) появляется 00.р отпускаю, вставляю конденсатор, цифры замирают я записываю число, отключаю. Все правильно? нужно ли сначала вытаскивать конденсатор а потом отключать питание?
Спасибо! Всё работает!
Исходник это тот файл, который Вы компилируете. Именно в него нужно вставлять пары цифер. Для верности зажмите кнопку "0" на 2 секунды. Если смотреть через notepad++, то выбирайте пары с 9й по 12ю, включительно. В изображении показаны пары из PonyProg. Все правильно в Вашем процессе замера.
admin помогите пожалуйста. 4 пункт я понял, а как быть с Значение COEFF_C ? как перевести в десятичную систему? мое значение $00-$9A-$44-$09 что нужно нажать в калькуляторе что бы перевести в десятичное число и братно преобразовать в 16тиричную систему? Если не трудно объясните. Сергей.
Запустите калькулятор, переведите в режим "Программист". Выставите 16ю систему (переключатель в режиме "Hex"). Введите Ваше число (нули в начале убираются при вводе в калькулятор, но их необходимо вводить в исходном коде, если значение меньше 8 символов). После просто переключите режим на 10ную систему "Dec". Умножьте полученное число на поправочный коэффициент и переведите аналогичным способом в 16ю систему "Hex". 009A4409 (Hex)= 10109961 (Dec).