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

HSVClock

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

Arduino UNO
× 1
Seeed 2.8 "TFT Touch Shield (V1.0)
× 1

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

Часы HSV

Когда я в последний раз был в США, я купил сенсорный экран Seeed 2,8 "TFT Touch Shield (V1.0) от RadioShack. Я использовал его, чтобы сделать красочные часы для своего отца на его 80-летие.

HSVClock.zipYouTube

Важные моменты

  • циферблат основан на сетке прямоугольных ячеек. Углы ячеек искажаются на небольшие случайные величины, и каждая ячейка делится на случайную диагональ. К ячейкам применяется случайный набор цветов, и каждый треугольник закрашивается для придания трехмерного вида. Внутри цвета представлены как HSV (оттенок, насыщенность и значение), но преобразованы в RGB для отправки на ЖК-дисплей. Время отображается простым шрифтом путем раскрашивания определенных ячеек дополнительными цветами.
  • корпус это вырезанный лазером бамбук, разработанный в Inkscape, вырезанный Ponoko.
  • К сожалению, на экране нет монтажных отверстий . поэтому я эффективно зажимаю его в корпусе напротив передней панели. Arduino Uno подключается к щиту через контакты заголовка.
  • Мне нужен I2C-доступ к внешнему RTC (DS3232). На экране не видны неиспользуемые контакты, поэтому я использовал Uno с дополнительными контактами SDA / SCL. Я сделал для них низкопрофильный разъем, который находится под экраном. Я отключил питание и землю от аналогичного разъема на контактах ICSP, также под экраном.
  • Я добавил простой переход на летнее время поддержка эскиза (на один час меньше, чтобы устанавливать два раза в год!). Вместо того, чтобы иметь дело с логикой вроде «последнее воскресенье сентября», он полагается на небольшую таблицу с конкретными датами начала и окончания на будущие годы (в моем случае для Новой Зеландии).
  • Я упростил код библиотеки Touch, чтобы сделать сенсорный экран просто действуйте как сетка 4x4 кнопок без отскока. Например, время устанавливается касанием левого нижнего и правого верхнего углов.
  • Я приложил немало героических усилий, чтобы ускорить рендеринг:перерисовка ячеек занимает около четверти секунды. Рендеринг основан на записи горизонтальных рядов пикселей определенного цвета. Я использую модифицированный алгоритм Брезенхема для вычисления горизонтальных размеров серии пар линий, которые составляют треугольники в данной ячейке. Код, который отправляет пиксели на ЖК-дисплей, основан на библиотеке, но встроен, развернут, упрощен и оптимизирован. Поскольку данные о цвете пикселей записываются в несколько PORTx, все значения предварительно вычисляются при выборе цвета, поэтому установка этого цвета для N пикселей в строке выполняется быстрее.
  • ЖК-дисплей используется в альбомной ориентации . . Я долго боролся, чтобы экран обновлялся горизонтальными рядами. Таблица на контроллер сбивает с толку. Существуют команды для установки «курсора», «Установка адреса DRAM по горизонтали / вертикали (R20h, R21h)». Пиксельные данные записываются в месте расположения курсора, и курсор обновляется, переходя при необходимости на следующую строку и т. Д. Также есть команда для изменения ориентации экрана «Режим ввода (R03h)», в которой также говорится о настройке строки и столбца курсора. приращения. Однако я обнаружил, что изменение ориентации на альбомную и последующее позиционирование курсора не помогло. Решение, которое я в конце концов нашел (которое может быть скрыто в таблице данных), состоит в том, чтобы использовать команду «окна» вместо команды курсора; «Положение адреса ОЗУ по горизонтали и вертикали (R50h, R51h, R52h, R53h)». Установка координат левого верхнего угла окна означает, что данные пикселей начинаются с этого места и обновляются по горизонтали (в альбомной ориентации).

Схема

Схема просто

  • экран TFT, установленный на Uno.
  • +5 В постоянного тока, заземление, SDA и SDL идут от помеченных контактов на Uno к модулю RTC. Показано на первых трех фотографиях ниже (щит снят). Обратите внимание, что для обеспечения доступа питание / земля поступает от разъема ICSP1.
Fritzing
Фотографии

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

  1. Kazoo
  2. Арфа
  3. Пенополистирол (EPF)
  4. Датчики Raspberry Pi
  5. Робот, использующий Raspberry Pi и Bridge Shield
  6. Веб-контроллер DMX
  7. Что такое нитеобрезатель?
  8. Что такое карьер?
  9. Что такое скелетный ключ?
  10. Производство азота в лабораториях