Осциллографа из компьютера usb pic. Двухканальный USB HID осциллограф на микроконтроллере ATtiny45. Пошаговая инструкция сборки конструктора DSO138

Прежде чем приступить к описанию usb осциллограф своими руками на ATtiny45, необходимо отметить, что в конструкции используется только интегрированный АЦП преобразователь микроконтроллера ATmega45 с разрешением 10-бит, и в компьютер данные передаются посредством внедрения программного обеспечения V-USB с использованием драйверов USB HID, общая скорость передачи данных сильно ограничена.

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

V-USB является чисто программной реализации низкоскоростного USB протокол для процессоров серии AVR фирмы Atmel. Благодаря этим библиотекам можно с незначительными ограничениями применять USB практически с любым микроконтроллером, без необходимости использования дополнительного специального оборудования. Все библиотеки V-USB распространяются под лицензией GNU GPL v.2.

Два аналоговых входов способны измерять напряжение в диапазоне от 0 до +5 В. Широкий диапазон напряжения можно достичь путем добавления усилителя с высоким входным сопротивлением и переменным коэффициентом усиления (или входным резистивным делителем), или, по крайней мере с использованием обычного переменного резистора.

Всю основную работу выполняет запрограммированный микроконтроллер ATtiny45 . Работает он от внутреннего тактового генератора с предделителем с частотой 16,5 МГц. Для связи через интерфейс скоростного USB эта частота необходима, однако, это ведет к ограничению в минимальном напряжении питания, который должен быть выше, чем 4,5 В и, конечно, ниже, чем 5,5 В.

Но, поскольку выводы данных порта USB используют уровень напряжения от 0 до +3,3 В, то необходимо использовать ограничивающие резисторы R2, R3 и стабилитроны D2, D3. Такое решение, конечно, нельзя рекомендовать для коммерческого продукта, но для ознакомления с проблематикой USB и получение простой конструкции для домашнего использования вполне достаточно.

Входные каналы CH1 и CH2 на разъеме J2 блокируются конденсаторами С2 и C3 номиналом 100n в соответствии с требуемой спецификацией внутреннего АЦП. Светодиод D1 служит только для индикации работы и, следовательно, может быть исключен.

Список компонентов:

  • R1 — 270R
  • R2, R3 — 68R
  • R4 — 2k2
  • C1, C2, C3 — 100n
  • D1 — LED 3мм
  • D2, D3 — ZD (3,6 вольт)
  • IO1 — Attiny45-20PU
  • J1 — USB B 90

Программное обеспечение:

Скомпилированный файл HEX доступен для скачивания в конце статьи, а так же и исходный код на языке C. Установка конфигурации ограничивается выбором использовании внутреннего множителя PLL осциллятора.

Так как приложение использует HID драйвера (Human Interface Device), которые имеются практически в каждой операционной системе, отпадает необходимость в установке дополнительных драйверов.

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

(скачено: 1 273)

http://pandatron.cz/?1138&dvoukanalovy_usb_hid_osciloskop

Этот сайт посвящен моим проектам на PIC контроллерах, доступных для публичного освещения. Все приведенные схемы реализованы в железе и работают в настоящее время в быту или производстве. Для написания программ использован пакет MPLAB/х, свободно распространяемый фирмой MICROCHIP. Используется программатор PICKIT2/3, ICD2/3. Любую конструкцию можно собрать самому, даже если она платная и получить бесплатно код разблокировки. Также можно приобрести в качестве набора для сборки или готового изделия. Принимаются заказы на разработку аналогово-цифровой или цифровой электроники, систем управления и электроники для производства с применением контроллеров.
Вопросы и предложения писать на почту [email protected]
Если у Вас есть интересные предложения, закакзы или вопросы и форум Вам не помог - адрес тот же.


Пошаговая инструкция для самостоятельной сборки "OSKAR V2".

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

Подробнее о технических характеристиках:
- Габариты 130 *68 *19 мм
- Дисплей 50*30 мм 132*64 точек, светодиодная подсветка.
- Диапазон чувствительности 20 mV/div - 10 V/div с шагом 1-2-5 . Погрешность не более 5%.
- Открытый / закрытый вход
- Полоса пропускания 0 - 1 МГц.
- Диапазон разверток: - от 20 микросекунд на деление до 5 секунд на деление с шагом 1-2-5. Погрешность не более 0,1%.
- Частота выборок в реальном времени - до 0,8 МГц. Число точек экрана на одну выборку 1/1
- Комфортное наблюдение сигналов - до 100 килогерц.
- Режимы синхронизации: по фронту или спаду, ждущая, авто. Регулировка уровня.
- Запись в память и воспроизведение осциллограммы. "Замораживание" изображения для изучения. Измерение амплитуды и частоты
- Кнопки управления: вверх, вниз, установка.
- Питание: 3 элемента типа ААА, в среднем на 50 часов непрерывной работы. Напряжение питания 3,6 – 6вольт. Максимальное потребление 25мА
- Входное сопротивление / емкость - 0,5 МОм /30p. Открытый и закрытый входа
- Вольтметр постоянного тока с диапазоном +/- 36V точностью +/-3%
- Омметр с диапазоном 0 – 200 кОм точностью +/-5%

