Самодельный мотор тестер осциллограф

Как собрать осциллограф своими руками — 3 рабочие схемы, советы по монтажу, видео

  1. Осциллограф на PIC18F2550
  2. Цифровой осциллограф для ПК
  3. На AVR — инструкция по сборке, характеристики
  4. Видео

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

Осциллограф на PIC18F2550 своими руками — схема, инструкция по сборке

Осциллограф на PIC18F2550 измеряет среднее, максимальное, минимальное, пиковое напряжения и пересечение нулевого уровня. Осциллограф имеет встроенную функцию триггера, который может быть использован для остановки сигнала для его детального изучения. Масштаб времени для отображения может быть легко изменён функцией changeTimeDivision.

Осциллограф измеряет напряжение в пределах 0–5В, 0–2.5В и 0–1,25. Основным недостатком этого осциллографа является низкая частота дискретизации (

60 кГц), а также тот факт, что входы ограничены ограничениями АЦП микроконтроллера. Тем не менее, это очень хороший прибор и первым мы рассмотрим именно его схему.

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

Исходники и прошивку можно будет скачать ниже. Теперь давайте детальнее остановимся на каждом блоке схемы.

Напряжение поступает с 9-вольтовой батареи на интегральный стабилизатор напряжения TC1262-5.0V для обеспечения стабильных 5В для питания микроконтроллера и дисплея. На выходе стоит 1мкФ конденсатор.

Графический ЖК дисплей AGM1264F с разрешением 128х64 пикселей оснащен встроенными контроллером KS0108. Он имеет светодиодную подсветку и генератор отрицательного напряжения для управления.

Вывод A0 настроен на аналоговый вход. Обратите внимание, что сопротивление источника сигнала влияет на напряжение смещения на аналоговом входе. Максимально рекомендованное сопротивление составляет 2.5 кОм.

Микроконтроллер PIC18F2550 работает на частоте 48 МГц от внутреннего генератора. R1 представляет собой нагрузочный резистор, необходимый для работы. C1 является стабилизирующим конденсатором. Компонент пометкой «RES» является 20 MHz резонатором.

Выводы USART должны быть подсоединены к RS-232 конвертеру для подключения к ПК для обновления прошивки. После этого он может быть отключен.

Необходимые детали для сборки осциллографа на PIC18F2550 и прошивка

  • МК PIC 8-бит (IC1) — PIC18F2550
  • Линейный регулятор (IC2) — TC1264, 5 Вольт.
  • Конденсатор (С1) — 0.22 мкФ.
  • Электролитический конденсатор (С2) — 1 мкФ.
  • 2 резистора (R1, R3) — 3.3 кОм и 5 Ом соответственно.
  • Подстроечный резистор (R2) — 10 кОм.
  • Кварцевый резонатор (RES) — 20 МГц.
  • LCD-дисплей — AGM1264F.
  • Батарея питания (G1) — 9 В
  • 3 разъёма — JP1 для подключения дисплея, JP2 для обновления прошивки (RS-232) и JP3 для входа аналогового сигнала.

Микроконтроллер должен быть прошит файлом «SAC_tinybld18F2550usb _20MHz_115200_48MHz». Его можно скачать ниже.

Видео, как работает осциллограф на PIC18F2550:

Цифровой осциллограф RS232 для ПК

Рассмотрим простое решение для создания цифрового компьютерного осциллографа. Устройство построено на базе восьмиразрядного процессора PIC12F675.

Схема цифрового осциллографа для компьютера

Ниже представлена структурная схема осциллографа:

Процессор работает на частоте 20 МГц. Микроконтроллер непрерывно измеряет входное напряжение, преобразовывает его и отправляет цифровое значение на последовательный порт компьютера. Скорость передачи данных последовательного порта — 115кБит и, как показано на следующем рисунке, данные сканируются и отправляются с частотой около 7,5 кГц (134 мкс).

Читайте также: Мотор для дворников камаза

Вот принципиальная схема самого цифрового осциллографа:

Основа схемы — микроконтроллер PIC12F675 (микросхема U2), который работает с тактовой частотой 20 МГц кристалла Y1. J1 — стандартный разъем для подключения питания в 9–12 В, которое затем стабилизируется на U1 до 5 В для питания процессора.

  • Узнайте, как сделать щуп для осциллографа своими руками

После U2 в схему добавляется простой преобразователь TTL уровня с последовательным портом RS232 персонального компьютера. Он построен на базе транзистора BC337 (Q1) и резисторов R1 и R3. Вход 5 микроконтроллера ведет к переключателю S1. В своей основной позиции (1–2) прибор переключается в режим осциллографа постоянного тока (DC измерений), который способен отображать входной сигнал 0–5В. Во второй позиции — в режим осциллографа переменного тока. В этом положении максимальное напряжение — от -2,5 до +2,5 В. Конденсатор С6 подойдет керамический 22000nF, чтобы наблюдать низкие частоты без особых искажений.

