Схема usb осциллограф своим руками

Простой USB-осциллограф

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

Осциллограф имеет два аналоговых входа и питается от USB-интерфейса. Один вход задействован через потенциометр, что позволяет уменьшать уровень входного сигнала.

ПО для микроконтроллера tiny45 написано на Си и скомпилировано при помощи WinAVR и V-USB разработки Obdev, который реализует со стороны микроконтроллера HID-устройства.
В схеме не используется внешний кварц, а программно задействована частота от USB 16.5 МГц. Естественно не стоит ожидать от этой схемы дискретизации 1Gs/s.

Осциллограф работает по USB через HID-режим, не требующий установки каких-либо специальных драйверов. Софт для windows написан с использованием .NET C#. Взяв за основу мой исходник программы, вы можете дополнить ПО как вам нужно.

Принципиальная схема USB-осциллографа очень проста!

Список используемых радиоэлементов:
1 светодиод (любой)
1 резистор для светодиода, от 220 до 470 Ом
2 резистора 68 Ом для USB D+ & D-линий
1 резистор 1.5K для определения USB-устройства
2 стабилитрона 3.6V для выравнивания USB-уровней
2 конденсатора 100нФ и 47мкФ
2 фильтрующих конденсатора на аналоговых входах (от 10нФ до 470нФ), можно и без них
1 или 2 потенциометра на аналоговых входах, для уменьшения уровня входного напряжения (если нужно)
1 USB-разъем
1 микроконтроллер Atmel Tiny45-20.

В архиве содержатся файлы печатной платы под Eagle, прошивка, исходники на Си включающие USB-библиотеки и HID, программа для windows (не требует установки) и ее исходник на C#.

Источник

ПРОСТОЙ САМОДЕЛЬНЫЙ USB ОСЦИЛЛОГРАФ

Крайне дешевый, но, к сожалению, низкоскоростной USB осциллограф с STM32F042 микроконтроллером и входным усилителем на MCP6S21, мы сейчас будем собирать. Из плюсов отметим простоту и высокое входное сопротивление прибора. Ещё один вариант похожего самодельного прибора смотрите тут.

Схема USB осциллографа

Особенности осциллографа miniscope

  1. Простое устройство потоковой передачи данных в реальном времени на ПК; библиотеки dll и GUI (для Win32),
  2. сэмплирование: 480 кГц, 8 бит, потоковая передача через USB FS с помощью libusb (32/64бит), используемые в качестве драйвера,
  3. 8 диапазонов напряжения (0..30, 15, 7.5, 6, 3.75, 3, 1.87, 0.94 вольт PGA — х1, х2, х4, Х5, х8, х10, х16 и х32 соответственно),
  4. входное сопротивление: 1 мегаом,
  5. шум:

