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

Цилиндр POV с Arduino Due

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

Arduino Due
× 1
Линейный регулятор с регулируемым выходом
× 1
Двойной операционный усилитель общего назначения Texas Instruments
× 1
Резистор 20 кОм
× 3
Резистор 220 Ом
× 1
Резистор 1 кОм
× 2
NPN-транзистор общего назначения
× 1
Конденсатор 1000 мкФ
× 1
Конденсатор 100 нФ
× 1
Конденсатор 1 мкФ
× 1
Резистор 240 Ом
× 1
Подстроечный резистор 1 кОм
× 1
ИК-передатчик (общий)
× 1
ИК-приемник (общий)
× 1
Макет (общий)
× 1
Цилиндр из пенополистирола (диаметр:20 см, высота:10 см)
× 2
Электродвигатель, 12 В, XDRIVE 545-1
× 1
Коронная шестерня 60 т 8 мм
× 1
Crown Gear 12 T, 3,2 мм
× 1
Зубчатый ремень, 80 т, 6 x 200 мм
× 1
Резьбовой стержень, M8, 125 мм
× 3
Резьбовой стержень, M8, 330 мм
Используется как вал.
× 1
Контактное кольцо ASL9017
× 1
Клейкая лента (черная, 48 мм)
Используется для закрепления на роторе
× 1
Диск из фанеры (Ø 150 мм, толщина:10 мм)
× 2
Алюминиевый диск (Ø 200 мм, толщина:2,5 мм)
× 2

Необходимые инструменты и машины

Паяльник (общий)
Пила для прокрутки (универсальная)
Bench Drill (универсальный)
Лабораторный источник питания (общий)
Ноутбук с Windows 10 (общий)

Приложения и онлайн-сервисы

Microchip Technology Microchip Studio
Используется для разработки программного обеспечения Arduino
IDE Arduino
Может использоваться как альтернатива Atmel Studio IDE
Cygwin
Cygwin обеспечивает функциональность, аналогичную дистрибутиву Linux в Windows. Используется для программы управления ПК.
Microsoft Visual Studio 2015
Используется для графического интерфейса пользователя.

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

Введение

Это мой первый проект Arduino. Моя работа была вдохновлена ​​несколькими проектами производителей, которые создали Persistence of Vision Displays [2,3,4].

Постоянство зрения (POV) относится к оптической иллюзии, при которой несколько дискретных изображений сливаются в единое изображение в человеческом сознании, и считается объяснением восприятия движения в кино и анимационных фильмах [1].

В проектах [2, 3, 4] реализуются POV-дисплеи в виде глобуса с использованием дискретных светодиодов и дискретных регистров сдвига. Вместо этого в моем устройстве в качестве POV-дисплея используется вращающийся цилиндр и стандартные светодиодные ленты RGB.

Основные особенности моего цилиндра POV:

  • Отображение POV (постоянство зрения)
  • Отображает анимированные изображения в формате GIF на вращающемся цилиндре.
  • Изображения в формате GIF хранятся в оперативной или флэш-памяти Arduino.
  • Связь с ПК через Bluetooth

Технический обзор

  • Диаметр цилиндра:200 мм
  • Высота цилиндра:200 мм
  • Материал цилиндра:пенополистирол.
  • Вес баллона:420 г
  • 4 светодиодные ленты RGB на базе LPD8806
  • Размер экрана 151 x 40 пикселей
  • На основе Arduino Due
  • Включает модуль Bluetooth HC06
  • Управляется через Bluetooth с ПК.

Механическая конструкция

Механическая конструкция показана на рисунке ниже.

Устройство состоит из шасси и ротора. Шасси состоит из двух круглых фанерных дисков, соединенных тремя стержнями с резьбой. Расстояние между дисками 120 мм. Посередине два шариковых подшипника и вал. Для вала также используется стержень с резьбой. Вал приводится в движение электродвигателем через две коронные шестерни и зубчатый ремень. Скорость вращения до 1300 об / мин (22 Гц).

Ротор состоит из двух цилиндров из пенополистирола и двух круглых алюминиевых дисков. Цилиндры из пенополистирола приклеены к нижнему диску. Верхний диск можно снять. Он используется для крепления ротора к валу.

Электроника расположена в верхней части ротора. Он включает в себя следующие части:

  • Плата Arduino Due
  • Самодельный щиток для платы Arduino Due
  • Плата блока питания (PS)
  • Модуль Bluetooth HC-06

Питание (7,5 В) на плату блока питания подается через скользящие контакты и контактное кольцо.

Используются четыре светодиодные ленты с 40 светодиодами RBG. Они подключены кабелями к Arduino Shield.

Четыре светодиодные полосы размещены, как показано на рисунке ниже. При использовании четырех смещенных светодиодных полос расстояние по оси Y между светодиодами делится на 4. Расстояние по оси X обрабатывается SW. ПО обновляет все 40 светодиодов 151 раз за оборот. Сетка на чертеже соответствует видимым пикселям.

Электронная схема

Электронная схема показана в прилагаемой схеме в формате PDF.