Конструктивно выполнен в прочном пластмассовом корпусе с оригинальным дизайном. Для подключения к проверяемой схеме используются обычные щупы от китайского мультиметра.

Ядром является микроконтроллер PIC18F14K50 фирмы "MICROCHIP", который собственно и выполняет все функции прибора. Аналоговая часть выполнена на сдвоенном операционном усилителе MCP6022 с полосой единичного усиления 10 МГц и аналоговом коммутаторе. Для получения виртуальной земли используется PWM модуль микроконтроллера с фильтром и формирователем на ОУ MCP601. В качестве дисплея использован черно-белый графический индикатор RDX0154-GC (TIC154A) разрешением 132*64 точки с подсветкой RTB01025 (LG-9-02-053-001 или TB1038 или TB1025S). Питание всей схемы выполняется от стабилизированного источника 3,3 вольта (LM2950-3.3). Управление питанием выполнено на транзисторах Т2 и Т3.

Все элементы установлены на двухсторонней печатной плате с одной стороны, а дисплей с подсветкой и кнопками с другой. В итоге получается компактная, жесткая конструкция.

Расположение элементов (кликабельно)

Сборка

Для сборки нам понадобятся

Перечень элементов
Bat 1 = 1 x Держатель 3*AAA
C14 = 1 x 2400p 0805
C15 = 1 x 320p 0805
C21 = 1 x 10.0 10v
C1,C2,C7,C8,
C12,C13,C18,
C19,C20,C22,
C23,C25,C27 = 13 x 0.1 0805
C16,C17 = 2 x 27p 0805
C26,C28 = 2 x 100.0 10v
C3,C4,C5,C6 = 4 x 75p 0805
C9,C10,C11,C24 = 4 x 1.0 0805
D1,D2 = 2 x LL4148
DA1 = 1 x MCP6022 SO8
DA2 = 1 x MCP601
DD = 1 x PIC18F14K50 SO20
IC1 = 1 x 74hc4066 SO14
J1,J2,J3,J4,J5 = 5 x BANAN монтажное
LCD = 1 x RDX0154-GC
R1 = 1 x 75 0805
R6 = 1 x 12k 0805
R10 = 1 x 2k2 0805
R15 = 1 x 1k2 0805
R19 = 1 x 2k 0805
R21 = 1 x 22K 0805
R28 = 1 x 6k2 0805
R11,R12,R16 = 3 x 680k 0805
R13,R18 = 2 x 3k 0805
R14,R22,R23,
R24,R29,R31,
R32 = 7 x 22k 0805
R2,R5,R9,R17,
R26,R27 = 6 x 10k 0805
R3,R4,R30 = 3 x 220k 0805
R7,R8,R20,R25 = 4 x 1k 0805
S1,S2,S3 = 2 x Микрокнопка тактовая 301, 6х6х6мм
T2 = 1 x BC807
T1,T3 = 2 x BC817
VR1 = 1 x lp2950-3.3
XT1 = 1 x 12 MHz
Корпус = 1 x Z-34A

А также терпение, умение и прямые руки.

Приготовимся (Все картинки кликабельны)


Откусим с одной стороны втулку клеммы


Собираем электронику на печатной плате. После сборки прошьем процессор с помощью PICKIT2, для чего предусмотрены 6 отверсий для подключения программатора.


Приготовим панель подсветки, откусив ножки


Припаяем


Установим ЖКИ и кнопки


Добавим провода и отсек питания


Сборка электроники закончена, займемся корпусом.
Сначала его требуется разметить.Чертеж с размерами

Разметим переднюю панель изнутри с помощью "колумбика" и шилом наколим центра.


Получится примерно так


Сверлим диаметром 1 мм размеченные отверстия и вырезаем окно.


Сверлим диаметром 3,6 мм 8 отверстий.


Сверлим диаметром 3,6 мм 4 отверстия в задней крышке.


Сверлим диаметром 6 мм 5 отверстий, снимаем фаски, зенкуем, финишно обрабатываем проем окна, снимаем фаски.


Устанавливаем две клеммы омметра.


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


Сушим, аккуратно вырезаем. Используем тонкие тканевые перчатки, иначе вид у наклейки будет совсем не презентабельный.


Приготовим корпус к наклеиванию. Нам понадобится тонкий двухсторонний скотч с пластиковой основой шириной 50 мм. Приклеим.


Удалим лишнее острым скальпелем.


Снимаем защитную бумагу второй стороны.


Очень аккуратно приклеиваем. Внимание, у Вас только одна попытка, повторить не повредив наклейку не получится.


Острым скальпелем прорезаем отверстия под клеммы и устраняем излишки скотча.