23mVpp,

  • длина записи: 4к на 1м в dll (один экран); до 512m при записи в файл,
  • загрузка прошивки через USB (dfu загрузчик встроенного в ПЗУ),
  • малое количество компонентов: микроконтроллер, регулятор напряжения, мини-USB и несколько пассивных радиодеталей поверхностного монтажа на односторонней печатной плате.
  • Насколько оправдана самостоятельная сборка подобного измерительного прибора по сравнению с покупкой готовой приставки? Вот цены от поставщика в нашей стране.

    • STM32F042Fx: $2 в розницу, $1 опт
    • MCP6S21: $1.40 розница, $0.80 опт
    • MCP1700: $0.50 розничная цена
    • Мини-USB разъем: $0.55
    • Другие детали: $2
    • Итого: 5-6 долларов

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

    Originally posted 2019-03-05 01:16:41. Republished by Blog Post Promoter

    Источник

    Двухканальный USB осциллограф

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

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

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

    Характеристики PIC18F2550:
    1. 32 Кб флэш-памяти, 2 Кб оперативной памяти и 256 байт EEPROM
    2. Расширенный набор команд (оптимизированный для «С»)
    3. 8×8 однотактный умножитель
    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мкс.

    Сборка

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

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

    Рекомендуется использовать панельки для монтажа IC1 и IC7 на печатной плате для возможности их замены в случае поломки. USB-разъем (CON1) должен быть прочно припаян и зафиксирован на плате.

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

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

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

    Источник

    USB ПРОБНИК-ОСЦИЛЛОГРАФ

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

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

    Схема usb осциллографа-пробника

    Я сознательно не называю его чисто осциллографом, потому что он не дотягивает до этого звания. Давайте разберем подробнее, что же он представляет из себя. Бюджет устройства составляет всего 250, максимум 300 рублей, и его сборку может позволить себе любой школьник или студент. Как наглядного пособия, для отработки навыков пайки, прошивания МК, в общем, для отработки всех навыков, необходимых для самостоятельного конструирования цифровых устройств. Если кто-то сразу загорелся и собрался немедленно бежать в магазин, за покупкой радиодеталей, подождите, у этого осциллографического пробника, есть несколько существенных минусов. У него очень неудобный софт, оболочка, в которой собственно мы и будем наблюдать наш сигнал. На следующем фото показано, как я ловлю момеху от пальца:

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

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

    В данном устройстве не применяется внешний быстродействующий АЦП, и это её существенный недостаток. Это означает, что при измерении сигнала с частотой, на которую наш пробник — осциллограф не рассчитан, мы получим на экране, просто прямую линию… Недавно мне потребовалось провести ремонт пульта дистанционного управления, диагностика показала, что и питание приходит, и дорожки все целые, и контакты на плате, вместе с резиновыми кнопками почищены, все безрезультатно, пульт не подавал признаков жизни. На местном радиофоруме, мне предложили заменить керамический резонатор, на котором кстати не было ни трещин, ни каких других внешних признаков, по которым можно было бы решить, что деталь неисправна. Решил послушать совета, сходил в магазин и купил новый керамический резонатор на 455 кГц, стоимостью всего 5 рублей, перепаял его, и пульт сразу “ожил”.

    К чему я это рассказываю? А к тому, что после сборки этого пробника, пришла в голову мысль проверить на пульте генерацию тактового сигнала. Не тут-то было. Пробник-осциллограф показал, на одной ножке резонатора условно низкий уровень, на другой высокий, и вывел прямую линию. Не справившись даже с частотой 455 кГц. Теперь, когда вы предупреждены о его минусах, вы можете сами определиться для себя, нужен ли вам такой осциллографический пробник. Если все же да, то продолжаем чтение). Входное сопротивление обоих каналов осциллографа равно 1 МОм.

    Для этой цели нам будет нужно приобрести и запаять подстроечные резисторы на 1 МОм, делитель сигнала 1\10. Соответственно сопротивления делителя, у нас должны составлять 900 и 100 КилоОм. Я решил использовать 2 канала осциллографа, так как был в наличии разъем — гнезда, распаянные на плате, два тюльпана, и разница в стоимости деталей для меня составляла, по сути, только стоимость подстроечного резистора. Другое дело, что оба канала оказались не идентичны по своим показаниям. Как мы видим на схеме один канал был рассчитан на работу с делителем, а другой нет. Ну да это не беда, если потребуется, чтобы и этот канал работал без делителя, нам достаточно выкрутить положения движка подстроечного резистора в ноль, тем самым подав сигнал с выхода, напрямую на ножку МК. Это может быть полезным при измерении сигналов, на двух линиях с низкой амплитудой. На следующем фото показано, как я снимаю сигнал с мультивибратора:

    Также мы можем, покрутив регулятор подстроечного резистора, выставить, какой делитель нам требуется, 1\10, 1\25, 1\50, 1\100, или любой другой, измерив мультиметром сопротивление, между центральным выводом и крайними выводами подстроечного резистора. Это может потребоваться для измерения формы сигнала, с большой амплитудой напряжения. Для этого нужно будет лишь подсчитать, получившиеся соотношения сопротивлений делителя. Есть еще один важный нюанс, на иностранном сайте автора схемы, при выборе фьюзов указано, что нужно перевести фьюз — бит Reset Disable в положение включено. Как мы помним, отключение этого фьюз – бита, прекращает возможность последовательного программирования. Фьюзы которые нужно изменить, показаны на следующем рисунке:

    В данной схеме Pin 1 Reset не используется как Pin, поэтому нам изменять этот фьюз-бит не обязательно. Но на одном из форумов, для более стабильной работы осциллографа – пробника, рекомендовали притянуть Pin Reset через резистор 10 килоОм к плюсу питания, что я и сделал. Также, когда искал информацию по нему, ни на одном из сайтов я не нашел понятного и доступного объяснения, насчет источника тактирования МК Tiny 45. Так вот, в этой схеме МК тактируется не от внутреннего RC – генератора, не от кварцевого резонатора, а от внешнего тактового сигнала, подаваемого на МК от USB порта. Логично предположить, что выбрав этот источник тактирования, МК перестанет у нас быть виден, в оболочке для прошивания, при отключении от USB порта, поэтому сначала залейте прошивку, а затем внимательно выставляйте фьюз биты.

    Давайте разберем схему осциллографа более подробно, на сигнальных линиях USB порта D+ и D-, установлены согласующие резисторы на 68 Ом. Изменять их номинал не рекомендую. Между сигнальными жилами и землей, рекомендовано для снижения помех, установить керамические конденсаторы на 100 наноФарад. Такой же конденсатор на 100 наноФарад, нужно установить параллельно электролитическому, на 47 микроФарад, установленному по цепям питания +5 вольт и земля. Между землей и сигнальными линиями, должны быть установлены стабилитроны на 3.6 Вольта. Я правда поставил на 3.3 вольта, все работает нормально. Предусмотрена индикация включения на светодиоде, включенном последовательно с резистором 220-470 Ом.

    Номинал в данном случае не критичен, и от него зависит только яркость свечения светодиода. Я установил на 330 Ом, яркость свечения достаточная. В схеме установлен резистор номинала 1.5-2.2 килоОма, для определения устройства операционной системой.

    Подпаивайте провода USB кабеля к плате ориентируясь по распиновке кабеля, а не по расположению на схеме осциллографа. На схеме очередность следования жил указана произвольно. Также из несущественных недостатков, по отзывам пользовавшихся, после перезагрузки Windows, нам потребуется переткнуть осциллограф заново в USB порт. Не забудьте снять фьюз — бит делитель тактовой частоты на 8 CKDIV 8. Данный осциллограф не требует для своей работы, каких-то сторонних драйверов, и определяется как Hid устройство, аналогично мышке или клавиатуре. При первом подключении, устройство определится как Easylogger. На следующем рисунке, приведен список необходимых для сборки деталей.

    Существует 6 версий программы Usbscope, оболочки, в которой собственно мы и наблюдаем график. Первые три версии не поддерживают 64-битные операционные системы Windows. Начиная с четвертой версии Usbscope, поддержка обеспечена. Для работы программы на компьютер должен быть установлен Netframework. На сайте автора были выложены исходники прошивки, и исходники программы-оболочки, так что возможно найдутся умельцы, которые смогут дополнить софт. Какое-же практическое использование данного осциллографа, неужели только как игрушка? Нет, данный прибор используется в автоделе домашними умельцами, как бюджетная замена дорогому осциллографу, для настройки автомобильных систем зажигания, расхода топлива и подобных нужд.

    Видимо частота работы в автоделе достаточно низкая, и данного пробника минимально хватает, хотя бы для разовых работ. Для подключения к измеряемой схеме спаял два щупа, использовав для этого, с целью снизить уровень помех, экранированный провод, тюльпаны или разъем RCA. Это обеспечивает легкое подключение и отсоединение щупов от осциллографа.

    1. Один из проводов – щупов осциллографа, оканчивается для измерения щупом от мультиметра для сигнальной жилы, и крокодилом для подключения к земле.
    2. Второй щуп оканчивается крокодилами разных цветов, и для сигнальной жилы и для земли.

    Вывод: сборка данного пробника, целесообразна, скорее как наглядное пособие, для изучения формы низкочастотных сигналов. Для практических целей, например для проверки и настройки импульсных блоков питания, в частности работы ШИМ контроллеров, данный пробник не годится однозначно, так как не может обеспечить необходимого быстродействия. Поэтому не может являться заменой, даже самому простому советскому осциллографу, и даже простым осциллографам с Али экспресс.

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

    Источник

    Читайте также:  Цветы своими руками с шоколадных конфет
    Оцените статью