МАРСОХОД

Open Source Hardware Project

Проекты Altera Quartus II для платы Марсоход2

Исследование колебательного контура

исследование колебательного контура
Вот такая задача – изучение колебательного контура, построенного из конденсатора и катушки. Я подумал, что раз у нас на плате Марсоход2 стоит аналогово-цифровой преобразователь (АЦП), то измеряя с его помощью напряжение на конденсаторе контура можно увидеть собственно колебания.

В этом проекте плата Марсоход2 используется просто как инструмент, как «цифровой осцилограф».

Кажется, что задача на самом деле простая.
Первоначальный план был простой, вот такой, как на этом рисунке «Вариант 1».

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

Сопротивление резисторов делителя выбраны довольно большими – 15кОм, так чтобы потери в них были минимальными. Для чего вообще нужен делитель? Напряжение на конденсаторе меняется от +VCC до –VCC. Делитель «преобразует» этот диапазон, на АЦП уже поступает от +VCC до нуля. АЦП (это микросхема ADC1175) выдает 8-ми разрядный двоичный код с частотой ADC_CLK – этот сигнал мы будем генерировать в ПЛИС. Сами выборки с АЦП собираем в буффер SignalTap – инструмент для изучения сигналов внутри ПЛИС.

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

Пришлось изменять схему эксперимента..

 

исследование колебательного контура

Было решено использовать кнопочку на плате Марсоход2. Она подключена к ПЛИС и схема в ПЛИС должна отфильтровать сигнал с кнопки, избавиться от «дребезга контактов», потом уже отфильтрованный сигнал управляет выходным элементом «TRI». Получается, что при замкнутой кнопочке выходной элемент «TRI» находится в высокоомном состоянии, то есть катушка колебательного контура оторвана от «земли», «болтается в воздухе». Конденсатор может заряжаться. Потом, когда кнопочка разомкнута, элемент «TRI» включается и передает на выход сигнал «ноль». То есть фактически катушка подключается к «земле» и должны начинаться колебания в контуре.

В принципе все так и происходит, однако, есть большое «НО». Сопротивление канала выходного элемента «TRI» оказалось довольно высоким; 18Ом. Потери в контуре получаются очень большими и фактически удается увидеть только одну полуволну колебаний.

Пришлось искать третий вариант. Будем коммутировать цепь контура внешним транзистором IRF3702. У него сопротивление канала довольно низкое.

исследование колебательного контура

Вот такой вариант работает довольно исправно.

Давайте теперь посмотрим на проект для ПЛИС в плате Марсоход2.

исследование колебательного контура с помощью платы Масроход2


Сам проект кажется не очень сложным.
Входная частота 100Мгц с генератора платы Марсоход2 делится двоичным счетчиком.
С выхода q[2] счетчика сигнал идет на ADC_CLK. Таким образом, на АЦП получается подается частота 100 / 8 = 12,5 МГц.

Другая очень низкая частота со счетчика q[16] фиксирует сигнал с кнопочки. По сути состояние кнопочки просто очень редко опрашивается и фиксируется в триггере. Так мы избавляемся от дребезга контакта.

Выходной сигнал триггера идет на выход IO[6] платы, который управляет транзистором.
Заодно этот же сигнал поступает еще и на светодиод LED[0] – все же хоть какая-то индикация состояния схемы.

В этой схеме не видно пожалуй самого главного компонента – SignalTap. Этот компонент sld_signaltap:auto_signaltap_0 присутствует в проекте, его видно в Project Navigator (на рисунке слева). Он определяет, какие внутренние сигналы ПЛИС мы хотим рассмотреть.

Настроить эти сигналы можно из инструмента SignalTap, доступного через меню среды Altera Quartus II, пункт меню Tools => SignalTap II Logic Analyzer.

Вот собственно эти настройки:

Настройка Altera SignalTap

Собственно инструмент SignalTap и превращает плату в подобие «цифрового осцилографа».

Весь проект для платы Марсоход2 для среды Altera Quartus II, вместе с настройками SIgnalTap, можно взять вот здесь:
icon Исследование колебательного контура (18.37 Кбайт)

Были исследованы две катушечки:

катушки индуктивности

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

По схеме «Вариант 3» был собран шилдик для платы Марсоход2, он просто присоединяется к разъему платы:

исследование колебательного контура с помощью платы Марсоход2

Далее:

  1. Подключаем плату кабелем USB к ПК.
  2. Запускаем SignalTap.
  3. Из среды SignalTap загружаем откомпилированный образ проекта cyclone3.sof в ПЛИС.
  4. Нажимаем кнопочку KEY[0] на плате – транзистор закрывается, катушка оторвана от «земли».
  5. Запускаем анализ сигналов в SignalTap и он начинает ждать события кнопочки.
  6. Отпускаем кнопочку – SignalTap загружает в ПК полученные данные об исследуемых сигналах:

Вот такие колебания видны при подключении катушки от жесткого диска:

Колебания в контуре LC

А вот колебания в контуре при подключенной самодельной катушке.

Колебания в контуре LC

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

С помощью SignalTap можно примерно измерить частоту колебаний. Например, на первом графике от максимума до максимума волны примерно 564 выборок частоты ADC_CLK = 12,5МГц. Значит частота первого контура в 546 раз меньше и составляет всего 22,9 КГц.

С самодельной катушкой у меня частота получается где-то около 85,6КГц.

Теперь, зная емкость конденсатора (на нем написано) можно вычислить и индуктивность катушек из формулы:

формула частоты колебаний

Вот так, плата Марсоход2 может быть использована в качестве «цифрового осцилографа» для изучения аналоговых процессов.

 

Комментарии  

0 #3 Dcoder 20.04.2013 04:30
можно было изменить отображение time bar
(клик правой клавишей на time bar/ выбрать time units/ ввести "12,5"/ из списка выбрать "МГц")
а так, прикольный "осциллоскоп" получился ;)
0 #2 Руслан Садыков 10.02.2013 20:57
Цитирую Alex:
Очень интересный проект.Есть неточность, на схеме транзистор не чётко нарисован. Проводимости не видно.
Можно развить тему и дополнить последовательный (и USB интерфейс), а также сделать музыкальный инструмент - терменовокс.

Здесь используется полевик IRF3702. На схемке показано неверно. Транзистор IRF3702 достаточно редкая птица. Можно использовать любой другой полевик. Лично я использовал BS170 - обычный ключик 60V/500мА в корпусе ТО-92. Вот и даташитик на него: http://lib.chipdip.ru/156/DOC000156784.pdf :D Всем успехов! :roll:
0 #1 Alex 09.02.2013 03:24
Очень интересный проект.Есть неточность, на схеме транзистор не чётко нарисован. Проводимости не видно.
Можно развить тему и дополнить последовательны й (и USB интерфейс), а также сделать музыкальный инструмент - терменовокс.

Добавить комментарий


Защитный код
Обновить


GitHub YouTube Twitter
Вы здесь: Начало Проекты Проект Марсоход2 Исследование колебательного контура