Корпус готов, можно собирать. Сначала установим три заранее обрезанных сбоку втулки клемм. Уберем защитную пленку с ЖКИ и оденем сверху лицевую панель. Вставляем клеммы.


Закручиваем клеммы, припаиваем провода к клеммам омметра, приклеиваем батарейный отсек. Должно получиться примерно так.


Калибровка, настройка.

Калибровка частотных характеристик аналоговой части.

Для данной процедуры нам понадобится генератор прямоугольных импульсов хорошего качества с выходным напряжением от 50 милливольт до 10 вольт частотой 1- 5 килогерц.
Как известно линейность АЧХ определяется переходной характеристикой, для этого и используются прямоугольные импульсы. Существует три варианта переходной характеристики входных цепей. Недокомпенсация, перекомпенсация, и нормальная. Это и показано на картинках.






Целью настройки является получение идеального прямоугольника на экране.

Всего требуется настройка трех цепей компенсации на пределах 50 мв/дел, 200 мв/дел, 2в/дел.
В первом случае подбираются конденсаторы С3-С6, во втором С15 , в третьем С14.
Для настройки выбрать нужный предел измерения и развертки, подать на вход сигнал достаточной амплитуды, и подобрать конденсатор до получения прямоугольного сигнала
Настройку проводить именно в этом порядке, начиная с 50 мв/дел.

Калибровка встроенного вольтметра.

Нам понадобится источник постоянного стабилизированного напряжения напряжением 15 - 20 вольт с точно известным напряжением.
Перейти в режим Vx – режим вольтметра постоянного тока.
Нажать и удерживать кнопку SET в течении примерно 20 секунд, не обращая на надписи на экране.
Нижней кнопкой установить нулевые показания, точность нуля можно проверить подключая источник напряжения в разной полярности - должны быть одинаковые напряжения с точностью не хуже 0,1 вольт.
подключить источник напряжения и верхней кнопкой выставить истинное значение напряжения.
Калибровка идет по кругу во всех случаях, нажимать до получения нужного результата.
Выход из режима калибровки. Нажать и удерживать кнопку SET в течении примерно 20 секунд, пока не выключится.

Калибровка встроенного омметра.

Нам понадобится точный резистор сопротивлением 70-150 кОм.
Калибровка проводится подбором резистора R17.
Перейти в режим Om - режим омметра. Подключить образцовый резистор и путем подбора R17 добиться показаний с точностью не хуже +/- 3%

На этом все калибровки окончены.

Управление осциллографом.

Включение / выключение – длительное нажатие кнопки «Установка».
Движение по меню - кнопка «Установка».
Выбор параметра - кнопки вверх, вниз.
В меню выбирается: (слева направо)
- Тип синхронизации: по фронту, по спаду. отображается характерными символами
- Установка значения частоты развертки. Отображается значение в мкс,мс,с.
- Уровень синхронизации, ориентир – треугольник слева экрана, синхронно перемещающийся вверх-вниз.
- Сдвиг по оси Y
- Режим синхронизации авто "At", ждущий"Wt",
- Усиление канала вертикального отклонения, отображается установленное значение.
- вкл/выкл подсветки индикатора.
- индикация состояния прибора
GO – нормальный режим работы
ST – остановка смены изображения и вывод измеренной амплитуды и частоты. Кнопка "SET" выводит строку с настройками
WR – кнопкой "SET" записать текущую осциллограмму в память
RD – кнопкой "SET" прочесть осциллограмму из памяти и вывести на экран
HL – вызов подсказки и краткого описания.
Vx – режим вольтметра постоянного тока. Щупы для измерения подключаются к клеммам "Общий" и "Открытый вход"
Om - режим омметра.
Перейти к первому пункту меню можно вернувшись в нормальный режим работы.
Включение в режиме демонстрации – включить удерживая кнопку "вверх"
При показе демонстрации включение подсветки – кнопка вверх, выход из демонстрации – вниз.
Режимы демонстрации и подсказки, и номера страниц пишутся в нижнем правом углу. В режиме демонстрации прибор автоматически отключится через 2-3 часа для предотвращения полного разряда батареи.
Уровень заряда батареи – в правом верхнем углу. При понижении напряжения ниже минимального прибор выключается

Применение и использование.

Подключение источника сигнала
Гнезда слева на право
- общий
- открытый вход
- закрытый вход
Максимальное напряжение - 100 вольт любой полярности. При превышении могут быть необратимо повреждены цепи прибора.
Если сигнал ограничен сверху или снизу или недостаточной амплитуды - переключите значение входного делителя для полного отображения сигнала.

Выбор режима работы

