- Digitrode
- цифровая электроника вычислительная техника встраиваемые системы
- Простой осциллограф на Arduino своими руками
- Самодельный цифровой осциллограф на Ардуино и микроконтроллере своими руками
- Шаг 1: Необходимые материалы
- Шаг 2: Код и программа осциллоскопа
- Шаг 3: Принцип действий
- Шаг 4: Особенности
- Шаг 5: Все готово!
- Осциллограф реального времени на Arduino
- Общие принципы работы проекта
- Необходимые компоненты
- Аппаратное обеспечение
- Программное обеспечение
- Работа схемы
- Объяснение кода программы
- Объяснение программы для Python
- Самодельная цифровая приставка осциллограф к компьютеру своими руками
- Шаг 1: Используем контроллер Arduino Uno
- Шаг 2: Устанавливаем приложение Arduino IDE и библиотеку TimerOne.h
- Шаг 3: Скачиваем скетч и загружаем его в приложение Arduino
- Шаг 4: Скачиваем программу Oscilloscope
- Шаг 5: Если oscilloscope_4ch.exe не работает…
- Шаг 6: Настраиваем последовательный порт для сопряжения контроллера Arduino с программой Oscilloscope
- Шаг 7: Соединяем выход (
- Шаг 8: Подсказки
- Шаг 9: Определяем частоту вспышки фонарика
- Шаг 10: Определяем частоту вращения вентилятора
- Шаг 11: Анализируем сигнал от пульта дистанционного управления
- Шаг 12: Тестируем компоненты или устройства
- Шаг 13: Определяем параметры резисторов и конденсаторов
- Шаг 14: Хотите больше возможностей?
Digitrode
цифровая электроника вычислительная техника встраиваемые системы
Простой осциллограф на Arduino своими руками
Хотите самостоятельно сделать дешевый осциллограф, который удовлетворял основные потребности в плане измерения электрических величин? Это возможно благодаря плате Arduino. На основе Arduino можно собрать простой осциллограф для ПК, который по себестоимости будет менее $5.
Характеристики и особенности самодельного осциллографа на Arduino:
- 50000 выборок в секунду (можно довести до 110000, но тогда сигнал будет очень зашумленным)
- Автотриггер
- Счетчик частоты
- Достаточно точные показания напряжения (в зависимости от точности резисторов, используемых для делителей напряжения)
- Дополнительно можно выбрать диапазон напряжения: 5В, 6.6В, 10В, 20В
Компоненты для осциллографа:
- Arduino Leonardo или Arduino Micro
- Два зажима типа крокодил
- Конденсатор 0.1 мкФ (опционально)
- Стабилитрон 5.1В (опционально)
- ПК с установленным компилятором языка Processing
Также дополнительно для делителей напряжения (если вы хотите измерять напряжение выше 5 В) потребуется:
- Два двухполюсных переключателя
- Два резистора 3 КОм
- Два резистора 1.5 КОм
- Один резистор 1 КОм
- Небольшая макетная плата
Если вам нужно измерять только напряжение до 5 В, то можете не подключать делители напряжения, а контакты щупов подключить непосредственно на землю и на аналоговый порт A1 на плате Arduino. Тогда вам придется немного изменить код. В коде для Arduino поменяйте:
В коде для processing поменяйте:
Скетч для Arduino и код на processing:
Схема осциллографа на Arduino с делителями напряжения:
В левой стороне схемы расположен делитель напряжения с коэффициентом 1:4. То есть к нему можно подключать напряжение да 20 В.
Справа расположен делитель напряжения, переключающийся между линиями 5 В и опорного напряжения (Aref). Вы можете использовать переключатели для установки диапазона измерения: 5В, 6.64В, 10В или 20В. Второй контакт каждого переключателя соединяется с цифровым входом Arduino (D3 и D4). Это работает следующим образом. Если программа настроена на работу с опорным напряжением, АЦП сравнивает напряжение аналоговых входов с Aref вместо 5В. Например, мы измеряем 5 В, тогда напряжение на A1 будет 5В/4=1.25 В. Если оба переключателя разомкнуты, то напряжение на Aref будет 5В, АЦП прочитает 1.25/5=25%. Если первый переключатель разомкнут, а второй замкнут, напряжение на Aref будет 2.5В, АЦП прочитает 1.25/2.5=50%. Если первый переключатель замкнут, а второй разомкнут, напряжение на Aref будет 1.66В, АЦП прочитает 1.25/1.66=75%. Если оба переключателя замкнуты, напряжение на Aref будет 1.25В, АЦП прочитает 1.25/1.25=100%.
Дополнительными элементами в схеме являются конденсатор между линией щупа и землей и Стабилитрон 5.1V. Конденсатор позволяет уменьшить шумы измеряемых сигналов, а стабилитрон защищает Arduino от перенапряжения.
Если аналоговое опорное напряжение выбрано внутреннее (по умолчанию), и вы подводите напряжение питания к AREF, то это может вывести из строя Arduino.
Аналоговые входы не могут работать с отрицательным напряжением.
Не превышайте напряжения 5 В непосредственно на выводах Arduino.
Источник
Самодельный цифровой осциллограф на Ардуино и микроконтроллере своими руками
Цифровые осциллографы используются любителями электроники и это одна из привычных вещей, находящихся за их рабочими столами. Но покупка готового решения может влететь в копеечку, поэтому я решил, что соберу собственный осциллоскоп своими руками. Этот базовый проект поможет вам повысить свои навыки и в итоге у вас будет свой самодельный неплохой прибор, который облегчит вам жизнь.
Ардуино – замечательная вещь, работающая на 8-битных микроконтроллерах, которые имеют цифровые выходы, SPI, линии I2S, последовательную связь, ADC и т.д. Таким образом, использование в этом проекте Ардуино – хорошая идея.
Шаг 1: Необходимые материалы
Я хотел, чтобы всё оставалось простым и дешевым, поэтому вам понадобятся:
- Ноутбук x1
- Ардуино x 1 (UNO,PRO MINI, NANO –подойдёт любой , кроме MEGA)
- Кабели со штекерами x 2
- Макетная плата x 1
- Клипсы аллигаторы x 2
- Кабель джек папа-папа на 3.5 мм x 1
- Источник аудио, или другого сигнала, чью форму вы хотите увидеть
Шаг 2: Код и программа осциллоскопа
После подключения, просто загрузите в него код из zip-архива. Этот код просто считывает напряжение на аналоговых пинах A0-A5 или A7 Ардуино (в зависимости от вашей платы), а затем конвертирует его в значение, варьирующееся от 0 до 1023. Далее это значение отправляется на компьютер через порт USB.
Пины A0-A5 или A7 (в зависимости от вашей платы) действуют в качестве 6 или 8 каналов осциллоскопа, но софт позволяет отобразить только три канала за раз.
После того, как вы открыли программу осциллоскопа вслед за загрузкой скетча, выберете нужные параметры baud rate (скорость передачи) и COM-порт, а затем откройте каналы.
Программа осциллоскопа спроектирована так, чтобы принимать значения с Ардуино и строить из них график, добавляя значения в линию, что предоставляет вам неплохие графики в виде волн, прямо как на осциллоскопе. Файлы
- Arduino oscilloscope.rar
Шаг 3: Принцип действий
- Подключите Ардуино
- Загрузите код
- Пустите сигнал через пины A0 — A5 или A7 (в зависимости от вашей платы). Я выбрал сигнал, идущий от моего телефона через джек. Один конец провода был подключен к телефону, а на другом конце я подключил землю к GND Ардуино, а второй аллигатор был подключен к одному из аудиоканалов. (в моем случае правый канал аудиосигнала) .
- Откройте программу осциллографа
- Выберите COM-порт и baud rate
- Откройте каналы и всё готово!
Шаг 4: Особенности
- Разрешение осциллоскопа: примерно 0.0049 Вольта (4.9мВ)
- Частота обновления: 1КГц
- Скорость передачи: 115200
- Диапазон напряжения: 0-5 Вольт
- Он может отображать одновременно 3 канала
Замечание: не превышайте на электронном осциллографе предел в 5 Вольт, или вы поджарите свой Ардуино.
- Напряжение нельзя превышать, оно находится в диапазоне 0-5 Вольт
- Любой сигнал выше 1КГц не будет замечен Ардуино, либо же он будет определяться как мусорные значения (помехи)
- Не пробуйте измерить сигналы AC, так как аналоговые пины не приспособлены для этого и в конце концов вы либо повредите Ардуино, либо засечёте позитивную половину
Шаг 5: Все готово!
Итак, я думаю, что было довольно просто сделать свой осциллограф на Ардуино. Надеюсь, вам всё понравилось.
Рассказываю как сделать какую-либо вещь с пошаговыми фото и видео инструкциями.
Источник
Осциллограф реального времени на Arduino
Осциллограф – это один из самых необходимых инструментов для всех электронщиков. Он используется для определения формы колебания, уровней напряжения, частоты, шума и других параметров сигнала. Его часто используют для отладки работы или ремонта какого-нибудь электронного устройства. К сожалению, современные осциллографы могут достаточно дорого стоить – примерно $45-$100 за осциллографы, которые могут выполнять только базовые функции, а более продвинутые версии этих устройств могут стоит более $150.
В этом проекте мы рассмотрим создание на основе платы Arduino 4-х канального осциллографа, способного выполнять все основные функции данного устройства и при этом отличающегося невысокой стоимостью изготовления. Осциллограмма будет показываться на экране компьютера – для ее построения будет использоваться программа на языке Python. Также на нашем сайте вы можете посмотреть проект осциллографа на основе платы Arduino с выводом изображения на ЖК дисплей.
Общие принципы работы проекта
Наш проект состоит из двух основных частей:
Осциллограф, по своей сути, должен формировать визуальное отображение аналогового сигнала, поданного на его вход. Для осуществления этого мы сначала должны преобразовать сигнал из аналоговой в цифровую форму и затем построить его график. Для этого мы будем использовать один из имеющихся в плате Arduino аналогово-цифровых преобразователей (АЦП). После проведения преобразования в цифровую форму сигнал передается через последовательный порт связи в компьютер, где специальное программное обеспечение, написанное на языке Python, будет строить его график на экране компьютера.
Необходимые компоненты
Аппаратное обеспечение
- Плата Arduino Uno (или любая другая) (купить на AliExpress).
- Фоторезистор (купить на AliExpress).
- Резистор 10 кОм (купить на AliExpress).
- Макетная плата.
- Соединительные провода.
Программное обеспечение
1. Arduino IDE
2. Python
3. Python Libraries: Pyserial, Matplotlib, Drawnow
Работа схемы
Схема осциллографа на основе платы Arduino представлена на следующем рисунке.
Как видите, она достаточно простая. Все, что нам нужно сделать, это подсоединить анализируемый сигнал к заданному аналоговому контакту платы Arduino. В качестве источника тестового сигнала в нашем проекте мы будем использовать фоторезистор (LDR), включенный в цепь простого делителя напряжения. Таким образом, напряжение сигнала, подаваемого на вход нашего осциллографа, будет зависеть от интенсивности света, падающего на фоторезистор.
После сборки схемы на макетной плате у вас должна получиться примерно следующая конструкция:
Объяснение кода программы
Для построения графика анализируемого сигнала мы, как уже указывалось ранее, будем использовать скрипт на языке python, который будет принимать данные от платы Arduino через последовательный порт связи (UART) и на их основе строить график на экране компьютера. Программа (скетч) же для Arduino будет считывать данные с выхода АЦП своего аналогового порта и передавать их скрипту на python.
Объяснение программы для Python
Для нашего проекта мы будем использовать следующие библиотеки Python: drawnow, Matplotlib и Pyserial. Библиотека Pyserial позволяет нам считывать данные из последовательного порта связи, Matplotlib обеспечивает нам возможность построения графиков, а drawnow дает нам возможность рисовать эти графики в режиме реального времени. Более подробно об использовании языка Python вместе с Arduino вы можете прочитать в следующей статье.
Существует несколько способов установки этих библиотек, самый простой из них – это через pip. Pip может быть установлен из командной строки в windows или linux. PIP поставляется вместе с пакетом python3 поэтому при установке вам просто нужно отметить галочкой нужную опцию чтобы он установился.
После того как pip будет установлен можно начинать установку всех других необходимых нам библиотек. Если у вас windows, то откройте командную строку, в linux’е откройте терминал и введите там следующую команду:
Источник
Самодельная цифровая приставка осциллограф к компьютеру своими руками
Осциллограф к ПК – это устройство, которое позволяет графически наблюдать электрический сигнал. Следуя данной инструкции, вы сможете сконструировать недорогой осциллограф своими руками.
Шаг 1: Используем контроллер Arduino Uno
В интернет-магазинах контроллер Arduino Uno стоит в пределах 20 долларов.
Шаг 2: Устанавливаем приложение Arduino IDE и библиотеку TimerOne.h
Прежде всего, если у вас не установлена среда разработки Arduino, скачайте и установите ее с сайта Arduino.
Установите библиотеку «TimerOne.h» для Arduino IDE, следуя следующим инструкциям:
- В приложении Arduino выберите пункт меню «Sketch» (см. фото).
- Далее «Include Library».
- «Manage Libraries…».
- Выберите «all» в окне «Type» и «all» в окне «Topic». В пустое поле введите «TimerOne» (без кавычек).
- Ниже появится информация о библиотеке.
- Щелкните на этом тексте, и появится кнопка «Install».
- Нажмите кнопку «Install».
- Перезапустите программу.
Шаг 3: Скачиваем скетч и загружаем его в приложение Arduino
- Загрузите и разархивируйте скетч для Arduino: ((oscilloscope_arduino.ino)).
- Подключите контроллер Arduino к компьютеру через USB-порт.
- Запустите приложение Arduino IDE.
- Откройте загруженный скетч «oscilloscope_arduino.ino».
- Выберите порт, к которому подключен контроллер (см. фото).
- Загрузите программу в контроллер Arduino.
Шаг 4: Скачиваем программу Oscilloscope
Загрузите и распакуйте программу. Выберите файл для вашей операционной системы:
Запустите exe-файл (например, Windows 64 => oscilloscope_4ch.exe).
Важно: не удаляйте папку «lib» из директории с программой.
На компьютере должна быть установлена программа «Java» не ниже 8-й версии.
Шаг 5: Если oscilloscope_4ch.exe не работает…
Если, по какой-либо причине программа oscilloscope_4ch.exe не работает, выполните следующее:
- Установите утилиту Processing IDE.
- Загрузите и разархивируйте скетч Processing source oscilloscope program.
- Запустите утилиту «Processing IDE» и откройте в ней скетч «oscilloscope_4ch.pde».
- Запустите программу, нажав на значок с треугольником (см. фото).
Шаг 6: Настраиваем последовательный порт для сопряжения контроллера Arduino с программой Oscilloscope
- Запустите программу «Oscilloscope»; контроллер Arduino подключите к компьютеру через USB-порт. Теперь вам нужно «подружить» их друг с другом через последовательный порт.
- В поле «Configurar Serial» (Настройка последовательного интерфейса) нажимайте на поле «select serial» до тех пор, пока не появится порт, к которому подключен Arduino (если он не появился, нажмите на кнопку «refresh» для обновления).
- Нажимайте кнопку «select speed» пока не появится скорость 115200.
- Нажмите кнопку «off»; надпись на ней изменится на «on».
- Если все правильно сделано, самодельный осциллограф покажет 4 канала [A0 (ch-0), A1 (ch-1), A2 (ch-2) и A3 (ch-3)].
Если подключение настроено неправильно, вы увидите на изображении «шум».
Шаг 7: Соединяем выход (
10) со входом (A0), а выход (
С помощью проводов, подключите цифровой выход 10 контроллера Arduino к его аналоговому входу A0, а выход 9 – к входу A1.
На экране появится сигнал, похожий на тот, который показан на фото. Сигналы на цифровых выходах 9 и 10 задаются блоком «Ger.Sinal» программы: на выходе 9 генерируется ШИМ-сигнал частотой 10 Гц (Т = 100 мс) при Ton = 25 %; на выходе 10 – сигнал, равный удвоенному периоду 2Т (200 мс).
Вы можете самостоятельно настроить значения в блоке «Ger.Sinal», перетаскивая ползунок или щелкая по элементу управления.
Шаг 8: Подсказки
- Поставьте галочку напротив параметра «Trigger» на Ch-0 (красный), чтобы стабилизировать сигнал.
- Чтобы удалить изображения сигналов Ch-2 и Ch-3, нажмите на заголовки «Ch-2» и «Ch-3».
- Чтобы наблюдать фигуры Лиссажу, нажмите на заголовок «XYZ».
- Чтобы определять частоты, поставьте галочку «detectar freq.» (обнаружить частоту).
- Чтобы измерить напряжение и время / частоту, нажмите «medir» (измерение).
- Для изменения значения шкалы регулировки, нажмите между вертикальными линиями или перетащите ползунок, обозначенный двумя треугольничками (см. рисунок).
- Программа имеет гораздо больше настроек. Исследуйте их самостоятельно.
Шаг 9: Определяем частоту вспышки фонарика
Вы можете узнать частоту мигания фонарика, используя фоторезистор (LDR) и обыкновенный резистор (см. рисунок).
Шаг 10: Определяем частоту вращения вентилятора
Чтобы узнать частоту вращения вентилятора, используйте схему из шага 9, только фонарик должен гореть постоянно.
Подставив значение частоты из компьютерного осциллографа в формулу на рисунке, определите частоту вращения вентилятора.
Шаг 11: Анализируем сигнал от пульта дистанционного управления
Вы можете увидеть ИК-сигнал от пульта дистанционного управления с помощью фототранзистора TIL78.
Соберите схему по рисунку и следуйте следующим инструкциям:
- Установите значение «dt» равным 2 мс или 100 мкс.
- Включите «Trigger» канала Ch-0.
- Увеличьте уровень, перетащив ползунок (см. рисунок).
- Нажмите кнопку «UMA»: осцилограф перейдет в режим ожидания.
- Нажмите любую кнопку на пульте дистанционного управления, предварительно направив его на фототранзистор.
- Анализируйте график.
Шаг 12: Тестируем компоненты или устройства
Приставку осциллограф к компьютеру можно использовать для тестирования различных электронных компонентов или устройств.
В этом примере мы протестируем маленький джойстик для проектов Arduino.
- Соберите схему, показанную на рисунке.
- Синхронизируйте программу с контроллером Arduino.
- Нажмите «fluxo» (поток), чтобы Arduino отправлял каждое значение сразу после прочтения.
- Установите значение параметра «dt» равным 100 мс (для медленного чтения).
- Выключите «Ch-3», нажав на заголовок.
- Установите значение параметра «v/div» равным 5 (во время установки нажмите и держите клавишу «Shift», чтобы настроить все каналы одновременно).
- Переместите маленький треугольник слева канала «Ch-0» вверх (нажав клавишу «Shift»).
- Включите канал «XYZ» и перетащите ползунок параметра «v/div» до конца вправо.
- Перемещайте джойстик во все стороны и понажимайте кнопку несколько раз.
- Наблюдайте кривые.
Шаг 13: Определяем параметры резисторов и конденсаторов
Поле «medir res./cap.» предназначено для измерения значений резисторов и конденсаторов, но оно будет работать только при подключении схемы, изображенной на рисунке.
Данная функция может самостоятельно определять, какой из компонентов подключен: резистор или конденсатор и определить правильное значение параметра, используя 3 шкалы (низкие, средние или высокие значения).
Шаг 14: Хотите больше возможностей?
Скачайте полный проект с сайта GitHub.
Посмотрите видео на YouTube.
Рассказываю как сделать какую-либо вещь с пошаговыми фото и видео инструкциями.
Источник