Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Генератор сигналов произвольной формы Arduino Due

Компоненты и расходные материалы

Arduino Due
× 1

Об этом проекте

Общее описание

Теперь это работает как в Linux, так и в Windows.

Макс.частота аналогового сигнала:100 кГц. Максимальная частота прямоугольной волны:42 МГц.

Рабочий цикл регулируется практически от 0% до 100%

Очень легко собрать - см. Установка ниже.

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

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

Используя графический интерфейс контроллера на вашем ПК, можно рисовать, редактировать, сохранять, открывать и загружать произвольные волны в Arduino Due, автоматически подключенный через порт USB. Включен исчерпывающий файл справки.

Функция «ступенчатой» волны позволяет при желании легко создать любое количество резких (один сэмпл) шагов в волне. Кроме того, вместо этого выход можно переключить на синусоидальный или треугольный / пилообразный.

Кроме того, одновременно создается прямоугольная волна, которая может быть синхронизированной или полностью независимой. Волны можно контролировать по частоте или периоду. Рабочий цикл можно установить практически от 0% до 100%. Или ширину импульса можно установить постоянной. (в пределах периода, конечно)

Новые настройки можно ввести непосредственно с клавиатуры ПК или с клавиатуры программы. Или, нажав «MODE», можно выполнить плавную регулировку.

Для аналоговой волны доступен точный режим, который позволяет избежать «скачков частоты», обычно связанных с генераторами сигналов прямого цифрового синтеза (DDS). Это делает возможной более точную частоту, разрешая доступ к частотам между этими «частотными шагами», потому что выходной сигнал не является делением тактовой частоты Arduino, когда включен точный режим.

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

Технические характеристики

Аналоговая волна:

Разрешение 12 бит, до 4096 путевых точек.

Диапазон частот:от 0,05 МГц (20 000 секунд) до 100 кГц.

Частота дискретизации:(выше 1 кГц при использовании DMA) до 1,6 МГц.

Частота дискретизации:(до 1 кГц) 400 кГц.

Частота дискретизации в точном режиме:(любая частота) 400 кГц.

Минимальная ширина импульса:(полуволновой цикл)

При рабочем цикле 0%:350 наносекунд (прибл.) При любой частоте.

При рабочем цикле 0,01%:до 2,5–25 мкс. (приблизительно)

- если частота превышает 1 кГц и включен точный режим или синхронизация,

- иначе 350 наносек.

Прямоугольная волна:

Диапазон частот:от 0,05 МГц (20 000 секунд) до 42 МГц.

Минимальная ширина импульса:

Синхронизировано:[Частота:от 0,05 МГц (20 000 секунд) до 100 кГц]

При рабочем цикле 0%:48 наносекунд на любой частоте.

При рабочем цикле 0,01%:2,5 - 25 мкс. (приблизительно)

Несинхронизировано:[от 0,093 МГц (10 737 секунд) до 42 МГц]

12 нс от 1,3 кГц до 42 МГц. (Используя ШИМ)

24 нс от 650 Гц до 1,29999 кГц. (Используя ШИМ)

48 нс от 325 Гц до 649,99999 Гц. (Используя ШИМ)

96 нс от 163 Гц до 324,99999 Гц. (Используя ШИМ)

Ниже 163 Гц:(с использованием прерывания)

При рабочем цикле 0%:96 наносекунд.

При рабочем цикле 0,01%:5 микросекунд.

Установка

Программа с графическим интерфейсом для вашего ПК является «портативным», поэтому не требует установки.

Для пользователей Windows:просто извлеките файл .zip в папку по вашему выбору и сделайте ярлык для файла .exe. Примечание. Файл «DueAWGController-Win64.zip» предназначен для 64-разрядных систем, но файл 32.zip в любом случае часто работает более надежно, поскольку в него встроена Java.

Для пользователей Linux:извлеките файл DueAWGController-LinuxXX.zip в папку, затем дважды щелкните файл DueAWGControllerLinux или добавьте его в системное меню.

Возможно, вам потребуется установить OpenJDK 8 (java 8) для Debian, Ubuntu и т. Д.:В командной строке (в Терминале) введите:sudo apt-get install openjdk-8-jre (более новые версии могут не работать.)

Вам также может потребоваться разрешение на доступ к USB, прежде чем вы сможете подключиться к Arduino. Введите:sudo usermod -a -G dialout $ USER

Также включены два файла "arm" для Raspberry Pi и т. Д., Но они не были протестированы. Пожалуйста, дайте мне знать, работают ли они.

Эскиз Arduino не требует специальных библиотек, поэтому вам понадобится только обычная IDE Arduino, установленная на вашем ПК для загрузки скетча в Due. При условии, что ваш компьютер распознал Arduino Due (что он должен был сделать, если скетч был загружен), программа с графическим интерфейсом должна автоматически найти и подключиться к Arduino при запуске, поэтому нет необходимости устанавливать COM-порт. Однако ручной выбор COM-порта включен, если автоматический выбор завершился неудачно.

В папке Arbitrary Waves есть несколько примеров волновых файлов (просто для удовольствия), которые помогут вам начать работу. Помимо программы с графическим интерфейсом, генератором сигналов Arduino также можно управлять с помощью последовательного монитора Arduino, установленного на 115200 бод. Тип ? за помощью.

Или, если вы предпочитаете использовать потенциометры, переключатели и светодиоды для управления, в начале скетча Arduino перечислены соединения контактов.

Подключение выводов волнового выхода также перечислены там, или просто подключите контакты 3 и 7 Arduino вместе с помощью ссылки, или, если вы очень осторожны, используйте резистор низкого сопротивления (47 - 100 Ом). Возьмите прямоугольный выход с контакта 7 и аналоговый выход с DAC0.

Код

ВАЖНО:не нажимайте кнопку «Загрузить как zip».
Чтобы загрузить файлы, нажмите «Подробнее» ниже. ПРИМЕЧАНИЕ. При нажатии «Загрузить как zip» будет загружен только файл readme. Https://github.com/Bruce-Evans/ArduinoDueArbitraryWaveformGeneratorAndController

Схема

Эту схему можно полностью опустить, но если она используется, она должна защитить Arduino от случайного подключения выходов к напряжениям до как минимум плюс или минус 25 В без значительного увеличения времени нарастания и спада. D2 и D3 должны быть сильноточными, быстро восстанавливающимися диодами - я обнаружил, что диоды Шоттки были слишком медленными. Предохранители (F1 и F2) могут быть многоплавкими.

Производственный процесс

  1. Arduino Spybot
  2. FlickMote
  3. Самодельный телевизор B-Gone
  4. Основные часы
  5. Arduino Due TIC TAC TOE с сенсорным экраном
  6. Генератор волн JX
  7. Найди меня
  8. Arduino Power
  9. Tech-TicTacToe
  10. Четвероногий Arduino