Режим работы осциллографа определяется видом и частотой развертки, видом синхронизации, ослаблением сигнала и соединением с исследуемой схемой. Если некоторые из этих условий неизвестны, то необходимо путем ряда проб определить, какой режим является наилучшим для исследования данного сигнала. Частота развертки. При выборе развертки следует помнить, что непрерывная развертка обычно используется для наблюдения синусоидальных колебаний или колебаний другой формы, а ждущая развертка сложит для наблюдения импульсных сигналов. Частота развертки выбирается с таким расчетом, чтобы на экране были видны все детали исследуемого сигнала. Изображение сигнала по горизонтали должно занимать возможно большую часть экрана. Увеличение частоты развертки увеличивает протяженность изображения по горизонтали. Установите переключатель TIME/DIV в положение, позволяющее наблюдать требуемое число периодов сигнала. При слишком большом числе периодов для лучшего разрешения, измените положение переключателя на большую скорость развертки. Если на экране присутствует линия, пробуйте перейти к более низкой скорости развертки. Так как если длительность развертки меньше периода сигнала, то только часть его будет показана на экране, и эта часть может выглядеть как прямая линия для прямоугольного или синусоидального сигнала.

Синхронизация развертки. Для хорошей синхронизации правильно выбирайте уровень и полярность синхронизации Цифровой запоминающий осциллограф позволяет регистрировать непериодические сигналы, например одиночный импульс, выброс и т.п. При регистрации однократного сигнала для правильного выбора уровня и фронта запуска, необходимо предварительно знать некоторые параметры этого сигнала. Например, для регистрации логического ТТЛ сигнала нужно установить уровень 2В и выбрать запуск по нарастающему фронту. Если параметры этого сигнала неизвестны, попробуйте получить осциллограмму обычным способом
Также осциллограф позволяет записывать медленно меняющие сигналы, продолжительностью до 80 секунд
В режиме измерений будет показано напряжение сигнала от нижнего пика до верхнего Vpp и частота измеренная по уровню синхронизации. Для измерения частоты на экране должно быть два полных периода сигнала по уровню синхронизации. Точность измерения определяется разрешением экрана (+/-5%) Сохраненная в памяти осциллограмма не стирается при отключении батареек. Вместе с ней сохраняются и режимы настроек, которые заменят текущие при чтении сохраненного сигнала. Текущие настройки автоматически сохраняются в энерго-независимой памяти при выключении.

Режим прозвонки
Перейти в режим омметра. При сопротивлении цепи менее 10 Ом индикатор будет моргать подсветкой. Запрещается подавать какое –либо напряжение на клеммы омметра

Требования по электробезопасности.

Портативный осциллограф предназначен для проведения измерений по категории II, степень загрязнения 1, макс. напряжение 600 В, в соответствии с нормами IEC1010-1/UL 94V0
Запрещается проводить измерения в помещениях с повышенной влажностью и загрязненностью; запрещается проводить измерения проводников, напряжение которых может превышать 600 В эфф. по отношению к земле; прибор предназначен для проведения измерений внутри помещений
Максимальное входное напряжение на разъемах прибора 100 В пик. (AC+DC) – аналоговый вход
Не открывайте корпус прибора во время проведения измерений
Во избежание удара электрическим током перед открытием корпуса прибора отсоедините все измерительные щупы от входных гнезд осциллографа при измерении напряжений, превышающих 70 В, используйте изолированные измерительные пробники со встроенными делителями.
Если прибор не планируется использовать в течение долгого времени, отключите батареи питания (под задней крышкой)

Осциллограф Карманный "OSKAR" своими руками.
Апгрейд до версии "OSKAR V3.1".

Апгрейд заключается в обновлении прошивки контроллера и более качественном подборе конденсаторов частотной коррекции.
1.
До модернизации должны уже работать все функции прошивки V2.6.
2.
Скачать прошивку для апгрейда и прошить.

3.
Включить прибор, первый экран


Затем сменится на второй


Нажать и отпустить кнопку SET
Будет произведено обновление прошивки, после этого выключится.
4.
Включить снова. Появится приглашение разблокировки.


При этом на экране отображается серийный номер осциллографа и поле ввода кода.
Коды разблокировки платные, Стоимость
Выслать код на почту [email protected] и получить код разблокировки
Для ввода кода используются кнопки Вверх - увеличение цифры, Вниз уменьшение цифры, Set - переход на новую позицию.


Если находимся на позиции OK то кнопка вниз - выключает осциллограф, Кнопка вверх - ввод кода, кнопка SET - переход на первую позицию кода для корректировки кода.
Число попыток ввода кода ограничено.


Если сделали все правильно - осциллограф выключится и при следующем запуске будет полнофункциональная версия 3.1


Остается только откалибровать вольтметр заново, как описано выше. Осциллограф Карманный "OSKAR" своими руками.
Входной делитель 1/10

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

Параметры - входное сопротивление - 1МОМ, ёмкость 5pF.
Подстроечным конденсатором добиваются нормального прямоугольного сигнала, как описано выше.
При применениии высоковольтных конденсаторов и резисторов, а также надежной изоляции входное напряжение на делителе может быть до 600 вольт.

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

Этот простой и дешёвый USB осциллограф был придуман и сделан просто ради развлечения. Давным давно довелось чинить какой-то мутный видеопроцессор, в котором спалили вход вплоть до АЦП. АЦП оказались доступными и недорогими, я купил на всякий случай парочку, один пошёл на замену, а другой остался.