При необходимости можно добавить дополнительные входной аттенюатор (сплиттер), или ОУ.

Необходимые радиоэлементы

  • Линейный регулятор (U1) — LM78L05.
  • МК PIC 8-бит (U2) — PIC12F675 (675-I/P).
  • Биполярный транзистор (Q1) — BC337.
  • 6 конденсаторов — С1, С2, С5 (3х0.1 мкФ); С3, С4 (2х22 пФ); С6 (22 мкФ)
  • 4 резистора — R1, R3 (2х1 кОм) и R2, R4 (2х270 кОм).
  • Кварцевый резонатор (Y1) — 20 МГц.
  • Переключатель (S1)
  • 3 разъема — J1 питания, J2 RS232, J3 входа сигнала.

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

Для управления на Windows доступна простая программа на Visual Basic. Её можно скачать в архиве ниже.

Программа запускается сразу и ожидает появления данных на последовательном порте COM1. Слева — четыре ползунка, используемые для измерения периода и напряжения сигнала. Затем идут вкл/выкл синхронизации, поля для масштабирования или изменения значений размера выборки.

Монтаж

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

Прошивку для процессора можно скачать в конце статьи. Биты конфигурации (fuse) в процессе программирования должны быть установлены следующим образом:

Вот фото готового прототипа цифрового осциллографа:

Ниже вы можете скачать исходник, прошивку и ПО для Windows.

Осциллограф своими руками на AVR — инструкция по сборке, характеристики

Характеристики осциллографа на AVR:

  1. Частота измерения: 10 Гц–7.7 кГц.
  2. Макс. входное напряжение: 24В AC/30В DC.
  3. Напряжение питания: 12В DC.
  4. Разрешение экрана: 128×64 пикселей.
  5. Область экрана осциллограммы: 100×64 пикселей.
  6. Информационная область экрана: 28×64 пикселей.
  7. Режим триггера: автоматический.

Рассмотрим проект осциллографа с использованием МК PIC18F2550 и графического LCD с контроллером KS0108. В качестве среды разработки здесь использована WinAVR, которая основывается на open source AVR-GNU компиляторе и прекрасно работает с AVR Studio 4. Графическую библиотека разработана специально для данного проекта.

При измерении прямоугольного сигнала, максимальная частота, при которой можно увидеть хорошую осциллограмму составляет около 5 кГц. Для других форм сигналов (синусоида или треугольный сигнал) максимальная частота составляет около 1 кГц.

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

Принципиальная схема AVR-осциллографа приведена ниже:

Напряжение питания схемы составляет 12 вольт постоянного тока. Из этого напряжения, в дальнейшем получается еще 2 напряжения: +8.2В для IC1 и +5В — для IC2, IC3.

  • Схема светодиодного осциллографического пробника

Читайте также: Головку от лодочного мотора

Устройство может измерять входное напряжение от +2.5В до -2.5В или от 0 до +5В, зависящее от позиции переключателя S1 (выбор типа входного тока: постоянный или переменный). При использовании пробника 1:10, входное напряжение соответственно может быть увеличено в 10 раз. Кроме того, переключателем S2 можно установить дополнительно деление напряжения на 2.

Необходимые радиоэлементы

  • Операционный усилитель (IC1) — LM358.
  • LCD-дисплей (IC2) — DEM128064A (128×64, контроллер KS0108).
  • МК AVR 8-бит (IC3) — ATmega32.
  • Линейный регулятор (IC4) — LM7805.
  • Стабилитрон (D1) — 1N4738A, 8.2В.
  • Выпрямительный диод (D2) — 1N4007.
  • 7 конденсаторов — C1 (470 нФ); C2 (27 пФ); C4, C7, C9 (3х100 нФ); C5, C6 (2х22 пФ).
  • 2 электролитических конденсатора — C3 (22 мкФ 16 В) и C8 (100 мкФ 25 В).
  • 7 резисторов — R1, R2, R4 (3х1 МОм); R3, R5 (2х390 кОм); R6 (56 Ом); R7 (220 Ом).
  • 2 подстроечных резистора (P1, P2) — 10 кОм и 22 кОм соответственно.
  • Кварц (X1) — 16 МГц.
  • 3 переключателя (S1, S2, S5).
  • 5 кнопок (S3, S4, S6–S8) — замыкающие.
  • 2 разъёма (K1, K2) — 2 контакта вход сигнала, 2 контакта питание.