Имеется плата блока питания с регулятором напряжения LM317. Входное напряжение составляет 7,5 Вольт, а выходное напряжение - 4,6 В. Регулятор напряжения питает плату Arduino Due и светодиодные ленты.

Также есть самодельный щиток для Ардуино. Он содержит соединительные кабели для светодиодных лент и схему для ИК-приемника. ИК-приемник используется для определения положения ротора. Он подключен к входу таймера / прерывания Arduino.

Есть четыре светодиодные ленты с названиями от STRIP0 до STRIP3. Каждая полоска имеет 5 светодиодных драйверов LPD8806 и 10 светодиодов RBG. STRIP0 подключен к USART0, а STRIP1 подключен к USART1. Оба USART работают в режиме SPI. STRIP2 и STRIP3 соединены последовательно и управляются интерфейсом SPI Arduino.

Для связи с ПК к USART3 подключается Bluetooth-модуль HC-06. Модуль Bluetooth получает питание 3,3 В от платы Arduino.

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

Программное обеспечение Arduino состоит из основной программы ( mpc.ino ) и следующие библиотеки:

  • bt - ПО драйвера для модуля Bluetooth
  • LDP8806 - Программное обеспечение драйвера для светодиодных лент.
  • Без памяти - Функции для определения доступной свободной оперативной памяти.
  • mpcgif - Воспроизведение файлов GIF, находящихся в оперативной или флеш-памяти.
  • изображения - Внутренние изображения в формате GIF, хранящиеся во Flash.
  • след - Функции для отладки ПО

Периодический вывод картинок на светодиодные ленты осуществляется по прерыванию. Есть два переключаемых буфера кадров. Каждый буфер кадра содержит одно изображение размером 40 x 151 пиксель. Каждый пиксель представляет собой однобайтовый индекс цветовой палитры. В то время как один буфер кадра выводится на светодиодные ленты через прерывание и DMA, другой буфер кадра подготавливается основной программой (например, функцией декодирования изображений GIF). Переключение буферов кадра выполняется программой прерывания кадра.

ИК-датчик вызывает прерывание по одному кадру на один оборот. Программа прерывания кадра измеряет (с помощью аппаратного таймера) скорость эволюции и программирует периодические прерывания столбца (по одному на столбец, т.е. 150 прерываний на оборот) с помощью аппаратного таймера. Программа прерывания столбца выводит текущий столбец на светодиодные ленты. По соображениям производительности вывод осуществляется через три канала прямого доступа к памяти, которые работают полностью параллельно.

Полный исходный код Arduino доступен на github.

Программа управления ПК

Программа управления ПК ( pccp ) - это инструмент командной строки, написанный на C ++. Он работает под Cygwin и связывается с Arduino через Bluetooth. pccp позволяет управлять цилиндром POV с помощью следующих односимвольных команд:

  • 0–7 - заливка экрана цветом (черный, красный, желтый, зеленый, голубой, синий, фиолетовый, белый)
  • t - нарисовать треугольную кривую (как тестовую картинку)
  • s - включить или отключить поворот отображаемого изображения
  • г - нарисовать одну строку
  • в - нарисовать один столбец
  • г - воспроизведение внутреннего изображения в формате GIF, хранящегося во флэш-памяти.
  • f - скачать внешний файл GIF с ПК через BT
  • x - воспроизведение загруженного внешнего файла GIF.

pccp также предоставляет интерфейс к графическому пользовательскому интерфейсу. Кроме того, он отображает текущую скорость вращения (в Гц и мкс) и значение счетчика кадров.

Полный исходный код доступен на github.

Графический интерфейс пользователя

Графический пользовательский интерфейс представляет собой универсальное приложение для Windows. Это позволяет выбрать файл GIF, который будет отображаться цилиндром POV. Это приложение является производным от приложения FilePicker из «Универсальных образцов Microsoft Windows» [5].

Полный исходный код доступен на github.

[1] https://en.wikipedia.org/wiki/Persistence_of_vision

[2] ГЛОБУС RGB LED - POV - 40 x 200

[3] Отображение глобуса POV, RGB

[4] POV Globe Display RGB - описание проекта (на немецком языке)

[5] https://github.com/Microsoft/Windows-universal-samples

Код

Исходный код Arduino для цилиндра POV
https://github.com/hanoba/povc-arduino
Программа управления на ПК для цилиндра POV
Это программа командной строки C ++, работающая под Cygwin https://github.com/hanoba/povc-pccp
Графический интерфейс пользователя для цилиндра POV
Это универсальное приложение для Windows https://github.com/hanoba/povc-win-app

Схема

Это схема.

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

  1. Часы видения Arduino pov
  2. DIY Простой осциллограф Arduino 20 кГц на ЖК-дисплее Nokia 5110
  3. Умные жалюзи
  4. Arduino Due TIC TAC TOE с сенсорным экраном
  5. Управление монетоприемником с помощью Arduino
  6. Итальянские часы со словами
  7. Arduino с Bluetooth для управления светодиодом!
  8. Простой датчик препятствий с Arduino
  9. Счетчик кВтч Sigfox
  10. Изолированный аналоговый вход для Arduino