Недавно он попался мне на глаза и почитав документацию к нему я решил употребить его для чего-нибудь полезного в хозяйстве. В итоге получился вот такой приборчик. Обошёлся в копейки (ну рублей 1000 примерно), и пару выходных дней. При создании я постарался уменьшить количество деталей до минимума, при сохранении минимально необходимой для осциллографа функциональности. Сначала я решил, что получился какой-то уж больно несерьёзный аппарат, однако, сейчас я им постоянно пользуюсь, потому что он оказался весьма удобным - места на столе не занимает, легко помещается в карман (он размером с пачку сигарет) и обладает вполне приличными характеристиками:

Максимальная частота дискретизации - 6 МГц;
- Полоса пропускания входного усилителя - 0-16 МГц;
- Входной делитель - от 0.01 В/дел до 10 В/дел;
- Входное сопротивление - 1 МОм;
- Разрешение - 8 бит.Принципиальная схема осциллографа показана на рисунке 1.

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

Кнопка S2 - это часть железа нужного для бутлоадера. Если при подключении осциллографа к USB держать её нажатой, то PIC заработает в режиме бутлоадера и можно будет обновить прошивку осциллографа при помощи соответствующей утилиты. В качестве АЦП (IC3) была использована "телевизионная" микросхема - TDA8708A. Она вполне доступна во всяких "Чип и Дип"ах и прочих местах добычи деталей. На самом деле это не только АЦП для видеосигнала, но и коммутатор входов, выравниватель и ограничитель уровней белого - чёрного и т.д. Но все эти прелести в данной конструкции не используются. АЦП весьма шустр - частота дискретизации - 30 МГц. В схеме он работает на тактовой частоте 12 МГц - быстрее не нужно, потому что PIC18F2550 просто не сможет быстрее считывать данные. А чем выше частота - тем больше потребление АЦП. Вместо TDA8708A можно использовать любой другой быстродействующий АЦП с параллельным выводом данных, например TDA8703 или что-нибудь от Analog Devices.

Тактовую частоту для АЦП удалось хитрым образом извлечь из PIC"а - там запущен ШИМ с частотой 12 МГц и скважностью 0.25. Тактовый импульс положительной полярности проходит в цикле Q1 PIC"а так что при любом обращении к порту B, которое происходит в цикле Q2 данные АЦП будут уже готовы. Ядро PIC"а работает на частоте 48 МГц, получаемой через PLL от кварца 4 МГц. Команда копирования из регистра в регистр выполняется за 2 такта или 8 циклов. Таким образом, данные АЦП возможно сохранять в память с максимальной частотой 6 МГц при помощи непрерывной последовательности команд MOVFF PORTB, POSTINC0. Для буфера данных используется один банк RAM PIC18F2550 размером 256 байт.

Меньшие частоты дискретизации реализуются добавлением задержки между командами MOVFF. В прошивке реализована простейшая синхронизация по отрицательному или положительному фронту входного сигнала. Цикл сбора данных в буфер запускается командой от PC по USB, после чего можно эти данные по USB прочитать. В результате PC получает 256 8-битных отсчётов которые может, например, отобразить в виде изображения. Входная цепь проста до безобразия. Делитель входного напряжения без всяких изысков сделан на поворотном переключателе. К сожалению не удалось придумать как передавать в PIC положение переключателя, поэтому в графической морде осциллографа есть только значения напряжения в относительных единицах - делениях шкалы. Усилитель входного сигнала (IC2B) работает с усилением в 10 раз, смещение нуля, необходимое для АЦП (он воспринимает сигнал в диапазоне от Vcc - 2.41В до Vcc - 1.41В) обеспечивается напряжением с программируемого генератора опорного напряжения PIC (CVREF IC1, R7,R9) и делителем от отрицательного напряжения питания (R6,R10, R8). Т.к. в корпусе ОУ был "лишний" усилитель (IC2A), я использовал его как повторитель напряжения смещения.

Не забудьте про емкостные цепочки для частотной компенсации входной ёмкости вашего ОУ и ограничивающих диодов, которые отсутствуют на схеме - нужно подобрать ёмкости параллельно резисторам делителя и резистору R1, иначе частотные характеристики входной цепи загубят всю полосу пропускания. С постоянным током всё просто - входное сопротивление ОУ и закрытых диодов на порядки выше сопротивления делителя, так что делитель можно просто посчитать не учитывая входное сопротивление ОУ. Для переменного тока иначе - входная ёмкость ОУ и диодов составляют значительную величину по сравнению с ёмкостью делителя. Из сопротивления делителя и входной ёмкости ОУ и диодов получается пассивный ФНЧ, который искажает входной сигнал.

Чтобы нейтрализовать этот эффект нужно сделать так, чтобы входная ёмкость ОУ и диодов стала значительно меньше ёмкости делителя. Это можно сделать соорудив емкостной делитель параллельно резистивному. Посчитать такой делитель сложно, т.к. неизвестна как входная ёмкость схемы, так и ёмкость монтажа. Проще его подобрать.