Прошивка ATmega32 и настройка

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

Для настройки прибора нужно выполнить всего 2 вещи: настроить контрастность LCD при помощи подстроечного резистора Р2 и выставить центр осциллограммы при помощи подстроечного резистора Р1.

Использование

Вы можете перемещать луч осциллограммы вверх или вниз путем нажатия кнопок S8 и S4. Один квадрат на экране, соответствует 1В.

При помощи кнопок S7 и S3 можно увеличивать или уменьшать частоту измерений. Минимальная частота формы сигнала, которая может быть отображена на LCD составляет 460 Гц. Если необходимо посмотреть сигнал с более низкой частотой, например, 30 Гц, то необходимо нажать S7 для сжатия осциллограммы или S3 — для растяжения.

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

Фото готового AVR осциллографа:

Видео работы осциллографа на AVR:


Простой осциллограф за 1 день

Небольшое описание под катом.

Началось все с того, что на руках у меня появился графический LCD экранчик WG12864B фирмы WINSTAR. 128×64 пикселя, монохромный. Никогда с ними не работал, было интересно в нем разобраться (люблю копаться в даташитах, особенно, по Cortex M4 контроллерам в 1400 страниц).

Управление оказалось очень простым, мне показалось проще, чем управление символьными LCD экранами. Основная первоначальная сложность возникла лишь в том что экран поделен на 2 независимые части 64×64, каждая из которых управляется собственным контроллером. Об управлении писать не буду, в интернете тьма статей разных и библиотек.

Читайте также: Лодочные моторы тохацу во владивостоке

Дак вот. Вывел я картинку, порадовался, показал маме. Что же делать дальше, с экраном вроде разобрался, дальше картинки рисовать уже скучно. Решил сделать осциллограф, потому что у меня его нету, и, наверное, еще долго не будет. И тут сразу вспомнилась одна функция этого экрана «Стартовая линия дисплея». Она служит, так сказать, смещением памяти. Если записать в память пиксель в точке (0,0) и сделать стартовую линию, например 5, то точка будет видна на экране на 5 линии горизонтально. Мне показалось это решением проблемы сдвига изображения вместо его перерисовки.

Решил что одну половину экрана я буду сдвигать вместе с изображением сигнала, а на второй будет показываться различная информация: напряжение и все такое.
Логика проста. Стираем строчку(старую точку которая хочет вылезти справа при сдвиге более 64 точек), строим точку, эквивалентную напряжению, сдвигаем на 1 пиксель влево изображение. Эффект соединенных точек сначала думал сделать через алгоритм Брезенхема, но потом подумал, что сдвигаем ведь всего на 1 пиксель и линии будут вертикальные.

Амплитудное значение определяется по формуле:
amp=63-(8-битное значение из АЦП) сдвинутое на 2 разряда вправо;

Сделал все это в бесконечном цикле, запустил, и… ничего не увидел. добавил задержку 100мс и получил то изображение, которое видно в видео. При уменьшении задержки изображение становится слаборазличимым. Тут я взгрустнул, так как сигналы частотой выше 10 Гц становятся совсем неразличимы. Это все из за метода сдвига экрана. Если стирать экран и записывать информацию блоками, а не пикселями, как это делал я, качество изображения значительно улучшится и ускорится отрисовка. Но делать это было, честно, неохота, особенно в сессию. И я оставил все как есть.

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

Вот картинка, чтоб удобней было ориентироваться:

На текущий момент имеем 3 Вольта. Кому интересно, синус делал на ЦАПе МК Cortex M4 с периодом чуть больше 3 секунд. На экране видно, что пару значений не досчитал на пике.

Воот. А место-то еще осталось и добавил я еще пару цифровых каналов. Работают они на прерываниях и чуть пошустрей аналогового, так как немного по другому принципу: отобразили сигнал слева-направо, стерли, отобразили снова. Тут уж можно просмотреть цифровой сигнал с частотой меньше 50 Герц. Например, проверить работоспособность какого-нибудь медленного интерфейса. Очень медленного:)

В общем все рассказал. Предложения и отзывы в комментариях. Только не разводите балаган, лучше купите мне осциллограф)
Счастья всем.

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

UPDATE2: вот код для atmel studio для микроконтроллера ATMega168, который содержит процедуры работы с графическим экраном, обработку прерываний таймера и цифровых входов.

  • Свежие записи
    • Чем отличается двухтактный мотор от четырехтактного
    • Сколько масла заливать в редуктор мотоблока
    • Какие моторы бывают у стиральных машин
    • Какие валы отсутствуют в двухвальной кпп
    • Как снять стопорную шайбу с вала


Технарь знаток