Способ подбора такой:
1. Поставить конденсатор ёмкостью примерно 1000 пФ параллельно R18.
2. Выбрать самый чувствительный предел, подать на вход прямоугольные импульсы с частотой 1 кГц и размахом в несколько делений шкалы и подобрать конденсатор параллельно R1 так, чтобы прямоугольники на экране выглядели прямоугольниками, без пиков или завалов на фронтах.
3. Повторить операцию для каждого следующего предела, подбирая конденсаторы параллельно каждому резистору делителя соответственно пределу.
4. Повторить процесс с начала, и убедиться, что на всех пределах всё в порядке (может проявиться ёмкость монтажа конденсаторов), и, если что-то не так, слегка подкорректировать ёмкости.

Сам ОУ - это Analog Devices AD823. Самая дорогая часть осциллографа. :) Но зато полоса 16 МГц - что весьма неплохо.А кроме того, это первое из шустрого, что попалось в розничной продаже за вменяемые деньги.

Конечно же этот сдвоенный ОУ без всяких переделок можно поменять на что-то типа LM2904, но тогда придётся ограничится сигналами звукового диапазона. Больше 20-30 кГц оно не потянет.

Ну и форму прямоугольных, например, сигналов будет слегка искажать. А вот если удастся найти что-то типа OPA2350 (38МГц) - то будет наоборот замечательно.

Источник отрицательного напряжения питания для ОУ сделан на хорошо известной charge-pump ICL7660. Минимум обвязки и никаких индуктивностей. Ток по выходу -5 В конечно у неё невелик, но нам много и не надо. Цепи питания аналоговой части изолированы от помех цифры индуктивностями и ёмкостями (L2, L3, C5, C6). Индуктивности попались номиналом 180 uГн, вот их и поставил. Никаких помех по питанию даже на самом чувствительном пределе. Прошивка PIC заливается по USB с помощью бутлоадера который сидит с 0-го адреса в памяти программ и запускается если при включении удерживать нажатой кнопку S2. Так что прежде чем прошивать PIC - залейте туда сначала бутлоадер - будет проще менять прошивки.
Исходники драйвера осциллографа для ядер 2.6.X находятся в архиве с прошивкой. Там же есть консольная утилитка для проверки работоспособности осциллографа. Её исходники стоит посмотреть, чтобы разобраться как общаться с осциллографом, если хочется написать для него свой софт.
Программа для компьютера проста и аскетична, ее вид показан на рисунках 2 и 3. Подключить осциллограф к USB и запустить qoscilloscope. Требуется QT4.

Во вложении- все файлы к проекту

Все чаще и чаще используются приборы подключаемые к компьютеру по USB. Часто они бывают дешевле и функциональнее обычных приборов. В этой статье описано создание USB осциллографа с максимальной частотой 10 кГц при входном напряжении ± 16В. Он гораздо лучше других подключаемых к компьютеру осциллографов. Имеет гораздо больше возможностей, чем ПК-осциллографы. В качестве основы использован микроконтроллер PIC18F2550. Питание берётся непосредственно с USB порта, что делает осциллограф компактнее.

Описание схемы

В основе этого USB 2.0 осциллографа лежит микроконтроллер PIC18F2550. Вы можете использовать PIC18F2445 вместо PIC18F2550.

Характеристики PIC18F2550:
1. 32 Кб флэш-памяти, 2 Кб оперативной памяти и 256 байт EEPROM
2. Расширенный набор команд (оптимизированный для «С»)
3. 8x8 однотактный умножитель
4. Простая прошивка и отладка
5. USB 1.1 и 2.0 от 1,5 Мб/с до 12 Мб/с
6. Несколько режимов передачи по USB
7. 1 Кбайт доступной RAM с 32 конечными точками (64 байт каждая)
8. Работа с частотой от внутреннего генератора от 31 кГц и до 48 МГц с внешним кварцем.
9. Возможность программного переключения между «быстрым», «нормальным» и спящим режимами. В спящем режиме, ток потребления 0,1 мкА.
10. Широкий диапазон рабочих напряжений (от 2,0 В до 5,5 В).
11. Несколько портов ввода/вывода (I / O), четыре таймера с возможностью захвата /сравнения.
12. Синхронные и асинхронные модули расширения
13. Потоковый параллельный порт
14. 10-разрядный АЦП с 13-канальным мультиплексором.

На рисунке выше показана схема двухканального USB осциллографа. MCP6S91 является аналоговым усилителем с программируемым коэффициентом усиления. Он хорошо подходит для использования в АЦП и подачи сигнала на аналоговый вход микроконтроллера. Два программируемых усилителя (IC4 и IC5) позволяют выбрать входной диапазон для каждого из двух каналов, изменяя его от 1:1 до 32:1. Усилители небольшие, дешевые и простые в использовании. Простой трехпроводной последовательный интерфейс SPI позволяет микроконтроллеру управлять ими через выводы 5, 6 и 7.

MCP6S91 разработан с использование КМОП устройств ввода. Он не инвертирует выходной сигнал, когда входное напряжение превышает напряжение питания. Максимальное входное напряжение этого усилителя от -0.3V (VSS) до +0,3 В (VDD). Повышенное входное напряжение может вызвать чрезмерный ток из входных контактов. Ток более ± 2 мА может привести к поломке микросхемы. При подаче большего тока на входе должен быть токоограничительный резистор. Напряжение на выводе 3, который является аналоговым входом, должно быть между VSS и VDD. Напряжение на этом выводе меняет выходное напряжение. Выводы SPI интерфейса это выбор кристалла (CS), последовательный вход (SI) и последовательная частота (SCK). Выходы КМОП это триггер Шмитта.

Единственным недостатком является то, что эти усилители принимают только положительные сигналы. Вот почему используется напряжение сдвига усилителей LF353 (IC2A и IC3A). LF353 является операционным усилителем с внутренней компенсацией смещения входного напряжения. Этот ОУ имеет широкую полосу пропускания, низкий входной ток. Напряжение сдвига усилителя приводит к высокому входному сопротивлению и коэффициенту уменьшения 1:4.5. ± 16В входного сигнала переходят в 0-5В диапазон.

LF353 (IC2B и IC3B) используются для обеспечения напряжения смещения (Vref) для программируемых усилителей. Это напряжение должно быть точно отрегулировано двумя 4,7 кОм потенциометрами. На входах IC2 и IC3 должно быть 2.5В, когда вход на GND.

LF353 нужны одинаковые напряжения питания, поэтому используется маленький DC-DC преобразователь напряжения ICL7660 (IC1). Ему необходимо лишь два электролитических конденсатора. ICL7660 можно заменить MAX1044.

Последовательная шина

Все данные передаются на D + / D- симметричные входы с переменной скоростью. Положение резистора (R13) на D + или D- позволяет регулировать скорость от 12Мбит до 1.5Мбит. Обратите внимание, что PIC18F2550/2455 имеют встроенные подтягивающие резисторы. Использование UPUEN (UCFG = 4) позволяет использовать их. В этом проекте R13 не используется. Внешние подтягивающие резисторы также могут быть использованы. Сопротивление резистора должно быть в 1,5 Ком (± 5%) в соответствии с требованиями USB.

Программа микроконтроллера

Программа для микроконтроллера написана на "C" в MPLAB 8,70. Его можно бесплатно загрузить с сайта www.microchip.com. Программа для МК основана на готовых примерах с сайта Microchip и сосредоточена на опросе USB. Этот цикл никогда не останавливается, и каждая операция USB осуществляется за один подход. Все операции, которые инициируются ПК состоят из 16-байтных команд.
Первый байт команды определяет тип действия.
1. Команда 80h: Очищает память EEPROM от значений калибровки
2. Команда 81h: Получает параметры, и настраивает необходимую компенсацию для двух каналов.
3. Команда 83h: Вызывает калибровку каналов.

Установка драйвера

1. Если все в порядке, подключите осциллограф с помощью кабеля USB к компьютеру (с операционной системой Windows 98SE и выше). Должно появится диалоговое окно "Обнаружено новое устройство"
ПРИМЕЧАНИЕ: Драйвер для этого осциллографа не работает на Windows 7 или Vista.

2. Теперь вы можете запустить установку драйвера. Для загрузки драйвера, нажмите здесь. Не позволяйте Windows установить стандартный драйвер.

3.Когда вы всё сделали, перейдите в "Диспетчере устройств" и убедитесь, что "USB2-MiniOscilloscope" распознается. Если его там нет, повторите шаги 1 и 2.

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

Пользовательский интерфейс программы написан на Visual Basic 6 и называется OscilloPIC. Нажмите для закачки.

Программа выглядит как маленький цифровой осциллограф, что показано на скриншоте выше. Различные настройки в строке меню:
1. Inputs: выбор активных каналов
2. Sampling: настройка частоты снятия показаний
3. Trigger: настраивает синхронизацию
4. Cursors: выбор горизонтальной или вертикальной позиции сигнала
5. Num: показывает дискретные значений в формате текстового файла
6. Config: настройка усиления и смещения

Перед началом работы с осциллографом необходимо провести калибровку. Нажмите кнопку channels calibration в разделе "Config". Подайте на вход осциллографа известный сигнал. Нажмите кнопку "Пуск". Сигнал будет отображаться на экране монитора. По умолчанию время одного деления составляет 200 мкс. Амплитуда 4В на деление. Вы можете установить эти параметры в соответствии с вашими требованиями.

Тесты и калибровка

Первый шаг заключается в корректировке смещения. Подсоедините два аналоговых входа на GND и подстройте два 4,7 кОм потенциометра, пока на выводе 2 обоих MCP6S21 не будет 2,5В. Более точная настройка может быть достигнута за счет OscilloPIC. Выберите наименьшее значение калибровки в пределах ± 0,5 для обоих входов.

Команда «калибровка нуля» сообщает ПИК о необходимости начать свою собственную внутреннюю компенсацию для всех калибровок. Не забудьте подключить входы на землю.

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

Сборка

Макет схемы собранный на макетной плате

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

Для подачи входного сигнала могут быть использованы BNC разъёмы. Разъёмы для них могут быть установлены на передней панели. Осциллограф может быть улучшен путем замены PIC и АЦП на более быстрые модели, например на AD9238 (20 MS/с). Это быстрый параллельный АЦП можно использовать вместе с DSP PIC.

ПРИМЕЧАНИЕ: Плата оптимизирована для изготовления в домашних условиях(дорожки специально сделаны толстыми). Если вы можете сделать более тонкие дорожки, вы можете уменьшить их толщину.

Скачать прошивку, ПО для ПК, файлы печатных плат в Eagle

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

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
IC1 Микросхема ICL7660 1 В блокнот
IC2, IC3 Операционный усилитель

LF353

1 В блокнот
IC4, IC5 Микросхема MCP6S91 1 В блокнот
IC6 МК PIC 8-бит

PIC18F2550

1 В блокнот
R1, R9 Резистор

82 кОм

2 0.25 Вт В блокнот
R2, R8 Резистор

33 кОм

2 0.25 Вт В блокнот
R4, R5, R15 Резистор

1 МОм

3 0.25 Вт В блокнот
R6, R7 Резистор

220 кОм

2 0.25 Вт В блокнот
R10, R11 Резистор

150 кОм

2 0.25 Вт В блокнот
R12, R13, R16 Резистор

1 кОм

3 0.25 Вт В блокнот
R14 Резистор

1.5 кОм

1 0.25 Вт В блокнот
VR1, VR2 Резистор подстроечный

4.7 кОм

2 В блокнот
С1 Электролитический конденсатор 10 мкФ 16В 1

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

За основу этой разработки взят малогабаритный двухлучевой осциллограф-мультиметр, описанный в . В нём оставлен только один "луч". Максимальная чувствительность канала вертикального отклонения повышена с 640 до 100 мВ (на весь экран). Минимальная длительность развёртки уменьшена с 5 до 3 мс, а при наблюдении логических сигналов — до 300 мкс. Значительно уменьшены габариты прибора, его масса и ток потребления.

Основные технические характеристики

Схема осциллографа изображена на рис. 1. Исследуемый сигнал произвольной формы в зависимости от его амплитуды подают на "Вход 1" — одно из гнёзд 1—5, 7, 8 разъёма Х1, а с его гнездом 6 соединяют общий провод источника исследуемого сигнала. Резисторы R1—R6, задающие чувствительность канала вертикального отклонения осциллографа, смонтированы прямо на выводах гнёзд разъёма. Через усилитель на ОУ К140УД608 (DA1) сигнал поступает на вывод 2 (RA0) микроконтроллера (DD1), служащий входом встроенного в него АЦП. Цифровые отсчёты мгновенных значений сигнала за время, соответствующее выбранной длительности развёртки, сохраняются в оперативной памяти микроконтроллера и отображаются на графическом ЖКИ HG1 в виде осциллограммы. Использован ЖКИ , управление которым ведётся по линиям портов RB0—RB4 и RC0—RC7 микроконтроллера. При разработке программного обеспечения очень полезными оказались рекомендации из статьи .

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

Развёртка осциллографа — однократная, запускаемая при каждом нажатии на кнопку SB2. Длительность развёртки изменяют нажатиями на кнопку SB1. После каждого нажатия на экран индикатора выводится число — значение выбранной длительности.

Если установлена длительность развёртки 300 мкс (на весь экран), АЦП микроконтроллера уже не успевает оцифровывать отсчёты исследуемого сигнала. При такой скорости на индикаторе можно наблюдать только характер изменения во времени логических уровней импульсов, поданных на гнездо 9 разъёма Х1 ("Вход 2" осциллографа). Через разделительный конденсатор С1 эти импульсы поступают непосредственно на дискретный вход RA1 (вывод 3) микроконтроллера.

Осциллограф собран навесным монтажом на плате (рис. 2), помещённой в корпус, сделанный из коробки для рыболовных снастей. Индикатор HG1 размещён на крышке корпуса. Внешний вид действующего прибора показан на рис. 3. Видимая на фотоснимках третья кнопка оставлена неподключённой. В работе с прибором она не используется.

Исходный код программы на ассемблере и прошивка для микроконтроллера PIC16F873A доступны по .

Литература:

1. Кичигин А. Малогабаритный двухлучевой осциллограф-мультиметр. - Радио, 2004, № 6, с. 24-26.
2. Жидкокристаллический модуль MT-12864J. - .
3. Милевский А. Использование графического ЖКИ MT-12864A с микроконтроллером фирмы Microchip. - Радио, 2009, № 6, с. 28-31.

Понравилось? Лайкни нас на Facebook